Title: Operations Scheduling
1Operations Scheduling Chapter 8
2The Hierarchy of Production Decisions
- 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.
3Hierarchy of Production Decisions
4Scheduling
- 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
5Scheduling 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.
6Scheduling Activities
- Scheduling involves the following major
activities - Routing (determining where the work is going to
be done). - Short-run capacity planning.
- Short-run machine, manpower and production
scheduling. - Determining the sequence of activities
(determining when the work is to be done). - Dispatching (issuing the order to begin work).
- Controlling the progress of orders and monitoring
the process to determine that operations are
running according to plan. - Revising the schedule based on changes in order
status of jobs, material and/or capacity
availability and various other reasons. - Expediting (speeding the progress of the work
order) late, critical jobs.
7Elements of Scheduling
- Elements 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.
8Goals of Production Scheduling
- High Customer Service on-time delivery
- Low Inventory Levels WIP and FGI
- High Utilization of machines and labor
9Meeting 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.
10Basic 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. - Littles Law TH WIP/CT ? WIPTHCT ?
(L?w) - where ?TH and wCT
11Reducing WIP and Cycle Time
- Less WIP Equals Shorter Cycle Times (Littles
Law) - Shorter cycle time means
- Less WIP
- Better responsiveness
- All of which reduce costs and improve sales
revenue
12Classic 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.
13Classic 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.
14Objectives 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)
15Measures to Evaluate Performance of a Scheduling
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.
16Measures to Evaluate Performance of a Scheduling
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.
17Terminology
- 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.
18Common 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.
19Scheduling Service Operations Vs Manufacturing
Operations
- Scheduling service systems presents certain
problems not generally encountered in
manufacturing systems. This is primarily due to - The inability to store services
- The random nature of customer requests
- To avoid problems such as long delays,
unsatisfied customers, service systems rely on
appoinment systems and reservation systems.
20High-Volume Systems
- Flow system High-volume system with Standardized
equipment and activities - Flow-shop scheduling Scheduling for high-volume
flow system
21High-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.
22Success Factors in High-Volume Systems
- Process and product design
- Preventive maintenance
- Rapid repair when breakdown occurs
- Minimization of quality problems
- Reliability and timing of supplies
23Intermediate-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.
24Intermediate-Volume Systems
- The three basic issues in these systems are
- 1.Run size, 2.Timing, and 3.Sequence of jobs
- Economic run size
h is defined as h h(1- ?/P)
25Scheduling 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
26Gantt Load Chart
Figure 15.2
- Gantt chart - used as a visual aid for loading
and scheduling
27Loading
- 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.
28Loading
29LOADING (The 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.
30The 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.
31The 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
32The Assignment Problem
33The 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)
34The 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)
35The 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 107121719 65 man
minutes.
36The 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.
37The 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.
38The Assignment Problem Example
WINQSB solution for this problem is as follows
39Hungarian 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.
40Hungarian Method Example
If not finished, continue with other columns.
41Hungarian 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 51213 30.
- It is not always possible to obtain a feasible
assignment as in here.
42Hungarian Method Example 2
43Hungarian 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.
44Hungarian 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.
45Hungarian 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.
46Sequencing
- 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.
47Sequencing 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.
48Example 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
49Example Sequencing Rules
- FCFS Rule A gt B gt C gt D gt 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
50Example 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
51Example Sequencing Rules
- SPT Rule A gt E gt C gt B gt 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
52Example 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
53Example Sequencing Rules
- Critical Ratio Rule E gt C gt D gt B gt 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
54Example 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
55Example 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.
56Sequencing n jobs on two machines
- Johnsons 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
- Johnsons Rule requires satisfying the following
conditions
57Johnsons 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
58Johnsons Rule Optimum Sequence
- List the jobs and their times at each work center
- Find the smallest processing time. If it belongs
to the first operation of a job schedule that job
next, otherwise schedule that job last. - Eliminate the job from further consideration
- Repeat steps 2 and 3 until all jobs have been
scheduled
59Johnsons Algorithm Example
- Data
- Iteration 1 min time is 4 (job 1 on M1) place
this job first and remove from lists
60Johnsons 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
61Gantt Chart for Johnsons Algorithm Example
Short task on M2 to clear out quickly.
Short task on M1 to load up quickly.
62Example
- A 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
63- 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
64- 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
65Sequencing Jobs When Setup Times Are
Sequence-Dependent
66Scheduling 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
67Classic 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.
68The 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
en/10000
10000n10
69The 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.
70Computation 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?
71Effect 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?
72Implications for Real Problems
- Computation NP algorithms are slow to use.
- No Technology Fix Faster computers dont 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.
73Implications 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
74The 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.
75The 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 Johnsons 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.
76The 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.
77Minimizing Scheduling Difficulties
- Set realistic due dates
- Focus on bottleneck operations
- Consider lot splitting of large jobs