# Chapter 8 Operations Scheduling - PowerPoint PPT Presentation

1 / 67

Chapter 8 Operations Scheduling. MRP Example 1.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Chapter 8 Operations Scheduling

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

### MRP Example 1

The production manager at Aldershot Manufacturing wishes to develop a materials requirements plan for producing chairs over an 8 week period. She estimates that the lead time between releasing an order to the shop floor and producing a finished chair is 3 weeks. The company currently has 260 chairs in stock and no safety stock. The forecast customer demand is for 150 chairs in week 1, 70 in week 3, 175 in week 5, 90 in week 7 and 60 in week 8.

To produce/order a chair it takes 3 weeks of a leading time

Assumption: no limit on the capacity

60

90

135

W1

W2

W3

W4

W5

135

W6

W7

90

W8

60

### MRP Example 1

• What is the maximum capacity required for this plan?

• What to do if the maximum available capacity is equal to 160?

• Is it possible to meet the forecasted demand if the maximum available capacity is equal to 100?

8

60

135

82

W1

W2

W3

W4

W5

135

W6

W7

90

W8

60

### MRP Example 1 (to be addressed in Ch.8)

With C = 143 and

it is possible to meet the demand on time, if production is started immediately.

Inventory:

143 units for 1 week

143-135 = 8 units for 3

weeks

142+8-90=60 units for 1 week

What is the minimum required capacity that will allow to meet the forecasted demand?

Round down [8/3] = 2 production cycles

Round up [285/2] = 143 units 143 in one cycle & 142 in the other

### MRP Example 1 (to be addressed in Ch.8)

With C = 143 and

it is possible to meet the demand on time, if production is started immediately.

Inventory:

82 units for 1 week

7 units for 2 weeks

Comparing to

143 units for 1 week

8 units for 3 weeks

60 units for 1 week

143

83

82

60

53

7

W1

W2

W3

W4

W5

135

W6

W7

90

W8

60

Same capacity as on the previous slide: 143 units

Difference in the inventory costs:

[(143-82) x1+(8x3-7x2)+60x1] x cost/unit/week = 131 x cost/unit/week

### Scheduling Problems in Operations

• Job Shop Scheduling

• Personnel Scheduling

• Facilities Scheduling

• Vehicle Scheduling and Routing

• Project Management

• Dynamic versus Static Scheduling

### Characteristics of the Job Shop Scheduling Problem

• Job Arrival Pattern

• Number and Variety of Machines

• Number and Skill Level of Workers

• Flow Patterns

• Evaluation of Alternative Rules

### Objectives in Job Shop Scheduling

• Meet due dates

• Minimize work-in-process (WIP) inventory

• Minimize average flow time

• Maximize machine/worker utilization

• Reduce set-up times for changeovers

• Minimize direct production and labor costs

(note: that these objectives can be conflicting)

Input parts

Machine 1

Machine 2

Machine 3

Machine 4

Finished Products

Input parts

Input parts

Input parts

Input parts

Machine 1

Machine 2

Machine 3

Machine 4

Finished Products

### Terminology

• Flow shop: shop design in which machines are arranged in series

A Pure Flow Shop

• In general flow shop a job may skip a particular machine

Input parts

Machine i

Jobs arriving from WIP

Jobs leaving as WIP

Finished Products

### Terminology

• Job shop: the sequencing of jobs through machines

• A job shop does not have the same restriction on workflow as a flow shop. In a job shop, jobs can be processed on machines in any order

• Usual job shop contains m machines and n jobs to be processed

• Each job requires m operations (one on each machine) in a specific order, but the order can be different for each job

• Real job shops might not require to use all m machines and yet may have to visit some machines more than once

• Workflow is not unidirectional in a job shop

One Machine in a Job Shop

### Terminology

• Parallel processing vs. sequential processing: parallel processing means that the machines are identical

• In practice, there are often multiple copies of the same machine

• A job arriving at a work center can be scheduled on any one of a number machines  more flexibility, complicating the scheduling problem further

• A factory might have multiple “identical machines”, purchased from the same manufacturer, that produce parts with higher quality on one machine than on any other

• Schedule: provides the order in which jobs are to be executed, and projects start time for each job at each work center

• Sequence: lists the order in which jobs are to be done

### Terminology: Performance Measures

• Average WIP level: ……….(is exactly what it sounds like)\

• Flowtime: The amount of time a job spends from the moment it is ready for processing until its completion, and includes any waiting time prior to processing

• Average WIP level is directly related to the time jobs spend in the shop (flowtime)

• Makespan: The total time for all jobs to finish processing

