Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.
-
Upload
josiah-blakeman -
Category
Documents
-
view
226 -
download
1
Transcript of Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.
![Page 1: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/1.jpg)
Scheduling of Jobs
IE 3265 – POM
R. Lindeke
Spring 2005
![Page 2: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/2.jpg)
Focus of Job Scheduling:
Scheduling to Control Bottleneck Machines The n on 1 problem
Scheduling of Parallel Machines The n on mequal problem
Scheduling of Serial Processes N on 2 or n on m problem
Scheduling Goals Thru-put and make span control Lateness control Minimization of WIP Minimization of Idle times
![Page 3: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/3.jpg)
Issues in Scheduling (sequencing of Jobs)
Based on Established Job Priorities and the way arrivals are treated:
Static Arrival means we only enter jobs into consideration at fixed points in time – uses job accumulation
Dynamic Scheduling means that jobs are dispatched as they arrive with continuously revised job priorities
Types and numbers of workers and machines available Most scheduling algorithms are machine-limited (assumes labor is
always available but machine time is the problem) Newer algorithms are studying Labor-limited systems (due to cells and
multi-tasking workers) Internal Flow patterns Priority Rules for job allocation
![Page 4: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/4.jpg)
Typical (Common) Sequencing Rules that we should consider
FCFS. First Come First Served. Jobs processed in the order they come to the shop.
SPT. Shortest Processing Time. Jobs with the shortest processing time are scheduled first.
EDD. Earliest Due Date. Jobs are sequenced according to their due dates.
CR. Critical Ratio. Compute the ratio of processing time of the job and remaining time until the due date. Schedule the job with the smallest CR value next.
![Page 5: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/5.jpg)
Examining the scheduling of n on 1 – or the handling of the bottleneck machine
We will examine several approaches and select ones that best meet varying priority decision making
Like Min. Mean Flow Time Average Job tardiness Number of Tardy Jobs
Let’s try FCFS, SPT, EDD and CR
![Page 6: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/6.jpg)
Example:
Machine shop has 5 unprocessed jobs (J1, J2, J3, J4, J5) numbers by order they entered Bottleneck machines queue:
Job # Process Time Due Date
1 11 61
2 29 45
3 31 31
4 1 33
5 2 32
![Page 7: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/7.jpg)
Using FCFS:
Sequence Comp. Time D. Date Tardiness
J1 11 61 0
J2 40 45 0
J3 71 31 40
J4 72 33 39
J5 74 32 42
Totals 268 121
Mean Flow Time: (268)/5 = 53.4 Avg Tardiness: (121)/5 = 24.2 # Tardy Jobs: 3
![Page 8: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/8.jpg)
SPT:
Sequence Comp. Time D. Date Tardiness
J4 1 61 0
J5 3 45 0
J1 14 31 0
J2 43 33 10
J3 74 32 42
Totals 135 52
Mean Flow Time: (135)/5 = 27. Avg Tardiness: (52)/5 = 10.4 # Tardy: 2
![Page 9: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/9.jpg)
EDD:
Sequence Comp. Time D. Date Tardiness
J3 31 31 0
J5 33 32 1
J4 34 33 1
J2 63 45 18
J1 74 61 13
Totals 235 33
Mean Flow Time: (235)/5 = 47. Avg Tardiness: (33)/5 = 6.6 # Tardy: 4
![Page 10: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/10.jpg)
CR: This is an Iterative Process using this model:
Set Current Time (sum of time of all scheduled jobs so far)
Compute:
Model Starts with current time = 0 Current time updates after each
selection by adding scheduled Process Time to current time
_ _
Pr._ _ Re
Due Date Cur TimeCR
Work maining
![Page 11: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/11.jpg)
Try it:
JOBPr. Time
D. Date
CR
Current Time = 0
1 11 61 5.546
2 29 45 1.552
3 31 31 1.00
4 1 33 33
5 2 32 16
JOBPr. Time
D. Date
CR
Current Time = 31
1 11 61 2.727
2 29 45 .483
4 1 33 2
5 2 32 0.5
![Page 12: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/12.jpg)
Continuing (CR)
JOBPr. Time
D. Date
CR
Current Time = 60
1 11 610.091 do last
4 1 33 -27*
5 2 32 -14**
JOBC. Time
D. Date
Tardy
Summary
3 31 61 0
2 60 45 15
4 61 31 28
5 63 33 31
1 74 32 13
Total: 289 87
![Page 13: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/13.jpg)
Summarizing from CR analysis:
Mean F. Time: (289)/5 = 57.8 Mean Tardiness: (87)/5 = 17.4 # Tardy: 4
![Page 14: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/14.jpg)
Comparing the Algorithm’s for Bottleneck Sequencing:
Total Makespan is independent of sequencing algorithm
SPT will guarantee minimum Mean Flow time Minimize Maximum lateness with EDD model Minimize # Tardy jobs starts with EDD, see
text – Moore’s Algorithm – for rule to do this. Minimizing Mean Tardiness uses Wilkerson-
Irwin Algorthim
![Page 15: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/15.jpg)
Wilkerson-Irwin Algorithm:
Step 1: initialize jobs in EDD order. Compare 1st two jobs in EDD list if max(ta,tb) Max (da,
db) assign a to Col and b to Col . – Else assign SPT task to Col. other to Col. . Place the 3rd job
from EDD list to Col.. Step 2: Compare job to job to see if will join on
tentative scheduled list. If tt -OR- F + max(t,t) max(d,d) move Job to col. , Job to col. and next job on EDD list to col. .
– If no more jobs are in EDD list, add current col. and col. jobs to schedule and stop. Else repeat Step 2. If both tests fail go on to step 3.
![Page 16: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/16.jpg)
Wilkerson-Irwin Algorithm:
Step 3: Put Job in Col. back to top of EDD job list and move Col. job to col. . Compare last col. job to this col. job to see if col. job will join the tentative schedule.
– If tt -OR- F - t + max(t,t) max(d, d) move col. job to col. and select next 2 jobs off EDD list. Return to Step 2. If both tests fail go to Step 4.
Put job in Col. back to top of EDD list. Assign last scheduled job back to the Col. . Return to Step 3.
– If no jobs are on scheduled list, put Job in Col. on schedule list. Let 1st two jobs on EDD list become Col. and Col. jobs. Return to Step 2.
![Page 17: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/17.jpg)
Lets apply it to our 5 Job Example
Sequence Comp. Time D. Date Tardiness
J3 31 31 0
J5 33 32 1
J4 34 33 1
J2 63 45 18
J1 74 61 13
Totals 235 (47) 33 (6.6)
![Page 18: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/18.jpg)
Step by Step:
Col. Col. Col. Scheduled By Step?
J3 J5 J4 1
t5t4 (no); F+ MAX(t5,t4) MAX(d5,d4) (yes) 2
J3,J5 J4 J2 J3
t4t2 (yes); F+ MAX(t4,t2) MAX(d4,d2) (no) 2
J3,J5,J4 J2 J1 J3,J5
t2t1 (no); F+ MAX(t2,t1) MAX(d2,d1) (no) 2
J3,J5,J4 J1 J3,J5
t4t1 (yes); F - t4+ MAX(t4,t1) MAX(d4,d1) (yes) 3
J3,J5,J4,J1J3,J5,J4,J1,J2
![Page 19: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/19.jpg)
Summary:
Sequence Comp. Time D. Date Tardiness
J3 31 31 0
J5 33 32 1
J4 34 33 1
J1 45 61 0
J2 74 45 29
Totals 217 31
Mean Flow Time: (217)/5 = 43.4 Mean Tardiness: (33)/5 = 6.2 # Tardy: 3
![Page 20: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/20.jpg)
Some Issues:
All of these algorithms ignore Constraints that may be desired/required– Valued Customers orders– Promises to others– Rush Jobs– Rework/Scrap, etc.
These issues must be considered and the rest of jobs must be scheduled around them
![Page 21: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/21.jpg)
You try one!
Job # Process Time Due Date
1 15 45
2 9 60
3 41 44
4 6 50
5 10 30
![Page 22: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/22.jpg)
Looking at Parallel Machine Problem:
Processors 1 to mN Jobs
![Page 23: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/23.jpg)
Algorithms to Minimize Mean Flow Time and/or Makespan:
One For Minimizing Mean Flow:– Step 1: Sequence Jobs by SPT– Step 2: Take Jobs from list and assign to the processor with least
amount of assigned time– Step 3: Continue thru all jobs
One to Minimize Makespan while controlling Mean Flow:– Step 1: Sequence Jobs in Longest Processing time (LPT) order– Step 2: Take Jobs from list and assign to the processor with least
amount of assigned time– Step 3: Reverse scheduled tasks on each processor to set the
processing order
![Page 24: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/24.jpg)
Lets try one:
Given Order SPT Order LPT Order
Job # Pr. Time Job # Pr. Time Job # Pr. Time
1 5 6 2 4 8
2 6 10 2 5 7
3 3 3 3 2 6
4 8 7 3 1 5
5 7 9 4 8 5
6 2 1 5 9 4
7 3 8 5 3 3
8 5 2 6 7 3
9 4 5 7 6 2
10 2 4 8 10 2
![Page 25: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/25.jpg)
SPT Algorithm
Job # Pr. Time M1 M2 M3
6 2 #6 - 2
10 2 #10 - 2
3 3 #3 - 3
7 3 #7 - 5
9 4 #9 - 6
1 5 #9 - 8
8 5 #8 - 10
2 6 #2 - 12
5 7 #5 - 15
4 8 #4 - 18
![Page 26: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/26.jpg)
Presented as Gantt Chart:
ID Task Name Start Finish DurationApr 2006
20
1 2d4/21/20064/20/2006J6 on M1
2d4/21/20064/20/2006J10 on M2
8 3d4/22/20064/20/2006J3 on M3
3d4/24/20064/22/2006J7 on MI
4d4/25/20064/22/2006J9 on M2
9 5d4/27/20064/23/2006J1 on M3
5d4/29/20064/25/2006J8 on M1
6d5/1/20064/26/2006J2 on M2
10 7d5/4/20064/28/2006J5 on M3
8d5/7/20064/30/2006J4 on M1
2
3
4
5
6
7
21 22 23 24
May 2006
25 26 27 28 29 30 1 2 3 4 5 6 7
Makespan is total time start to finish:18 days
![Page 27: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/27.jpg)
Computing Mean Flow
_
1
_ _
1
1
__
__
2 5 10 18_ 8.75
48.75 6.67 8.67
_ 8.033
tot machines
MM
all Jobs Assigned
NN
M
sch
M FlowMean Flow
M
Comp TimeM Flow
N
M Flow
Mean Flow
![Page 28: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/28.jpg)
LPT Approach:
Job # Pr. Time M1 M2 M3
4 8 #4 - 8
5 7 #5 - 7
2 6 #2 - 6
1 5 #1 - 11
8 5 #8 - 12
9 4 #9 - 12
3 3 #3 - 14
7 3 #7 - 15
6 2 #6 - 14
10 2 #10 - 16
To schedule: REVERSE ORDER on each machine
![Page 29: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/29.jpg)
Presented as Gantt Chart:
ID Task Name Start Finish DurationApr 2006
20
1 3d4/22/20064/20/2006#7 on M1
2 4d4/26/20064/23/2006#9 on M1
3 8d5/4/20064/27/2006#4 on M1
4 2d4/21/20064/20/2006#10 on M2
5 2d4/23/20064/22/2006#6 on M2
6 5d4/28/20064/24/2006#8 on M2
7 7d5/5/20064/29/2006#5 on M2
8 3d4/22/20064/20/2006#3 on M3
9 5d4/27/20064/23/2006#1 on M3
10 6d5/3/20064/28/2006#2 on M3
May 2006
21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6
Makespan is total time start to finish:16 days
![Page 30: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/30.jpg)
Computing Mean Flow:
M_Flow2 = (2 + 4 + 9 + 16)/4 = 7.75 M_Flowsys = (8.33 + 7.75 + 4.67)/3 = 6.917 Now Considering Idle time:
– SPT: Total Idle is 6 + 3 = 9 M_Idle is 9/3 = 3
– LPT: Total Idle is 4 + 1 = 5 M_Idle is 5/3 = 1.667
![Page 31: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/31.jpg)
Considering Lateness
To minimize Maximum Tardiness:– Step 1: Sequence task by EDD– Step 2: Take tasks from EDD order list then
schedule them on processor w/ least assigned task time
To Reduce overall “Tardiness” typically we use a Slack Rule: Slack = (Datedue – Pr._Time)
To reduce Mean Tardiness, make up several schedules using SPT, LPT, EDD, Slack
– Apply Wilkerson-Irwin algorithm separately to each machine.
– Select the sequence with the minimum mean tardy time
![Page 32: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/32.jpg)
Looking at the Serial Machine Problem
In the 2-machine problem with ‘n’ different products, we have potentially: (n!)2 different schedules – therefore, full enumeration is (usually) impossible
Rules used in making decisions: Minimizing Makespan (time from start of 1st job on M1
to completion of last job on M2) Minimizing Mean Flow time Minimize Mean Idle Minimize measures of Tardiness
![Page 33: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/33.jpg)
In the Serial Problem, Various Schedules are Compared with Gantt Charts:
True if ‘n’ is 25 or less else the chart is unreadable!
Lets try a simple 2 parts example (2!)2 = 4 potential schedules – lets fully enumerate!
M1 M2
Job 1 4 2
Job 2 1 4
![Page 34: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/34.jpg)
Potential Schedule 1 of 4
Makespan = 10 units Mean Flow = (4.5+8)/2 = 6.25 Mean Idle = (4+5)/2 = 4.5
![Page 35: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/35.jpg)
Potential Schedule 2 of 4
ID Task Name Start Finish DurationTue Apr 25
4111 6 8108 3
1 4h4/25/20064/25/2006J1 M1
2 1h4/25/20064/25/2006J2 M1
3 4h4/25/20064/25/2006J2 M2
4 2h4/25/20064/25/2006J1 M2
127 9 72 5 9
Makespan: 7 Mean Flow: (3+6)/2 = 4.5 Mean Idle: (1+2)/2 = 1.5
![Page 36: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/36.jpg)
Potential Schedule 3 of 4
Makespan = 11 Mean Flow = (3+9)/2 = 7.75 Mean Idle = (6+5)/2 = 5.5
![Page 37: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/37.jpg)
Potential Schedule 4 of 4
Makespan: 11 Mean Flow = (4.5 +10)/2 = 7.25 Mean Idle = (6+5)/2 = 5.5
![Page 38: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/38.jpg)
Comparing:
Upon Examination, it is obvious that Tentative Schedule 2 is the most favorable
– Shortest Makespan, Min Mean Flow and Min Mean Idle Examining this schedule, we see that
– 1. the Jobs are run directly from their 1st machine to the second upon completion
– 2. The job with the shortest time on M1 was scheduled 1st
– 3. The job with the shortest M2 time was scheduled last These decisions observations have been found
(Johnson 1954) to provide an optimal schedule for the 2 machine serial problem
![Page 39: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/39.jpg)
Johnson’s Rule for n on 2 serial:
Step 1: List all jobs with their M1 and M2 process times Step 2: Select the shortest processing time on the list
– If a M1 time, schedule job 1st
– If M2 time, schedule job LAST– Cross this job off list
Repeat Step 2 through rest of job (however, 1st means after already scheduled “1sts” and last is before already scheduled lasts)
Build optimal Schedule (Gantt Chart?) and compute Makespan, Mean Flow and Mean Idle
![Page 40: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/40.jpg)
Lets Try an Example:
M1 M2
J1 5 2
J2 1 6
J3 9 7
J4 3 8
J5 10 4
By Step 2: Select J2 and Schedule 1st (M1 time) X row 2 out!
![Page 41: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/41.jpg)
Continuing: (sch. is: 2 ----)
M1 M2
J1 5 2
J2 1 6
J3 9 7
J4 3 8
J5 10 4
Select J1 with M2 short time – schedule 5th X out row 1
![Page 42: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/42.jpg)
Continuing: (sch. is 2 --- 1)
M1 M2
J1 5 2
J2 1 6
J3 9 7
J4 3 8
J5 10 4
Select J4 short time on M1 Schedule it 2nd (1st!) X out Row 4
![Page 43: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/43.jpg)
Continuing: (sch. is 2-4 -- 1)
M1 M2
J1 5 2
J2 1 6
J3 9 7
J4 3 8
J5 10 4
Select J5 short time is M2 schedule 2nd last
Now, since only J3 is left, schedule it 3rd last (M2 short time)
![Page 44: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/44.jpg)
Summarizing:
ID Task Name Start Finish DurationTue Apr 25 Wed Apr 26
411 1010 85 11432 6 627 46 128 310 1 55 912 19 10 37 1 9
1 .99h4/25/20064/25/2006J2 M1
2 3h4/25/20064/25/2006J4 M1
3 9h4/25/20064/25/2006J3 M1
4 10h4/26/20064/25/2006J5 M1
5 5h4/26/20064/26/2006J1 M1
6 .99h4/25/20064/25/2006M2 Idle
7 6h4/25/20064/25/2006J2 M2
8 8h4/25/20064/25/2006J4 M2
9 6.99h4/26/20064/25/2006J3 M2
10 .99h4/26/20064/26/2006M2 Idle
11 3.99h4/26/20064/26/2006J5 M2
12 .99h4/26/20064/26/2006M2 Idle
13 2h4/26/20064/26/2006J1 M2
126 88 9 2 7 711
![Page 45: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/45.jpg)
Computing Measures:
Makespan: is 30 working hours of time (6 am 4/25 finishing at 7 pm on 4/26)
Mean Idle = (2+3)/2 = 2.5 units Mean Flow Time:
1 4 13 23 28 7 15 22 27 305 5
213.8 20.2
172
MeanFlow
![Page 46: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/46.jpg)
Expanding The Technique to M machines
We will explore an algorithmic method to control Makespan based on work by: Campbell, Dudek & Smith in The Journal of Management Science
This method creates M -1 possible schedules (M is # of serial processors)
This is of a possible group of (n!)M possible schedules For 10 parts and 5 machines it is: 6.29*1032!
We essentially collapse the M machines into a series of “2” machine problems and apply Johnson’s Rule
So for 5 machine we evaluate 4 possible schedules
![Page 47: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/47.jpg)
Stating the Algorithm:
Define: – t*i,1 as the time to complete tasks on the “first machine” of
the of the pseudo-Johnson Pair– t*i,2 as the time to complete tasks on the “second machine”
of the of the pseudo-Johnson Pair
Schedule 1 is then:– t*i,1 = ti,1 where we only first machine times are used for
Johnson’s rule studies– t*i,2 = ti,2 where only the M machine times are used for
Johnson’s rule studies
![Page 48: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/48.jpg)
Stating the Algorithm: (cont.)
Schedule 2 is then:– t*i,1 = ti,1 where the sum of the first two machine times are
used for Johnson’s rule studies– t*i,2 = ti,2 where the sum of the Mth and Mth-1 machine times
are used for Johnson’s rule studies Schedule K is:
– t*i,1 = ti,1 where the sum of the first K machine times are used for Johnson’s rule studies
– t*i,2 = ti,2 where the sum of Mth to Mth-K machine times are used for Johnson’s rule studies
And this continues thru the M-1 possible schedules
![Page 49: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/49.jpg)
Trying One: (4 parts on 4 machines)
M1 M2 M3 M4
J1 5 8 4 3
J2 7 9 5 8
J3 2 3 9 7
J4 6 1 6 4
We can expect 331776 possible schedules but the Campbell algorithm reduces it to 4-1 = 3 that will have min(Makespan)!
![Page 50: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/50.jpg)
Lets build the 1st of the 3 Possible Schedules:
t*i,1 t*i,2
J1 5 3
J2 7 8
J3 2 7
J4 6 4
By Johnson’s Rule the Sequence is: (J3-J2-J4-J1) with Makespan of 38 units
![Page 51: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/51.jpg)
Lets build the 2nd of the 3 Possible Schedules:
t*i,1 t*i,2
J1 5+8 = 13 4+3 = 7
J2 7+9 = 16 5+8 = 13
J3 2+3 = 5 9+7 = 16
J4 6+1 = 7 6+4 = 10
Sequence is: (J3-J4-J2-J1) and Makespan is 40 → so stay with 1st
![Page 52: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/52.jpg)
Lets build the 3rd of the 3 Possible Schedules:
t*i,1 t*i,2
J1 5+8+4 = 17 8+4+3 = 15
J2 7+9+5 = 21 9+5+8 = 22
J3 2+3+9 = 14 3+9+7 = 19
J4 6+1+6 = 13 1+6+4 = 11
Sequence is: J3-J2-J1-J4 and has a Makespan of 40 so keep 1st schedule
![Page 53: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/53.jpg)
Gantt Charting the Solution:
ID Task Name Start Finish DurationApr 23 2006
25
1 2d4/26/20064/25/2006J3 M1
2 7d5/3/20064/27/2006J2 M1
3 6d5/9/20065/4/2006J4 M1
4 5d5/14/20065/10/2006J1 M1
5 2d4/26/20064/25/2006Idle M2
6 3d4/29/20064/27/2006J3 M2
7 4d5/3/20064/30/2006Idle M2
8 9d5/12/20065/4/2006J2 M2
9 1d5/13/20065/13/2006J4 M2
10 1d5/14/20065/14/2006Idle M2
11 8d5/22/20065/15/2006J1 M2
12 5d4/29/20064/25/2006Idle M3
13 9d5/8/20064/30/2006J3 M3
14 4d5/12/20065/9/2006Idle M3
15 5d5/17/20065/13/2006J2 M3
16 6d5/23/20065/18/2006J4 M3
17 4d5/27/20065/24/2006J1 M3
18 14d5/8/20064/25/2006Idle M4
19 7d5/15/20065/9/2006J3 M4
20 2d5/17/20065/16/2006Idle M4
21 8d5/25/20065/18/2006J2 M4
23 3d6/1/20065/30/2006J1 M4
22 4d5/29/20065/26/2006J4 M4
Apr 30 2006 May 7 2006 May 14 2006 May 21 2006 May 28 2006
26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1
![Page 54: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/54.jpg)
Computing Mean Numbers:
Mean Flow:
Mean Idle:
2 9 15 20 5 18 19 28 14 23 29 31 21 31 35 384 4 4 4.
411.5 17.5 24.25 31.25
21.1254
M Flow
18 17 16 16. 16.75
4M Idle
![Page 55: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/55.jpg)
Considering Cells rather Than Job Shops!
Make 1 Pass 1 rules apply In the last example, we would see a significant
amount of idle time reduction In a Jobshop (if times represent batch production
times), we must wait for the entire batch to be completed before they move to the next machine BUT, in Cellular (flow shops) once the first part in a batch is done, it can move to the next machine
This would significantly reduce ‘Up Front’ Idle and erase much of the ‘within’ idle times too!
![Page 56: Scheduling of Jobs IE 3265 – POM R. Lindeke Spring 2005.](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649c7b5503460f9492f25d/html5/thumbnails/56.jpg)
Thus ends the Lecture series:
Please use the ideas presented during our lecture series wisely!
Remember, in Management, none of the decisions we make are the ONLY ANSWER!
When you make decisions, be prepared to back them up with data!
Finally, as a manager, since you must make the decisions and the data available is sketchy your decision will likely include a lot of “Gut Feel”
So, Always Be Bold (but don’t forget to bring your towel!)