- 29 Views
- Uploaded on
- Presentation posted in: General

Chapter 8 Operations Scheduling. MRP Example 1.

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

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

- 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

With C = 143 and

leading time = 3 weeks

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

With C = 143 and

leading time = 3 weeks

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

- Job Shop Scheduling
- Personnel Scheduling
- Facilities Scheduling
- Vehicle Scheduling and Routing
- Project Management
- Dynamic versus Static Scheduling

- Job Arrival Pattern
- Number and Variety of Machines
- Number and Skill Level of Workers
- Flow Patterns
- Evaluation of Alternative Rules

- 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

- 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

- 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

- 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

- 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

- For a single machine problem, the makespan is the same regardless of the schedule, assuming we do not allow any idle time between jobs
- 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

- 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

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

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

Shortest Weighted Processing Time

-total weighted down time

-sequencing

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

Earliest Due Date

Critical Ratio:

Subtract Current Time

Schedule jobs 1 4 3 2 5

Processing

Due date

Completion

Flowtime

Lateness

Earliness

Tardiness

Critical Ratio:

- 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

Earliest Due Date

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

Comments:

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

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

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

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

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

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!

- 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

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

- 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

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?

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

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

- 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

- 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

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.

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

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

C=15

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

15

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

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

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

- 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

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

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

- 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

- Arrival pattern of customers
- Service pattern of servers
- Queue discipline
- System capacity
- Number of service channels
- Number of service stages

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

- Probability distribution describing the times between successive customer arrivals

- 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

- 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

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

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

- 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

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

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

λ

λ

λ

λ

λ

λ

λ

0

1

2

m

m+1

m-1

(m-1)μ

mμ

mμ

μ

2μ

3μ

mμ

Assumption

- m servers

- all servers have the same service rate μ

- single queue for access to the servers

- arrival rate λn = λ

- departure rate

…

λ

λ

λ

λ

λ

λ

λ

0

1

2

m

m+1

m-1

(m-1)μ

mμ

mμ

μ

2μ

3μ

mμ

…

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

λeff = effective arrival rate

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

Assignment: download the QTS add-in for Excel software to check the homework problems answers

http://www.geocities.com/qtsplus/DownloadInstructions.htm#DOWNLOAD_INSTRUCTIONS

- 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

- 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
- http://www.geocities.com/qtsplus/DownloadInstructions.htm#DOWNLOAD_INSTRUCTIONS QTS analysis for Excel