1 / 21

Approximation algorithms for combinatorial allocation problems

Approximation algorithms for combinatorial allocation problems. Uriel Feige (Microsoft Research) Jan Vondr á k (Princeton University). Maximizing social welfare. m items. n players. Distribute items among players, to maximize: . where. utility of set S to player i.

arleen
Télécharger la présentation

Approximation algorithms for combinatorial allocation problems

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. Approximation algorithms for combinatorial allocation problems Uriel Feige (Microsoft Research) Jan Vondrák (Princeton University)

  2. Maximizing social welfare m items n players Distribute items among players, to maximize: where utility of set S to player i.

  3. Classes of utility functions • We always assume: monotonicity • normalization • Additional conditions, weaker to stronger: • Subadditivity: …”no complementarity” • XOS: … maximum of linear functions • Submodularity: • … decreasing marginal values These conditions prevent “complementarity”, i.e. items increasing each other’s utility.

  4. Models of accessing utility functions • Value queries: For a given set S, we can ask what is wi(S) = ? • Demand queries: For given prices pj, we can ask what is the set S • maximizing wi(S) – p(S)? Example: w(S) = min{2|S|,4} $2 $1 $5 $3 $1 $1 w(S)-p(S) = 2 Note: It might be NP-hard to answer demand queries, even for wi(S) submodular. When demand queries are considered, we assume that wi(S) are such that this is not the case, or the players have sufficient power to answer such queries.

  5. Related problem The Generalized Assignment Problem (GAP): Utility functions are linear: Each item j has value vij and size sij for player i. The set allocated to player i must satisfy a capacity constraint Goal: maximize

  6. Previous work ½-approximation, optimal unless P=NP [Feige ’06] Max SubAdd Welfare All results with the assumption of a demand oracle except for GAP. (1-1/e)-approximation, optimal unless P=NP [Dobzinski, Nisan, Shapira ’05] [Feige ’06] Max XOS Welfare Max SubMod Welfare GAP (1-1/e)-approximation [Dobzinski, Shapira ’06] (1-1/e)-approximation [Fleischer, Goemans, Mirrokni, Sviridenko ’06]

  7. The New Results • There is a (1-1/e+ε)-approximation algorithm for Maximum • Submodular Welfare (with a demand oracle). • There is a (13/17)-approximation algorithm for Maximum • Submodular Welfare with 2 players. • There exists ε>0 such that it is NP-hard to approximate • Maximum Submodular Welfare within 1- ε, even with a demand • oracle (and even for two players). • There is a (1-1/e+ε)-approximation algorithm for GAP.

  8. How is 1-1/e achieved? • Exponential size; however, can be solved in many cases • (bounded-size utility functions, GAP [FGMS]) • in general, using the demand oracle. • There is an optimal solution of polynomial size.

  9. (1-1/e)-approximation in a nutshell Each player: probability distribution xi,S => sample a random set Si E[wi(Si)] = share of player i in the LP S6 S9 S3 S4 S1 S8 S5 S2 S7 S10 Issues: (1) some items in multiple sets => resolve conflicts. (2) some items are not allocated at all. Pr[item not allocated] = (1-p1) (1-p2) (1-p3)…(1-pn) < 1/e.

  10. Fair Contention Resolution Problem: Players compete for an item, independently with probabilities p1,p2,p3,…,pn. Random subset A of them show up. How do you decide who gets it, so that players are rewarded proportionally to pi ? • Fair Contention Resolution technique: • If A is empty, nothing. • If A = {k}, player k gets the item. • If |A|>1, then give it to each competing player k with this probability. Lemma: Each player, conditioned on competing for the item, receives it with the same probability.

  11. Improvement for fixed n Every player receives the item with the same conditional probability => this probability must be equal to • Since , we have • this technique achieves a factor of 1–(1-1/n)n > 1–1/e (e.g., 3/4 for two players). But: we want to achieve an improvement independent of n.

  12. How to improve 1–1/e ?? First idea: it should be trivial. The reason why we get 1-1/e … 1/e-fraction of items unused. Distribute them among players. How much profit does it yield? Sometimes none.

  13. Example n players, nn items arranged in a hypercube Utility of player i: projection onto dim. i Fractional solution: xi,H(i,j)=1/n H(i,j) = {x∈[n]n: xi=j} LP = nn • But: • Sampling one set for each player covers nn – (n-1)n items. • This is 1 – (1-1/n)n of the optimum. • We cannot improve this by distributing the leftovers, in any way.

  14. Same example for 2 players Same example: Player 1 wants one from each row. Player 2 wants one from each column. π1 w1(S) = |π1(S)|, w2(S) = |π2(S)| If anybody blocks a row/column, We can get only 3 out of 4. π2 Solution Player 1 values each column at $30. Player 2 values each row at $30.

  15. Improvement over ¾ for two players? • Let player 1 sample S, player 2 sample T. • Define pj=Pr[j ∈ S], qj=Pr[j∈T]. • 2. We can assume pj=qj=1/2, otherwise • Fair Contention Resolution gives ρ>3/4. S T 3. Let player 1 go first and take S, player 2 takes the rest: => player 2 gets at least 1/2 of her desired value. 4. Similarly let player 2 go first, etc. => on the average, each player gets 3/4 of their share. Is it possible that the complement any good set for player 1 is worth only 1/2 of player 2’s good set ??

  16. Improvement over ¾ for two players We can assume: Define new random sets: let player 1 sample two sets S,S’ let player 2 sample two sets T,T’ S T S’ T’ S’ ~S’ ~T T => Y is a good set for player 1:

  17. Improvement over ¾ for two players, cont. S T S’ T’ S’ ~S’ ~T T We can assume: E[w1(Y)] = E[w1(S)], E[w2(Z)] = E[w2(T)]. Trick of construction: Y and Z are not independent. • By resolving conflicts between Y and Z, we lose only 3/16 rather than 1/4. We retrieve 13/16 LP in this case.

  18. Improvement for n players, general case • If the fractional solution is unbalanced (there are dominant players • for many items) then use the Fair Allocation Procedure. • If the fractional solution is balanced, divide players into two groups; • use the ideas for 2 players to treat the 2 groups. • Sample 2 sets Si , Si’ for each player i∈A; Ti, Ti’ for i∈B. • Let • Resolve contention in each group separately. • As in the case of two players, define:

  19. Choose randomly one of four allocation schemes: probability players in A players in B Lemma: For a balanced solution, this achieves at least 0.645 LP.

  20. Improvement for GAP • Consider a fractional solution xi,S and the standard randomized • rounding algorithm. 1/e-fraction of items still available. • Remaining items always bring value here, but maybe we cannot • pack them due to capacity constraints. • We can assume that • (1) the fractional solution is balanced • (2) item values are uniform • (3) all sets S allocated to player ihave roughly similar values • (Otherwise previous algorithms gain compared to 1-1/e.) • In this case, we prove that there is enough value in migrant items. • Migrant items have the property that with some probability, each • player can pack migrant items from two sets instead of one.

  21. Summary of results

More Related