chapter 15: production scheduling tm 663 operations planning november 28,2011 paula jensen

64
Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Upload: bernard-hicks

Post on 29-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Chapter 15:Production Scheduling

TM 663Operations Planning November 28,2011

Paula Jensen

Page 2: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Agenda

Factory Physics

Chapter 15: Production Scheduling

(New Assignment Chapter 15 problems 1-3)

Page 3: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Production Scheduling

Let all things be done decently and in order.

– I Corinthians

Page 4: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Goals of Production Scheduling

High Customer Service: on-time delivery

Low Inventory Levels: WIP and FGI

High Utilization: of machinesINVENTORY

UTILIZATIONSERVICE

Page 5: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Meeting Due Dates – Measures

Service Level:• Used typically in make to

order systems.• Fraction of orders which

are filled on or before their due dates.

Fill Rate:• Used typically in make to

stock systems.• Fraction of demands met

from stock.

Lateness:• Used in shop floor control.• Difference between order due date

and completion date.• Average lateness has little meaning.• Better measure is lateness variance.

Tardiness:• Used in shop floor control.• Is equal to the lateness of a job if it

is late and zero, otherwise.• Average tardiness is meaningful but

unintuitive.

Page 6: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Reducing WIP and Cycle Time

Less WIP Equals Shorter Cycle Times (Little’s Law)

Benefits of shorter cycle times:

• Lower Cost: less money in inventory

• More Flexibility: less disruptive to change backlog that work in process

• Better Quality: faster defect detection

• Less Reliance on Forecasts: cycle times below frozen zone allow make to order

• Better Forecasts: distant (inaccurate) forecasts are no longer needed

Page 7: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Classic Scheduling – Assumptions

MRP/ERP:• Benefits – Simple paradigm, hierarchical approach.

• Problems –

– MRP assumes that lead times are an attribute of the part, independent of the status of the shop.

– MRP uses pessimistic lead time estimates.

Page 8: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Classic Scheduling – Assumptions (cont.)

Classic Scheduling: (only classic in academia)

• Benefits – “Optimal” schedules

• Problems – Bad assumptions.

– All jobs available at the start of the problem.

– Deterministic processing times.

– No setups.

– No machine breakdowns.

– No preemption.

– No cancellation.

Page 9: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Classic Single Machine Results

Minimizing Average Cycle Time:• Minimize by performing in “shortest process time” (SPT) order.• Makespan is not affected.

Minimizing Maximum Lateness (or Tardiness):• Minimize by performing in “earliest due date” (EDD) order.• Makespan is not affected.• If there exists a sequence with no tardy jobs, EDD will do it.

Minimizing Average Tardiness:• No simple sequencing rule will work. Problem is NP Hard.• Makespan is not affected.

Page 10: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Classic Multi Machine Results

Minimizing “Makespan” on Two Machines: given a set of jobs that must go through a sequence of two machines, what sequence will yield the minimum makespan?• Makespan is sequence dependent.• Simple algorithm (Johnson 1954):

1. Sort the times of the jobs on the two machines in two lists.2. Find the shortest time in either list and remove job from both lists.

– If time came from first list, place job in first available position.– If time came from second list, place job in last available

position in sequence.3. Repeat until lists are exhausted.

The resulting sequence will minimize makespan.

Page 11: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Johnson’s Algorithm Example

Data:

Iteration 1: min time is 4 (job 1 on M1); place this job first and remove from lists:

Job Time on M1 Time on M21 4 92 7 103 6 5

List 1 List 24 (1) 5 (3)6 (3) 9 (1)7 (2) 10 (2)

Page 12: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Johnson’s Algorithm Example (cont.)

Iteration 2: min time is 5 (job 3 on M2); place this job last and remove from lists:

Iteration 3: only job left is job 2; place in remaining position (middle).

Final Sequence: 1-2-3

Makespan: 28

List 1 List 26 (3) 5 (3)7 (2) 10 (2)