• For a single machine problem, the makespan is the same regardless of the schedule, assuming we do not allow any idle time between jobs

Performances that have to do with each job’s due date

• Lateness: The amount of time a job is past its due date

• Lateness is a negative number if a job is early

• Earliness: The amount of time a job a early

• Tardiness: Equals to zero if job is on time or early, and equals to lateness if the job is late

Measures of the cost of production:

Machine utilization and labor utilization are primary measures of shop utilization

### Deterministic Scheduling of a Single Machine: Priority Sequencing Rules

• Random: Choose the next job at random. Do not use it!

• FCFS: First Come First Served. Jobs processed in the order they arrive to the shop. Viewed as a “fair” rule.

• SPT: Shortest Processing Time. Jobs with the shortest processing time are scheduled first. Popular method to determine the next homework assignment by many students.

• SWPT: Shortest Weighted Processing Time. A weight is assigned to each job based on the job’s value (holding cost) or on its cost of delay

• 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 largest CR value next, however, if the job is late, the ration will be negative, or the denominator will be zero, and this job should be given highest priority

(Processing time remaining until completion) / (Due Date – Current Time)

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

### FCFS Example

Flowtime: The amount of time a job spends from the moment it is ready for processing until its completion, and includes any waiting time prior to processing

Earliness: The amount of time a job a early

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

### SPT Example

Shortest Processing Time

is optimal for minimizing

• Average and Total flowtime

• Average waiting time

• Average and Total lateness

Weights

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

### SWPT Example

Shortest Weighted Processing Time

-total weighted down time

-sequencing

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

### EDD Example

Earliest Due Date

### CR Example

Critical Ratio:

Subtract Current Time

Schedule jobs 1 4  3  2  5

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

Critical Ratio:

### Results for Single Machine Sequencing

• The rule that minimizes the mean flow time of all jobs is SPT.

• The following criteria are equivalent:

• Mean flow time

• Mean waiting time.

• Mean lateness

• Moore’s algorithm minimizes number of tardy jobs

• Lawler’s algorithm minimizes the maximum flow time subject to precedence constraints.

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

### EDD Example

Earliest Due Date

### Minimizing the Number of Tardy Jobs

Morre Algorithm

Step 1: Sequence the jobs according to EDD rule and initially put all jobs in set V

Step 2: Find the first tardy job in set V {say it is job [k] in the sequence}. If there are no tardy jobs in the set V, stop; the sequence is optimal

Step 3: Select the job with largest processing time among first k jobs. Place this job in set U. Go to step 2

1. Placing a job in set U means that it will be tardy and will occupy a position in sequence after all nontardy jobs

2. Tardy jobs nay be schedules in any order because the performance measure is the number of tardy jobs

Iteration 1

Iteration 2

Iteration 3

### Lawler’s Algorithm

Goal: Scheduling a set of simultaneously arriving tasks on one machine with precedence constraints to minimize maximum lateness (tardiness).

Precedence constraints occur when certain jobs must be completed before other jobs can begin.

Algorithm:

Tasks are ordered from last order to complete and finishing with first.

At each step selection is made from the jobs that are not required to precede any other unscheduled job.

Select a job that achieves

1

D1=2

D2=5

2

3

D3=4

4

5

6

D4=3

D5=5

D6=6

### Lawler’s Example:

Processing for all jobs is 1 day

• One machine  Ffinal = 1+1+1+1+1+1 = 6

• Select from jobs {4,5,6} such that gives

• min{6-3, 6-5, 6-6}=0  job 6 is a last job

2) Recalculate F: F = 6-1= 5

Select from jobs {3,4,5} such that gives

min{5-4, 5-3, 5-5}=0  order x-x-x-x-5-6

3)Recalculate F: F = 5-1= 4

Select from jobs {3,4} such that gives

min{4-4, 4-3}=0  order x-x-x-3-5-6

4) Recalculate F: F = 4-1= 3

Select from jobs set {4}  order x-x-4-3-5-6

5) Recalculate F: F = 3-1= 2

Select from jobs set {2}  order x-2-4-3-5-6

6) Recalculate F: F = 2-1= 1

Select from jobs set {1}  order 1-2-4-3-5-6

1

D1=2

D2=5

2

3

D3=4

4

5

6

D4=3

D5=5

D6=6

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

### Lawler’s Example:

Production is done in next order:

1 – 2 – 4 – 3 – 5 – 6

Lawler’s algorithm minimizes the maximum flow time subject to precedence constraints

Processing for all jobs is 1 day

Machine 1

1

2

Machine 2

1

2

Time (days)

3

5

6

11

### Gantt Charts

Pictorial representation of a schedule is called Gantt Chart

