Truthful mechanism design for multi dimensional scheduling via cycle monotonicity
This presentation is the property of its rightful owner.
Sponsored Links
1 / 39

Truthful Mechanism Design for Multi-Dimensional Scheduling via Cycle Monotonicity PowerPoint PPT Presentation


  • 74 Views
  • Uploaded on
  • Presentation posted in: General

Truthful Mechanism Design for Multi-Dimensional Scheduling via Cycle Monotonicity. Ron Lavi IE&M, The Technion. Chaitanya Swamy U. of Waterloo. and. Job scheduling. n tasks (“jobs”) to be assigned to m workers (“machines”) Each machine, i, needs p ij time units to complete job j.

Download Presentation

Truthful Mechanism Design for Multi-Dimensional Scheduling via Cycle Monotonicity

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


Truthful mechanism design for multi dimensional scheduling via cycle monotonicity

Truthful Mechanism Design for Multi-Dimensional Scheduling via Cycle Monotonicity

Ron Lavi

IE&M, The Technion

Chaitanya Swamy

U. of Waterloo

and


Job scheduling

Job scheduling

  • n tasks (“jobs”) to be assigned to m workers (“machines”)

  • Each machine, i, needs pij time units to complete job j.

  • Our goal: to assign jobs to machines to complete all jobs as soon as possible. More formally:

    • Let Si denote the set of jobs assigned to machine i, and define the load of a machine: li = jSipij.

    • Our goal is then to minimize the maximal load (a.k.a the “makespan” of the schedule).


Example

Example

Two machines, three jobs:

Jobp1jp2j

121

223

334

A possible assignment:

J2

J3

J1

1

2


Example1

Example

Two machines, three jobs:

Jobp1jp2j

121

223

334

A possible assignment:

l1 = 3

l2 = 4

J2

J3

J1

Makespan = 4

1

2


Scheduling and mechanism design

Scheduling and Mechanism Design

  • The workers/machines are selfish entities, each one is acting to maximize her individual utility.

  • If job j is assigned to machine i, it will incur a cost pij for executing the job.

  • A machine may get a payment, Pi, and its total utility is: Pi - li

  • Question: design a truthful mechanism (in dominant strategies) that will reach a “close to optimal” makespan.

    • First raised by Nisan and Ronen (GEB, 2001).

    • Basic observation: makespan minimization is inherently different than welfare maximization, hence VCG performs poorly (obtains makespan of up to m times the optimum).


Example2

Example

Two machines, three jobs:

Jobp1jp2j

121

223

334

A possible assignment:

J2

J3

J1

Max. Makespan = 4

Tot. Welfare = -3 - 3 -1 = -7

1

2


Example3

Example

Two machines, three jobs:

Jobp1jp2j

121

223

334

A possible assignment:

J2

J3

J1

Max. Makespan = 5

Tot. Welfare = -2 - 3 -1 = -6

1

2


Why is this question important 1

Why is this question important? (1)

  • Significant to several disciplines:

    • Computer Science

    • Operations Research

  • Makespan minimization is similar to a Rawls’ max-min criteria -- gives a justification from social choice theory.

    • The implicit goal: assign tasks to workers in a fair manner (rather than in a socially efficient manner).

    • Can we do it via classic mechanism design?


Why is this question important 2

Why is this question important? (2)

  • The general status of mechanism design for multi-dimensional domains is still unclear.

    • What social choice functions can be implemented?

    • Few possibilities, few impossibilities, more questions than answers.

  • Scheduling is a multi-dimensional domain, and is becoming one of the important domains for which we need to determine the possibilities - impossibilities border.


Current status 1

Current status (1)

  • Nisan and Ronen (1999): a lower bound of 2 for truthful deterministic approximations (regardless of computational issues).

    • But only give a m-approximation upper bound (VCG) -- the gap is very large.

  • Christodoulou, Koutsoupias, and Vidali (2007): an improved lower bound (about 2.4).

  • Mu’alem and Schapira (2007): a 2-(1/m) lower bound for randomized mechanisms and truthfulness in expectation.

  • No non-trivial truthful approximation (i.e. o(m)) is known!


Current status 2

