1 / 21

Enhanced Scheduling Efficiency for Two Machines

Discover improved bounds for scheduling two uniform machines with known job sums. Learn about competitiveness, lower bounds, and optimized algorithms in combinatorial optimization. Explore the latest developments and practical applications in scheduling problems.

jazevedo
Download Presentation

Enhanced Scheduling Efficiency for Two Machines

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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. Scheduling: some kind of combinatorial optimizationWe 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 byList 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. Q2 ׀Sum=S ׀ Cmax case of 2 uniform machines, known sum: [2] Angelelli, Speranza, Tuza: Semi online scheduling on two uniform processors, Theor. Comp. Science 393 (2008), 211-219. 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.)

  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 improved bounds CoalBas(1): 1.4 (original) CoalBas(2): 1.3846 (better) CoalBas(3): 1.375 (better) CoalBas(4): 1.3721 (better) CoalBas(5): 1.3718 (better) CoalBas(6): 1.3714 (better) CoalBas(7): 1.3715 (worse) U P P E R 15/11=1.3636 lower (for further k? OPT = ? in case of other s? open questions)

  14. s=1 s=1.5 How does an adversary work? (how to get 15/11) Suppose SUM=11+16.5, we want to get loads 15 and 22.5 resp. 15 22.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. s=1 s=1.5 (how to get 15/11, PART II) 15 22.5 We conclude: J1 goes to M1. Let J2 = 2.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. s=1 s=1.5 (how to get 15/11, PART III) 15 22.5 safe sets We conclude: J2 goes to M2. Let J3 = 4 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. safe sets S0 S1 4 s=1 s=1.5 the improved algorithm: CoalBas(k) =Climbing On ALadder, (a basic alg.) with step K 14 21 The previous alg. would be CoalBas(1), since the safe sets are S0 and S1 (no more) 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. S0 S1 S2 s=1 s=1.5 the idea : by one more safe set: we get CoalBas(2), and C=36/26=1.3846 < 1.4 • 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 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. 66 48 S0 S1 54 21 27 12 S2 S3 3 s=1 s=1.5 s=1 s=1.5 CoalBas(3), CoalBas(4): 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 86 129 72 S0 S1 97 38 48 21 S2 S3 17 66/48 = 1.375 118/86 = 1.3721 9 7 10 S4 3

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

More Related