approximation algorithms for combinatorial allocation problems l.
Skip this Video
Download Presentation
Approximation algorithms for combinatorial allocation problems

Loading in 2 Seconds...

play fullscreen
1 / 21

Approximation algorithms for combinatorial allocation problems - PowerPoint PPT Presentation

  • Uploaded on

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.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Approximation algorithms for combinatorial allocation problems' - arleen

Download Now 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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
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:


utility of set S to player i.


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.


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


w(S) = min{2|S|,4}







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.


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


Previous work


optimal unless P=NP

[Feige ’06]

Max SubAdd Welfare

All results with the assumption

of a demand oracle

except for GAP.


optimal unless P=NP

[Dobzinski, Nisan, Shapira ’05]

[Feige ’06]

Max XOS Welfare

Max SubMod Welfare



[Dobzinski, Shapira ’06]


[Fleischer, Goemans, Mirrokni, Sviridenko ’06]


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.

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.


in a nutshell

Each player: probability distribution xi,S => sample a random set Si

E[wi(Si)] = share of player i in the LP











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.


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.


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.


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.



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.

Same example for 2 players

Same example:

Player 1 wants one from each row.

Player 2 wants one from each column.


w1(S) = |π1(S)|, w2(S) = |π2(S)|

If anybody blocks a row/column,

We can get only 3 out of 4.



Player 1 values each column at $30.

Player 2 values each row at $30.


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.



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 ??


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’









=> Y is a good set for player 1:


Improvement over ¾ for two players, cont.









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.


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:

Choose randomly one of four allocation schemes:


players in A

players in B

Lemma: For a balanced solution, this achieves at least 0.645 LP.


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.