Current status (2)

  • Archer and Tardos (2001) study the special case of related machines: each machine has speed si,and pij = pj/si.

    • The optimum is implementable (but NP-hard).

    • Many truthful approximations suggested since. The current-best: a deterministic 3-approximation by Kovacs (2005).

    • Also, a truthful PTAS for a fixed number of machines, by Andelman, Azar, and Sorani (2004).

  • Note: this is a single-dimensional domain, thus it demonstrates again the contrast between single and multi dimensionality.


A multi dimensional special case

A multi-dimensional special case

  • We study a special case of two fixed values: pij {Lj , Hj}

    • Values are fixed and known to the mechanism.

    • Still a multi-dimensional domain.

    • Generalizes the classic “restricted machines” model (pij {pj, }).

  • Result 1: The optimal allocation is not implementable deterministically. Best possible truthful approximation > 1.14.

    • Even when Lj = L, Hj = H

    • differentiates this case from the related machines case, another consequence of the multi-dimensionality.


Main results

Main Results

  • Result 2: a method to convert any c-approximation algorithm for the two values case to a randomized truthful in expectation mechanism that obtains a 3c-approximation.

    • This is not polynomial time

  • Result 3: (when Lj = L, Hj = H) a deterministic, truthful, and polynomial time, 2-approximation.

  • Twist (novelty?) in analysis: we rely on monotonicity conditions, not on explicit price constructions.

    • Common for single-dimensional domains (as initiated by Myerson), but not for multi-dimensional domains.


Truthfulness

Truthfulness

  • Define:

    • An “alternatives set”, A. In our case, all possible assignments of jobs to machines.

    • The “type” of a player, vi : A -> R. Here vi is a negative number (the minus of a sum of several “low”s and “high”s).

    • Let Vi denote the domain of all valid types.

    • An algorithm is a function f: V1 . . .  Vn -> A.

  • A mechanism is a tuple M = (f, P1, , Pm),where Pi : V  R is the payment function for player i.

  • Dfn:Truthful Mechanisms.  vi, v-i, wi :

    vi(f(vi, v-i)) + Pi(vi, v-i) > vi(f(wi , v-i)) + Pi(wi, v-i)

  • For a given algorithm, how do we check if such prices exist?

  • Can we come up with an equivalent definition that does not include existential qualifiers, but, rather, only conditions on f.


Weak monotonicity w mon

Weak monotonicity (W-MON)

  • DFN (Lavi, Mu’alem, and Nisan ‘03, Bikhchandani et. al. ‘06): Suppose f(vi, v-i)=a and f(v’i, v-i)=b. Then

    v’i(b) - vi(b) > v’i(a) - vi(a)

  • If there exist prices P such that (f,P) is truthful the f must satisfy weak-monotonicity.

    • If there exist such prices we say that f is implementable.

  • THM (Saks and Yu, 2005): In convex domains, f is implementable if and only if it is weakly monotone.


What does w mon mean in our case

What does w-mon mean in our case?

H

All values are for machine 1.

H

H

L

L

L

1

2


What does w mon mean in our case1

What does w-mon mean in our case?

HL

What happens if machine 1 decreases two jobs to L?

HL

H

L

L

L

1

2


What does w mon mean in our case2

What does w-mon mean in our case?

WMON: v’i(b) - vi(b) > v’i(a) - vi(a)

HL

= 2(H - L)

HL

H

=> The two jobs that decreased must remain on 1.

L

L

L

1

2


What does w mon mean in our case3

What does w-mon mean in our case?

And what if an outside job is decreased as well?

HL

HL

HL

L

L

L

1

2


What does w mon mean in our case4

What does w-mon mean in our case?

WMON: v’i(b) - vi(b) > v’i(a) - vi(a)

HL

= 2(H - L)

HL

HL

=> At least two out of the three jobs that were decreased must be assigned to 1 (doesn’t matter which two, only the numbers matter).

L

L

L

1

2


What does w mon mean in our case5

What does w-mon mean in our case?

And if one job is increased from L to H?

HL

HL

HL

H

L

L

L

1

2


What does w mon mean in our case6

What does w-mon mean in our case?

WMON: v’i(b) - vi(b) > v’i(a) - vi(a)

HL

= (H - L)

HL

HL

=> If the increased job remains on 1 then two of the jobs that were decreased must be assigned to 1, or alternatively we can “move out” the increased job and keep only one of the decreased jobs.

H

L

L

L

1

2


What does w mon mean in our case7

What does w-mon mean in our case?

