Matching with Commitments

28
MATCHING WITH COMMITMENTS Joint work with Kevin Costello and Prasad Tetali China Theory Week 2011 Pushkar Tripathi Georgia Institute of Technology

description

Pushkar Tripathi Georgia Institute of Technology. Matching with Commitments. China Theory Week 2011. Joint work with Kevin Costello and Prasad Tetali. Objective : Maximize the number of goods exchanged. Model. Chen, Immorlica , Karlin , Mahdian , Rudra [ICALP 09]. e present or not. - PowerPoint PPT Presentation

Transcript of Matching with Commitments

Page 1: Matching with Commitments

MATCHING WITH COMMITMENTS

Joint work with Kevin Costello and Prasad TetaliChina Theory Week2011

Pushkar TripathiGeorgia Institute of Technology

Page 2: Matching with Commitments

Objective : Maximize the number of goods exchanged

Page 3: Matching with Commitments

Model

pe

??

e present or not

Catch : If e is present then u and v are matched

Objective : Maximize the expected number of vertices that get matched.

u v

Chen, Immorlica, Karlin, Mahdian, Rudra [ICALP 09]

Page 4: Matching with Commitments

Approximation Factor

° = min E[ ALG( І ) ]E[ Max matching in G(V, p) ]І = G(V, p)

Compare against omniscient adversary who knows the underlying graph

Page 5: Matching with Commitments

Greedy Matching Try edges in arbitrary order. Maximal matching in every instance.

½ approximation for every instance.Greedy algorithm is a ½-approximate

algorithm.

Page 6: Matching with Commitments

Bipartite GraphsSimulate the RANKING algorithm [KVV

90]

Match each arriving vertex to the highest available free neighbor.

Ranking on the vertices

[KVV 90] : RANKING attains a factor of 1-1/e

For each arriving vertex, query edges according to ranking order

Page 7: Matching with Commitments

Bipartite Graphs – 2 sided RANKING

Shuffle both sides and simulate the RANKING algorithm

Match each arriving vertex to the highest available free neighbor.

Ranking on The vertices

[MY, KMT 11] : 2-sided RANKING attains a factor of 0.69

Page 8: Matching with Commitments

General Graphs – Shuffle Algorithm

[ADFS 95] : SHUFFLE attains a factor of 0.50000025

Question : Can we beat the factor for ADFS by using the stochastic information effectively ?

Aronson, Dyer, Frieze, Suen [STOC 95]

Page 9: Matching with Commitments

Results 0.573 factor algorithm running in O(n3)

time. No algorithm can achieve a factor better

than 0.896.

Page 10: Matching with Commitments

Scanning in order of pe

0.99

0.99

1.0

Observation : pe is not a good measure of the importance of an edge.

Page 11: Matching with Commitments

Define qe

qe = Pr[ e 2 Max. matching ]

0.99

0.99

1.0

0.99

0.99

0.0001

q - valuesp - valuesClaim : qe can be closely approximated by sampling from the distribution without probing any edges

Page 12: Matching with Commitments

Easy Case : qe/pe is large qe/pe ¸ ® > 0

OPT OPT

ALG

e not present

e present

Test e

No damage

done.e 2 Max

Matchinge 2 Max

Matching

OPT reduces by at most 2ALG increases by 1

OPT reduces by 1ALG increases by 1

1 – pe pe

> ®< 1 - ®

Bad case !!

Page 13: Matching with Commitments

Algorithm// Easy Case.

While there is e such that qe/pe ¸ ®Test edge eRe-compute qe

// Begin Hard Case ……

Page 14: Matching with Commitments

Hard Case: qe/pe0 for all edges

pe = log(n)/nqe = 1/nqe/pe = 1/log(n)

Page 15: Matching with Commitments
Page 16: Matching with Commitments

Technical Lemma

p1r1

p2r2

p3r3

p4r4

p5r5

p6r6

Lemma : There exists a distribution over Sn so that for ¼ drawn from this distribution : Pr[ Ai is the earliest occurring event in ¼ ] ¸ ri

Mild necessary conditions

Page 17: Matching with Commitments

Proof of main lemma

x1 ¸ x2 ¸ x3 …. ¸ xn ¸ 0

Has no Solution !!

Identitypermutation

Page 18: Matching with Commitments

Sk = {1,2, … k} , 8 k 2 [n]

Multiply each equation by xi – xi+1

=

=

From previous slide …Contradiction

Page 19: Matching with Commitments

Comments Distribution can be found by Linear

Programming Combinatorial algorithm that runs in

quadratic time r = q satisfies the necessary conditions

Conclusion : For any vertex we can sample its neighborhood so that each edge is chosen with probability at least qe

Sampled and found to exist

Page 20: Matching with Commitments

Implicationp1r1

p2r2

p3r3

p4r4p5r5

¼

Stop when you find the first edge

Conclusion : Each edge is chosen with probability at least qe

Page 21: Matching with Commitments

Back to bipartite graphsp1r1

p2r2

p3r3

p4r4p5r5

¼

Every vertex tests edges according toa freshly chosen ¼

Pr[ u is matched] ¸ 1- ∏(1-qe ) > 1 - e- qe > qe(1 – 1/e) = Qu(1 – 1/e)

u

Lemma : Sampling based algorithm also attains a factor of 1-1/e for bipartite graphs

Qu = qe

e 2 ±(u)E[OPT] = uQu

Page 22: Matching with Commitments

How about general graphs Idea : Randomly partition the vertex set

and restrict the graph to a bipartite graph

Every vertex tests edges according toa freshly chosen ¼

Pr[ u is matched] ¸ 1- ∏(1-qe ) > 1 - e- qe > qe(1 – 1/e) = ½Qu(1 – 1/e)

u

u

½Qu

Page 23: Matching with Commitments

Exploit qe/pe< ®qe/pe< ® … think ® = 0.1

¯ ri

Page 24: Matching with Commitments

General graphs again….

Pr[ u is matched] ¸ 1- ∏(1-¯qe ) > 1 - e- bqe > ¯ qe(1 – 1/e) = ½ ¯ Qu(1 – 1/e)

u

v Qv

Qv · ½ v

Scale the Requirements by ¯

Page 25: Matching with Commitments

Final Step – Concluding the hard case

Recurse on the remaining vertices Optimize ® and ¯ to balance the

performance of the algorithm for ‘easy’ and ‘hard’ case

Theorem : Our algorithm attains a factor of 0.573

Page 26: Matching with Commitments

Optimizations The sampling trick can be implemented

combinatorially in quadratic time Use approximate maximum matching

while recalculating qe – Almost linear time

Delay re-computing qe after scanning every edge – Only log(m) phases of re-computation.

Page 27: Matching with Commitments

Hard example Optimal algorithm solves a stochastic DP

with exponentially(in the number of edges) many states.

Solve this DP for G(4,p=0.64) E[Matching returned by optimal alg.] =

1.607 E[Max Matching in G(4,0.64) ] = 1.792Theorem : No algorithm can achieve a factor

better than 0.896

Page 28: Matching with Commitments