Download presentation

Presentation is loading. Please wait.

Published byCarol McClure Modified about 1 year ago

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

2
Objective : Maximize the number of goods exchanged

3
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]

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

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

6
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

7
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

8
General Graphs – Shuffle Algorithm [ADFS 95] : SHUFFLE attains a factor of Question : Can we beat the factor for ADFS by using the stochastic information effectively ? Aronson, Dyer, Frieze, Suen [STOC 95]

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

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

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

12
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 !!

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

14
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)

15

16
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

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

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

19
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

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

21
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

22
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

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

24
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 ¯

25
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

26
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.

27
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.] = E[Max Matching in G(4,0.64) ] = Theorem : No algorithm can achieve a factor better than 0.896

28

29
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

Similar presentations

© 2016 SlidePlayer.com Inc.

All rights reserved.

Ads by Google