Presentation is loading. Please wait.

Presentation is loading. Please wait.

György Dósa – M. Grazia Speranza – Zsolt Tuza:

Similar presentations


Presentation on theme: "György Dósa – M. Grazia Speranza – Zsolt Tuza:"— Presentation transcript:

1 György Dósa – M. Grazia Speranza – Zsolt Tuza:
Improved bounds for scheduling two uniform machines with known sum of the jobs University of Pannonia, University of Brescia, Hung. Academy of Science

2 α : machines: parallel, uniform (processing time is pi/s),…
Scheduling: some kind of combinatorial optimization We use the three-field notation: α ׀ β ׀ γ, where α : machines: parallel, uniform (processing time is pi/s),… β : jobs: precedence constraints, release dates, due dates, preemption is allowed or not, … γ : objectives: makespan, (weighted) sum of completion times of jobs, number of not completed jobs, … (many practical applications, interesting, hard problems,…)

3 just an example: P4 ׀׀ Cmax , i.e.
identical parallel machines, no restrictions on jobs, minimizing the maximum compl. time (makespan) = Cmax load: sum of proc. times of jobs assigned to the machine s = smallest load Cmax J6 J5 s 6 J1 J2 J3 J4 3 M1 M2 M3 M4 this schedule is made by List Scheduling (Graham, ‘66)

4 Competitiveness (performance ratio)
We compare the „goodness” of an algorithm A to an optimal algorithm OPT How many times can be A worse than OPT in the „worst case”, i.e. C(A) = sup { A(I) / OPT(I) }, where I is an arbitrary input (instance) ( for example, C(LS)= 2 - 1/m )

5 Lower bounds Adversary: a very wrong sequence, for what no algorithm can perform well Similar to a Maker-Breaker game: Maker = adversary (building a big makespan) Breaker = algorithm (enforcing a small makespan) Optimality: if the lower bound touches the competitive ratio (we are happy if our algorithm is optimal)

6 (some) recent, and popular topics:
Scheduling with machine cost (J. Noga, Cs. Imreh) Randomization (can help?) Rejection (we can reject the job, but must pay penalty) Semi online problems: we know something, but not everything about the jobs, (or we have a buffer, or…) What is Known: sum, largest size, a range of sizes, order of the jobs, … now we will deal with this condition

7 so our problem is now: Q2 ׀ Sum = S ׀ Cmax two related machines, only the sum of the sizes is known the makespan is minimized

8 previous work: [1] Kellerer, Kotov, Speranza, Tuza: Semi online algorithms for the partition problem, Op. Res. Letters 21 (1997) a many times cited paper the main results: three semi online versions of P2 II Cmax, three optimal algorithms with the same comp ratio C=4/3, ( the pure online comp. ratio is C=3/2 (LS) )

9 case of 2 uniform machines, known sum:
[2] Angelelli, Speranza, Tuza: Semi online scheduling on two uniform processors, Theor. Comp. Science 393 (2008), the paper provides: three simple algorithms lower bounds optimality if s=1, and in two intervals (not everywhere opt., or not proved to be opt.) Q2 ׀Sum=S ׀ Cmax

10 Previous (lower and upper) bounds from [2]
these two intervals remained to be investigated better, where previous algorithms are not (or not proved to be) optimal

11 The case of the first interval: 1 < s < 1.28
we have optimal algorithms for almost the whole interval

12 in the case of the first interval
the problem is solved by a „ladder” algoritm, (we will define it a little bit later) only two „steps” are enough to get optimal ratio the case of the other interval seems to be more difficult: - we still get optimal ratio for some subintervals - more steps are needed - we will show the results only for s=1.5

13 the present results for s=1.5:
lower 1.333 upper 1.4 CoalBas(1): (original) CoalBas(2): (better) CoalBas(3): (better) CoalBas(4): (better) CoalBas(5): (better) CoalBas(6): (better) CoalBas(7): (worse) U P E R 15/11=1.3636 lower improved bounds (for further k? OPT = ? in case of other s? open questions)

14 How does an adversary work? (how to get 15/11)
Suppose SUM= , we want to get loads 15 and 22.5 resp. 15 22.5 s=1 s=1.5 (at least) Let J1=1 safe sets if J1 goes to M2: 11 16.5 J2=5 if J2 goes to M1: J3=10, J4=11.5 if J2 goes to M2: J3=16.5, J4=5 S0 S1 12.5 5 4 6 J1 in both cases: OPT=11, C ≥ 15, OK.

15 in both cases: C/OPT ≥ 15/11, OK.
(how to get 15/11, PART II) We conclude: J1 goes to M1. Let J2 = 2.5 15 22.5 s=1 s=1.5 safe sets if J2 goes to M1: 11 16.5 J3=11.5 if J3 goes to M1: J4=11, J5=1.5 if J3 goes to M2: J4=12.5 S0 S1 12.5 5 4 6 J2 J1 in both cases: C/OPT ≥ 15/11, OK.

16 We conclude: J2 goes to M2. Let J3 = 4 We conclude: J3 goes to M1.
(how to get 15/11, PART III) We conclude: J2 goes to M2. Let J3 = 4 15 22.5 s=1 s=1.5 safe sets if J3 goes to M2: 11 16.5 S0 S1 J4=16.5 then: OPT=11, C ≥ 15, OK. 12.5 We conclude: J3 goes to M1. **********THEN************** the last two jobs are J4 = J5 = 10, and OK. 5 6 4 J3=4 J2=2.5 J1=1

17 the improved algorithm: CoalBas(k) = Climbing On A Ladder, (a basic alg.) with step K
14 21 s=1 s=1.5 The previous alg. would be CoalBas(1), since the safe sets are S0 and S1 (no more) safe sets S0 S1 4 10 15 Assign the job to M1until we reach S1. If we jump over S1, then Ji >10 must hold. Assign the job to M2. If we reach S0: OK Otherwise: Assign again to M1 until we reach S1. If we jump over again: (No problem, since two big jobs, opt >10,…) 11

18 the idea : by one more safe set: we get CoalBas(2), and C=36/26=1
s=1 s=1.5 Assign to M2 while L2 < 4 If S2 is reached: - assign the next jobs to M1 while L1<11. - if S1 is reached: OK (further jobs go to M2) - if the next job would jump over S1: it is > 25 -assign it to M2 -if we reach S0: OK (further jobs go to M1) -if we jump over S0: OK (further jobs go to M1) If S2 is jumped over: the job is > 11, and so on… 36 54 S0 S1 S2 26 39 29 11 15 4

19 How to define the safe sets?
we ensure that the proof will be correct a simple recursion is applied a better way? - If we get valid safe sets (nonnegative top and bottom, non overlapping safe sets) then this recursion is the best choice what is the best choice of the safe sets if the recursion fails? what is the best choice of parameter K?

20 CoalBas(3), CoalBas(4): the algorithm is similar,
48 66 S0 S1 21 54 S2 27 S3 3 12 99 118 177 the algorithm is similar, can be made in a recursive way for bigger K it is a little bit more difficult, also the proof s=1 s=1.5 86 129 72 S0 S1 97 38 48 21 S2 S3 17 66/48 = 1.375 118/86 = 9 7 10 S4 3

21 CoalBas(6): the best we can do in this way for
s= the best upper bound is the lower bound is Further improvements? Case of other s speeds? Better lower bound? (many open questions) Thank You for your kind attention! 1.3714


Download ppt "György Dósa – M. Grazia Speranza – Zsolt Tuza:"

Similar presentations


Ads by Google