1 / 28

Matching with Commitments

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.

sirvat
Download Presentation

Matching with Commitments

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PushkarTripathi Georgia Institute of Technology Matching with Commitments China Theory Week 2011 Joint work with Kevin Costello and Prasad Tetali

  2. Objective : Maximize the number of goods exchanged

  3. Model Chen, Immorlica, Karlin, Mahdian, Rudra[ICALP 09] e present or not ?? pe u v Catch:If e is present then u and v are matched Objective:Maximize the expected number of vertices that get matched.

  4. Approximation Factor ° = min E[ ALG( І ) ] І = G(V, p) E[ Max matching in 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] For each arriving vertex, query edges according to ranking order Match each arriving vertex to the highest available free neighbor. Ranking on the vertices [KVV 90] : RANKING attains a factor of 1-1/e

  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 Aronson, Dyer, Frieze, Suen[STOC 95] [ADFS 95] : SHUFFLE attains a factor of 0.50000025 Question: Can we beat the factor for ADFS by using the stochastic information effectively ?

  9. Results • 0.573 factor algorithm running in O(n3) time. • No algorithm can achieve a factor better than 0.896.

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

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

  12. Easy Case : qe/peis large qe/pe¸® > 0 Test e 1 – pe pe e not present e present < 1 - ® > ® No damage done. e2 Max Matching e2 Max Matching ALG OPT OPT OPT reduces by at most 2 ALG increases by 1 OPT reduces by 1 ALG increases by 1 Bad case !!

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

  14. Hard Case: qe/pe0 for all edges pe = log(n)/n qe = 1/n qe/pe = 1/log(n)

  15. Technical Lemma p5 r5 p1 r1 p2 r2 p3 r3 p4 r4 p6 r6 Mild necessary conditions Lemma : There exists a distribution over Sn so that for ¼ drawn from this distribution : Pr[ Ai is the earliest occurring event in ¼ ] ¸ri

  16. Proof of main lemma x1¸x2¸x3 …. ¸xn¸ 0 Has no Solution !! Identity permutation

  17. Sk = {1,2, … k} , 8 k 2 [n] Multiply each equation by xi – xi+1 From previous slide … Contradiction = =

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

  19. Implication p1 r1 ¼ p2 r2 p3 r3 Stop when you find the first edge p4 r4 p5 r5 Conclusion: Each edge is chosen with probability at least qe

  20. Back to bipartite graphs p1 r1 ¼ p2 r2 Qu =  qe e 2±(u) Every vertex tests edges according to a freshly chosen ¼ p3 r3 E[OPT] = uQu p4 r4 u p5 r5 Pr[ u is matched] ¸ 1- ∏(1-qe ) > 1 - e- qe > qe(1 – 1/e) = Qu(1 – 1/e) Lemma : Sampling based algorithm also attains a factor of 1-1/e for bipartite graphs

  21. 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 ¼ u u ½Qu Pr[ u is matched] ¸ 1- ∏(1-qe ) > 1 - e- qe > qe(1 – 1/e) = ½Qu(1 – 1/e)

  22. Exploit qe/pe< ® qe/pe< ® … think ® = 0.1 ¯ri

  23. General graphs again…. Scale the Requirements by ¯ Qv v v Qv· ½ u Pr[ u is matched] ¸ 1- ∏(1-¯qe ) > 1 - e- bqe > ¯ qe(1 – 1/e) = ½ ¯ Qu(1 – 1/e)

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

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

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

More Related