You are on page 1of 49

Production Planning & Control

Operations Scheduling
Operations Scheduling

Contents
Introduction
Job Shop Scheduling Terminology
Sequencing Rules
Sequencing Theory for a Single Machine
Sequencing Theory for Multiple Machines
Assembly Line Balancing
Advanced Topics for Operations scheduling
Introduction-What is Operations Scheduling ?
Forecast of future demand
 Implement the production
orders generated in MRP under
given objectives ; Aggregate plan
 Allocate production resources
(machine, workers et al.) to
Master production schedule (MPS)
production orders (jobs or tasks
Schedule of production quantities by
and their due dates) in an
product and time period
optimized manners;
 The results are time allocations
Material Requirement Planning (MRP)
of production resources to
different jobs (job sequences on Generate production orders and
each production resources); purchase order
 All the orders can be completed
while all production resources Operations Scheduling
are utilized with their loads To meet quantities and time
being balanced. requirements for MRP
Introduction-Objectives of Job Shop Scheduling

 Objectives of operations scheduling


1) Meet due date;
2) Minimize WIP inventory;
3) Minimize the average flow time through the systems;
4) Provide for high machine/worker (time) utilization (minimize idle
time);
5) Reduce setup cost;
6) Minimize production and worker costs

Discussion
1) and 3) aim at providing a high level of costumer service;
 2), 4), 5) and 6) are to provide a high level of workshop efficiency;

Impossible to optimize all above objectives simultaneously;

 Proper trade off between cost and quality is one of the most

challenging strategic issues facing a firm today;


Assumption

 M/c’s are always available


 Jobs are available at t=0
 No job interruption
 No Job Splitting
 The processing times are deterministic
 Setup time are small and include in PT
 J1, J2, J3----- J2, J3, J1,…. J3 –J2-J1
 N!
Introduction-Objectives of operations Scheduling

Discussion (Cont.)
Some of these objectives conflicts, e.g.
Reduce WIP inventory  Worker idle time may increase

or machine utilization may decrease;


Reasons: differences in the throughput rate from one part

of the system to another may force the faster operations to


wait.
As an example, if there is no buffer for WIP
between 1 and 2, what happens?

Fig 8-3 A Process Composed of Two Operations in Series


Introduction-Functions of Scheduling and Control

 The following functions must be performed in scheduling


and controlling a shop floor:
Allocating orders, equipments, and personnel to work

centers or other specified location-Short term capacity


planning;
Determining the sequence of orders (i. e. job priorities);

Initializing performance of the scheduled work,

commonly termed the dispatching of jobs;


Shop-floor control, involving

Reviewing the status and controlling the progress of

orders as they are being worked on;


Expediting the late and critical orders;

Revising the schedules in light of changes in order status.


Introduction-Elements of the Shop Floor Scheduling Problems

 The classic approaches to shop floor scheduling focuses on the


following six elements:
Job arrival patterns: static or dynamic

Static: jobs arrive in batch;

Dynamic: jobs arrive over time interval according to some

statistical distribution.
Numbers and variety of machines in the shop floor

If there is only one machine or if a group of machines can

be treated as one machine, the scheduling problem is much


more simplified;
As number of variety of machines increase, the more

complex the scheduling problems is likely to become.


Introduction-Elements of the Shop Floor Scheduling Problems

 (Continued)
Ratio of workers to machines

Machine limited system: more workers than machine

or equal number workers and machines;


Labor-limited system: more machines than worker.

Flow pattern of jobs: flow shop or job shop

Flow shop: all jobs follow the same paths from one

machine to the next;


Job shop: no similar pattern of movement of jobs

from one machine to the next.


Introduction-Elements of the Shop Floor Scheduling Problems

 (Continued)
Job sequencing

Sequencing or priority sequencing: the process of

determining which job is started first on some machines or


work center by priority rule;
Priority rule: the rule used for obtaining a job sequencing;

Priority rule evaluation criteria

To meet corresponding objectives of scheduling;

Common standard measures:


Meeting due date of customers or downstream operations;
Minimizing flow time (the time a job spends in the shop flow);

Minimizing WIP;

Minimizing idle time of machines and workers (Maximizing

utilization).
 Single machine scheduling
 Flow shop scheduling
 Job Shop scheduling

M/c
Introduction-Elements of the Job Shop Scheduling Problems

Flow shop:
 Each of the n jobs
