15-1scheduling operations scheduling chapter 8. 15-2scheduling the hierarchy of production decisions...
TRANSCRIPT
15-1 Scheduling
Operations SchedulingChapter 8
15-2 Scheduling
The Hierarchy of Production The Hierarchy of Production DecisionsDecisions
The logical sequence of operations in factory planning corresponds to the sequencing of chapters in a production management text book.
All planning starts with the demand forecast. Demand forecasts are the basis for the top level (aggregate)
planning. The Master Production Schedule (MPS) is the result of
disaggregating aggregate plans down to the individual item level. Based on the MPS, MRP is used to determine the size and timing
of component and subassembly production. Detailed shop floor schedules are required to meet production
plans resulting from the MRP.
15-3 SchedulingHierarchy of Hierarchy of
Production DecisionsProduction Decisions
15-4 Scheduling
Scheduling: Establishes the timing of the use of equipment, facilities and human activities in an organization
Effective scheduling can yield
Cost savings
Increases in productivity
Improved customer satisfaction
Scheduling Scheduling
15-5 Scheduling
SchedulingScheduling Techniques Techniques
Scheduling techniques are designed to disaggregate the master production schedule into time-phased daily or hourly activities.
A detailed production schedule must include when and where each activity must take place in order to meet the master schedule.
15-6 Scheduling
Scheduling ActivitiesScheduling Activities Scheduling involves the following major activities:1. Routing (determining where the work is going to be done).2. Short-run capacity planning.3. Short-run machine, manpower and production scheduling.4. Determining the sequence of activities (determining when the
work is to be done).5. Dispatching (issuing the order to begin work).6. Controlling the progress of orders and monitoring the process to
determine that operations are running according to plan.7. Revising the schedule based on changes in order status of jobs,
material and/or capacity availability and various other reasons.8. Expediting (speeding the progress of the work order) late, critical
jobs.
15-7 Scheduling
Elements of SchedulingElements of SchedulingElements of Scheduling Problems:1.Job arrival patterns (static vs. dynamic). Dynamic arrival pattern
means that more jobs will arrive in the system during the time those currently in the system are being processed. In a static system, all jobs that will ever enter the system are known. Most job shops are dynamic.
2.Ratio of workers to machines (machine limited vs. labor limited environment).
3.Priority rules for scheduling.4.Flow patterns of jobs through the plant.
a. Flow shop: All jobs follow the same pattern of flow through the system. In a flow shop, routing is not typically a problem.b. Job shop: Each job follows its own specified pattern. Job shop is more difficult to analyze than the flow shop.
15-8 Scheduling
Goals of Production SchedulingGoals of Production Scheduling
High Customer Service: on-time delivery
Low Inventory Levels: WIP and FGI
High Utilization: of machines and labor
15-9 Scheduling
Meeting Due Dates – MeasuresMeeting Due Dates – Measures Service Level:
Used typically in make to order systems.
Fraction of orders which are filled on 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.
15-10 Scheduling
Basic DefinitionsBasic Definitions Throughput (TH): for a line, throughput is the average quantity of good (non-
defective) parts produced per unit time. Work in Process (WIP): inventory between the start and endpoints of a product
routing. Raw Material Inventory (RMI): material stocked at beginning of routing. Finished Goods Inventory (FGI): material held in inventory prior to shipping to
the customer. Cycle Time (CT): time between release of the job at the beginning of the routing
until it reaches an inventory point at the end of the routing.
Makespan: The total amount of time to process a fixed number of jobs.
Little’s Law: TH = WIP/CT WIP=TH*CT (L=λw) where λ=TH and w=CT
15-11 Scheduling
Reducing WIP and Cycle TimeReducing WIP and Cycle Time
Less WIP Equals Shorter Cycle Times (Little’s Law)
Shorter cycle time means:
Less WIP
Better responsiveness
All of which reduce costs and improve sales revenue
15-12 Scheduling
Classic Scheduling – Assumptions 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.
15-13 SchedulingClassic Scheduling – Assumptions Classic Scheduling – Assumptions (cont.)(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.
15-14 Scheduling
Objectives in Job Shop SchedulingObjectives 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)
15-15 SchedulingMeasures to Evaluate Performance of a Measures to Evaluate Performance of a
Scheduling MethodScheduling Method Service Level: Fraction of orders filled on before their due
dates (used in make-to-order systems) Fill Rate: Fraction of demand that are met from inventory
without backorder (used in make-to-stock systems) Job Flow Time: Time elapsed from the release of a job
until it is completed. Lateness: Difference between completion time and due
date of a job (may be negative). Tardiness: The positive difference between the
completion time and the due date of a job. Makespan: Flow time of the job completed last.
15-16 SchedulingMeasures to Evaluate Performance of a Measures to Evaluate Performance of a
Scheduling MethodScheduling Method Production Rate Utilization
Keep in mind that high utilization means high return on investment. This is good provided that the equipment is utilized to increase revenue. Otherwise, high utilization only helps to increase inventory, not profits.
15-17 Scheduling
TerminologyTerminology
Flow shop: n jobs processed through m machines in the same sequence
Job shop: the sequencing of jobs through machines may be different, and there may be multiple operations on some machines.
Parallel processing vs. sequential processing: parallel processing means that the machines are identical, any job can be processed on any machine.
15-18 Scheduling
Common Sequencing RulesCommon Sequencing Rules
FCFS. First Come First Served. Jobs processed in the order they come to the shop.
SPT. Shortest Processing Time. Jobs with the shortest processing time are scheduled first.
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.
15-19 SchedulingSSchedulingcheduling S Service ervice OOperations perations Vs Vs
Manufacturing OperationsManufacturing Operations Scheduling service systems presents certain
problems not generally encountered in manufacturing systems. This is primarily due to:
1. The inability to store services
2. The random nature of customer requests
To avoid problems such as long delays, unsatisfied customers, service systems rely on appoinment systems and reservation systems.
15-20 Scheduling
High-Volume SystemsHigh-Volume Systems
Flow system: High-volume system with Standardized equipment and activities
Flow-shop scheduling: Scheduling for high-volume flow system
Work Center #1 Work Center #2 Output
15-21 Scheduling
High-Volume SystemsHigh-Volume Systems
Examples of high-volume products include autos, personal computers, televisons.
In process industries, examples include petroleum refining, sugar refining.
A major issue in design of high-volume (flow) systems is line balancing.
15-22 SchedulingSuccess FactorsSuccess Factors in in High-Volume High-Volume SystemsSystems
Process and product design
Preventive maintenance
Rapid repair when breakdown occurs
Minimization of quality problems
Reliability and timing of supplies
15-23 Scheduling
Intermediate-Volume SystemsIntermediate-Volume Systems
Outputs are between standardized high-volume systems and made-to-order job shops
The volume of output is not large enough to justify continuous production.
Examples include canned foods, paint and cosmetics.
15-24 Scheduling
Intermediate-Volume SystemsIntermediate-Volume SystemsThe three basic issues in these systems are:
1.Run size, 2.Timing, and 3.Sequence of jobs
Economic run size:
2
'
kQ
h
h’ is defined as h’= h(1- λ/P)
15-25 Scheduling
Scheduling Low-Volume SystemsScheduling Low-Volume Systems
Loading - assignment of jobs to process centers
Sequencing - determining the order in which jobs will be processed
Job-shop scheduling Scheduling for low-volume
systems with many variations in requirements
15-26 Scheduling
Gantt Load ChartGantt Load Chart
Gantt chart - used as a visual aid for loading and scheduling
WorkCenter
Mon. Tues. Wed. Thurs. Fri.
1 Job 3 Job 42 Job 3 Job 73 Job 1 Job 6 Job 74 Job 10
Figure 15.2
15-27 Scheduling
Infinite loading: Assigning jobs to work centers without considering the capacity of work center.
Finite loading: Takes into acccount the capacity of work center.
• Forward scheduling: Scheduling ahead from some point in time.
Backward scheduling. Scheduling backwards from due dates.
LoadingLoading
15-28 Scheduling
28
LoadingLoading
15-29 Scheduling
LOADING (LOADING (The Assignment ProblemThe Assignment Problem))
In many business situations, management needs to assign - personnel to jobs, - jobs to machines, - machines to job locations, or - salespersons to territories.
Consider the situation of assigning n jobs to n machines.
When a job i (=1,2,....,n) is assigned to machine j (=1,2, .....n) that incurs a cost Cij.
The objective is to assign the jobs to machines at the least possible total cost.
15-30 Scheduling
The Assignment ProblemThe Assignment Problem
This situation is a special case of the Transportation Model and it is known as the assignment problem.
Here, jobs represent “sources” and machines represent “destinations.”
The supply available at each source is 1 unit And demand at each destination is 1 unit.
15-31 Scheduling
The Assignment ProblemThe Assignment Problem
The assignment model can be expressed mathematically as follows:Xij= 0, if the job j is not assigned to machine i
1, if the job j is assigned to machine i
15-32 Scheduling
The Assignment ProblemThe Assignment Problem
15-33 Scheduling
The Assignment Problem Example The Assignment Problem Example Ballston Electronics manufactures small electrical
devices. Products are manufactured on five different assembly
lines (1,2,3,4,5). When manufacturing is finished, products are transported
from the assembly lines to one of the five different inspection areas (A,B,C,D,E).
Transporting products from five assembly lines to five inspection areas requires different times (in minutes)
15-34 Scheduling
The Assignment Problem Example The Assignment Problem Example Ballston Electronics manufactures small electrical
devices. Products are manufactured on five different assembly
lines (1,2,3,4,5). When manufacturing is finished, products are transported
from the assembly lines to one of the five different inspection areas (A,B,C,D,E).
Transporting products from five assembly lines to five inspection areas requires different times (in minutes)
15-35 Scheduling
The Assignment Problem ExampleThe Assignment Problem Example
Under current arrangement, assignment of inspection areas to the assembly lines are 1 to A, 2 to B, 3 to C, 4 to D, and 5 to E.This arrangement requires 10+7+12+17+19 = 65 man minutes.
15-36 Scheduling
The Assignment Problem ExampleThe Assignment Problem Example Management would like to determine whether
some other assignment of production lines to inspection areas may result in less cost.
This is a typical assignment problem. n = 5 And each assembly line is assigned to each inspection area.
It would be easy to solve such a problem when n is 5, but when n is large all possible alternative solutions are n!, this becomes a hard problem.
15-37 Scheduling
The Assignment Problem ExampleThe Assignment Problem Example Assignment problem can be either formulated as a
linear programming model, or it can be formulated as a transportation model.
However, An algorithm known as Hungarian Method has proven to be a quick and efficient way to solve such problems.
This technique is programmed into many computer modules such as the one in WINQSB.
15-38 Scheduling
The Assignment Problem ExampleThe Assignment Problem Example
WINQSB solution for this problem is as follows:
15-39 Scheduling
Hungarian Method ExampleHungarian Method Example
Step 1: Select the smallest value in each row.Subtract this value from each value in that row
Step 2: Do the same for the columns that do not have any zero value.
15-40 Scheduling
Hungarian Method ExampleHungarian Method Example
If not finished, continue with other columns.
15-41 Scheduling
Hungarian Method ExampleHungarian Method Example
Step 3: Assignments are made at zero values. Therefore, we assign job 1 to machine 1; job 2 to
machine 3, and job 3 to machine 2. Total cost is 5+12+13 = 30. It is not always possible to obtain a feasible
assignment as in here.
15-42 Scheduling
Hungarian Method Example 2 Hungarian Method Example 2
15-43 Scheduling
Hungarian Method Example 2Hungarian Method Example 2
A feasible assignment is not possible at this moment.
In such a case, The procedure is to draw a minimum number of lines through some of the rows and columns, Such that all zero values are crossed out.
15-44 Scheduling
Hungarian Method Example 2Hungarian Method Example 2
The next step is to select the smallest uncrossed out element. This element is subtracted from every uncrossed out
element and added to every element at the intersection of two lines.
15-45 Scheduling
Hungarian Method Example 2Hungarian Method Example 2
We can now easily assign to the zero values. Solution is to assign (1 to 1), (2 to 3), (3 to 2) and (4 to 4).
If drawing lines do not provide an easy solution, then we should perform the task of drawing lines one more time.
Actually, we should continue drawing lines until a feasible assignment is possible.
15-46 Scheduling
SequencingSequencing
Sequencing: Determine the order in which jobs at a work center will be processed.
Workstation: An area where one person works, usually with special equipment, on a specialized job.
15-47 Scheduling
SequencingSequencing n jobs on a Single Machine n jobs on a Single Machine
Priority rules:
Simple heuristics such as FCFS, SPT, DD, CR are used to select the order in which jobs will be processed.
CR= (Due Date – Current Time)/ Processing Time
Job time: Time needed for setup and processing of a job.
15-48 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
Use the FCFS, SPT, and Critical Ratio rules to sequence the five jobs below. Evaluate the rules on the bases of average flow time, average number of jobs in the system, and average job lateness.
(Due Date)
Job Processing Time Time to Promised Completion
A 6 hours 10 hours
B 12 16
C 9 8
D 14 14
E 8 7
15-49 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
FCFS Rule A > B > C > D > E
Processing Due Flow
Job Time Date Time Lateness
A 6 10 6 0
B 12 16 18 2
C 9 8 27 19
D 14 14 41 27
E 8 7 49 42
49 141 90
15-50 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
FCFS Rule Performance
Average flow time:
141/5 = 28.2 hours Average number of jobs in the system:
141/49 = 2.88 jobs Average job lateness:
90/5 = 18.0 hours
15-51 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
SPT Rule A > E > C > B > D
Processing Due Flow
Job Time Date Time Lateness
A 6 10 6 0
E 8 7 14 7
C 9 8 23 15
B 12 16 35 19
D 14 14 49 35
49 127 76
15-52 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
SPT Rule Performance
Average flow time:
127/5 = 25.4 hours Average number of jobs in the system:
127/49 = 2.59 jobs Average job lateness:
76/5 = 15.2 hours
15-53 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
Critical Ratio Rule E > C > D > B > A
Processing Promised Flow
Job Time Completion Time Lateness
E (.875) 8 7 8 1
C (.889) 9 8 17 9
D (1.00) 14 14 31 17
B (1.33) 12 16 43 27
A (1.67) 6 10 49 39
49 148 93
15-54 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
Critical Ratio Rule Performance
Average flow time:
148/5 = 29.6 hours Average number of jobs in the system:
148/49 = 3.02 jobs Average job lateness:
93/5 = 18.6 hours
15-55 Scheduling
Example: Sequencing RulesExample: Sequencing Rules
Comparison of Rule Performance
Average Average Average
Flow Number of Jobs Job
Rule Time in System Lateness
FCFS 28.2 2.88 18.0
SPT 25.4 2.59 15.2
CR 29.6 3.02 18.6
SPT rule was superior for all 3 performance criteria.
15-56 Scheduling
SequencingSequencing n jobs on two machines n jobs on two machines
Johnson’s Rule: technique for minimizing completion time for a group of n jobs to be processed on two machines or at two work centers.
Minimizes total idle time
Johnson’s Rule requires satisfying the following conditions:
15-57 Scheduling
Johnson’s Rule ConditionsJohnson’s Rule Conditions
Job time must be known and constant
Job times must be independent of sequence
Jobs must follow same two-step sequence
Job priorities cannot be used
All units must be completed at the first work center before moving to second
15-58 Scheduling
Johnson’s Rule Optimum SequenceJohnson’s Rule Optimum Sequence
1. List the jobs and their times at each work center
2. Find the smallest processing time. If it belongs to the first operation of a job schedule that job next, otherwise schedule that job last.
3. Eliminate the job from further consideration
4. Repeat steps 2 and 3 until all jobs have been scheduled
15-59 Scheduling
Johnson’s Algorithm ExampleJohnson’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)
15-60 Scheduling
Johnson’s Algorithm Example (cont.)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)
15-61 SchedulingGantt Chart for Johnson’s Algorithm Gantt Chart for Johnson’s Algorithm ExampleExample
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.
15-62 Scheduling
http://www.baskent.edu.tr/~kilter62
ExampleExampleA group of six jobs is to be processed through a two-machine flow shop. The first operation
involves cleaning and the second involves painting. Determine a sequence that will minimize the total completion time for this group of jobs. Processing times are as follows:
15-63 Scheduling
http://www.baskent.edu.tr/~kilter63
Select the job with the shortest processing time. It is job D, with a time of two hours.
Since the time is at the first center, schedule job D first. Eliminate job D from further consideration.
Job B has the next shortest time. Since it is at the second work center, schedule it last and eliminate job B from further consideration. We now have
The remaining jobs and their times are
15-64 Scheduling
http://www.baskent.edu.tr/~kilter64
The shortest remaining time is six hours for job E at work center 1. Thus, schedule that job toward the beginning of the sequence (after job D). Thus,
Job C has the shortest time of the remaining two jobs. Since it is for the first work center, place it third in the sequence. Finally, assign the remaining job (F) to the fourth position and the result is
15-65 Scheduling
http://www.baskent.edu.tr/~kilter65
Sequencing Jobs When Setup Times Sequencing Jobs When Setup Times Are Sequence-DependentAre Sequence-Dependent
15-66 Scheduling
Scheduling DifficultiesScheduling Difficulties
Randomness in job arrival times Variability in
Setup times Processing times Interruptions Changes in the set of jobs
No method for identifying optimal schedule Scheduling is not an exact science Ongoing task for a manager
15-67 Scheduling
Classic Dispatching ResultsClassic 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. 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.
15-68 Scheduling
The Difficulty of Scheduling ProblemsThe 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, while
13! = 6,227,020,800
25!= 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
15-69 Scheduling
The Difficulty of Scheduling ProblemsThe Difficulty of Scheduling Problems
NP stands for non polynomial, meaning that the time required to solve such problems is an exponential function of the number of jobs rather than a polynomial function.
The problems for which total enumeration is hopeless are known in mathematics as NP hard.
15-70 Scheduling
Computation TimesComputation 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
15-71 Scheduling
Effect of Faster ComputersEffect 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
15-72 Scheduling
Implications for Real ProblemsImplications 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.
15-73 Scheduling
Implications for Real Problems (cont.)Implications for Real Problems (cont.)
Robustness? NP hard problems have many solutions, and presumably many “good” ones. 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
15-74 Scheduling
The Bad NewsThe 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.
15-75 Scheduling
The Good NewsThe 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.
15-76 Scheduling
The Good News (cont.)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.
15-77 Scheduling
Minimizing Scheduling DifficultiesMinimizing Scheduling Difficulties
Set realistic due dates
Focus on bottleneck operations
Consider lot splitting of large jobs