Upload
elisabeth-benson
View
228
Download
0
Embed Size (px)
DESCRIPTION
◇ § S1:Introduction Materials Management 2017/4/26 Dr. Yuan-Shyi Peter Chiu
Citation preview
1
Material ManagementClass Note # 5
SCHEDULING
Prof. Yuan-Shyi Peter Chiu Feb. 2012
2
Schedulingis an important aspect of
operations control in both ..
Manufacturing Serviceindustries
§ S1§ S1 ::IntroductionIntroduction ◇◇
3
Types of scheduling problems
¡]¢Ï¡^Job shop
scheduling
¡]¢Ð¡^Personnelscheduling
¡]¢Ñ¡^Facilities
scheduling
¡]¢Ò¡^Vehicle
scheduling
¡]¢Õ¡^Dynamicvs. static
scheduling
¡]¢Ô¡^Project
scheduling
¡]¢Ó¡^Vendor
scheduling
§ S1§ S1 ::IntroductionIntroduction ◇◇
4
Important characteristics ofJob shop scheduling problems
The job arrival pattern - static ?
Number and variety of machines in the shop - identical ?
Number of workers in the shop - capacity ?
Particular flow patterns - a fixed order ?
Evaluation of alternative rules - no universal optimal ?
§ S5§ S5 :: Characteristics of Job Shop Characteristics of Job Shop SchedulingScheduling
◇◇
5
Objectives of Job Shop Management
1.Meet duedates
2.MinimizeWIP
inventory
3.Minimizeaverage
flow time
4.Maximizemachine/
worker timeUtilization
7.Minimizeproductionand worker
costs
6.Reducesetup time
5.Provideaccurate jobstatus info
§ S5§ S5 :: ObjectivesObjectives of Job Shop Managementof Job Shop Management
IT IS IMPOSSIBLE TO OPTIMIZE ALL 7 OBJECTIVES SIMULTANEOUSLY. CUSTOMER Service CUSTOMER Service Quality vs. Plant Efficiency / CostPlant Efficiency / Cost
◇◇
6
§ S6§ S6 :: Flow Shop vs. Job ShopFlow Shop vs. Job Shop (1) FLOW SHOP(1) FLOW SHOP job M/C M/C M/C M/C M/C
1 2 3 4 m
. . .
...
n
Assembly Line different M/C = different operations.
(2) JOB SHOP(2) JOB SHOP job M/C M/C M/C M/C M/C
1 2 3 4 m... . . .n
{1, 3, 4, 1, m}{2, 4, 2, m-1}
PROBLEMS are extremely complex.All-purpose solution algorithms for solving general job shop problems do not exist.
◇◇
7
n
(3)(3) Parallel processingParallel processing vs. Sequential processingSequential processing
JOB M/C M/C M/C M/C1 2 3 m... Sequential . . .
JOB M/C M/C M/C M/C1
23
m
...1
12
3
3
3
mParallel processing
. . .n
§ S6§ S6 :: Flow Shop vs. Job ShopFlow Shop vs. Job Shop ◇◇
8
§ S7§ S7 :: Indicators of Performance EvaluationIndicators of Performance Evaluation
(1) FLOW TIME(1) FLOW TIME
i
1jji tF
job 1 t1 = 25 sec.job 2 t2 = 13 sec.job 3 t3 = 21 sec. . . .
3
1jj3 .sec59t3jobofcompletionF
(2) MEAN FLOW TIME(2) MEAN FLOW TIME
n
1i
i
1jj
n
1ii t
n1nFF
F
◇◇
9
(3) MAKESPAN(3) MAKESPAN : F[n]
TIME REQUIRED TO COMPLETE ALL n jobs Minimizing to the Makespan is a common objective in multiple - m/c sequencing problem.
(4) TARDINESS(4) TARDINESS
max ( F[i] - D[i] , 0 ) where F[i] : Completion time of job i.
D[i] : Job i ’s Due Date.
Example : Job F[i] D[i] Tardiness
1 3 10 0 2 7 12 0 3 14 13 1 4 16 13 3
§ S7§ S7 :: Indicators of Performance Indicators of Performance EvaluationEvaluation ◇◇
10
(5) LATENESS(5) LATENESS
F[i] - D[i]
Job F[i] D[i] Lateness
1 3 10 -7 2 7 12 -5 3 14 13 1 4 16 13 3
(6) MINIMIZING(6) MINIMIZING AVG. TARDINESSAVG. TARDINESS
MAX. TARDINESSMAX. TARDINESS
ARE COMMON SCHEDULING OBJECTIVESARE COMMON SCHEDULING OBJECTIVES.
§ S7§ S7 :: Indicators of Performance Indicators of Performance EvaluationEvaluation ◇◇
11
ti ; di
Wi = Fi - ti
Fi = Wi + ti
Li = Fi - di
Ti = max[Li , 0] Ei = max[-Li , 0] Tmax = max {T1 , T2 , … , Tn}
→ SPT minimizes
Mean flow Time. Mean waiting Time. Mean lateness. → EDD minimizes maximum lateness Lmax ~ Tmax. Lmax = max {L1 , L2 , L3 , … , Ln}
3 1 0 -3
-3 -2 -1 0
1
1 n
i
iF Fn
§ S8§ S8 :: Notation Notation ◇◇
12
Common Scheduling Rules for single machine:Common Scheduling Rules for single machine:
(1)(1) FCFSFCFS
(2)(2) Shortest Processing Time (SPT)Shortest Processing Time (SPT)
(3) Earliest Due Date (EDD)(3) Earliest Due Date (EDD)
(4) CRITICAL RATIO (CR)(4) CRITICAL RATIO (CR)
◇◇
13
(1) Plane 1 2 3 4 5 t[i] 26 11 19 16 23 F[i] 95 11 46 27 69
makespan = 95
SPT = {2, 4, 3, 5, 1} = 49.6 F
(2) Plane 1 2 3 4 5 t[i] 26 11 19 16 23 # of Passengers 180 12 45 75 252 # of Passengers per minute 6.9 1.1 2.4 4.7 10.9 49 95 84 65 23 F[i]
432 564 552 507 252 # of Passengers
{5, 1, 4, 3, 2}
Example 8.2 – Example 8.2 – An example of priority rulesAn example of priority rules
14
20 40 60 80 100
100%
90%
76%
45%
23 49 65time
(3) ARRIVAL TIME = DUE TIME.
(4) PRIORITY e.g.continuing flights.
low fuel level.
carrying precious or perishable cargo.
% Passengers
15
§ S9§ S9 :: EDD Scheduling EDD Scheduling minimizes the minimizes the maximum latenessmaximum lateness..
§ S10§ S10:: Moore’s (1968) algorithmMoore’s (1968) algorithm minimizes the number of Tardy jobsminimizes the number of Tardy jobs.
Step1 : Sequence by earliest due date i.e. d[1] d≦ [2] d≦ [3] … d≦ ≦ [n]
Step2 : Find the 1st tardy job in the current sequence, say job i. IF None exists go to Step 4
Step3 : Consider jobs [1], [2], …, [i] Reject the job with largest tj .and Return to Step2.
Step4 : Current sequence + rejected job(In any order.)
Applications : chef, runway, preparing exam. garage, dock.
◇◇
16
Job# 2 3 1 5 4 6Di 6 9 15 20 23 30ti 3 4 10 10 8 6Fi 3 7 17 27 35 41
×× 1
Job# 2 3 5 4 6di 6 9 20 23 30ti 3 4 10 8 6Fi 3 7 17 25 31
×× 5
Example 8.3Example 8.3 Ti = { max ( F[i] - D[i] , 0 ) } > 0
17
2 3 4 6di 6 9 23 30ti 3 4 8 6Fi 3 7 15 21 Done!
2 - 3 - 4 - 6 - 5 - 1 1 - 5
2 3 4 6 5 1di 6 9 23 30 20 15ti 3 4 8 6 10 10Fi 3 7 15 21 31 41
Example 8.3Example 8.3
18
§.§. S10.1: S10.1: ClassClassProblems DiscussionProblems Discussion
Chapter 8 :Chapter 8 : # # 3,3, 4, 4, 5 5 p.413p.413 30, 30, 3232(a),(b)(a),(b), 34 , 34 p.449-450p.449-450
Preparation Time : 15 ~ 20 minutesPreparation Time : 15 ~ 20 minutesDiscussion : 15 minutesDiscussion : 15 minutes
19
§ S11§ S11 :: Lawler’s Algorithm : PrecedenceLawler’s Algorithm : Precedence
min. max. gi(Fi) 1 i N≦ ≦
gi(Fi) = Fi – di = Li min. max. Lateness.
gi(Fi) = max (Fi – di , 0) Tardiness.
…
nextto
LAST
LAST
◇◇
20
JOBS:
1 2 3
45
6
JOB 1 2 3 4 5 6
ti 2 3 4 3 2 1
di 3 6 9 7 11 7
Example 8.4Example 8.4 ◇◇
21
JOBS 3
5
6 v = { 3, 5, 6 }Total Processing time of all jobs is 15 min iv {gi(Fi)}= {Fi-di}
miniv
= min {15-9 , 15-11 , 15-7}= min {6 , 4 , 8}= 4 ∴ JOB # 5 is scheduled last. (6th)
JOBS 3
6v = { 3, 6 }
Total Processing time is 13 min iv {gi(Fi)}= min {13-9 , 13-7}= min {4 , 6}= 4
∴ JOB # 3 is scheduled last. (5th)So far, { … , 3 , 5}
Example 8.4Example 8.4
◇◇
22
JOBS 2
6v = { 2, 6 }
Total Processing time is 9 min iv {gi(Fi)}= min {9-6 , 9-7}= 2
∴ JOB # 6 is scheduled last. (4th)So far, { … , 6 , 3 , 5}
JOBS 2
4v = { 2, 4 }
Total Processing time is 8 min iv {gi(Fi)}= min {8-6 , 8-7}= 1
∴ JOB # 4 is scheduled 3rd
∴ So far, { … , 4 , 6 , 3 , 5}
JOBS → { , 2 , 4 , 6 , 3 , 5}∴
JOBS → { 1 , 2 , 4 , 6 , 3 , 5}∴
2
1
Example 8.4Example 8.4
◇◇
23
Job# ti Fi di Ti (Tardiness) 1 2 2 3 0
2 3 5 6 04 3 8 7 16 1 9 7 23 4 13 9 45 2 15 11 4
∴ maximum tardiness is 4 days.
Example 8.4Example 8.4 ◇◇
24
§.§. S12: S12: ClassClass Problems Discussion Problems Discussion
Chapter 8 : Chapter 8 : # # 6, 6, 7, 7, 8,8, 9 9 p.419p.419 1010
# # 3737,, p.451p.451
Preparation Time : 10 ~ 15 minutesPreparation Time : 10 ~ 15 minutesDiscussion : 10 minutesDiscussion : 10 minutes
◇◇
25
§ S13§ S13 :: n job on m M/C’sn job on m M/C’s
(1) n JOBS Must BE PROCESSED ON 1 M/C’s
n …….. 3 2 1
1 ……..(n-2) (n-1) n
∴ there are n! possible ways.
(2) “n” JOBS Must BE PROCESSED ON “m” M/C’s
n …….. 3 2 1 n!
.……. n!
…….. n!
∴ there are (n!)m possible ways. #12 #12 p.428p.428
M/C
M/C1M/C 2
M/C m
…… ……
◇◇
26
(A) It provides better system performance in terms of both total flow time ( makespan ) and average flow time ( ).
mean IDLE time?
(B) SCHEDULING n Jobs on 2 M/C’s : if each Jobs must be processed in the order M/C-1 then M/C-2.
Results: The permutation schedule will minimize “makespan” and minimizes “ ”.
(C) Theorem 8.2: (p.422)
The optimal solution for scheduling n jobs on 2 M/C’s is always a permutation schedule.
F
§ S14§ S14 :: Permutation schedules – characteristicsPermutation schedules – characteristics
F
27
§ S15§ S15 :: 2 jobs on 2 M/C’s2 jobs on 2 M/C’s(A) All Possible Schedules for Two Jobs on Two Machines.
(B) Assumes that both jobs must be processed first on both jobs must be processed first on M/C#1 then on M/C#2M/C#1 then on M/C#2.
Machine 1 I JMachine 2 I J
Machine 1 J IMachine 2 J I
Machine 1 J IMachine 2 I J
Machine 1 I J Machine 2 J I
4 5 9
1 5 6
1 5 6 10
4 5 9 10
makespan idle flow time
9
6
10
10
42
44
72
95
12
11
5.52
65
52
55
82106
52
55
5.92109
28
§ S16§ S16 :: Permutation Schedules - DefinitionPermutation Schedules - Definition
* Permutation SchedulesPermutation Schedules = Same Sequence on
both (all) M/C’s
Total # of permutation schedules is exactly n!n!
◇◇
29
§ S17§ S17 : : Johnson’s RuleJohnson’s Rule
(1) Definition:
M/C-A
M/C-B
Jobs must be processed first on M/C-A
then M/C-B
Ai : Processing Time of Job i on M/C-A
Bi : Processing Time of Job i on M/C-B
Job i procedes Job i+1Job i procedes Job i+1
if min (Aif min (Ai i , B, Bi+1i+1) < min (A) < min (Ai+1i+1,B,Bii))
2 M/C’s
◇◇TO MINIMIZE THE MAKESPAN
30
(2) Working Procedures for (2) Working Procedures for Johnson’s ruleJohnson’s rule::
1. List the values of Ai & Bi in 2 columns.
2. Find the smallest remaining element in the 2 columns.
If it appears in column A then schedule that job next.
If it appears in column B then schedule that job last.
3. Cross off the jobs as they are scheduled.
Stop when all jobs have been scheduled.
An easy way to implement Johnson’s Rule
◇◇
31
Five jobs are to be scheduled on two machines. The processing times are
Jobs Machine A Machine B
1 5 2 2 1 6 3 9 7 4 3 8 5 10 4
Example 8.5Example 8.5 ◇◇
32
A #2 #4 #1 #3 #5
B #2 #4 #1 #3 #5
1 4 9 18 28
0 1 7 15 17 25 28 32
makespan=30
if using SPT in Ai then obtain the above 2-4-1-3-5 _____________________________________________________
IF BY JOHSON’S ROLE TO MINIMIZE THE MAKESPAN OR TOTAL FLOW TIME.
Rule: Job i precedes job i+1 if MIN(Ai,Bi+1)<(Ai+1,Bi)
in 2-4-3-5-1 order
(A)
(B) A #2 #4 #3 #5 #1
B #2 #4 #3 #5 #1
1 4 13 18 28
0 1 7 15 22 23 27 28 30
Example 8.5Example 8.5
33
§ S18§ S18 :: n jobs on 3 M/C’sn jobs on 3 M/C’s
(A)Objective : To minimize total flow time (“make span.”)
it is still true that a permutation schedule
is optimal.
(B) But it is not necessarily optimal for the case of F’ .
(C) 3 M/C’s can be reduced to 2 M/C’s (then using Johnson’s Rule to solve it)
if min Ai max B≧ i
or min Ci max B≧ i
“either one” of these conditions be satisfied.
then define iiiiii CBBBAA '' ;
◇◇
34
Consider the following job times for a three-machine problem. Assume that the jobs are processed in the sequence A-B-C
M/C’sJobs A B C 1 4 5 8 2 9 6 10 3 8 2 6 4 6 3 7 5 5 4 11
Min Ci=6
Max Bi=6
∴ Min Ci Max B≧ i
let
iii
iii
CBB
BAA
'
'
Example 8.6Example 8.6 ◇◇
35
M/C’sJobs A’ B’ 1 9 13 2 15 16 3 10 8 4 9 10 5 9 15
Using Johnson’s Rule
5-1-4-2-3
Example 8.6Example 8.6 ◇◇
36
5 10 15 20 25 30 35 40 45 500
B
C
A
5 4 1 2 3
5 4 1 2 3
5 4 1 2 3
51
5-4-1-2-3
5-1-4-2-3
5 10 15 20 25 30 35 40 45 500
B
C
A
5 1 4 2 3
5 1 4 2 3
51 4 2 3
51
Example 8.6Example 8.6 ◇◇
37
§.§. S18.1: S18.1: ClassClass Problems Discussion Problems Discussion
Chapter 8 : Chapter 8 : # # 13, 13, 1414 p.428 p.428
38,38, 4040 p.451p.451
Preparation Time : 10 ~ 15 minutesPreparation Time : 10 ~ 15 minutesDiscussion : 10 minutes Discussion : 10 minutes
◇◇
◆◆
38
§ S19§ S19 :: more on 3 M/C’s problemsmore on 3 M/C’s problems(A) If neither min A﹛ i max B≧ i Nor min Ci max B≧ i ﹜ Then Using
(B) TO MINIMIZE “MAKESPAN” OR “TOTAL FLOW TIME”
A PERMUTATION SCHEDULE IS OPTIMAL ON 3 M/C’s
iii BAA 'iii CBB '
and
Will usually give “REASONABLE” but
possibly “SUBOPTIMAL” result.
Simplifying 3 M/C’s problems 2 M/C’s.
◇◇
39
§ S20§ S20 :: Akers’ procedures for solving Akers’ procedures for solving 2 Jobs on 2 Jobs on mm M/C’s problems M/C’s problems
(1) Draw a cartesian coordinate system.
Job 1 on X-axis
Job 2 on Y-axis
mark off the operation times
on X & Y axis
(2) BLOCK OUT AREAS for each M/C’s
(3)Determine a path from origin to the end of the final block.
move:
The path with minimum vertical distance is “Optimal”.
◇◇
40
JOB 1 JOB 2
Oper. Time Oper. Time
(A) Sanding 3 A 2
(B) Lacquering 4 B 5
(C) Polishing 5 C 3
A regional manufacturing firm produces a variety of household products. One is a wooden desk lamp. Prior to packing, the lamps must be sanded, lacquered, and polished. Each operation requires a different machine. There are currently shipments of two models awaiting processing. The times required for the three operations for each of the two shipments are
Example 8.7Example 8.7 ◇◇
41
2B1A
2B
1A
2C 1B
1B1C
2C
1C2B
1B1B
2A2A
maximize the diagonal movement = min. horizontal vertical
Fig. 8-8 p.426Example 8.7Example 8.7 ◇◇
42
Example 8.7Example 8.7
Fig. 8-9 p.426 ◇◇
43
Example 8.8Example 8.8 ◇◇
44
2
2
10
8
6
4
12
14
16
4 6 8 10 12 14 16 18
(16,14)
(16,11)(7,11) Job 2
(BOB)
Job 1 (Reggie)
Time=16+4+3=23
A1 →B1 →C1 A2 A2 ↓ C1 D2 ↓ C2←D1←D1 ←D2 C2 B2Time=16+1+3=20
A2 →D2 →B2 →C2 →C2 →C2 →C1 →D1 A1 A1 A1 B1
A
B
C
D
Example 8.8Example 8.8 ◇◇
45
§.§. S21: S21: ClassClass Problems Discussion Problems Discussion
Chapter 8 : Chapter 8 : # # 15,15,16 16 p.428p.428
3939 p.452p.452
Preparation Time : 25 ~ 30 minutesPreparation Time : 25 ~ 30 minutesDiscussion : 20 minutes Discussion : 20 minutes
◇◇
46
§ S22§ S22 :: Parallel processing on identical M/C’s.Parallel processing on identical M/C’s.
SPT → minimize mean flow time.
LPT → minimize total flow time, or makespan.
( longest )
◇◇
The EndThe End
47
SchedulingPreview : Chap. 8 [ pp.413~442 ]Preview : Chap. 8 [ pp.413~442 ]
Problem:Problem: # 5, #32(a),(b), # 5, #32(a),(b),
#7, #8, #10,#7, #8, #10,
#37, #40, #39,#37, #40, #39,
#14, #15, #16#14, #15, #16