The purpose of the chart is to graphically display the state of each machine at all times

Horizontal axis – time

Vertical axis – machines 1, 2, …, m

Question: Is it an optimal schedule?

Are there any precedence constrains?

8

Machine 1

Machine 1

1

1

2

2

Machine 2

Machine 2

2

2

1

1

Time (days)

Time (days)

3

3

5

5

6

6

11

11

Machine 1

2

1

Machine 2

1

2

Time (days)

3

5

6

11

8

8

### Gantt Charts

Question: How to determine THE optimal solution?

What makes scheduling problem more difficult?

2

1

4

3

M 1

1

2

4

3

3

4

2

1

M 2

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

M 3

Find a solution!

### Deterministic Scheduling with Multiple Machines

• For the case of m machines and n jobs, there are n! distinct sequenced on each machine (permutations), so (n!)m is the total number of possible schedules

• For m = 3 and n = 4, total number of possible schedules is 243=13,824

• The optimal solution for scheduling n jobs on two machines is always a permutation schedule

• Assume flow shop: in each job operations have to be done on both machines

• Permutation schedule = jobs are done in the same order on both machines

• This is the basis for Johnson’s algorithm

1

2

4

3

1

2

3

4

7 14 16 22

### Example

MetalFrame makes 4 different types of metal door frames.

Preparing the hinge upright is a two-step operation.

Natural schedule:

Is it optimal?

If idle time is equal to zero, then we have found an optimal solution

### Deterministic Scheduling with Multiple Machines: Johnson’s Rule

• Name Machine 1 = A, Machine 2 = B,

then ai = processing time for job i on A

and bi = processing time for job i on B

• Johnson’s Rule says that job i precedes job jin the optimal sequence if

Algorithm:

• Step 1: Record the values of ai and bj in two columns

• Step 2: Find the smallest remaining value in two columns. If this value in column a, schedule this job in the first open position in the sequence; if this value in column b, schedule this job in the last open position in the sequence; Cross off each job as it is scheduled

1

2

4

3

1

2

3

4

7 14 16 22

1

2

4

3

4

2

1

3

7 14 17 22

### Example (cont)

Johnson’s schedule:

4 – x – x – x

4 – x – x – 3

4 – x – 1 – 3

4 – 2 – 1 – 3

Natural schedule:

Johnson’s schedule:

Is it optimal?

### Results for Multiple Machines

• For three machines, a permutation schedule is still optimal if we restrict attention to total flow time only (not necessarily the case for average flow time).

• Under some circumstances, the two machine algorithm can be used to solve the three machine case:

• Label the machines A, B and C

• or

• Redefine Ai’= Ai + Bi and Bi’= Bi + Ci

• When scheduling two jobs on m machines, the problem can be solved by graphical means.

### Sequencing Theory:The Two-Job Flow Shop Problem

Assume that two jobs are to be processed through m machines. Each job must be processed by the machines in a particular order, but the sequences for the two jobs need not be the same

Graphical procedure developed by Akers (1956):

• Draw a Cartesian coordinate system with the processing times corresponding to the first job on the horizontal axis and the processing times corresponding to the second job on the vertical axis

• Block out areas corresponding to each machine at the intersection of the intervals marked for that machine on the two axes

• Determine a path from the origin to the end of the final block that does not intersect any of the blocks and that minimizes the vertical movement. Movement is allowed only in three directions: horizontal, vertical, and 45-degree diagonal. The path with minimum vertical distance corresponds to the optimal solution

Example 8.7 (in the book)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

Minimizing the flow time is equivalent to finding the path from the origin to the upper right point F (for this problem it is art the end of block C) that maximizes the diagonal movement and therefore minimizes either the horizontal or the vertical movement.

or 10+6=16

10+(3+2)=15 or

F

C

C

B

B

D

D

A

A

J1

J2

A

C

B

D

D

C

B

A

A

D

C

B

7 11 15 18

J1

J2

A

B

C

D

D

B

C

A

14+2+2=18

14+4=18

### Schematic of a Typical Assembly Line

• The problem of balancing an assembly line is a classic engineering problem

• A set of n distinct tasks that must be completed on each item

• The time required to complete task i is a known constant ti

• The goal is to organize the tasks into groups, with each group of tasks being performed at a single workstation

• The amount of time allotted to each workstation is determined in advance

• (C = cycle time), based on the desired rate of production of the assembly line

• ### Assembly Line Balancing

• Assembly line balancing is traditionally thought of as a facilities design and layout problem

• There are a variety of factors that contribute to the difficulty of the problem

• Precedence constrains: some tasks may have to be completed in a particular sequence