must be processed
through the m
machines in the
same order.
 Each job is
processed exactly
once on each
machine.

An assembly line is a classic example of flow shop


 Every cars go through all the stations one by one in the same sequences;
 Same tasks are performed on each car in each station;
 Its operations scheduling is simplified as assembly line balancing;
 An assembly balancing problem is to determine the number of stations and to
allocate tasks to each station.
Introduction-Job Shop

Drilling Center
Turnning Center

Grinding Center Milling Center

A job shop is organized by machines which are grouped


according to their functions.
Introduction-Job Shop

Work Center 2
Work Center 1

Job A

Work Center 4 Work Center 3


Job B

 Not all jobs are assumed to require exactly the same number of operations, and
some jobs may require multiple operations on a single machine (Reentrant
system, Job B twice in work center 3 ).
 Each job may have a different required sequencing of operations.
 No all-purpose solution algorithms for solving general job shop problems ;
 Operations scheduling of shop floor usually means job shop scheduling;
Job Shop Scheduling Terminology

1. Parallel processing versus sequential processing


 Sequencing Processing: the m machines are distinguishable, and
different operations are performed by different machines.
 Parallel processing: The machines are identical, and any job can be
processed on any machine.
Job A
M1 M2 Job A
M1 M2
Job B
M3 M4 Job B
M3 M4
M , M2, M3, and M4 are different;
1
 Job A has 2 operations which should be

processed on different Machines: M1and  M1, M2, M3, and M4 are


M2 ; identical;
 Job B has 3 operations which should be  Jobs A and B can be processed
processed on different Machines: M3, M2 on any one of the 4 machines
and M4;
Job Shop Scheduling Terminology

2 Flow time
 The flow time of job i is the time that elapses from the initiation of
that job on the first machine to the completion of job i.
 The mean flow time, which is a common measure of system
performance, is the arithmetic average of the flow times for all n
jobs

Machines Mean Flow Time=(F1+F2+F3)/3

M1 Job 1 Job 2 Job 3

M2 Job 1 Job 2 Job 3

F1: FT of Job 1 Time


F2: FT of Job 2
F3: FT of Job 3
Job Shop Scheduling Terminology

3. Make-span
 The make-span is the time required to complete a group of jobs (all n
jobs).
 Minimizing the make-span is a common objective in multiple-machine

sequencing problems.
Machines

M1 Job 1 Job 2 Job 3

M2 Job 1 Job 2 Job 3

F1: FT of Job 1 Time


F2: FT of Job 2
F3: FT of Job 3
Make-span of the 3 jobs
Job Shop Scheduling Terminology

4. Tardiness and lateness


 Tardiness is the positive difference between the completion time and the
due date of a job.
 Lateness refers to the difference between the job completion time and its
due date and differs from tardiness in that lateness can be either positive or
negative.
 If lateness is positive, it is tardiness; when it is negative, it is earliness
Tardiness Completion
Due date of Job i time of Job i
of Job i Lateness>0---
Tardiness

Completion Due date


Lateness<0---
time of Job i of Job i Earliness

When the completion of Job is earlier than due date, the tardiness is 0
Sequencing Rules

FCFS (first come-first served)


 Jobs are processed in the sequence in which they entered the shop;
 The simplest and nature way of sequencing as in queuing of a bank

SPT (shortest processing time)


 Jobs are sequenced in increasing order of their processing time;
 The job with shortest processing time is first, the one with the next
shortest processing time is second, and so on;

EDD (earliest due date)


 Jobs are sequenced in increasing order of their due dates;
 The job with earliest due date is first, the one with the next earliest due
date is second, and so on;
Sequencing Rules

Example 5.1
 A machine center in a job shop for a local fabrication company has five
unprocessed jobs remaining at a particular point in time. The jobs are labeled
1, 2, 3, 4, and 5 in the order that they entered the shop. The respective
processing times and due dates are given in the table below.
 Sequence the 5 jobs by above 4 rules and compare results based on mean

flow time, average tardiness, and number of tardy jobs

Job number Processing Time Due Date

1 11 61
2 29 45
3 31 31
4 1 33
5 2 32
Mean Flow time=268/5=53.6
Sequencing Rules——FCFS Average tardiness=121/5=24.2
No. of tardy jobs=3.

Job number Processing Time Due Date

1 11 61
2 29 45
3 31 31
4 1 33
5 2 32

