Coordination Mechanisms for Unrelated Machine Scheduling

32
Coordination Mechanisms for Unrelated Machine Scheduling Yossi Azar joint work with Kamal Jain Vahab Mirrokni

description

Coordination Mechanisms for Unrelated Machine Scheduling. Yossi Azar joint work with Kamal Jain Vahab Mirrokni. Price on Anarchy [KP, RT]. Selfish users User goal: minimize its cost Nash Equilibrium (NE) System goal (e.g. Social welfare) The worst ratio of NE cost to OPT cost. - PowerPoint PPT Presentation

Transcript of Coordination Mechanisms for Unrelated Machine Scheduling

Page 1: Coordination Mechanisms for Unrelated Machine Scheduling

Coordination Mechanisms for Unrelated Machine Scheduling

Yossi Azarjoint work with

Kamal JainVahab Mirrokni

Page 2: Coordination Mechanisms for Unrelated Machine Scheduling

Price on Anarchy [KP, RT]

• Selfish users

• User goal: minimize its cost

• Nash Equilibrium (NE)

• System goal (e.g. Social welfare)

• The worst ratio of NE cost to OPT cost

Page 3: Coordination Mechanisms for Unrelated Machine Scheduling

Price of Anarchy Concept

• Not algorithmic

• Only analysis

• What to do if PoA is large

• How to influence the system

Page 4: Coordination Mechanisms for Unrelated Machine Scheduling

Possible Solutions

• Change the system (add tolls, payments)

• Stackelberg strategy = control some users

• Disadvantages: changing the settings, global knowledge

• Challenge: influence within the same setting and locally (distributed)

Page 5: Coordination Mechanisms for Unrelated Machine Scheduling

Coordination Mechanism [CKN]

• Mechanism: local policy (algorithm) that assigns a cost for each strategy of the user

• Advantages: local, same type of cost

• Goal: achieving good NE

• Example: scheduling jobs on machines

Page 6: Coordination Mechanisms for Unrelated Machine Scheduling

Unrelated Machine Scheduling

• m unrelated machines

• n jobs – each owned by different user

• p(i,j) - processing time of job i on machine j

• System goal: minimize completion time

• User goal: minimize its own completion time

• m unrelated machines

• n jobs – each owned by different user

• p(i,j) - processing time of job i on machine j

• System goal: minimize completion time

• User goal: minimize its own completion time

Page 7: Coordination Mechanisms for Unrelated Machine Scheduling

Unrelated Machines Scheduling

Machine A

A

B

A

B? ?

Machine B

Page 8: Coordination Mechanisms for Unrelated Machine Scheduling

Coordination Mechanism for Scheduling

Policy for each machine (algorithm) which

decides how to schedule jobs assigned to it

Each Policy induces NE on jobs

Page 9: Coordination Mechanisms for Unrelated Machine Scheduling

Local Scheduling Policies

A A

Shortest-First Policy Longest-First Policy

B B

A A

Page 10: Coordination Mechanisms for Unrelated Machine Scheduling

Type of Policies

• Local policy – depends on jobs assigned to machine

• Strongly local policy - depends only on processing time of jobs on that machine

• Ordering Policy = IIA (independence of irrelevant alternative)

Page 11: Coordination Mechanisms for Unrelated Machine Scheduling

Challenge

Design policies that results in

good NE (i.e. low PoA)

Page 12: Coordination Mechanisms for Unrelated Machine Scheduling

PoA of Longest First

• Results in poor NE

• The PoA is unbounded even for 2 machines

• The optimum completion time is low

• The completion time of NE is large

Page 13: Coordination Mechanisms for Unrelated Machine Scheduling

Unrelated Machines Scheduling

Machine A

A

B

A

B? ?

Machine B

Page 14: Coordination Mechanisms for Unrelated Machine Scheduling

Equilibrium for Longest First

A

B

A

B

Page 15: Coordination Mechanisms for Unrelated Machine Scheduling

Previous Results

• Identical Machines: constant [CKN]

• Related: constant, log m [CV,ILMS]

• Restricted assignment: log m [ILMS]