• Zoning restriction: Some tasks cannot be performed at the same workstation

• Let t1, t2, …, tn be the time required to complete the respective tasks

• The total work content (time) associated with the production of an item, say T, is given by

• For a cycle time of C, the minimum number of workstations possible is [T/C], where the brackets indicate that the value of T/C is to be rounded to the next larger integer

• Ranked positional weight technique: the method places a weight on each task based on the total time required by all of the succeeding tasks. Tasks are assigned sequentially to stations based on these weights

### Assembly Line Balancing

Example 8.11

The Final assembly of Noname personal computers, a generic mail-order PC clone, requires a total of 12 tasks. The assembly is done at the Lubbock, Texas, plant using various components imported from the Far East. The network representation of this particular problem is given in the following figure.

### Assembly Line Balancing

Precondition

The job times and precedence relationships for this problem are summarized in the table below.

ti=70, and the production rate is a unit/15 minutes;

The minimum number of workstations = [70/15]=5

### Assembly Line Balancing: Helgeson and Birnie Heuristic (1961)

Ranked positional weight technique

The solution precedence requires determining the positional weight of each task. The positional weight of task i is defined as the time required to perform task i plus the times required to perform all tasks having task i as a predecessor.

t3+t7+t8+t11+t12=31

The ranking: 1, 2, 3, 6, 4, 7, 5, 8, 9, 10, 11, 12

### Assembly Line Balancing: Helgeson and Birnie Heuristic (1961)

C=15

The ranking: 1, 2, 3, 6, 4, 7, 5, 8, 9, 10, 11, 12

15

### Helgeson and Birnie Heuristic (1961)

C=15

Evaluate the balancing results by the efficiency ti/NC

The efficiencies for C=15 is 77.7%, C=16 is 87.5%, and C=13 is 89.7% is the best one

Cycle Time=15

T1=12

T2=6

T2=6

T3=6

T4=2

T5=2

T5=2

T6=12

T9=1

T7=7

T8=5

T10=4

T10=4

T11=6

T12=7

T12=7

### Helgeson and Birnie Heuristic (1961)

C=15

C=16

Increasing the cycle time from 15 to 16, the total idle time

has been cut down from 20 min/units to 10  improvement in balancing rate.

The production rate has to be reduced from one unit/15 minutes to one unit/16minute;

C=13

### Helgeson and Birnie Heuristic (1961)

C=15

C=16

13 minutes appear to be the minimum cycle time with six station balance.

Increasing the number of stations from 5 to 6 results in a great improvement in production rate;

C=13

### Stochastic Scheduling: Static Case

• Single machine case. Suppose that processing times are random variables. If the objective is to minimize average weighted flow time, jobs are sequenced according to expected weighted SPT. That is, if job times are t1, t2, . . ., and the respective weights are u1, u2, . . . then job i precedes job i+1 if

E(ti)/ui < E(ti+1)/ui+1

• Multiple Machines: Requires the assumption that the distribution of job times is exponential, (memoryless property). Assume parallel processing of n jobs on two machines. Then the optimal sequence is to to schedule the jobs according to LEPT (longest expected processing time first).

• Johnsons algorithm for scheduling n jobs on two machines in the deterministic case has a natural extension to the stochastic case as long as the job times are exponentially distributed.

Served customers leaving

Customers arriving

Service Facility

Discouraged customers leaving

### Stochastic Scheduling: Queueing Theory

A typical queueing process

• “The basic phenomenon of queueing arises whenever a shared facility needs to be accessed for service by a large number of jobs or customers.” (Bose)

• “The study of the waiting times, lengths, and other properties of queues.” (Mathworld)

Applications:

Telecommunications Health services

Traffic control Predicting computer performance

Determining the sequence of computer operations

Airport traffic, airline ticket sales Layout of manufacturing systems

### Examples of Queueing Theory

http://www.bsbpa.umkc.edu/classes/ashley/Chaptr14/sld006.htm

### Stochastic Scheduling: Dynamic Analysis

• View network as collections of queues

• FIFO data-structures

• Queuing theory provides probabilistic analysis of these queues

• Typical operating characteristics of interest include:

• Lq = Average number of units in line waiting for service

• L = Average number of units in the system (in line waiting for service and being serviced)

• Wq = Average time a unit spends in line waiting for service

• W = Average time a unit spends in the system

• Pw = Probability that an arriving unit has to wait for service

• Pn = Probability of having exactly n units in the system

• P0 = Probability of having no units in the system (idle time)

• U = Utilization factor, % of time that all servers are busy

### Characteristics of Queueing Processes

• Arrival pattern of customers

• Service pattern of servers