HL

etc. etc. etc. …

You can now see where the monotonicity term comes from.

We thus get an algorithmic condition that is equivalent to the game-theoretic definition.

HL

HL

H

L

L

L

1

2


Cycle monotonicity

Cycle monotonicity

  • W-MON may be insufficient for implementability in non-convex domains, like our discrete scheduling domain.

  • Rochet (1987, JME) describes “cycle monotonicity”, which generalizes W-MON, and is equivalent to implementability on every domain (with finite alternative space).

    • Gui, Muller, and Vohra (2004) derive prices generically for every cycle-monotone function.

    • Thus any cycle monotone algorithm can be “automatically” converted to a truthful mechanism.(this can also be done for W-MON algorithms on convex domains).

  • That’s our way of analysis in the paper. In the talk, I will concentrate on W-MON, for the sake of simplicity.


Fractional allocations

Fractional allocations

  • For the purpose of analysis we consider the case where jobs may be assigned fractionally:

    • xij denotes the fraction of job j assigned to machine i.

    • We have ixij = 1 for every j (every job is fully assigned).

    • The load of machine i is li = jxij pij

    • Machine i’s value is still minus her load, and her utility is still Pi - li

  • Cycle monotonicity is still equivalent to truthfulness and we will look for for truthful and approximately optimal fractional mechanisms.

    • This is just an intermediate analysis step. We do not change our actual initial goal.


Rounding a fractional solution

“Rounding” a fractional solution

  • We will process a fractional assignment xij to a randomized assignment: Xij = Pr(j is assigned to i).

  • Lavi and Swamy (2005): given a fractional truthful mechanism, if E[Xij] = xij then there exist prices such that the randomized mechanism is truthful in expectation.

  • Kumar, Marathe, Parthasarathy, and Srinivasan (2005): given a fractional allocation, one can construct Xij such that

    • E[Xij]= xij

    • For every i, (w.p. 1), jXij pij < jxij pij + maxj: 0 < xij < 1 pij.

  • Thus we move from fractional deterministic mechanisms to integral randomized mechanisms, maintaining truthfulness, and almost the same approximation guarantee.


Fractional w mon

Fractional W-MON

  • Recall that w-mon states:f(vi, v-i)=a and f(v’i, v-i)=b => v’i(b) - vi(b) > v’i(a) - vi(a)


Fractional w mon1

Fractional W-MON

  • Recall that w-mon states:f(vi, v-i)=a and f(v’i, v-i)=b => v’i(b) - vi(b) > v’i(a) - vi(a)

  • In our setting, f(pi, p-i) = x and f(p’i, p-i) = x’ implies:

    - jx’ij p’ij


Fractional w mon2

Fractional W-MON

  • Recall that w-mon states:f(vi, v-i)=a and f(v’i, v-i)=b => v’i(b) - vi(b) > v’i(a) - vi(a)

  • In our setting, f(pi, p-i) = x and f(p’i, p-i) = x’ implies:

    - jx’ij p’ij + jx’ij pij


Fractional w mon3

Fractional W-MON

  • Recall that w-mon states:f(vi, v-i)=a and f(v’i, v-i)=b => v’i(b) - vi(b) > v’i(a) - vi(a)

  • In our setting, f(pi, p-i) = x and f(p’i, p-i) = x’ implies:

    - jx’ij p’ij + jx’ij pij>- jxij p’ij + jxij pij


Fractional w mon4

Fractional W-MON

  • Recall that w-mon states:f(vi, v-i)=a and f(v’i, v-i)=b => v’i(b) - vi(b) > v’i(a) - vi(a)

  • In our setting, f(pi, p-i) = x and f(p’i, p-i) = x’ implies:

    - jx’ij p’ij + jx’ij pij>- jxij p’ij + jxij pij

    or, equivalently,

    jx’ij (pij - p’ij) > jxij (pij -p’ij)


Fractional w mon5

Fractional W-MON

  • Recall that w-mon states:f(vi, v-i)=a and f(v’i, v-i)=b => v’i(b) - vi(b) > v’i(a) - vi(a)

  • In our setting, f(pi, p-i) = x and f(p’i, p-i) = x’ implies:

    - jx’ij p’ij + jx’ij pij>- jxij p’ij + jxij pij

    or, equivalently,

    jx’ij (pij - p’ij) > jxij (pij -p’ij)

    We in fact show a stronger condition:

    j, x’ij (pij - p’ij) >xij (pij -p’ij)