Job Completion Time Due Date Tardiness


1 11 61 0
2 40 45 0
3 71 31 40
4 72 33 39
5 74 32 42
Totals 268 121
Mean Flow time=135/5=27.0
Sequencing Rules——SPT Average tardiness=43/5=8.6
No. of tardy jobs=1.
Job number Processing Time Due Date

1 11 61
2 29 45
3 31 31
4 1 33
5 2 32

Job Processing Time Completion Time Due Date Tardiness


4 1 1 33 0
5 2 3 32 0
1 11 14 61 0
2 29 43 45 0
3 31 74 31 43
Totals 135 43
Mean Flow time=235/5=47.0
Sequencing Rules——EDD Average tardiness=33/5=6.6
No. of tardy jobs=4.

Job number Processing Time Due Date

1 11 61
2 29 45
3 31 31
4 1 33
5 2 32

Job Processing Time Completion Time Due Date Tardiness


3 31 31 31 0
5 2 33 32 1
4 1 34 33 1
2 29 63 45 18
1 11 74 61 13
Totals 235 33
Sequencing Rules——CR

Current time: t=0


Job number Processing Time Due Date Critical Ratio
1 11 61 61/11(5.545)
2 29 45 45/29(1.552)
3 31 31 31/31(1.000)
4 1 33 33/1 (33.00)
5 2 32 32/2 (16.00)
Current time should be reset after scheduling one job
Current time: t=31
Job number Processing Time Due Date-Current Time Critical Ratio
1 11 30 30/11(2.727)
2 29 14 14/29(0.483)
4 1 2 2/1 (2.000)
5 2 1 1/2 (0.500)
Mean Flow time=289/5=57.8
Sequencing Rules——CR Average tardiness=87/5=17.4
No. of tardy jobs=4.
Current time=60
Job number Processing Time Due Date- Critical Ratio
Current Time
1 11 1 1/11(0.0909)
4 1 -27 -27/1<0
5 2 -28 -28/2<0

Both Jobs 4 and 5 are later, however Job 4 has shorter processing time
and thus is scheduled first; Finally, job 1 is scheduled last.
Job number Processing Time Completion Time Tardiness
3 31 31 0
2 29 60 15
4 1 61 28
5 2 63 31
1 11 74 13
Totals 289 87
Sequencing Rules——Summary

Rule Mean Flow Time Average Number of


Tardiness Tardy Jobs

FCFS 53.6 24.2 3


SPT 27.0 8.6 1
EDD 47.0 6.6 4
CR 57.8 17.4 4

Discussions
 SPT results in smallest mean flow time;
 EDD yields the minimum maximum tardiness (42, 43, 18, and 31 for the 4
different rules);
 Always true? Yes!
Sequencing Theory for A Single Machines

Assuming that n jobs are to be processed through one machine.


For each job i, define the following quantities:
 ti=Processing time for job i, constant for job i;
 di=Due date for job i, constant for job i;
 Wi=Waiting time for job i, the amount of time that the job must wait before its
processing can begin.
 When all the jobs are processed continuously, W is the sum of the
i
processing times for all of the preceding jobs;
t1 t2 t3 t4

W4=t1+t2+t3 F4=W4+t4
 F =Flow time for job i, the waiting time plus the processing time: F = W + t ;
i i i i

 Li=Lateness of job i , Li= Fi- di, either positive or negative;


 Ti=Tardiness of job i, the positive part of Li, Ti=max[Li,0] ;

Sequencing Theory for A Single Machines

 Maximum Tardiness T max


 max{ T ,T 1
,...,T n}
2

1 n

F
'
 Mean Flow Time F 
n i 1
i

 Suppose that 4 jobs J1, J2, J3, J4 need to be scheduled

 For example a schedule  Considered as a permutation of


is J3-J2-J1-J4 integers 1, 2, 3, 4: 3, 2, 1, 4.

 For only a single machine, every schedule can be represented by a


permutation (ordering) of the integers 1, 2, 3, …, n.
 There are totally n! (the factorial of n) different permutations.
 A permutation of integers 1, 2, , n is expressed by [1], [2], , [n],
which represents a schedule;
 [i] denotes the integer that put in the ith place in the permutation;

 In case of a schedule 3, 2, 1, 4, [1]=3, [2]=2, [3]=1, and [4]=4;


Sequencing Theory for A Single Machines

