Linear Programming

Chapter 7
Linear Programming
(3) Pipage Rounding
Ding-Zhu Du
Pipage Rounding
example
Maximum Coverage
Given a family C of subsets of a set I  {1,..., n} with nonnegativ e weight
function w on subsets in C and a positive integer p, find a subset X  I
with | X | p to maximize the total weight of subsets in C hit by X .
ILP Formulation
m
max
w z
j
j 1
s.t.
x
i
 z j , j  1,..., m,
i
 p,
iS j
n
x
i 1
j
xi  {0,1}
0  z j  1.
Alternative Formulation 1
m
max L( x)   w j min{ 1,  xi }
j 1
iS j
n
s.t.
x
i 1
i
 p,
xi  {0,1}
Alternative Formulation 2
m
max F ( x)   w j (1  iS (1  xi ))
j
j 1
n
s.t.
x
i 1
i
 p,
xi  {0,1}
Relationship
F ( x)  cL( x)
where c  1 
1
e
Proof.
  (1  xi ) 
 iS j

1   (1  xi )  1  

k


iS j


k
(k | S j |)
  xi 
 iS j 
 1  1 
  c   xi  c  min( 1,  xi ) for 0   xi  1.
k 
iS j
iS j
iS j




k
Relationship
F ( x)  cL( x)
where c  1 
1
e
Proof.
  (1  xi ) 
 iS j

1   (1  xi )  1  

k


iS j


k
(k | S j |)
  xi 
k
 iS j 
 1
 1  1 
  1  1    c  c  min( 1,  xi ) for  xi  1.
k 
k

iS j
iS j




k
k
 z
Set g ( z )  1  1   .
 k
k
 1
g (0)  0, g (1)  1  1   .
0
1
 k
g ( z ) is monotone increasing and concave in [0,1].
k
1
 1
So, g ( z )  z (1  1   )  z (1  ).
e
 k
 z
g ' ( z )   k 1  
 k
k 1
1  z
(  )  1  
k  k
 z
g ' ' ( z )  (k  1)1  
 k
k 2
1
( )  0.
k
k 1
 0.
Relaxation
m
m
max L( x)   w j min{ 1,  xi }
j 1
 xi  p,
i 1
0  xi  1.
w z
s.t.
x
computed in time O(n 3.5 ).
j
i
 z j , j  1,..., m,
i
 p,
iS j
n
x
i 1
An optimal x * can be
j
j 1
iS j
n
s.t.
max
0  xi  0
0  z j  1.
Pipage Rounding
xi*
0  xi*  1
Choose 0  x *k  1 and 0  x * j  1 (i  j ).
Define yi  zi  x *i for i  k , j , and
yk  x *k  min( 1  x *k , x * j ), y j  x * j  min( 1  x *k , x * j ),
z k  x *k  min( 1  x * j , x *k ), z j  x * j  min( 1  x * j , x *k ).
 y if F ( y )  F ( z )
Set x'  
 z otherwise.
