21
Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE 2005

Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Embed Size (px)

Citation preview

Page 1: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Truthful Algorithms for Scheduling Selfish Tasks on

Parallel Machines

Eric Angel, Evripidis Bampis, Fanny Pascual

LaMI, University of Evry, France

WINE 2005

Page 2: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

OutlineIntroduction

Truthful algorithm

Truthful coordination mechanism

Conclusion

Page 3: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

IntroductionAim: To optimize the performances of a network used by selfish agents.

• A scheduling problem:

[Koutsoupias, Papadimitriou: STACS’99]

Cj = completion time of task j. (e.g. C3=2)

2

13

1 21 3

time0 1 2 3

n tasksm machines

Page 4: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Introduction• Game theoretic approach:

– Task i has a secret real length li.– Each task bids a value bi ≥ li.– Each task knows the values bidded by the other

tasks, and the algorithm.

• Each task wish to reduce its completion time.• Social cost = maximum completion time

(makespan)

• Aim : An algorithm truthful and which minimizes the makespan.[Christodoulou, Koutsoupias, Nanavati: ICALP’04]

Page 5: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Introduction• Each task wish to reduce its

completion time (and may lie if necessarily).

• 2 models: – Model 1: If i bids bi, its length is li– Model 2: If i bids bi, its length is bi

• Example: We have 3 tasks: , ,

Task 1 bids 2.5 instead of 1:

.

1 2 3

Model 1: C1 = 1Model 2: C1 = 2.5

time

31 2

0 1 2 3 4 5

1

Page 6: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

SPT: a truthful algorithm

• SPT: Schedules greedily the tasks from the smallest one to the largest one.– Example:

– Approx. Ratio = 2 – 1/m [Graham]

• Are there better truthful algorithms ?

1

2

3

Page 7: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

LPT• LPT: Schedules greedily the tasks from

the largest one to the smallest one.– Approx. Ratio = 4/3 – 1/(3m) [Graham]

• We have 3 tasks: , , Task 1 bids 1: Task 1 bids 2.5:

1 2 3

Task 1 has incentive to bid 2.5, and LPT is not truthful.

C1 = 332 1

C1 = 1

time

31 2

0 1 2 3 4 5time0 1 2 3 4 5

1

Page 8: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Introduction

• Idea: to combine:– A truthful algorithm– An algorithm not truthful but with a

good approx. ratio.

• Task: wants to minimizes its expected completion time.

• Our Goal: A truthful randomized algorithm with a good approx. ratio.

Page 9: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Outline Introduction

Truthful algorithmSPT-LPT is not truthfulAlgorithm: SPTA truthful algorithm: SPT-LPT

Truthful coordination mechanism

Conclusion

Page 10: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

SPT-LPT is not truthful• Algorithm SPT-LPT:

– The tasks bid their values– With a proba. p, returns an SPT schedule. With a proba. (1-p), returns an LPT

schedule.

• We have 3 tasks : , ,– Task 1 bids its true value : 1

– Task 1 bids a false value : 2.5

1 2 3

12

3 32 1SPT : LPT :

C1 = p + 3(1-p) = 3 - 2p

12 3SPT :

LPT : 31 2

C1 = 1 1 1

Page 11: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Algorithm SPT• SPT: Schedules tasks 1,2,…,n s.t. l1 < l2 < … < ln

Task (i+1) starts when 1/m of task i has been executed.

• Example: (m=3)

0 1 2 3 4 5 6 7 8 9 10 11 12

1

2

3

5

6

7

8

9

4

Page 12: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Algorithm SPT• Thm: SPT is (2-1/m)-approximate.• Idea of the proof: (m=3)

Idle times :idle_beginning(i) = ∑ (1/3 lj)

idle_middle(i) = 1/3 ( li-3 + li-2 + li-1 ) – li-3idle_end(i) = li+1 – 2/3 li + idle_end(i+1)

j<i

0 1 2 3 4 5 6 7 8 9 10 11 12

1

2

3

5

6

7

8

9

4

Page 13: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Algorithm SPT• Thm: SPT is (2-1/m)-approximate.• Idea of the proof: (m=3)

0 1 2 3 4 5 6 7 8 9 10 11 12

1

2

3

5

6

7

8

9

4

Cmax = (∑(idle times) + ∑(li)) / m ∑(idle times) ≤ (m-1) ln and ln ≤ OPT Cmax ≤ ( 2 – 1/m ) OPT

Cmax

Page 14: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

A truthful algorithm: SPT-LPT

• Algorithm SPT-LPT:– With a proba. m/(m+1), returns SPT.– With a proba. 1/(m+1), returns LPT.

• The expected approx. ratio of SPT - LPT is smaller than the one of SPT: e.g. for m=2, ratio(SPT-LPT) < 1.39, ratio(SPT)=1.5

• Thm: SPT-LPT is truthful.

Page 15: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

A truthful algorithm: SPT-LPT

• Thm: SPT-LPT is truthful.

• Idea of the proof: • Suppose that task i bids b>li. It is now larger

than tasks 1,…, x, smaller than task x+1.

l1 < … < li < li+1 < … < lx < lx+1 < … < ln

• LPT: decrease of Ci(lpt) ≤ (li+1 + … + lx)• SPT: increase of Ci(spt) = 1/m (li+1 + … + lx)• SPT-LPT: change = - m/(m+1) Ci(spt) + 1/(m+1)

Ci(spt) ≥ 0

b <

Page 16: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Outline Introduction

Truthful algorithm

Truthful coordination mechanism (m=2) Coordination mechanism: definition A truthful coordination mechanism

Conclusion

Page 17: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Coordination mechanism

• Coordination mechanism [CKN 04]:– Each machine has a local policy to

schedule its tasks. This policy should not depend on the other tasks.

– Each task chooses on which machine it will be scheduled.

• Example : , ,1 2 3

1 2

3

MSPT

MLPT

Denoted by Mixt

Page 18: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

A truthful coordination mechanism

• SM(p): p SPT – (1-p)Mixt – M1 schedules tasks with SPT.

– M2 schedules tasks with SPT with a proba. p,

and with LPT otherwise.

• Expected approx. ratio = 4/3 + p/6.

Page 19: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

• We consider the 2nd model: if i bids b, its execution time is b.

• Thm 1: When p>2/3, SM(p) is truthful if the tasks are powers of C ≥ (4-3p)/(2-p).

• Thm 2: When p<1/2, SM(p) is not truthful even if the tasks are powers of any integer C>1.

A truthful coordination mechanism

Page 20: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

A truthful coordination mechanism

• Thm 2: When p<1/2, SM(p) is not truthful even if the tasks are powers of any integer C>1.

• Idea of the proof: Policy of M1 = SPT

C2C

M2

M1 C

C2……

xC/2 tasks

C C C C2

C2……

x/2 tasks

Policy of M2 = SPT

C2

C

M2

M1 C C

C2 C2

CC

…… C

x C tasks

x tasks

Policy of M2 = LPT

C3

C3

Ci increases of: spt = C3 - C + (x/2)C2 Ci decreases of: mixt =xC2 + C - C3

Overall change = p spt - (1-p) mixt

Page 21: Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE

Conclusion

• Conclusion:– A truthful centralized algorithm.– A truthful coordination mechanism

under certain conditions.

• Future work:– Better truthful coordination mechanisms– Case of uniform machines