Download presentation

Presentation is loading. Please wait.

Published byYolanda Lothrop Modified over 3 years ago

1
Jonathan Chan

2
Scheduling problems of type Pm|prec|C max that are easily solvable ◦ Infinite machines: P∞|p j =1,prec|Cmax ◦ Intree, outtree precedence: Pm|p j =1,intree|C max & Pm|p j =1,outtree|C max However, Pm|prec|C max is NP-hard for 2≤m <n

3
Critical path rule (CP rule) ◦ Gives the highest priority to the job at the head of the longest string of jobs in the precedence graph Largest Number of Successors (LNS rule) ◦ Job with the largest total number of successors in the precedence constraints graph takes the highest priority Fujii, Kasami, Ninomiya algorithm ◦ Matching problem- find the maximum number of disjoint compatible task pairs

4
Consider P2| prec, p j =1| C max with 10 jobs BOTH CP and LNS achieve the optimal schedule M1J3J7J8J9J4 M2J2J1J6J5J10 Critical Path: C max = 5 M1J3J1J8J9J4 M2J2J7J6J5J10 Largest Number of Successors: C max = 5 1 2 3 4 5 6 789 10

5
Consider P2| prec, p j =1 | C max with 8 jobs. All jobs have unit processing times. LNS achieves the optimal schedule M1J3J2J7J5J8 M2J1 IDLE J6J4 Critical Path Solution: C max = 5 M1J2J3J6J4 M2J1J7J5J8 Largest Number of Successors: C max = 4 1 2 4 5 6 3 7 8

6
Consider P2| prec | C max with 6 jobs. All jobs have unit processing times. CP achieves the optimal schedule M1J1J6J3 M2J4J2J5 Critical Path Solution: C max = 3 Largest Number of Successors: C max = 4 1 2 3 4 5 6 M1J4J1J2J3 M2J6J5 Idle

7
Optimal Sequencing of Two Equivalent Processors by Fujii, Kasami, Ninomiya ◦ Algorithm for solving P2|prec, p j =1|C max in O(n 3 ) time for any arbitrary precedence constraint ◦ Step1: Find all disjoint compatible task pairs by constructing a graph G j consisting of n vertices, where two vertices i and j are connected by an edge if there does not exist a path from i and j ◦ Step 2: Determine the maximum set of edges such that no two contain the same vertices ◦ Step 3: Schedule each job pair in order of their precedence relations

8
Step 1: Construct the disjoint compatible task pair graph G j 13 5 6 2 4 Precedence GraphGraph G j

9
Step 2: Let A 1 be the max set of disjoint compatible task pairs, and A 2 be the set of remaining tasks A 1 = {(T 3, T 5 ), (T 1, T 6 ), (T 2,T 4 )} A 2 = {0}

10
Step 3: Basically schedule each job pair in order of their precedence relations, where β 1, …β n-m is the optimal sequence such that β i is either a single task or task pair j =1 S 1 = {T 1, T 2, T 3, T 4, T 5, T 6 } M 1 =A 1 = {(T 3, T 5 ), (T 1, T 6 ), (T 2,T 4 )} β 1 = (T 1, T 6 ) j=2 S 2 = { T 2, T 3, T 4, T 5 } M 2 = {(T 3, T 5 ), (T 2,T 4 )} β 2 = (T 2,T 4 ) j=3 S 3 = { T 3, T 5 } M 3 = {(T 3, T 5 )} β 3 = (T 3, T 5 ) Solution: C max = 3 M1J1J2J3 M2J6J4J5

11
Marc T. Kaufman disproves this claim that the algorithm can be applied to 3 processors Counterexample: P3|prec, p j =1| C max The max set of disjoint compatible task pairs is {T 1, T 5, T 6 }, {T 4, T 2, T 3 }, suggesting that C max =2. However, the optimal schedule is actually C max =3, and the optimal partition is {T 1, T 4 }, {T 2, T 3, T 5 }, {T 6 } 1 2 3 4 5 6

12
# MachinesSolution MethodEx 1Ex 2Ex 3 2 machinesCP RuleOptimalNot optimalOptimal LNS RuleOptimal Not optimal FKN algorithmOptimal 3 machinesCP RuleOptimal LNS RuleOptimal 4 machinesCP RuleOptimal LNS RuleOptimal The quality of the solution methods, as you increase the number of machines, depends on the type of precedence constraints

13
Example of P4|prec, p j =1|C max ◦ CP Rule: C max = 4 ◦ LNS Rule: C max = 4 ◦ Optimal: C max =3 Observation: if the number of nodes without any predecessors is less than the number of processors, then the CP rule and LNS rule will achieve the optimal schedule

Similar presentations

OK

Completion Time Scheduling Notes from Hall, Schulz, Shmoys and Wein, Mathematics of Operations Research, Vol 22, 513-544, 1997.

Completion Time Scheduling Notes from Hall, Schulz, Shmoys and Wein, Mathematics of Operations Research, Vol 22, 513-544, 1997.

© 2018 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google