Property
F ( x' )  F ( x*)
because F ( x( )) is convex w.r .t. 
where xi ( )  x *i for i  k , j , and
xk ( )  x *k  , x j ( )  x * j  .
y  x(1 ) where 1  min( 1  xk , x j )
z  x( 2 ) where  2  min( 1  x j , xk )
x*  x(0)
Theorem
Maximum weight coverage problem has e /( e  1)  approximat ion .
Proof
Let x be the integer solution obtained by pipage rounding. Then
L( x )  F ( x )  F ( x*)  (1  1 / e) L( x*)  (1  1 / e)  opt.
Pipage Rounding
framework
Integer Programming
Consider a bipartite graph G  (V ,U , E ).
max F ( x)
s.t.
x


e ( v )
e
max L( x)
 pv for v  V  U
s.t.
xe  {0,1} for e  E.
x


e ( v )
e
 pv for v  V  U
xe  {0,1} for e  E.
For integer feasible solution x,
F ( x)  L( x)
Relaxation
max F ( x)
s.t.
x


e ( v )
e
max L( x)
 pv for v  V  U
0  xe  1
for e  E.
By ɛ-convexity, obtain
an integer solution
from x *, by x
pipage rounding, such
that
F ( x )  F ( x*)
x


s.t.
e ( v )
e
 pv for v  V  U
0  xe  1
F ( x)  c  L( x)
for e  E.
Solve easily to obtain
Optimal solution x *
L( x )  F ( x )  F ( x*)  c  L( x*)  c  opt
Pipage Rounding
Consider bipartite subgraph H x .
V
0  xij  1
U
Find R, either a maximal path or a cycle.
R
V
U
Find R, either a maximal path or a cycle in H x .
Decompose R into two matchings M 1 and M 2 .
Define x( ) by setting
 xe if e  R,

xe ( )   xe   if e  M 1 ,
 x   if e  M .
2
 e
Set  1  min(min
 2  min(min
eM 1
eM 2
xe , min eM 2 (1  xe )),
xe , min eM 1 (1  xe )).
Then for   [ 1 ,  2 ], x( ) is feasible.
 x( 1 ) if F ( x( 1 ))  F ( x( 2 ))
x'  
 x( 2 ) otherwise
ɛ-convexity
For any R, F ( x( )) is convex w.r .t.  .
Thus, for any   [-1 ,  2 ],
F ( x( ))  max( F ( x(1 )), F ( x( 2 ))).
Pipage Rounding
Applications
D. Shin and S. Bagchi, Optimal Monitoring in Multi - Channel
Multi - Radio Wireless Mesh Networks, in Proc. of the
MobiHoc200 9, pp.229 - 238, 2009.
Consider a set of n normal nodes u1 ,..., un
and a set of m monitoring nodes v1 ,..., vm .
Each ui has ai normal radios ui1 ,..., uiai .
U  {u11 ,..., u1a1 ,..., u1n ,..., unan }.
Each vi has ti monitoring radios.
Each monitoring radio can be tuned to a channel j  1,..., c.
Sij  the set of normal radios that can be covered by any
monitoring ratio of vi tuned on channel j.
m
Si  {Sij | j  1,..., c}, S  i 1 Si .
Choose at most k sets from S with at most ti ones from Si
so as to maximize the number of normal radios covered by
selected sets.
n
max
x
l
l 1
s.t. xl 
m
y
i , j:ul S ij
c
 y
i 1 j 1
c
y
j 1
ij
ij
ij
, l  {1,..., n}
 k,
 1, i  I  {1,..., m}
xl  {0,1}, l  {1,..., n}
yij  {0,1}, i  I , j  J  {1,..., c}.
Consider a set of n normal nodes u1 ,..., un
and a set of m monitoring nodes v1 ,..., vm .
Each ui has ai normal radios ui1 ,..., uiai .
U  {u ,..., u ,..., u ,..., u }.
1
1
a1
1
1
n
an
n
U  {u1 ,..., un }
Each vi has ti monitoring radios.
1
Each monitoring
radio can be tuned to a channel j  1,..., c.
Sij  the set of normal radios that can be covered by any
nodes
monitoring ratio of vi tuned on channel j.
m
Si  {Sij | j  1,..., c}, S  i 1 Si .
Choose at most k sets from S with at most ti ones from Si
so as to maximize the number of normal radios covered by
selected sets.
nodes
y1 j
n
max L( y )   min( 1,
l 1
m
s.t.
c
 y
i 1 j 1
c
y
j 1
ij
ij
y
i , j:ul S ij
ij
)
 k,
j
S1
yij
Si
 1, i  I  {1,..., m}
xl  {0,1}, l  {1,..., n}
yij  {0,1}, i  I , j  J  {1,..., c}.
j
n
max F ( y )   (1 
l 1
m
s.t.
c
 y
i 1 j 1
c
y
j 1
ij
ij
y1 j
 (1  y
ij
))
i , j:ul S ij
 k,
 1, i  I  {1,..., m}
xl  {0,1}, l  {1,..., n}
yij  {0,1}, i  I , j  J  {1,..., c}.
yij
1
F ( y )  (1  ) L( y ).
e
F ( y ) has  - convexity
because each maximal path contains only two edges.
Theorem
With pipage rounding, we can get an approximat ion
1
solution y with L( y )  (1  )opt.
e
Thanks, End