machine scheduling price of anarchy

32
Machine Scheduling Price of Anarchy Talk by Nimrod Fiat The 2014 Michal Feldman Seminar on the Price of Anarchy

Upload: afric

Post on 22-Feb-2016

58 views

Category:

Documents


0 download

DESCRIPTION

Machine Scheduling Price of Anarchy. Talk by Nimrod Fiat The 2014 Michal Feldman Seminar on the Price of Anarchy. Objective: Minimize Makespan. m machines, n jobs, - time of job i on machine j, for identical machines . M 2. P 3 ,2. M m. MACHINE scheduling – The general problem. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Machine Scheduling  Price of Anarchy

Machine Scheduling Price of Anarchy

Talk by Nimrod Fiat The 2014 Michal Feldman Seminar

on the Price of Anarchy

Page 2: Machine Scheduling  Price of Anarchy

MACHINE SCHEDULING – THE GENERAL PROBLEMObjective: Minimize Makespan

m machines, n jobs, - time of job i on machine j, for identical machines

M1

M2 M3Mm

P7,1P5,2 P9,3

Pn,3P4,m

P3,2

Page 3: Machine Scheduling  Price of Anarchy

MACHINE SCHEDULING – DIFFERENT VARIANTS

Identical machine scheduling - P||C • All machines are identical. Every job takes the same time to run on every

machine.

Bipartite machine scheduling - B||C • Every job can only be run on some subset of the machines For all

machines on which the job can be run, the execution time is equal.

Unrelated machine scheduling - R||C • Unrelated machines. Any job can have any execution time on every

machine.

Page 4: Machine Scheduling  Price of Anarchy

REDUCING THE PRICE OF ANARCHY

While forcing the optimal solution is difficult, one might try increasing the social good by designing rules and protocols. Hopefully, the independent and selfish choices of the users, given the rules of the protocols, result in a socially desired outcome. E.g.,

• Rules can charge payments encouraging jobs to some strategies.• A central authority can force strategies on some of the players.

Coordination policies, in our lecture, are games in which each machine has a local policy that dictates the order in which it completes the jobs assigned to it. This way, policies can give incentive for jobs to go to specific machines, by putting them close to the start of the line on these machines.

Page 5: Machine Scheduling  Price of Anarchy

STRONGLY LOCAL POLICIES

A policy that is only affected by the running times of the jobs that choose that machine.

E.g., in the ShortestFirst policy, jobs are scheduled in order of increasing running time.

Page 6: Machine Scheduling  Price of Anarchy

LOCAL POLICIESA policy that is only affected by the running time of the jobs assigned to it, on all machines. It is not affected by jobs that did not choose it.

An example of such a policy is the inefficiency-based policy:

A machine schedules the jobs assigned to it in non-decreasing order of inefficiency, i.e, the ratio between the processing time of the job on that machine over the minimum processing time of the job (on any machine).

Page 7: Machine Scheduling  Price of Anarchy

MOTIVATION

Strongly local policies are easy to implement in a distributed environment. They don’t require global knowledge, and require little communication.

Local policies require more information than strongly local policies, but are still more efficient than global policies.

Page 8: Machine Scheduling  Price of Anarchy

ORDERING POLICIESOrdering policy: jobs are scheduled based on a global ordering.

Deterministic ShortestFirst and Deterministic inefficiency-based policies are ordering policies.

Such policies break ties based on global IDs of the jobs

One can think of randomized policies, e.g, policies that break ties randomly. However, in randomized settings, the jobs might not be happy in retrospect, and want to reschedule themselves. It is not the focus of this lecture.

Page 9: Machine Scheduling  Price of Anarchy

CONSTANT PRICE OF ANARCHY FOR IDENTICAL MACHINE SCHEDULING

Theorem 1: there exists a strongly local search policy that solves the P||C problem with a price of anarchy equal to 2.

Proof: we will show this holds for the ShortestFirst policy.

Page 10: Machine Scheduling  Price of Anarchy

P||C POA = 2

• - Total execution time on machine • Order the jobs by non-decreasing order of

completion• Order the machines in non decreasing order of • OPT – MakeSpan of optimal solution

Page 11: Machine Scheduling  Price of Anarchy

CONSTANT PRICE OF ANARCHY FOR IDENTICAL MACHINE SCHEDULING

Note that

Last job on machine choose machine over machine 1, Last job on machine has execution time OPT on every machine,Thus, OPT

M1M2

M3Mm

P5,1P7,2 P9,3

P11,mOPT

Page 12: Machine Scheduling  Price of Anarchy

CONSTANT PRICE OF ANARCHY FOR IDENTICAL MACHINE SCHEDULING

Note:

M1M2

M3Mm

p71p52 p93 p8

Assume otherwise, OPT:

𝑅1

𝑅𝑚

OPT

Page 13: Machine Scheduling  Price of Anarchy

LOWER BOUND FOR STRONGLY LOCAL POLICIES IN UNRELATED MACHINES

Theorem 2: In R||C, For any strongly local ordering policy, the price of anarchy is at

Proof: for any strongly local ordering policy, we give an input, s.t. the price of anarchy is

Page 14: Machine Scheduling  Price of Anarchy

nj = for 1 ≤ j ≤ m .P, . . . , Pm strongly local ordering policies. groups of jobs. |Sj | = nj

