Loading in 5 sec....

Approximation algorithms for combinatorial allocation problemsPowerPoint Presentation

Approximation algorithms for combinatorial allocation problems

- 346 Views
- Updated 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.

Related searches for Approximation algorithms for combinatorial allocation problems

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

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

Uriel Feige (Microsoft Research)

Jan Vondrák (Princeton University)

Maximizing social welfare problems

m items

n players

Distribute items among players, to maximize:

where

utility of set S to player i.

Classes of utility functions problems

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

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

Related problem problems

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 problems

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

The New Results problems

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

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

(1-1/e)-approximation problems

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.

Fair Contention Resolution problems

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 problems

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

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.

Example problems

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 problems

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.

Improvement over ¾ for two players? problems

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

Improvement over ¾ for two players problems

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:

Improvement over ¾ for two players, cont. problems

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.

Improvement for n players, general case problems

- 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: problems

probability

players in A

players in B

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

Improvement for GAP problems

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

Summary of results problems

Download Presentation

Connecting to Server..