Post on 13-Jan-2016
Speaker: Yoni RozensheinInstructor: Prof. Zeev Nutov
Talk outlineProblem description and known
approximationsInterpretation in graphs (Independent Set
Problem)The greedy local search method
Approximation ratioPolynomial time implementation
2
Weighted k-set packingGiven a collection of weighted sets of size at
most k,find a maximum weight collection of disjoint sets
Example with k = 3:Set Weight
{ 4, 5 } 16
{ 2, 3, 5 } 6
{ 3, 4, 5 } 12
{ 1, 5 } 5
{ 4 } 14
{ 4, 5 }
{ 2, 3, 5 }{ 4 }
{ 3, 4, 5 }
{ 1, 5 }{ 4 }
Set packing
3
Weight
16
20
12
19
Hardness of the problemFor k = 2 we get the Maximum (Weighted)
Matching Problem, which admits a polynomial time algorithm [Edmonds 1965]
The problem is NP-hard for k ≥ 3 [Karp 1972]Reducible to k-SATk = 3: 3-Dimensional Matching
4
Approximation algorithmsOPT(I) – weight of the best solution (on instance
I)ALG(I) – weight of a given algorithm’s solutionAlgorithm’s approximation ratio on instance I:
Algorithm’s approximation ratio:
We seek an algorithm that minimizes the ratio
OPT
ALG
II
I
5
OPTmax : is an instance of the problem
ALG
II
I
The greedy algorithmRepeatedly choose maximum-weight set S
and delete from the family all sets that intersect S
Very fast; performance ratio k:Set Weight
{ 1, 2, 3, …, k } 1 + ε
{ 1 } 1
{ 2 } 1
… …
{ k } 1
Greedy choice
Intersects...
A A, A1, A2, …, An
B B, B1, B2, …, Bm
… …
Z Z, Z1, Z2, …, Zl
Optimal
Greedy Optimal
ik w A w A
k w w
Greedy Optimalk w w
6
Local search heuristicReplace a subset of the solution with a better
subsetRepeat until “locally optimal”
How are the improvements chosen?Polynomial running time?
Performance ratio k – 1 + ε [Arkin and Hassin 1997]
Can we improve on these ratios?7
Interpretation in graphsThe sets’ intersection graph:
Nodes correspond to setsEdges correspond to sets sharing elements
Set packing is a particular case of Maximum Weight Independent Set in intersection graphs
What characterizes intersection graphs arising from k-set packing instances?
Set Weight
A = { 4, 5 } 16
B = { 2, 3, 5 } 6
C = { 3, 4, 5 } 12
D = { 1, 5 } 5
E = { 4 } 14
AB
E D
C
8
The characterizationThe graph is k + 1-claw free
From now on, we consider the “Independent Set Problem in k + 1-claw free graphs”
1
2
k + 1
Example with k = 3
9
k + 1-claw
Proof:a. At most k
elements in parent node
b. At least one in each child node
c. Pigeon-hole principle
Approach: Greedy local searchPrevious algorithms combined
How are improvements chosen?Polynomial running time?
GREEDY-LOCAL-SEARCH(G)I ← GREEDY(G)while I is not locally optimal do
I’ ← local improvement of II ← I’
end whileoutput I
10
Local improvement schemeImprovement: Pick some v ϵ I, add some of v’s
neighbors, and delete any interfering nodesThe payoff factor is
nodes added
nodes removed
w
w
w Dpayoff factor
w A w B
11
A
B
E D
C
Local ImprovementPick B
Add DDelete A, B
A
B
E D
CPick BAdd D
Delete A, B
A
B
E D
C
First algorithm: ANYIMP
Polynomial running time?For now, we will analyze the approximation
ratio only
ANYIMP(G, α)I ← GREEDY(G)while I is not locally optimal do
I’ ← any improvement of I with payoff factor ≥ αI ← I’
end whileoutput I
12
Analysis of the approximation ratioProjection: “Distance” between I and OPTproj(I) and w(I) maintain equilibrium
13
proj(I) w(I) Φ(I)≈ x⋅proj(I) + y⋅w(I)
min Φ(I)
: OPT ; :Maximum-weight neighbor of in I I
b b If I f b
b I b I
Projection
AB
E D
CA
B
E D
COPT I
max ,I
I
f D A B
f E E
14
OPT
: Ib
proj I w f b
Projection propertiesEquilibrium property:
Local optimum property:
Result:
(for any intermediate I) OPT1 1
kw I proj I
(for the final I) 11 OPTk w I proj I
(for the final I) 2
1
1 1
1OPT 4 2
1 5
k k
w I
15
Second algorithm: BESTIMP
BESTIMP(G)I ← GREEDY(G)while I is not locally optimal do
I’ ← an improvement of I with the highest payoff factorI ← I’
end whileoutput I
16
Potential function
In ANYIMP’s potential*, d was constant
(Ii, di): Sub-sequence of local improvements
Largest such that di (payoff factor) is descending:
2, 5, 3, 2, 4, 1.5, 3, 2, 1.2, 4, 3, 1.1
1, :
1
kI d w I proj I
d
17
1
kw I proj I
*
d1 = 2 d2 = 1.5 d3 = 1.2 d4 = 1.1
(Greedy) I0 I1 I2 I3 I4 (Final)
Potential propertiesEquilibrium property:
Weight evaluation property:
Result:
(for i = 1, 2, …) , OPT
1i
i ii
d h iI d
d
(for i = 1, 2, …) 1
11 1 OPTi
ii i i
h i dk w I
d d d
(for the final I) 1
2
2 1OPT 1 11 2
2 3m m
kk
w I d d
18
Running time analysisReminder:
Individual steps run in polynomial timeNumber of improvements?
GREEDY-LOCAL-SEARCH(G)I ← GREEDY(G)while I is not locally optimal do
I’ ← local improvement of II ← I’
end whileoutput I
19
Polynomial-time approximation schemeGiven an algorithm with approximation ratio
ρ, produce a polynomial time algorithm with approximation ratio ρ + ε
Well-known example: KnapsackThe running time may depend strongly on ε
(For example: Polynomial in 1/ ε)
Our greedy local search algorithm already runs in pseudo-polynomial time
20
PTAS: Weight scaling
Each improvement increases weight by 1Number of improvements at most:
1 1 2 2Input , ; , ; ; ,q qS w S w S w
maximum weightmm
wK w
q
ii
ww
K
2m
m
w qN qw q
K
21
Weight scaling – cont’d
Special case:
If we get within r of OPT'', we get within r(1 – ε) of OPT
ii i
ww Kw K
K
1ii i
ww K w K
K
OPTi i mw w Kq w
OPT OPT 1iw
22
23
Questions?