Obtaining fractional cycle monotonicity

Obtaining fractional cycle monotonicity

Lemma: suppose that a fractional algorithm, A, satisfies:

  • pij = Lj => xij> 1/m

  • pij = Hj => xij< 1/m

    Then A satisfies w-mon.

    Proof: Suppose A(pi, p-i) = x, A(p’i, p-i) = x’. We need j:

    x’ij (pij - p’ij) >xij (pij -p’ij)

  • If pij = p’ij then clearly x’ij (pij - p’ij) = xij (pij -p’ij)


Obtaining fractional cycle monotonicity1

Obtaining fractional cycle monotonicity

Lemma: suppose that a fractional algorithm, A, satisfies:

  • pij = Lj => xij> 1/m

  • pij = Hj => xij< 1/m

    Then A satisfies w-mon.

    Proof: Suppose A(pi, p-i) = x, A(p’i, p-i) = x’. We need j:

    x’ij (pij - p’ij) >xij (pij -p’ij)

  • If pij = p’ij then clearly x’ij (pij - p’ij) = xij (pij -p’ij)

  • If pij > p’ij then pij = Hj and p’ij = Lj => x’ij> 1/m > xij


Obtaining fractional cycle monotonicity2

Obtaining fractional cycle monotonicity

Lemma: suppose that a fractional algorithm, A, satisfies:

  • pij = Lj => xij> 1/m

  • pij = Hj => xij< 1/m

    Then A satisfies w-mon.

    Proof: Suppose A(pi, p-i) = x, A(p’i, p-i) = x’. We need j:

    x’ij (pij - p’ij) >xij (pij -p’ij)

  • If pij = p’ij then clearly x’ij (pij - p’ij) = xij (pij -p’ij)

  • If pij > p’ij then pij = Hj and p’ij = Lj => x’ij> 1/m > xij

  • Similarly if pij < p’ij then x’ij (pij - p’ij) >xij (pij -p’ij)


A fractional algorithm

A fractional algorithm

ALG: given any integral allocation, x*, convert it to a

fractional allocation x as follows. For every (i,j) s.t. x*ij=1, do:

  • If pij = Hj then set xij=1/m for any i,j.

  • If pij = Lj then set xi’j=1/m for any i’ s.t. pi’j=Lj, and set xij so that the sum of fractions will be equal to 1.


A fractional algorithm1

A fractional algorithm

ALG: given any integral allocation, x*, convert it to a

fractional allocation x as follows. For every (i,j) s.t. x*ij=1, do:

  • If pij = Hj then set xij=1/m for any i,j.

  • If pij = Lj then set xi’j=1/m for any i’ s.t. pi’j=Lj, and set xij so that the sum of fractions will be equal to 1.

    Properties:

    • W-MON follows from previous lemma.

    • If x* is c-approx then x is 2c-approx: each machine gets additional load which is at most the total original load times 1/m, i.e. at most the original makespan.

  • This converts any algorithm to a truthful fractional mechanism. With the “rounding” method, we get a randomized integral mechanism.


Remarks

Remarks

  • In particular, we can take x* to be the optimal allocation. This will give us a 3-approximation randomized integral mechanism which is truthful in expectation.

  • This has two drawbacks:

    • It is not polynomial-time

    • Truthfulness in expectation is weaker than deterministic truthfulness (e.g. requires assuming risk-neutrality).

  • With all-identical lows and highs: We get a deterministic truthful mechanism, with a better approximation ratio, 2.

    • Constructions and observations again use cycle monotonicity, but are completely different otherwise.

    • Proof: uses graph flows, is longer and less straight-forward.


Summary

Summary

  • Study multi-dimensional scheduling, a two-fold motivation:

    • A natural problem, related to social choice theory, and to classic CS and OR.

    • Explore in general multi-dimensional mechanism design, and develop new techniques/insights.

  • Demonstrate how to use W-MON / Cycle-Mon to obtain positive results.

  • Actual results are for the “two values” case:

    • A general method to convert any algorithm to a truthful in expectation mechanism with almost the same approx.

    • A deterministic 2-approx. truthful mechanism.

    • OPT is not implementable, best approx > 1.14.


  • Login