Page 15: Machine Scheduling  Price of Anarchy

M1M2 Mm

P3,1

P7,1

P2,1

S1

j13

j7

j20j2

j14

P20,2

P14,2

𝑅1≤𝑛1∗2𝑛1

Sm

𝑅1

P42,m

P27,m

P42,m

P27,m

Page 16: Machine Scheduling  Price of Anarchy

M2

S1

j13

j7

j20j2

j14

P20,2

P14,2

S2

P17,2

j17

j32j12

P12,2

Jobs in Sj run before jobs in Sj+1

Page 17: Machine Scheduling  Price of Anarchy

M1

M2

M3

S2

1=

1=Z

Page 18: Machine Scheduling  Price of Anarchy

The MakeSpan of the Nash-Equilibrium is The optimal solution has MakeSpan 2.POA =

Mj

Sj

2=

Page 19: Machine Scheduling  Price of Anarchy

Relation to local search algorithms

Theorem 3: The set of Nash-equilibria for the ShortestFirst policy in R||C is precisely the set of solutions that can be output by the shortest-first greedy algorithm.

Page 20: Machine Scheduling  Price of Anarchy

assume shortest-first greedy, not NE

M1M2 Mj

p8,2

p20,1

p16,1p11,j

Page 21: Machine Scheduling  Price of Anarchy

Proof by induction on n, any NE is shortest-first greedy output

Job i is the last to complete. Note that if we remove job i, we remain in equilibrium

M1

M2Mj

pi,j

Page 22: Machine Scheduling  Price of Anarchy

UPPER BOUND FOR STRONGLY LOCAL POLICIES IN UNRELATED MACHINES

Theorem 4: the ShortestFirst policy for R||C has a price of anarchy of at most O(m).

Jobs are indexed in non-decreasing order of completion times.pi = minjpij - the shortest possible processing time of job i.Let Mi be the maximum MakeSpan for the schedule µ restricted to jobs .

Page 23: Machine Scheduling  Price of Anarchy

The schedule of the fist i jobs is the output of the shortest-first greedy algorithm.

M1

M2Mj

pi

pi-1,j

Mn

≤𝑀𝑖𝑀 𝑖−1

Page 24: Machine Scheduling  Price of Anarchy

UPPER BOUND ON R||C FOR LOCAL POLICIES

Theorem 5: The price of anarchy for R||C for the inefficiency-based policy is at most 2log(m)+2

Recall that the inefficiency-based policy for machine j orders the jobs assigned to it in the non-decreasing order of their inefficiency eij .

Recall also - pi = minj pij, eij = pij /pi .

Page 25: Machine Scheduling  Price of Anarchy

Notation

Let Mkj be the set of jobs (and parts of jobs) that are processed on machine j after time 2kOPT., Let Oj be the set of jobs processed on machine j by OPT.

Let fkj be the minimum inefficiency of all jobs in Okj, on machine j.

Page 26: Machine Scheduling  Price of Anarchy

Mj

machine j processes jobs of inefficiency at most fkj between times (2k − 2)OPT and (2k − 1)OPT. Proof by contradiction:

M1

M2(2𝑘−1)𝑂𝑃𝑇

2𝑘𝑂𝑃𝑇

(2𝑘−2)𝑂𝑃𝑇

𝑗3∈𝑂𝑘𝑗

𝑂𝑃𝑇

Page 27: Machine Scheduling  Price of Anarchy

Mj

Therefore: Rk−1,j − Rkj ≥ OPT /fkj .

(2𝑘−1)𝑂𝑃𝑇2𝑘𝑂𝑃𝑇

(2𝑘−2)𝑂𝑃𝑇

∑𝑖∈𝑀𝑘 −1, 𝑗

𝑝𝑖𝑗

∑𝑖∈𝑀𝑘 , 𝑗

𝑝𝑖𝑗

Mk-1,j/Mk,j

Page 28: Machine Scheduling  Price of Anarchy

Mj

All jobs in are computed by OPT at efficiency at most fkj.Therefore:.

j8

j11

𝑂𝑃𝑇

𝑗3∈𝑂𝑘𝑗

𝑗7∈𝑂𝑘𝑗

Page 29: Machine Scheduling  Price of Anarchy

, ≥

At the total processing time of all jobs is at most OPT. specificly, the total processing time of all jobs of inefficiency 1 is at most OPT.

Page 30: Machine Scheduling  Price of Anarchy

By 2(log(m)+1)OPT +OPT, jobs of inefficiency 1jobs will finish.

M1

MjM2 (2(log(m)+1)+1)OPT

OPT

𝑍 ≤∑𝑎𝑙𝑙 𝑗𝑜𝑏𝑠𝑜𝑓 𝑖𝑛𝑒𝑓𝑓𝑖𝑐𝑖𝑒𝑛𝑐𝑦 1≤≤𝑂𝑃𝑇

𝑍

Page 31: Machine Scheduling  Price of Anarchy

Any job not completed by (2(log(m)+1)+1)OPT, can now change to it’s optimal machine, and be completed by at most OPT (recall the total processing time of all remaining jobs is less than OPT).

Page 32: Machine Scheduling  Price of Anarchy

QUESTIONS?