Upload
afric
View
58
Download
0
Embed Size (px)
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
Citation preview
Machine Scheduling Price of Anarchy
Talk by Nimrod Fiat The 2014 Michal Feldman Seminar
on the 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
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.
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.
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.
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).
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.
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.
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.
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
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
CONSTANT PRICE OF ANARCHY FOR IDENTICAL MACHINE SCHEDULING
Note:
M1M2
M3Mm
p71p52 p93 p8
Assume otherwise, OPT:
𝑅1
𝑅𝑚
OPT
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
nj = for 1 ≤ j ≤ m .P, . . . , Pm strongly local ordering policies. groups of jobs. |Sj | = nj
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
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
M1
M2
M3
S2
1=
1=Z
The MakeSpan of the Nash-Equilibrium is The optimal solution has MakeSpan 2.POA =
Mj
Sj
2=
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.
assume shortest-first greedy, not NE
M1M2 Mj
p8,2
p20,1
p16,1p11,j
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
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 .
The schedule of the fist i jobs is the output of the shortest-first greedy algorithm.
M1
M2Mj
pi
pi-1,j
Mn
≤𝑀𝑖𝑀 𝑖−1
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 .
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.
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∈𝑂𝑘𝑗
𝑂𝑃𝑇
Mj
Therefore: Rk−1,j − Rkj ≥ OPT /fkj .
(2𝑘−1)𝑂𝑃𝑇2𝑘𝑂𝑃𝑇
(2𝑘−2)𝑂𝑃𝑇
∑𝑖∈𝑀𝑘 −1, 𝑗
𝑝𝑖𝑗
∑𝑖∈𝑀𝑘 , 𝑗
𝑝𝑖𝑗
Mk-1,j/Mk,j
Mj
All jobs in are computed by OPT at efficiency at most fkj.Therefore:.
j8
j11
𝑂𝑃𝑇
𝑗3∈𝑂𝑘𝑗
𝑗7∈𝑂𝑘𝑗
, ≥
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.
By 2(log(m)+1)OPT +OPT, jobs of inefficiency 1jobs will finish.
M1
MjM2 (2(log(m)+1)+1)OPT
OPT
𝑍 ≤∑𝑎𝑙𝑙 𝑗𝑜𝑏𝑠𝑜𝑓 𝑖𝑛𝑒𝑓𝑓𝑖𝑐𝑖𝑒𝑛𝑐𝑦 1≤≤𝑂𝑃𝑇
𝑍
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).
QUESTIONS?