• Queue discipline

• System capacity

• Number of service channels

• Number of service stages

### Characteristics of Queueing Processes

• Arrival pattern of customers

• Probability distribution describing the times between successive customer arrivals

• Time independent Stationary arrival patterns

• Time dependent  Non-stationary

• Batch or Bulk customer arrivals

• Probability distribution describing the size of the batch

• Customers behavior while waiting

• Wait no matter how long the queue becomes

• If the queue is too long, customer may choose not to enter into the system

• Enter, wait, and choose to leave without being serviced

• If there is more than one waiting line, customer may switch “jockey”

### Characteristics of Queueing Processes

• Arrival pattern of customers

• Service pattern of servers

• Single or Batch

• May depend on the number of customers waiting  state dependent

• Stationary or Non-stationary

• Queue discipline

• Manner in with customers are selected to service

• First Come First Served (FCFS)

• Last Come First Served (LCLS)

• Random Selection for Service (RSS)

• Priority Schemes

• Preemptive case

• Non-preemptive case

### Characteristics of Queueing Processes

• Arrival pattern of customers

• Service pattern of servers

• Queue discipline

• System capacity

• Finite queueing situations = Limiting amount of waiting room

• Number of service channels

• Single-channel system

• Multi-channel system, generally assumed that parallel channels operate independently of each other

• Number of service stages

### Notation Used in Queueing Processes

Full notation: A / B / X / Y / Z Shorthand: A / B / X

A – indicates the interarrival-time distributionAssumes: Y is infinity,

B – the probability distribution for service time Z = FCFS

X – number of parallel service channels

Y – the restriction on system capacity

Z – the queue discipline (FCFS)

Number of

customers

in system

3

2

1

Time, t

t1

t2

t3

t4

t5

t6

t7

T

### Queueing Processes: Little’s Formulas

One of the most powerful relationships in queueing theory was developed by John D.C. Little in the early 1960s.

Formulas:

and,

where λ is an average rate of customers entering the system, and

W is an expected time customer will spend in the system

l

l

l

l

n-1

n

n+1

m

m

m

m

### Poisson Process & Exponential Distribution

• Inter-arrival time t (time between arrivals) in a Poisson process follows exponential distribution with parameter λ

• M: stands for "Markovian", implying exponential distribution for service times or inter-arrival times, that carries the memoryless property

• past state of the system does not help to predict next arrival / departure

l

l

l

0

1

2

m

m

m

### Calculating Expected System Measures for M/M/1

The utilization rate: ρ = λ / μ

P0 = 1 – ρ

Pi = ρi(1 – ρ), for i = 1, 2, 3,…

these formulas hold only ifl<m

CHARACTERISTICSYMBOL FORMULA

Utilization ρλ / μ

Exp. No. in System Lλ / (μ – λ) = ρ / (1-ρ)

Exp. No. in Queue Lqλ2/ μ(μ – λ) = ρ2 / (1-ρ)

Exp. Waiting Time W=L/ λ1/ (μ – λ) = ρ / λ(1-ρ)

Exp. Time in Queue Wq=Lq/ λλ/ μ(μ – λ) = ρ2 / λ(1-ρ)

Prob. System is Empty P01 – (λ/ μ) = 1 - ρ

### Calculating Expected System Measures for M/M/m

http://www.ece.msstate.edu/~hu/courses/spring03/notes/note4.ppt

λ

λ

λ

λ

λ

λ

λ

0

1

2

m

m+1

m-1

(m-1)μ

μ

### Calculating Expected System Measures for M/M/m

Assumption

- m servers

- all servers have the same service rate μ

- arrival rate λn = λ

- departure rate

λ

λ

λ

λ

λ

λ

λ

0

1

2

m

m+1

m-1

(m-1)μ

μ

### Other Systems

M/M/1/K - system with a capacity K

λeff = effective arrival rate

M/D/1; M/G/1; M/G/∞

### Homework Assignment

• Read Ch. 8 (8.1 – 8.10)

• Read Supplement Two (S2.1 - S2.13)

• 8.4, 8.5, 8.7, 8.12, 8.15,

• 8.18, 8.23, 8.25, 8. 27, 8.28

### References

• Presentation by McGraw-Hill/Irwin

• Presentation by Professor JIANG Zhibin, Department of Industrial Engineering & Management, Shanghai Jiao Tong University

• “Production & Operations Analysis” by S.Nahmias

• “Production: Planning, Control, and Integration” by Sipper and Bulfin Jr.

• “Inventory Management and Production Planning and Scheduling” by Silver, Pyke and Peterson

• “Fundamentals of Queueing Theory” by Cross and Harris