1.Shortest-Processing-Time Scheduling
Theorem 8.1 The scheduling rule that minimizes the mean flow
time F’ is SPT.
k
 Suppose a schedule is [1], [2],  [k], [k+1],  F [k ]
 t [i ]
[n], the flow time of the job that is scheduled in i 1

position k is given by, say job in position 3:

t[1] (t2) t[2] (t1) t[3] (t4) t[4] (t3)

F[2]=t[1]+t[2]=t2+t1

The mean flow time of all jobs on 1 n


1 n k

F  t
'
F 
n [k ]

n [i ]
the schedule is given by i 1 k 1 i 1
Sequencing Theory for A Single Machines
1.Shortest-Processing-Time Scheduling
Theorem 8.1 The scheduling rule that minimizes the mean flow
time F’ is SPT
1 n
1 n k

F  t
'
The mean flow time is given by F 
n i 1
[k ]

n k 1 i 1
[i ]

 The double summation term may By summing down the column rather
be written in a different form. than across the row, we may rewrite F’
Expanding the double summation, in the form
we obtain
k=1:t[1] ; nt[1]+(n-1)t[2]+…+t[n]
k=2:t[1]+ t[2];
…;
Clearly, it is minimized by setting
k=n:t[1]+ t[2 +…t[n]
t [1]
 t [2]  ...  t [ n ]

SPT sequencing rule: the job with shortest processing time t is set first
Sequencing Theory for A Single Machines

1. Shortest-Processing-Time Scheduling (Cont.)


Corollary 8.1 The following measures are equivalent:
 Mean flow time
 Mean waiting time
 Mean lateness
SPT minimizes mean flow time, mean waiting time, and
mean lateness for single machine sequencing.
2. Earliest-Due-Date Scheduling: If the objective is to
minimize the maximum lateness, then the jobs should be
sequenced according to their due dates. That is, d[1] d[2]…
d[n].
Sequencing Theory for A Single Machine

3. Minimizing the number of Tardy Jobs: An algorithm from


Moore(1968) that minimizes the number of tardy jobs for the
single machine problem.
 Step1. Sequence the jobs according to the earliest due date to obtain the
initial solution. That is d[1] d[2],…,  d[n];
 Step2. Find the first tardy job in the current sequence, say job [i]. If none
exists go to step 4.
 Step3. Consider jobs [1], [2], …, [i]. Reject the job with the largest
processing time. Return to step2. (Why ?)
 Reason: It has the largest effect on the tardiness of the Job[i].
 Step4. Form an optimal sequence by taking the current sequence and
appending to it the rejected jobs. (Can be appended in any order?)
 Yes, because we only consider the number of tardiness jobs rather than
tardiness.
Sequencing Theory for A Single Machine

Example 8.3
Job 1 2 3 4 5 6
Due date 15 6 9 23 20 30
Processing time 10 3 4 8 10 6

Solution Longest processing time

Job 2 3 1 5 4 6
Due date 6 9 15 20 23 30
Processing time 3 4 10 10 8 6
Completion 3 7 17 27 35 41
time
Sequencing Theory for A Single Machine

Example 8.3 :Solution (Cont.) Longest processing time

Job 2 3 5 4 6
Due date 6 9 20 23 30
Processing time 3 4 10 8 6
Completion time 3 7 17 25 31

Job 2 3 4 6
Due date 6 9 23 30
Processing time 3 4 8 6
Completion time 3 7 15 21

The optimal sequence: 2, 3, 4, 6, 5, 1 or 2, 3, 4, 6, 1, 5. In each case the


number of tardy jobs is exactly 2.
Sequencing Theory for A Single Machines
Example 8.4

Job 1 2 3 4 5 6
Processing time 2 3 4 3 2 1
Due date 3 6 9 7 11 7
Sequencing Theory for A Single Machines
Example 8.4
Not predecessor
Step1: find the job scheduled last(sixth)

Job 1 2 3 4 5 6
Processing time 2 3 4 3 2 1
Due date 3 6 9 7 11 7

3 5 6
τ =2+3+4+3+2+1=15
Tardiness 15-9=6 15-11=4 15-7=8
Step2: find the job scheduled fifth
Not predecessor
Job 1 2 3 4 6
Processing time 2 3 4 3 1
Due date 3 6 9 7 7

3 6
τ =15-2=13 Tardines 13-9=4 13-7=6
Sequencing Theory for A Single Machines

Example 8.4
Not predecessor
Step3: find the job scheduled fourth

Job 1 2 4 6 Because job3 is no


Processing time 2 3 3 1 longer on the list,
Job 2 now because
Due date 3 6 7 7 a candidate.

2 6
τ =13-4=9
Tardiness 9-6=3 9-7=2
Step4: find the job scheduled third
Not predecessor
Job 1 2 4
Because job6 has been
Processing time 2 3 3 scheduled, Job 4 now
because a candidate along
Due date 3 6 7 with Job 2.

2 4
τ =9-1=8 Tardiness 8-6=2 8-7=1
Sequencing Theory for A Single Machines

Example 8.4
Not predecessor
Step5: find the job scheduled second

Job 1 2
Processing 2 3 The optimal sequence: 1-2-4-6-3-5
time
Due date 3 6

Job Processing Flow Due date Tardiness


time time
1 2 2 3 0
2 3 5 6 0
4 3 8 7 1
6 1 9 7 2
3 4 13 9 4
Maximum tardiness
5 2 15 11 4
Sequencing Theory for Multiple Machines

Assume that n jobs are to be processed through m


machines. The number of possible schedules is
astonishing, even for moderate values of both n and m.
For each machine, there is n! different ordering of
the jobs; if the jobs may be processed on the machines
in any order, there are totally (n!)m possible schedules.
(n=5, m=5, 25 billion possible schedules)
Even with the availability of inexpensive computing
today, enumerating all feasible schedules for even
moderate-sized problems is impossible or, at best,
impractical.
Sequencing Theory for Multiple Machines

Gantt chart
Suppose that two jobs, I and J, are to be scheduled on two
machines, 1 and 2, the processing times are

Machine 1 Machine 2
Job I 4 1
Job J 1 4

 Assume that both jobs must be processed first on machine 1


and then on machine 2. There are four possible schedules.
Sequencing Theory for Multiple Machines
Schedule Total flow time Mean flow time Mean idle time
1 9 (5+9)/2=7 (4+4)/2=4
2 6 5.5 1
3 10 8 5
4 10 9.5 5
Sequencing Theory for Multiple Machines

1. Scheduling n Jobs on Two Machines


Theorem 8.2 The optimal solution for scheduling n jobs on two machines
is always a permutation schedule.
A very efficient algorithm for solving the two-machine problem was
discovered by Johnson(1954).
 Denote the machines by A and B
 The jobs must be processed first on machine A and then on machine B.
 Define
 Ai=Processing time of job i on machine A
 Bi=Processing time of job i on machine B
 Rule: Job i precedes job i+1 if min(Ai, Bi-1)<min(Ai+1,Bi)
 List the values of Ai and Bi in two columns.
 Find the smallest remaining element in the two columns. If it
appears in column A, then schedule that job next. If it appears in
column B, then schedule that job last.
 Cross off the jobs as they are scheduled. Stop when all jobs have
Sequencing Theory for Multiple Machines
Job Machine A Machine B
Example 8.5 1 5 2
2 1 6
3 9 7
4 3 8
5 10 4

Optimal sequence : 2 4 3 5 1
Sequencing Theory for Multiple Machines

2. Extension to Three Machines


 The three-machine problem can be reduced to a two-machine problem if
the following condition is satisfied
min Aimax Bi or min Cimax Bi
It is only necessary that either one of these conditions be satisfied. If that is the
case, then the problem is reduced to a two-machine problem
 Define Ai’=Ai+Bi, Bi’=Bi+Ci
 Solve the problem using the rules described above for two-machines, treating
Ai’ and Bi’ as the processing times.
 The resulting permutation schedule will be optimal for the three-machine
problem.
 If the condition are not satisfied, this method will usually give reasonable,
but possibly sub-optimal results.
Sequencing Theory for Multiple Machines

3. 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.
 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.
Sequencing Theory for Multiple Machines

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

Job 1 Job2
Operation Time Operation Time
Sanding (A) 3 A 2
Lacquering (B) 4 B 5
Polishing( C ) 5 C 3
Minimizing the flow time is the same as maximizing the time that both jobs are
being processed. That is equivalent to finding the path from the origin to the end of
block C that maximizes the diagonal movement and therefore minimizes either the
horizontal or the vertical movement.

or 10+6=16

or 10+(3+2)=15
The End !

You might also like