Page 13: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Gantt Chart for Johnson’s Algorithm Example

Machine 1

Machine 2

Time 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

3

1 2 3

1 2

Short task on M1 to“load up” quickly.

Short task on M2 to“clear out” quickly.

Page 14: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Classic Dispatching Results

Optimal Schedules: Impossible to find for most real problems.

Dispatching: sorts jobs as they arrive at a machine.

Dispatching rules:• FIFO – simplest, seems “fair”.

• SPT – Actually works quite well with tight due dates.

– (shortest process time)

• EDD – Works well when jobs are mostly the same size.

• Many (100?) others.

Problems with Dispatching:• Cannot be optimal (can be bad).

• Tends to be myopic.

Page 15: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

The Difficulty of Scheduling Problems

Dilemma:• Too hard for optimal solutions.• Need something anyway.

Classifying “Hardness”:• Class P: has a polynomial solution.• Class NP: has no polynomial solution.

Example: Sequencing problems grow as n!.• Compare en/10000 and 10000n10.

– At n = 40, en/10000 = 2.4 1013, 10000n10 = 1.0 1020

– At n = 80, en/10000 = 5.5 1030, 10000n10 = 1.1 1023

• 3! = 6, 4! = 24, 5! = 120, 6! = 720, … 10! =3,628,800, while13! = 6,227,020,80025!= 15,511,210,043,330,985,984,000,000

0

1E+22

2E+22

3E+22

4E+22

5E+22

6E+22

7E+22

8E+22

9E+22

56 57 58 59 60 61 62 63

en/10000

10000n10

Page 16: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Computation Times

Current situation: computer can examine 1,000,000 sequences per second and we wish to build a scheduling system that has response time of no longer than one minute. How many jobs can we sequence optimally?

Number of Jobs Computer Time

5 0.12 millisec6 0.72 millisec7 5.04 millisec8 40.32 millisec9 0.36 sec10 3.63 sec11 39.92 sec12 7.98 min13 1.73 hr14 24.22 hr15 15.14 day

20 77,147 years

Page 17: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Effect of Faster Computers

Future Situation: New computer is 1,000 times faster, i.e. it can do 1 billion comparisons per second. How many jobs can we sequence optimally now?

Number of Jobs Computer Time

5 0.12 microsec6 0.72 microsec7 5.04 microsec8 40.32 microsec9 362.88 microsec10 3.63 millisec11 39.92 millisec12 479.00 millisec13 6.23 sec14 87.18 sec15 21.79 min

20 77,147 years

Page 18: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Polynomial vs. Non-Polynomial Algorithms

Polynomial Example: dispatching (sorting) time goes up as n log n. Suppose, for comparison, that is takes the same amount of time to sort 10 jobs as it does to examine the 10! sequences. How large a problem can we solve using dispatching?

Number of Jobs Computer Time

10 3.6 sec11 4.1 sec12 4.7 sec. .

20 9.4 sec30 16.1 sec. .

80 55.2 sec85 59.5 sec90 63.8 sec. .

100 72.6 sec200 167.0 sec

Page 19: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Effect of Faster Computer

Situation: New computer 1000 times faster. How much does the size of dispatching problem we can solve increase?

Number of Jobs Computer Time

1000 1.1 sec2000 2.4 sec3000 3.8 sec

. .10,000 14.5 sec20,000 31.2 sec30,000 48.7 sec35,000 57.7 sec36,000 59.5 sec

. .50,000 85.3 sec100,000 181.4 sec200,000 384.7 sec

Page 20: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Implications for Real Problems

Computation: NP algorithms are slow to use.

No Technology Fix: Faster computers don’t help on NP algorithm.

Scheduling is Hard: Real scheduling problems tend to be NP Hard.

Scheduling is Big: Real scheduling problems also tend to be quite large; impossible to solve optimally.

Page 21: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Implications for Real Problems (cont.)

