Prof. Yuan-Shyi Peter Chiu

47
1 Material Management Class Note # 5 SCHEDULING Prof. Yuan-Shyi Peter Chiu Feb. 2012

description

◇ § S1:Introduction Materials Management 2017/4/26 Dr. Yuan-Shyi Peter Chiu

Transcript of Prof. Yuan-Shyi Peter Chiu

Page 1: Prof. Yuan-Shyi Peter Chiu

1

Material ManagementClass Note # 5

SCHEDULING

Prof. Yuan-Shyi Peter Chiu Feb. 2012

Page 2: Prof. Yuan-Shyi Peter Chiu

2

Schedulingis an important aspect of

operations control in both ..

Manufacturing Serviceindustries

§ S1§ S1 ::IntroductionIntroduction ◇◇

Page 3: Prof. Yuan-Shyi Peter Chiu

3

Types of scheduling problems

¡]¢Ï¡^Job shop

scheduling

¡]¢Ð¡^Personnelscheduling

¡]¢Ñ¡^Facilities

scheduling

¡]¢Ò¡^Vehicle

scheduling

¡]¢Õ¡^Dynamicvs. static

scheduling

¡]¢Ô¡^Project

scheduling

¡]¢Ó¡^Vendor

scheduling

§ S1§ S1 ::IntroductionIntroduction ◇◇

Page 4: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 5: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 6: Prof. Yuan-Shyi Peter Chiu

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.

◇◇

Page 7: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 8: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 9: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 10: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 11: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 12: Prof. Yuan-Shyi Peter Chiu

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)

◇◇

Page 13: Prof. Yuan-Shyi Peter Chiu

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

Page 14: Prof. Yuan-Shyi Peter Chiu

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

Page 15: Prof. Yuan-Shyi Peter Chiu

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.

◇◇

Page 16: Prof. Yuan-Shyi Peter Chiu

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

Page 17: Prof. Yuan-Shyi Peter Chiu

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

Page 18: Prof. Yuan-Shyi Peter Chiu

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

Page 19: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 20: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 21: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 22: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 23: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 24: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 25: Prof. Yuan-Shyi Peter Chiu

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

…… ……

◇◇

Page 26: Prof. Yuan-Shyi Peter Chiu

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

Page 27: Prof. Yuan-Shyi Peter Chiu

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

Page 28: Prof. Yuan-Shyi Peter Chiu

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!

◇◇

Page 29: Prof. Yuan-Shyi Peter Chiu

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

Page 30: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 31: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 32: Prof. Yuan-Shyi Peter Chiu

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

Page 33: Prof. Yuan-Shyi Peter Chiu

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 '' ;

◇◇

Page 34: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 35: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 36: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 37: Prof. Yuan-Shyi Peter Chiu

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

◇◇

◆◆

Page 38: Prof. Yuan-Shyi Peter Chiu

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.

◇◇

Page 39: Prof. Yuan-Shyi Peter Chiu

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”.

◇◇

Page 40: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 41: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 42: Prof. Yuan-Shyi Peter Chiu

42

Example 8.7Example 8.7

Fig. 8-9 p.426 ◇◇

Page 43: Prof. Yuan-Shyi Peter Chiu

43

Example 8.8Example 8.8 ◇◇

Page 44: Prof. Yuan-Shyi Peter Chiu

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 ◇◇

Page 45: Prof. Yuan-Shyi Peter Chiu

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

◇◇

Page 46: Prof. Yuan-Shyi Peter Chiu

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

Page 47: Prof. Yuan-Shyi Peter Chiu

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