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

Matching with Commitments

  • Upload
    sirvat

  • View
    49

  • Download
    0

Embed Size (px)

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

Citation preview

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