Robustness? NP hard problems have many solutions, and presumably many “good” ones.

• Example: 25 job sequencing problem. Suppose that only one in a trillion of the possible solutions is “good”. This still leaves 15 trillion “good” solutions. Our task is to find one of these.

Role of Heuristics: Polynomial algorithms can be used to obtain “good” solutions. Example heuristics include:

• Simulated Annealing

• Tabu Search

• Genetic Algorithms

Page 22: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

The Bad News

Violation of Assumptions: Most “real-world” scheduling problems violate the assumptions made in the classic literature:• There are always more than two machines.• Process times are not deterministic.• All jobs are not ready at the beginning of the problem.• Process time are sequence dependent.

Problem Difficulty: Most “real-world” production scheduling problems are NP-hard.• We cannot hope to find optimal solutions of

realistic sized scheduling problems.• Polynomial approaches, like dispatching, may

not work well.

Page 23: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

The Good News

Due Dates: We can set the due dates.

Job Splitting: We can get smaller jobs by splitting larger ones.

• Single machine SPT results imply small jobs “clear out” more quickly than larger jobs.

• Mechanics of Johnson’s algorithm implies we should start with a small job and end with a small job.

• Small jobs make for small “move” batches and can be combined to form larger “process” batches.

Page 24: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

The Good News (cont.)

Feasible Schedules: We do not need to find an optimal schedule, only a good feasible one.

Focus on Bottleneck: We can often concentrate on scheduling the bottleneck process, which simplifies problem closer to single machine case.

Capacity: Capacity can be adjusted dynamically (overtime, floating workers, use of vendors, etc.) to adapt facility (somewhat) to schedule.

Page 25: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Due Date Quoting

New Job(c)

“Emergency”Positions

Backlog(b)

m = w + b +c

Completed

Rate Out

rP,

WIP (W)

Page 26: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Dynamic Due Date Quoting – Analytic Approach

Notation:

Required Condition:

Due Date Quote:

jobcurrent for serviceattain todate duemin

level service desired

