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

## Presentation on theme: "MATCHING WITH COMMITMENTS Joint work with Kevin Costello and Prasad Tetali China Theory Week 2011 Pushkar Tripathi Georgia Institute of Technology."— Presentation transcript:

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

Objective : Maximize the number of goods exchanged

Model pepe ?? 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]

Approximation Factor ° = min E[ ALG( І ) ] E[ Max matching in G(V, p) ] І = G(V, p) Compare against omniscient adversary who knows the underlying graph

Greedy Matching  Try edges in arbitrary order.  Maximal matching in every instance.  ½ approximation for every instance. Greedy algorithm is a ½-approximate algorithm.

Bipartite Graphs Simulate 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

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

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]

Results  0.573 factor algorithm running in O(n 3 ) time.  No algorithm can achieve a factor better than 0.896.

Scanning in order of p e 0.99 1.0 Observation : p e is not a good measure of the importance of an edge.

Define q e q e = Pr[ e 2 Max. matching ] 0.99 1.0 0.99 0.0001 q - valuesp - values Claim : q e can be closely approximated by sampling from the distribution without probing any edges

Easy Case : q e /p e is large q e /p e ¸ ® > 0 OPT ALG e not presente present Test e No damage done. No damage done. e 2 Max Matching OPT reduces by at most 2 ALG increases by 1 OPT reduces by at most 2 ALG increases by 1 OPT reduces by 1 ALG increases by 1 OPT reduces by 1 ALG increases by 1 1 – p e pepe > ® < 1 - ® Bad case !!

Algorithm // Easy Case. While there is e such that q e /p e ¸ ® Test edge e Re-compute q e // Begin Hard Case ……

Hard Case: q e /p e  0 for all edges p e = log(n)/n q e = 1/n q e /p e = 1/log(n)

Technical Lemma p1r1p1r1 p2r2p2r2 p3r3p3r3 p4r4p4r4 p5r5p5r5 p6r6p6r6 Lemma : There exists a distribution over S n so that for ¼ drawn from this distribution : Pr[ A i is the earliest occurring event in ¼ ] ¸ r i Lemma : There exists a distribution over S n so that for ¼ drawn from this distribution : Pr[ A i is the earliest occurring event in ¼ ] ¸ r i Mild necessary conditions

Proof of main lemma x 1 ¸ x 2 ¸ x 3 …. ¸ x n ¸ 0 Has no Solution !! Identity permutation

S k = {1,2, … k}, 8 k 2 [n] Multiply each equation by x i – x i+1 = = From previous slide … Contradiction

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 q e Sampled and found to exist

Implication p1r1p1r1 p2r2p2r2 p3r3p3r3 p4r4p4r4 p5r5p5r5 ¼ Stop when you find the first edge Conclusion : Each edge is chosen with probability at least q e

Back to bipartite graphs p1r1p1r1 p2r2p2r2 p3r3p3r3 p4r4p4r4 p5r5p5r5 ¼ Every vertex tests edges according to a freshly chosen ¼ Pr[ u is matched] ¸ 1- ∏ ( 1- q e ) > 1 - e -  q e >  q e (1 – 1/e) = Q u (1 – 1/e) u Lemma : Sampling based algorithm also attains a factor of 1-1/e for bipartite graphs Q u =  q e e 2 ± (u) E[OPT] =   Q u

How about general graphs Idea : Randomly partition the vertex set and restrict the graph to a bipartite graph Every vertex tests edges according to a freshly chosen ¼ Pr[ u is matched] ¸ 1- ∏ ( 1- q e ) > 1 - e -  q e >  q e (1 – 1/e) = ½Q u (1 – 1/e) u u ½Q u

Exploit q e /p e < ® q e /p e < ® … think ® = 0.1 ¯ ri¯ ri

General graphs again…. Pr[ u is matched] ¸ 1- ∏ ( 1- ¯ q e ) > 1 - e -  q e >  ¯ q e (1 – 1/e) = ½ ¯ Q u (1 – 1/e) u v QvQv Q v · ½ v Scale the Requirements by ¯

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

Optimizations  The sampling trick can be implemented combinatorially in quadratic time  Use approximate maximum matching while recalculating q e – Almost linear time  Delay re-computing q e after scanning every edge – Only log(m) phases of re-computation.

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.792 Theorem : No algorithm can achieve a factor better than 0.896

Algorithm Recap // Easy Case. While there is e such that q e /p e ¸ ® Test edge e Re-compute q e and p e // Hard Case While there are untested edges Partition vertices

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

Similar presentations