1 online scheduling with precedence constraints yumei huo department of computer science college
DESCRIPTION
3 Outline Introduction: –Background and Notations –Three basic scheduling algorithms Online Scheduling of Precedence Constrained Tasks –Four nonpreemptive scheduling problems –Three preemptive scheduling problems Approximation Algorithms for Online Scheduling of Equal Processing Time Task System Future WorkTRANSCRIPT
![Page 1: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/1.jpg)
1
Online Scheduling With Precedence Constraints
Yumei Huohttp://www.cs.csi.cuny.edu/~yumei/
Department of Computer ScienceCollege of Staten Island, CUNY
Feb. 26, 2008
![Page 2: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/2.jpg)
2
Outline• Introduction:
– Background and Notations– Three basic scheduling algorithms
• Online Scheduling of Precedence Constrained Tasks– Four nonpreemptive scheduling problems– Three preemptive scheduling problems
• Approximation Algorithms for Online Scheduling of Equal Processing Time Task System
• Future Work
![Page 3: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/3.jpg)
3
Outline• Introduction:
– Background and Notations– Three basic scheduling algorithms
• Online Scheduling of Precedence Constrained Tasks– Four nonpreemptive scheduling problems– Three preemptive scheduling problems
• Approximation Algorithms for Online Scheduling of Equal Processing Time Task System
• Future Work
![Page 4: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/4.jpg)
4
What is Scheduling ?
• Resource: machines, runways, CPUs• Jobs: operations, takeoffs and landings, programs• Constraints: priority, release date, due date, preemption• Objectives:
– minimize total completion time– minimize the maximum completion time– maximize the number of on-time jobs
Scheduling deals with the allocation of scarce resources to jobs over time subject to some constraints. It is a decision-making process with the goal of optimizing one or more objectives. (Pinedo, 2001)
![Page 5: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/5.jpg)
5
3-field Notation of Scheduling• We use || to represent a scheduling problem;
: the machine environment : the processing requirement and constraints of the jobs : the performance measure to optimize.
5
2
3 4
6 7
8
1
Cmax=5
642
875311 2 3 4 5 6 7 8 9 10 11 120
P1P2
/Ci
Ci= C1+ C2+…+Cn
Ci=21
• Example: P2|pj=1, prec|Cmax– P2: 2 identical machines in parallel– pj=1, prec: the processing time of any job is unit time, the
jobs have arbitrary precedence constraints– Ci is the completion time of job i, – Cmax=max{C1, C2,…Cn} (makespan);
![Page 6: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/6.jpg)
6
Precedence constraints
5
6
7
8
9
10
11
2
3
4
chains
4 5 6
7 8 9
10 11 12
14 13
16 15
18 17
20 19
22 21
23
intree
4 5 6
7 8 9
10 11 12
14 13
16 15
18 17
20 19
22 21
23
outtree
11
12
14 13
16 18
20
23
prec
![Page 7: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/7.jpg)
7
Preemption• Jobs can be preempted and later resumed possibly
on a different machine.
4144
3313
22211 2 3 4 5 6 7 8 9 10 11 120
S1
333
222
4441111 2 3 4 5 6 7 8 9 10 11 120
S2
Cmax=4Cj=15
Cmax=6Cj=15
P3|pj=3,pmtn|Cmax:
P3|pj=3|Cmax:
• Example: 3 processors, 4 independent jobs, the processing time of each job is 3.
![Page 8: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/8.jpg)
8
Outline• Introduction:
– Background and Notations– Three basic scheduling algorithms
• Online Scheduling of Precedence Constrained Tasks– Four nonpreemptive scheduling problems– Three preemptive scheduling problems
• Approximation Algorithms for Online Scheduling of Equal Processing Time Task System
• Future Work
![Page 9: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/9.jpg)
9
Coffman-Graham algorithm(P2|pj=1, prec|Cmax and P2|pj=1, prec| Ci )
Step 1. LabelingStep 2. Scheduling
![Page 10: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/10.jpg)
10
Coffman-Graham algorithm (cont.)
• Comparing two decreasing sequences of positive integers: by lexicographical order
• Example: (8, 6, 4, 3) < (8, 6, 5) and (9, 8, 6) < (9, 8, 6, 4, 3).
![Page 11: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/11.jpg)
11
Example of Coffman-Graham algorithm1 2
3
4 5
76
8 9
(9) (8)
(7)
(6)(5)
(4)(3)
(1) (2)
8462
9753176543210
(1) (2,1)
![Page 12: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/12.jpg)
12
Hu’s algorithm(P|pj=1, intree|Cmax and P|pj=1, outtree|Cmax )
Step 1. LabelingStep 2. Scheduling
![Page 13: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/13.jpg)
13
Hu’s algorithm---Level
• Definition: The level of a job i with no immediate successor is its processing time pi. The level of a job with immediate successor(s) is its processing time plus the maximum level of its immediate successor(s).
![Page 14: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/14.jpg)
14
Example for Hu’s algorithm
(1)(2)(3)(5)
(6)
(4)
(7)
(1)(2)(3)(5)
(6)
(4)
(7)
(1)(2)(3)(5)
(6)
(4)
(7)
(8)(9)(10)
(11)
(1)(2)(3)(5)
(6)
(4)
(7)
(8)(9)(10)
(11)(12)(13)
(1)(2)(3)(5)
(6)
(4)
(7)
(8)(9)(10)
(11)(12)(13)
(14)(15)
(8)(9)(10)
(11)(12)(13)
(14)(15)
(16)
![Page 15: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/15.jpg)
15
Muntz-Coffman algorithm (P2|pmtn, prec |Cmax, P|pmtn, intree|Cmax and P|pmtn, outtree|Cmax )
Assign one processor each to the jobs at the highest level. If there is a tie among y jobs (because they are at the same level) for the last x (x < y) processors, then assign x/y processor to each of these y jobs. Whenever either of the two events below occurs, reassign the processors to the unexecuted portion of the unfinished tasks according to the above rule.
Event 1: A task is completed. Event 2: We reach a point where, if we were to continue the
present assignment, we would be executing some tasks at a lower level at a faster rate than other tasks at a higher level.
![Page 16: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/16.jpg)
16
Example for Muntz-Coffman algorithm
Preemptive schedule
Processor-sharing schedule
![Page 17: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/17.jpg)
17
Outline• Introduction:
– Background and Notations– Three basic scheduling algorithms
• Online Scheduling of Precedence Constrained Tasks– Four nonpreemptive scheduling problems– Three preemptive scheduling problems
• Approximation Algorithms for Online Scheduling of Equal Processing Time Task System
• Future Work
![Page 18: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/18.jpg)
18
Online Scheduling• Tasks are released, along with their constraints, at
various different times. The scheduler schedules tasks with no future information.
• We say that an online scheduling algorithm is optimal if it always produces a schedule with the minimum Cmax, i.e., a schedule as good as any schedule produced by any scheduling algorithm with full knowledge of future releases of tasks.
![Page 19: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/19.jpg)
19
Classical Scheduling Problems with polynomial optimal algorithms
• P|pj=1, intree|Cmax and P|pj=1, outtree|Cmax --- Hu’s algorithm
• P2|pj=1, prec|Cmax and P2|pj=1, prec| Cj --- Coffman-Graham algorithm
• P2|pmtn, prec |Cmax, P|pmtn, intree|Cmax and P|pmtn, outtree|Cmax --- Muntz-Coffman algorithm
• P|pmtn|Cmax --- McNaughton’s Rule
![Page 20: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/20.jpg)
20
Online version of these problems• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax
– P|pj=1, intreei is released at ri|Cmax
– P|pj=1, outtreei is released at ri|Cmax
– P2|pj=1, preci is released at ri|Cmax
• Preemptive scheduling problems:– P2|pmtn, preci is released at ri|Cmax
– P|pmtn, intreei is released at ri|Cmax
– P|pmtn, outtreei is released at ri|Cmax
– P|pmtn, rj|Cmax (K.S.Hong and J.Y-T.Leung, 1988)
![Page 21: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/21.jpg)
21
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 22: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/22.jpg)
22
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 23: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/23.jpg)
23
P2|pj=p, chainsi are released at ri|Cmax (Counterexample)
M=2pj=2
654
11109873212 4 6 8 10 12 14 16 18 20 22 240
S1
S26 21 23 250 195
S254
21
63
11109872 4 7 9 11 13 15 176 21 23 250 195
654
3212 4 6 8 10 12 14 16 18 20 22 240
S1
456
123
456
456
123
123
Chains released at r1=0 Chains released at r2=5
7891011
7891011
![Page 24: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/24.jpg)
24
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 25: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/25.jpg)
25
P|pj=1, intreei is released at ri|Cmax (Counterexample)
4 5 67 8 910 11 12
14 1316 1518 1720 1922 21
23
Tree1 released at r1=0
M=3 24
25
26 27
28 29
30 31
32
Tree2 released at r2=4
S11296
22201816141185
23211917151310741 2 3 4 5 6 7 8 9 10 11 120
22192017151296
323129271816141185
232130282625241310741 2 3 4 5 6 7 8 9 10 11 120
312129192712171513
32302826162411975
232220182514108641 2 3 4 5 6 7 8 9 10 11 120
S2
![Page 26: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/26.jpg)
26
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 27: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/27.jpg)
27
P2|pj=1, preci is released at ri|Cmax
• Algorithm A:Whenever new tasks arrive, do {
t = the current time;U = the set of tasks active (i.e., not finished) at time t;Call the Coffman-Graham algorithm to reschedule the tasks in U;
}
![Page 28: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/28.jpg)
28
Example
1 2
3
4 5
76
8 9
(9) (8)
(7)
(6)(5)
(4)(3)
(1) (2)
8462
9753176543210
(9)(8)
(5)
(1) (2)
Tasks not finished at t=2
(3) (4)
(6) (7)
(10)
10 (11)
Tasks released at t=2
11
12 13
14 15
4
7
5
8 9
62
3110 2 9
9151245
814713111086543 7
![Page 29: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/29.jpg)
29
Our result
Theorem 2.1.4 Algorithm A is optimal for P2|pj=1, preci is released at ri|Cmax.Moreover, the schedule produced by Algorithm A has the largest number of tasks completed at any time instant t.
(Note: Algorithm A is optimal for P2|pj=1, preci is released at ri| Cj)
![Page 30: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/30.jpg)
30
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 31: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/31.jpg)
31
P|pj=1, outtreei is released at ri|Cmax
• Algorithm B:Whenever new tasks arrive, do {
t =the current time;U= the set of tasks active (i.e., not finished) at time t;Call Hu's algorithm to reschedule the tasks in U;
}
![Page 32: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/32.jpg)
32
Example
![Page 33: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/33.jpg)
33
Our result
Theorem 2.1.5 Algorithm B is optimal for P|pj=1, outtreei is released at ri|Cmax.Moreover, the schedule produced by Algorithm B has the largest number of tasks completed at any time instant t.
(Note: Algorithm B is optimal for P|pj=1, outtreei is released at ri| Cj)
![Page 34: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/34.jpg)
34
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 35: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/35.jpg)
35
P|pj=1, pmtn, intreei is released at ri|Cmax (Counterexample)
4 5 67 8 910 11 12
14 1316 1518 1720 1922 21
23
Tree1 released at r1=0
M=3 24
25
26 27
28 29
30 31
32
Tree2 released at r2=4
S11296
22201816141185
23211917151310741 2 3 4 5 6 7 8 9 10 11 120
12171513
211911975
232220181614108641 2 3 4 5 6 7 8 9 10 11 120
S2
22192017151296
323129271816141185
232130282625241310741 2 3 4 5 6 7 8 9 10 11 120
312129192712171513
32302826162411975
232220182514108641 2 3 4 5 6 7 8 9 10 11 120
![Page 36: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/36.jpg)
36
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, pj=1, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 37: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/37.jpg)
37
P2| pmtn,preci is released at ri|Cmax
• Algorithm C:Whenever new tasks arrive, do {
t =the current time;U= the set of tasks active (i.e., not finished) at time t;Call Muntz-Coffman algorithm to reschedule the tasks in U;
}
![Page 38: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/38.jpg)
38
Example
![Page 39: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/39.jpg)
39
Our resultTheorem 2.2.4 Algorithm C is an optimal
online algorithm for P2| pmtn, preci is released at ri|Cmax.
![Page 40: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/40.jpg)
40
Our results• Nonpreemptive scheduling problems:
– P2|pj=p, chainsi are released at ri|Cmax-----no optimal algorithm can possibly exist
– P|pj=1, intreei is released at ri|Cmax-----no optimal algorithm can possibly exist
– P2|pj=1, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pj=1, outtreei is released at ri|Cmax----- there is optimal algorithm
• Preemptive scheduling problems:– P|pmtn, intreei is released at ri|Cmax---- no optimal algorithm can
possibly exist
– P2| pmtn, preci is released at ri|Cmax ---- there is optimal algorithm
– P|pmtn, outtreei is released at ri|Cmax---- there is optimal algorithm
![Page 41: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/41.jpg)
41
P|pmtn, outtreei is released at ri|Cmax
Theorem 2.2.6 Algorithm C is an optimal online algorithm for P|pmtn, outtreei is released at ri|Cmax.
![Page 42: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/42.jpg)
42
Outline• Introduction:
– Background and Notations– Three basic scheduling algorithms
• Online Scheduling of Precedence Constrained Tasks– Four nonpreemptive scheduling problems– Three preemptive scheduling problems
• Approximation Algorithms for Online Scheduling of Equal Processing Time Task System
• Future Work
![Page 43: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/43.jpg)
43
known results
• P| pj=1, outtreei released at ri | Cmax
– Online version of Hu’s algorithm is known to be optimal (Huo & Leung)
• P2| pj=1, preci released at ri | Cmax
– Online version of Coffman-Graham algorithm is known to be optimal (Huo & Leung)
• P| prec, online | Cmax
– Online version of List scheduling has competitive ratio 2-1/m (Sgall)
![Page 44: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/44.jpg)
44
Problems
• P | pj=1, intreei released at ri | Cmax
• P | pj=p, intreei released at ri | Cmax
• P | pj=p, outtreei released at ri | Cmax
• P2 | pj=p, preci released at ri | Cmax
![Page 45: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/45.jpg)
45
Problems
• P | pj=1, intreei released at ri | Cmax
• P | pj=p, intreei released at ri | Cmax
• P | pj=p, outtreei released at ri | Cmax
• P2 | pj=p, preci released at ri | Cmax
![Page 46: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/46.jpg)
46
On-line version of Hu’s Algorithm(revisited)
• Hu’s Algorithm:– Whenever a machine is idle, pick a job from the highest level
and schedule it.– Hu’s algorithm is optimal for the off-line problem of p|pj=1, intree|cmax
• On-line version:Whenever new jobs arrive, do{ T=the current time U=the set of jobs not finished at time T reschedule the tasks in U by Hu’s algorithm.}
![Page 47: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/47.jpg)
47
An Example of On-line Hu’s Algorithm
• A set of jobs released at time 0
21 3
4 5
6
12
34
5 6
![Page 48: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/48.jpg)
48
An Example of On-line Hu’s Algorithm (Algorithm B)
• A new set of jobs released at time 1.
3
4 5
6
12
7 8
9 10
11
New Release:
Jobs has been scheduled:
![Page 49: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/49.jpg)
49
An Example
• Final Schedule3
4 5
612
7 8
9 10
1137
84
59
106
11
![Page 50: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/50.jpg)
50
Result 1
• For p | intree,pj=1,online | cmax problem, let S be the cmax produced by the on-line version of Hu’s algorithm, and S* be the cmax of the optimal schedule, then S/S*≤ 1.5
![Page 51: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/51.jpg)
51
Problems
• P | pj=1, intreei released at ri | Cmax
• P | pj=p, intreei released at ri | Cmax
• P | pj=p, outtreei released at ri | Cmax
• P2 | pj=p, preci released at ri | Cmax
![Page 52: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/52.jpg)
52
Meta-Algorithm Delay-X (from pj=1 to pj=p)
• Suppose X is an algorithm which solves online problem for pj=1.
• For any job released at time r such that kp<r<(k+1)p, delay it from consideration until the time instant (k+1)p.
• Call algorithm X at time instant (k+1)p
![Page 53: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/53.jpg)
53
Result 2• Suppose algorithm X gives competitive ratio of
λ for α|pj=1,online|cmax problem, then,– For the problemα|pj=p,online|cmax, let s be the cmax
produced by Delay-X and s* be the cmax of the optimal schedule, then s≤λs*+ λ p
![Page 54: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/54.jpg)
54
Result 3• P| pj=p, intreei released at ri | cmax
– Let S be the cmax produced by Delay-Hu’s algorithm and S* be the cmax of optimal schedule, then S≤1.5(S*+p). The asymptotic competitive ratio is 1.5 since S*>>p.
• P| pj=p, outtreei released at ri | cmax
– Let S be the cmax produced by Delay-Hu’s algorithm and S* be the cmax of optimal schedule, then S ≤(S*+p). The asymptotic competitive ratio is 1 since S*>>p.
• P2| pj=p, preci released at ri | cmax
– Let S be the cmax produced by Delay-Coffman-Graham algorithm and S* be the cmax of optimal schedule, then S ≤(S*+p). The asymptotic competitive ratio is 1 since S*>>p.
![Page 55: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/55.jpg)
55
Outline• Introduction:
– Background and Notations– Three basic scheduling algorithms
• Online Scheduling of Precedence Constrained Tasks– Four nonpreemptive scheduling problems– Three preemptive scheduling problems
• Approximation Algorithms for Online Scheduling of Equal Processing Time Task System
• Future Work
![Page 56: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/56.jpg)
56
Future Work (Continued Work)• For p | pj=1, intreei released at ri | cmax problem:
– Better approximation algorithms? Tight Competitive Ratio?
• For p | pj=p, preci released at ri | cmax
– Asymptotic competitive ratio? (>2-2/m [Lam and Sethi] )
• For p | pmtn, intreei released at ri | cmax problem:– Approximation Algorithm? Competitive Ratio?
• Other Criteria of these online scheduling problems?– Objective function: mean flow time
![Page 57: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/57.jpg)
57
Selected Publications• Huo, Y. and J. Y-T. Leung, "Online Scheduling of Precedence Constrained
Tasks," SIAM J. on Computing, Volume 34, Number 3, pp. 743-762. 2005. • Huo, Y. and J. Y-T. Leung, "Minimizing Total Completion Time for UET Tasks
with Release Time and Outtree Precedence Constraints," Mathematical Methods of Operations Research, Vol. 62, No. 2, pp. 275-278, 2005 .
• Huo, Y. and J. Y-T. Leung, "Minimizing Total Completion Time for UET Tasks ," ACM Transactions on Algorithms, Vol. 2, No. 2, pp. 244-262. April 2006 .
• Huo, Y., J. Y-T. Leung and H. Zhao, "Complexity of Two Dual Criteria Scheduling Problems," submitted to Operations Research Letters, 35:211-220, 2007.
• Huo, Y., J. Y-T. Leung and H. Zhao, "Bi-criteria Scheduling Problems: Number of Tardy Jobs and Maximum Weighted Tardiness," European Journal of Operational Research,177:116-134, 2007.
• Huo, Y., J. Y-T. Leung and X. Wang, "Online Scheduling of Equal-Processing-Time Task Systems," Submitted to Theoretical Computer Science.
![Page 58: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/58.jpg)
58
Thank you!
![Page 59: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/59.jpg)
59
Makespan
• Total completion time: Ci= C1+ C2+…+Cn
• Makespan = (Ci - ri) /n– Ci is the completion time of job i;
– ri is the release time of job i;– n is the number of jobs
![Page 60: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/60.jpg)
60
Application of Scheduling• Scheduling of Flexible Resources in Professional Service
Firms• Novel metaheuristic Approaches to Nurse Rostering
Problems in Belgian Hospitals• University Timetabling• Adapting the GATES Architecture to Scheduling Faculty• Constraint Programming for Scheduling• Batch Production Scheduling in the Process Industries• A Composite Very-Large-Scale Neighborhood Search
Algorithm for the Vehicle Routing Problem• Scheduling Problems in the Airline Industry• Bus and Train Driver Scheduling• Sports Scheduling
![Page 61: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/61.jpg)
61
Application of Online Scheduling
• Industrial Applications• Multiuser operating systems such as Unix and
Windows• Web servers• Database servers• Load balancers sitting in front of server farms
(Pruhs K., Sgall J., and Torng E., 2004 )
![Page 62: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/62.jpg)
62
M3
M2
M1
t=0 r1 r2 r3
Ji1,Ji1+1, … Ji2,Ji2+1, … Ji3,Ji3+1, …
![Page 63: 1 Online Scheduling With Precedence Constraints Yumei Huo Department of Computer Science College](https://reader036.vdocuments.net/reader036/viewer/2022062504/5a4d1b257f8b9ab059996fda/html5/thumbnails/63.jpg)
63
Complexity results for scheduling problems
• by Brucker and Knust: http://www.mathematik.uni-osnabrueck.de/research/OR/class/