units) (std jobcurrent including and of ahead work

od)units/peri (std rate work of dev std

od)units/peri (std ratemean work

period during completed work

s

m

tX t

smXt

t

1Pr1

2

2222

2

14

1

ss z

mz

m

safety lead time

prob of not completingm units of work within lead time of l

Page 27: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Dynamic Due Date Quoting – Observations

• If = 0 then l = m/, regardless of s (i.e., quoting m/ days will achieve 100% service in a system with no variability).

• The due date is increasing in (i.e., more variability will require more safety lead time).

• In order to achieve service of at least s, we must round l up to the next integer to arrive at the due date to quote in units of full days.

Page 28: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Dynamic Due Date Quoting Example

Data:

pieces 1500

jobcurrent in pieces 100

backlogon pieces 900

linein pieces 500

dayper pieces 30

dayper pieces 100

table)normal standard (from 1.28

0.9

cbwm

c

b

w

z

s

s

Page 29: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Dynamic Due Date Quoting Example (cont.)

Solution:

Interpretation: Note that n/ = 1500/100 = 15 days, so to accommodate the variability we are building in 2 days of safety lead time into our quote.

days 17

56.16

)100)(2(

1)30)(28.1(

)1500)(100)(4(13028.1

100

15002

2222

Page 30: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Dynamic Due Date Quoting – Empirical Approach

Basic Model:

where

Methodology: use control chart approach to adjust FF to attain desired service level.

Advantages: • very few modeling assumptions• simple to implement• adapts to continuous improvement

FFm

factor fudgeFF

Page 31: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling via Lot Sizing

Case: TJ International – Parallam Product

Issues:• Press is bottleneck• 12 hour changeover time to switch widths (12”, 14”, 16”, 19”)• Many products made from each width, but less 14”/16” than 16”/19”• Currently try to run at least a week between changeovers• Seasonal demand: inventory build up in off-season

Problem: determine run sequence each month

Lathe/Clip Press Saw

Page 32: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling via Lot Sizing

Notation:

Problem: choose lot sizes for the month to meet demand as “efficiently” as possible.

variable)(decision product for (parts) sizelot

product for (hr) timesetup

product of (parts/hr) rate production

product for (parts/hr) demandhourly

product for th)(parts/mon demandmonthly

nutilizatio desired

hours/day days/month available hours

ix

is

ip

id

iD

u

H

i

i

i

i

i

Page 33: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Cyclic Schedule

Approach: fix lot sizes for all products and compute number of cycles that can be run in the month as:

If the horizon is short, N should be rounded down to the nearest integer. Otherwise, a non-integer N is ok since you will be rescheduling anyway.

Lot Sizes: The lot sizes will be:

These, of course, need to be rounded or ceilinged.

Problem: You don’t necessarily want to make the same number of runs of a low demand product as of a high demand product.

i i

i ii

s

pDuHN

N

Dx i

i

spare capacitysetup/cycle

Page 34: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Non-Cyclic Schedules

Fundamental Issue: What is your objective?

Minimize Sum of Run Lengths? If we write out the Lagrangian for the nonlinear optimization problem and optimize assuming continuous lot sizes, we get

where

Problems:• Since we solved for lot sizes, we wind up with a non-integer number

of setups for the month. How do we allocate the setup time?• What order do we run the products in the non-cyclic schedule?

Conclusion: We should solve for the number of run cycles for each product. But what objective do we use?

iiii psdx

2

i ii

i iii

pdu

psd

Page 35: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

MiniMax Schedule

Objective: minimize the maximum run length.

• We are never too far away from changing over to another product.

• Perhaps a good surrogate for maximizing flexibility.

Notation: Let

produced is product each timelength run

in run is product timesofnumber the

ipn

Ds

Hin

ii

ii

i

decision variable

Page 36: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

MiniMax Schedule (cont.)

IP Formulation:

integer

allfor 1

constraintminimax , allfor )(

constraintcapacity

:

min

i

i

iiii

i iii ii

n

in

iTpnDs

pDuHsn

st

T

Page 37: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Example

Data:H = 22 days 18 hrs/day = 396 hrsu = 0.9

Minimal Run Schedule: Suppose the plant has a policy of never making less than 1500 so their current lot sizes are 15000, 12000, 1500, 1500. This takes 19.2 days, close to the 22 days available, but it means that some product won’t be produced until pretty late in the month.

i 1 2 3 4Di 15000 12000 500 250pi 100 100 75 50si 8 8 6 4

Di/pi 150 120 6.7 5Total Prod TimeReq = 281.67 hrs

Page 38: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Example (cont.)

Cyclic Schedule: The number of cycles per month is

N = (396 0.9 - 281.67)/26 = 2.87

yielding lot sizes of

But N = 2.87 means that the first two cycles in the month use the above lot sizes while the last one uses reduced lot sizes (87% of base).

i 1 2 3 4xi 5219 4175 174 87

Page 39: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Example (cont.)

MiniMax Schedule: We can implement the above formulation as follows:

1. Start with ni = 1 for all i. Note that the product with max run length is product 1 with a run of 158 hours.

2. Add setup for product 1, so n1 = 2, and its max run length becomes 83 and now product 2 has the longest run length at 128 hours.

3. Add a setup for product 2, so n2 = 2, and its max run length becomes 68 and now product 1 has longest run length at 83 hours.

4. Continue adding setups to product with longest run until we run out of capacity. The optimal solution is:

i 1 2 3 4ni 4 4 1 1xi 3750 3000 500 250

Page 40: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Example (cont.)

Results: The schedule goes as follows:1. We set up for the 4th product and get it out of the way.2. Likewise for the 3rd.3. Now we run 3750 of product 1 and 3000 of product 2 in

succession for 4 times.

The longest anyone would ever have to wait would be for product 2 at the beginning of the month at 3.73 days. After that the longest wait would be 2.53 days.

Conclusion: Minimax schedule results in shorter wait for product than either minimal run schedule or cyclic schedule. And it is simple to compute.

Page 41: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

TJ International Case

Non-Cyclic Scheduling?• Fewer runs of 12”, 14”

• But long setups make running anything twice in the month difficult.

• Skip 12”, 14” some months?

How to Handle Seasonality?• Could run high volume products in off-season (sure to sell)

• But running 12”, 14” products would help skip setups and increase capacity in peak season

• Need to choose fractile of demand to stock in off-season (75%?)

Page 42: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling in Pull Environments

Simple CONWIP Lines:• Simple sequence sufficient.

• No setups EDD sequence.

CONWIP Lines with Shared Resources:• No setups EDD within lines.

• Need to augment sequence at shared lines.

• FISFO at shared resources.R outing A

R outing B

R outing A

R outing B

FISFOsequencing

Page 43: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling in Pull Environments (cont.)

CONWIP Lines with Setups:• Sequence still reasonable.

• Must balance capacity loss with due date requirements.

• Exact solution impossible.

• Heuristics starting with EDD and rearranging sequence can work well.

More General Environments:• Many routings make simple sequence insufficient.

• Backward scheduling – due dates may be infeasible.

• Forward scheduling – may be suboptimal.

Page 44: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

A Sequencing Example

Problem Description:• 16 jobs

• Each job takes 1 hour on single machine (bottleneck resource)

• 4 hour setup to change families

• Fixed due dates

• Find feasible solution if possible

Page 45: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

A Sequencing Example (cont.)

EDD Sequence:

Average Tardiness: 10.375

Job Due CompletionNumber Family Date Time Lateness

1 1 5.00 5.00 0.002 1 6.00 6.00 0.003 1 10.00 7.00 -3.004 2 13.00 12.00 -1.005 1 15.00 17.00 2.006 2 15.00 22.00 7.007 1 22.00 27.00 5.008 2 22.00 32.00 10.009 1 23.00 37.00 14.00

10 3 29.00 42.00 13.0011 2 30.00 47.00 17.0012 2 31.00 48.00 17.0013 3 32.00 53.00 21.0014 3 32.00 54.00 22.0015 3 33.00 55.00 22.0016 3 40.00 56.00 16.00

Page 46: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Sequencing Example (cont.)

Greedy Approach:• Consider all pairwise interchanges

• Choose one that reduces average tardiness by maximum amount

• Continue until no further improvement is possible

Page 47: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Sequencing Example (cont.)

First Interchange: Exchange jobs 4 and 5.

Average Tardiness: 5.0 (reduction of 5.375!)

Job Due CompletionNumber Family Date Time Lateness

1 1 5.00 5.00 0.002 1 6.00 6.00 0.003 1 10.00 7.00 -3.005 1 15.00 8.00 -7.004 2 13.00 13.00 0.006 2 15.00 14.00 -1.007 1 22.00 19.00 -3.008 2 22.00 24.00 2.009 1 23.00 29.00 6.00

10 3 29.00 34.00 5.0011 2 30.00 39.00 9.0012 2 31.00 40.00 9.0013 3 32.00 45.00 13.0014 3 32.00 46.00 14.0015 3 33.00 47.00 14.0016 3 40.00 48.00 8.00

Page 48: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Sequencing Example (cont.)Configuration After Greedy Search:

Average Tardiness: 0.5 (9.875 lower than EDD)

Job Due CompletionNumber Family Date Time Lateness

1 1 5.00 5.00 0.002 1 6.00 6.00 0.003 1 10.00 7.00 -3.005 1 15.00 8.00 -7.004 2 13.00 13.00 0.006 2 15.00 14.00 -1.008 2 22.00 15.00 -7.007 1 22.00 20.00 -2.009 1 23.00 21.00 -2.00

11 2 30.00 26.00 -4.0012 2 31.00 27.00 -4.0010 3 29.00 32.00 3.0013 3 32.00 33.00 1.0014 3 32.00 34.00 2.0015 3 33.00 35.00 2.0016 3 40.00 36.00 -4.00

Page 49: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Sequencing Example (cont.)A Better (Feasible) Sequence:

Average Tardiness: 0

Job Due CompletionNumber Family Date Time Lateness

1 1 5.00 5.00 0.002 1 6.00 6.00 0.003 1 10.00 7.00 -3.005 1 15.00 8.00 -7.004 2 13.00 13.00 0.006 2 15.00 14.00 -1.008 2 22.00 15.00 -7.00

11 2 30.00 16.00 -14.0012 2 31.00 17.00 -14.007 1 22.00 22.00 0.009 1 23.00 23.00 0.00

13 3 32.00 28.00 -4.0010 3 29.00 29.00 0.0016 3 40.00 30.00 -10.0014 3 32.00 31.00 -1.0015 3 33.00 32.00 -1.00

Page 50: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Diagnostic Scheduling

Goals:• Schedule at appropriate level of detail for environment.• Make use of realistic, obtainable data.• Accommodate “intangibles” in decision-support mode.

Approach:• Deterministic model.• Based on conveyor model.• Release as late as possible subject to due dates.• Provide diagnostics on infeasibilities.

Types of Infeasibility:• WIP (must move out due dates).• Capacity (can move due dates or increase capacity).

Page 51: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling Infeasibilities Example

Problem Description:• Capacity = 100/day

• Minimum Practical Lead Time = 3 days

• WIP in system with 1, 2, 3 days to go = 95, 90, 115

Page 52: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling Infeasibilities Example (cont.)

* WIP infeasibility

** capacity infeasibility

Days from Amount Cumulative CumulativeStart Due Amount Due Capacity

1 90 90 952 100 190 185*3 90 280 2854 80 360 3855 70 430 4856 130 560 5857 120 680 6858 110 790 785**9 110 900 885

10 110 1010 98511 100 1110 108512 90 1200 118513 90 1290 128514 90 1380 138515 90 1470 1485

Page 53: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Cumulative Demand vs. Cumulative Capacity

0

200

400

600

800

1000

1200

1400

1600

0 2 4 6 8 10 12 14

Day from Start

Uin

ts Cum DueCum Capacity

Page 54: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Surplus

-30

-20

-10

0

10

20

30

40

50

60

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Days from Start

Su

rplu

s U

nit

s

WIP Infeasibility

CapacityInfeasibility

Page 55: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

MRP-C Notation

WIP.of periods holdsonly

“conveyor” thesince for 0 that observe Also, process.

anotherfor material rawor inventory goods finished be couldwhich

line, by the finishedalready WIPrepresents that Note . , 1, 0,

for defined ,completion fromaway periods is that line in the WIP

, 0,1, tperiodin process theof (capacity) rate production

ionconsideratunder process theof timelead practical minimum

problem theof period)(last horizon planning

periodsfor index time

0

P

FPt

P

t

Ft

P

F

T

TtTw

wTt

tw

TC

T

T

t

Page 56: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

MRP-C Notation (cont.)

. periodin (“starts”) quantities release

beyond periodsin demand fill tointended period

in production represents which , periodin ahead”-“build ofamount

periodin inventory) finished availableany up using(after demandnet ˆ

periodin process ofoutput

periodin process in the net WIP

, 1, 0, at time due demand

tS

tt

tY

tD

tX

tN

TtD

t

t

t

t

t

Ft

Page 57: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

MRP-C Example

t Dt wt Ct Min{wt, Ct} Nt tD̂ Yt Xt St

0 450 450 40 1 80 95 100 95 465 0 --- 95 100 2 80 95 100 95 480 0 --- 95 100 3 80 100 100 100 500 0 40 100 100 4 80 0 100 0 420 0 140 100 100 5 80 0 100 0 340 0 240 100 100 6 130 0 100 0 210 0 340 100 100 7 150 0 100 0 60 0 440 100 100 8 180 0 100 0 -120 120 420 100 100 9 220 0 100 0 -340 220 300 100 100

10 240 0 100 0 -580 240 160 100 90 11 210 0 100 0 -790 210 50 100 80 12 150 0 100 0 -940 150 0 100 80 13 90 0 100 0 -1030 90 0 90 0 14 80 0 100 0 -1110 80 0 80 0 15 80 0 100 0 -1190 80 0 80 0

How should we resolve infeasibility?

Page 58: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

MRP-C Example: Correcting Infeasibility

t Dt wt Ct Min{wt, Ct} Nt tD̂ Yt Xt St

0 450 450 1 80 95 100 95 465 0 --- 95 100 2 80 95 100 95 480 0 --- 95 100 3 80 100 100 100 500 0 --- 100 100 4 80 0 100 0 420 0 100 100 100 5 80 0 100 0 340 0 200 100 100 6 130 0 100 0 210 0 300 100 100 7 150 0 100 0 60 0 400 100 100 8 180 0 100 0 -120 120 380 100 100 9 220 0 100 0 -340 220 260 100 100

10 240 0 100 0 -580 240 120 100 90 11 210 0 100 0 -790 210 10 100 80 12 110 0 100 0 -900 110 0 100 80 13 100 0 100 0 -1000 100 0 100 0 14 100 0 100 0 -1100 100 0 100 0 15 90 0 100 0 -1190 90 0 90 0

Delay 40 units of demand in period 12: 10 to period 13, 20 to period 14, 10 to period 14

Page 59: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Multi-Stage MRP-C Calculations

Issues– must work backward from end items (like in MRP)

– disaggregation can be tricky (poor tie-breaking can cause WIP infeasibility)

Stage 1

Requirements

Starts

Stage 2

Requirements

Starts

Stage 3

Requirements

Starts

EndItems

Page 60: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling Software Approaches

• Fixed leadtime backward scheduling (MRP)

• Rule based forward scheduling (FACTOR)

• AI/Expert System approaches (MIMI)

• Bottleneck scheduling (OPT)

• Heuristics (MADEMA/PROMIS)

• Diagnostic (backward) scheduling (MRP-C)

• Perturbation scheduling (developmental)

Page 61: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Perturbation SchedulingSimulation Engine:

• input lead times, WIP positions, demands, priority rules• fast simulator based on conveyor model• predict range of completion times

Due Date Quoting:• given a set of demands• find due dates that ensure target service level• useful in coordinating multi-level system

Lead Time Optimization:• specify objective (e.g., average tardiness)• use perturbation analysis to compute lead time gradients• optimize lead times during simulation• lead times specify release schedule

Page 62: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Linking Scheduling with Releases

Approach:• Use Scheduling Module to plan.

• Use SFC Module to launch orders.

• Track progress relative to schedule with Production Tracking Module.

Scheduling Modules:• Finite capacity scheduler (e.g., MRP-C)

• MRP

• Ad hoc method

Page 63: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Linking Scheduling with Release (cont.)

SFC Modules:• CONWIP

• Kanban

• Pull-From-the Bottleneck

• Arbitrary WIP-Cap Mechanism

Benefits:• Prevent WIP explosions

• Stabilize cycle times facilitates better scheduling

• Clear opportunity for feedback from floor to scheduler.

Page 64: Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen

Scheduling Takeaways

Scheduling is hard! • Even simple toy problems generate complicated mathematics.

Scheduling can be simplified through the environment:• due date quoting• flow simplification sequencing in place of scheduling

Finite capacity scheduling is coming. • But in what form is unclear (shifting bottleneck, genetic

algorithms, rule based systems, etc.).

Diagnostics are important in scheduling.• pure optimization generally impossible• need good interface to allow human intervention