• Unrelated Machines: m (IK,DJ,ILMS)

Page 16: Coordination Mechanisms for Unrelated Machine Scheduling

Main Results

Negative Results (strongly local):

• PoA of any strongly local policy-at least

m/2

• In particular, PoA of Shortest-First is of

order m

• Resolve an open question from 1977

(Alg D by Ibarra and Kim)

Page 17: Coordination Mechanisms for Unrelated Machine Scheduling

Main Results

Positive Results (local):

• Local ordering policy with PoA of O(log m)

• Any local ordering policy – at least log m

• Pure Nash + Convergence O(log^2 m)

• More results on convergence …

Page 18: Coordination Mechanisms for Unrelated Machine Scheduling

Lower Bound for Strongly Local Policy

• We start with Shortest-First

• Extend it to arbitrary strongly local

IIA policy

• Shortest-First is interesting by its

own

Page 19: Coordination Mechanisms for Unrelated Machine Scheduling

Shortest-First

• Approx factor known to be at most m

• NE can be computed by shortest-first

greedy algorithm

(Alg D by Ibarra and Kim)

• An open question from 1977

• We show it is at least m/2

Page 20: Coordination Mechanisms for Unrelated Machine Scheduling

Idea of the Proof

• m types of jobs

• Type j can be scheduled on machines j &

j+1

• Processing time of type j on machine j is

low and on machine j+1 is high (ratio is j)

• All jobs on machine j have almost the

same processing time

Page 21: Coordination Mechanisms for Unrelated Machine Scheduling

Example for Shortest-First

?

B

C

A

? ?

Page 22: Coordination Mechanisms for Unrelated Machine Scheduling

Idea of the Proof

• OPT assign all jobs of type j to machine j

• Number of jobs is chosen such that OPT

has the same completion time for all

machines

Page 23: Coordination Mechanisms for Unrelated Machine Scheduling

Optimal Assignment

A

B

C

Page 24: Coordination Mechanisms for Unrelated Machine Scheduling

Idea of the Proof

• In NE about half jobs of type j are on

machine j and half on machine j+1

• Completion time of NE grows linearly in

m

Page 25: Coordination Mechanisms for Unrelated Machine Scheduling

Equilibrium for Shortest-First

?

B

C

A

? ?

Page 26: Coordination Mechanisms for Unrelated Machine Scheduling

Extend to Arbitrary Strongly Local

• Structure is similar to lower bound

for Shortest-First

• Arbitrary ordering function is given

for each machine

• Indices of jobs are chosen to behave

similar to the above example

Page 27: Coordination Mechanisms for Unrelated Machine Scheduling

Efficiency Based Algorithm

• Order jobs on each machine by their

efficiency

• Efficiency of job on machine is:

The ratio between job’s best processing

time to its processing time on this

machine

• PoA of algorithm is O(log m)

Page 28: Coordination Mechanisms for Unrelated Machine Scheduling

Equilibrium Improves

?

B

C

A

? ?

Page 29: Coordination Mechanisms for Unrelated Machine Scheduling

Efficiency Based Algorithm

• Unfortunately – pure NE may not

exist

• Iterative improvement may cycle

• Modified algorithm guarantees

convergence and pure NE with PoA

of O(log^2 m)

Page 30: Coordination Mechanisms for Unrelated Machine Scheduling

Modified Algorithm

• Each machine simulate log m submachines

(by round robin)

• Submachine k of machine j handles jobs

on efficiency between 2^{-k} and 2^{-

k+1}

• Jobs are ordered on submachine by

Shortest-First

• PoA of algorithm is O(log^2 m)

Page 31: Coordination Mechanisms for Unrelated Machine Scheduling

Summary

Coordination Mechanism:

• Influence on the quality of the equilibrium

Unrelated Machines:

• m – lower bound

• Shortest-First is at least m

• Local order by efficiency O(log m) – optimal

• Pure + Convergence O(log^2 m)

Page 32: Coordination Mechanisms for Unrelated Machine Scheduling

Discussion and Open Problems

• Non ordering strategies – get below log m

• Extend to network routing

• Show more effective usage of coordination mechanism