Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Truthful Algorithms for Scheduling Selfish Tasks on Parallel Machines Eric Angel, Evripidis Bampis, Fanny Pascual LaMI, University of Evry, France WINE."— Presentation transcript:

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

2 Outline  Introduction  Truthful algorithm  Truthful coordination mechanism  Conclusion

3 Introduction Aim: To optimize the performances of a network used by selfish agents. A scheduling problem: [Koutsoupias, Papadimitriou: STACS’99] C j = completion time of task j. (e.g. C 3 =2) 2 1 3 12 13 time 0123 n tasks m machines

4 Introduction Game theoretic approach: –Task i has a secret real length l i. –Each task bids a value b i ≥ l i. –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]

5 Introduction Each task wish to reduce its completion time (and may lie if necessarily). 2 models: –Model 1: If i bids b i, its length is l i –Model 2: If i bids b i, its length is b i Example: We have 3 tasks:,, Task 1 bids 2.5 instead of 1:. 123 Model 1: C 1 = 1 Model 2: C 1 = 2.5 time 3 12 0123 4 5 1

6 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

7 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 : 123 Task 1 has incentive to bid 2.5, and LPT is not truthful. C 1 = 3 3 2 1 C 1 = 1 time 3 12 0123 4 5 0123 4 5 1

8 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.

9 Outline  Introduction  Truthful algorithm  SPT-LPT is not truthful  Algorithm: SPT   A truthful algorithm: SPT  -LPT  Truthful coordination mechanism  Conclusion

10 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 123 1 2 33 2 1 SPT :LPT : C 1 = p + 3(1-p) = 3 - 2p 1 23 SPT : LPT : 3 1 2 C 1 = 1 1 1

11 Algorithm SPT  SPT  : Schedules tasks 1,2,…,n s.t. l 1 < l 2 < … < l n Task (i+1) starts when 1/m of task i has been executed. Example : (m=3) 0123456789 10 11 12 1 2 3 5 6 7 8 9 4

12 Algorithm SPT  Thm: SPT  is (2-1/m)-approximate. Idea of the proof: (m=3) Idle times : idle_beginning(i) = ∑ (1/3 l j ) idle_middle(i) = 1/3 ( l i-3 + l i-2 + l i-1 ) – l i-3 idle_end(i) = l i+1 – 2/3 l i + idle_end(i+1) j<i 0123456789 10 11 12 1 2 3 5 6 7 8 9 4

13 Algorithm SPT  Thm: SPT  is (2-1/m)-approximate. Idea of the proof: (m=3) 0123456789 10 11 12 1 2 3 5 6 7 8 9 4 Cmax = (∑(idle times) + ∑(li)) / m ∑(idle times) ≤ (m-1) l n and l n ≤ OPT  Cmax ≤ ( 2 – 1/m ) OPT Cmax

14 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.

15 A truthful algorithm: SPT  -LPT Thm: SPT  -LPT is truthful. Idea of the proof: Suppose that task i bids b>l i. It is now larger than tasks 1,…, x, smaller than task x+1. l 1 < … < l i < l i+1 < … < l x < l x+1 < … < l n LPT: decrease of C i (lpt) ≤ (l i+1 + … + l x ) SPT  : increase of C i (spt  ) = 1/m (l i+1 + … + l x ) SPT  -LPT: change = - m/(m+1) C i (spt  ) + 1/(m+1) C i (spt  ) ≥ 0 b <

16 Outline  Introduction  Truthful algorithm  Truthful coordination mechanism (m=2)  Coordination mechanism: definition  A truthful coordination mechanism  Conclusion

17 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 :,, 123 12 3 M SPT M LPT Denoted by Mixt

18 A truthful coordination mechanism SM(p): p SPT – (1-p)Mixt –M 1 schedules tasks with SPT. –M 2 schedules tasks with SPT with a proba. p, and with LPT otherwise. Expected approx. ratio = 4/3 + p/6.

19 We consider the 2 nd 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. A truthful coordination mechanism

20 Thm 2: When p 1. Idea of the proof: Policy of M1 = SPT C2C2 C M2M2 M1M1 C C2C2 … … xC/2 tasks C CCC2C2 C2C2 … … x/2 tasks Policy of M2 = SPT C2C2 C M2M2 M1M1 CC C2C2 C2C2 CC … … C x C tasks x tasks Policy of M2 = LPT C3C3 C3C3 C i increases of:  spt = C 3 - C + (x/2)C 2 C i decreases of:  mixt =xC 2 + C - C 3 Overall change = p  spt - (1-p)  mixt

21 Conclusion Conclusion: –A truthful centralized algorithm. –A truthful coordination mechanism under certain conditions. Future work: –Better truthful coordination mechanisms –Case of uniform machines


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

Similar presentations


Ads by Google