Lecture-2 Flow Shop Scheduling Johnson's Method 22aug22

Download as pdf or txt
Download as pdf or txt
You are on page 1of 29

Unit-I Production Scheduling & Sequencing Date: 22-Aug-22

Lecture 2: ME415/ EE498 – Flow Shop Scheduling


for 2-machines by Johnson’s method
Flow shop enumeration:
• Let us say the flow shop contains 𝒎 different machines
arranged in series on which a set of 𝒏 jobs are to be
processed.
• Each of the 𝒏 jobs requires 𝒎 operation and each
operation is to be performed on a separate machine.
• The flow of the work is unidirectional; thus every job must
be processed through each machine in a given
prescribed order (sequence).

1
• In other words, if machines are numbered from
1,2,3,…,m, then operation of job 𝒋 will correspondingly be
numbered (1,j), (2,j), (3,j), … , (m,j).
Milling Department Drilling Department
T T M M D D

T T M M D D

T T
G G G P
T T Grinding Dept. Painting Dept.
G G G P
T T
Receiving
and Shipping A A A
Turning
Department J1 J2 Jn Assembly

Figure: Functional Layout of Manufacturing

2
Jobs received
J1 J2 Jn M1 M2 Mm
Receiving Machining
Section Shipping
Section Section
Flow Shop Schematic with m-Machines and n-Jobs

• In this context, each job has been assigned exactly 𝒎


operations whereas in real situations a job may have a
fewer operations.
• Nevertheless, such a job will still be treated as
processing 𝒎 operations but with zero processing times
correspondingly.

3
• The general 𝒏 jobs, 𝒎 machine flow shop scheduling is
quite formidable problem.
• Considering an arbitrary sequence of jobs on each
machine, there are (n!)m possible schedules which poses
computational difficulties.
• Therefore, efforts in the past have been made by
researchers to reduce this number of feasible schedules
as much as possible without compromising on optimality
condition.

4
Mathematical Formulation:
MINIMIZATION OF MAKESPAN USING JOHNSON’S
RULE FOR (𝑭𝟐 ||𝑪𝒎𝒂𝒙 ) PROBLEM
• The flow shop contains n jobs simultaneously available at
time zero and to be processed by two machines
arranged in series with unlimited storage in between
them. Jobs received

• The processing J1 J2 Jn M1 M2

times of all jobs Receiving


Machining Shipping
Section
Section Section
are known with
Flow Shop Schematic with
certainty. 2-Machines and n-Jobs
• One of the
objectives and the most important one from

5
manufacturing perspective is the time span required to
complete a set of jobs.
• This objective is commonly known as the Makespan,
which is the span of time required to complete a set of
jobs in certain set of machines.
Statement of the Objective Function:
• It is required to sequence the 𝒏 jobs on the two
machines so as to minimize makespan (𝐶𝑚𝑎𝑥 ).
𝑀𝑎𝑘𝑒𝑠𝑝𝑎𝑛 𝐶𝑚𝑎𝑥 : 𝑀𝑎𝑥 {𝐶1 , 𝐶2 , … , 𝐶𝑛 } = 𝑀𝑎𝑥 𝐶𝑗
• This problem is solved by Johnson’s non-preemptive rule
for optimizing of the makespan in the general two
machine static flow shop.

6
• In a preemptive schedule the machine is allocated to
process the job for a limited time, whereas in non-
preemptive scheduling the machine is allocated to
process a job till it terminates the process and goes into a
waiting state.
• This is the most important result for the flow shop
problem which has now become a standard in theory of
scheduling.
• The Johnson’s rule for scheduling jobs in two machine
flow shop is stated below:
In an optimal schedule, job i precedes job j if:
min{𝑝1𝑖 , 𝑝2𝑗 } < min{𝑝1𝑗 , 𝑝2𝑖 }
Where:

7
𝑝1𝑖 : is the processing time of job i on machine 1 and;
𝑝2𝑖 : is the processing time of job i on machine 2.
Similarly, 𝑝1𝑗 and 𝑝2𝑗 are processing times of job j on
machine 1 and 2 respectively.
The steps of Johnson’s algorithm for constructing an
optimal schedule may be summarized as follows:

Let,
𝑝1𝑗 : processing time of job j on machine 1.
𝑝2𝑗 : processing time of job j on machine 2.

8
Johnson’s Algorithm
Step 1: Form set-I containing all the jobs with 𝑝1𝑗 < 𝑝2𝑗
Step 2: Form set-II containing all the jobs with 𝑝1𝑗 > 𝑝2𝑗
The jobs with 𝑝1𝑗 = 𝑝2𝑗 may be put in either set.
Step 3: Form the sequence as follows:
a) The jobs in set-I go first in the sequence and they go in
increasing order of 𝑝1𝑗 Shortest Processing Time
(SPT), i.e. 𝑝1,1 ≤ 𝑝1,2 ≤ 𝑝1,3 … . 𝑝1,(𝑛−1) ≤ 𝑝1,𝑛 .
b) The jobs in set-II follow in decreasing order of 𝑝2𝑗
Longest Processing Time (LPT). Ties are broken
arbitrarily. 𝑝2,1 ≥ 𝑝2,2 ≥ 𝑝2,3 … . 𝑝2,(𝑛−1) ≤ 𝑝2,𝑛

9
This type of schedule is referred to as SPT(1)-LPT(2)
schedule.

Example
Consider the following data which represents an instance
of 𝐹2 ||𝐶𝑚𝑎𝑥 problem. Find optimal value of makespan using
Johnson’s rule.
Job (j) j1 j2 j3 j4 j5
𝒑𝟏𝒋 5 2 3 6 7
𝒑𝟐𝒋 1 4 3 5 2

Solution:
10
Step 1:
Of all jobs; 1 ≤ 𝑗 ≤ 5, only job j2 has
𝑝1,2 < 𝑝2,2 which belong to Set-I={j2}.
Step 2:
Jobs j1, j4 and j5 have 𝑝1𝑗 > 𝑝2𝑗 which belong to
Set-II={j1, j4, j5}
Jobs j3 has 𝑝1𝑗 = 𝑝2𝑗 , so put it in any set; say set-I.
Set-I={j2, j3}
Step 3:
a) Arrange sequence of jobs in set-I according to SPT.
Set-I contains j2 and j3 as members. Process time of job
2 on machine M1 is 𝑝12 = 2. Similarly process time of

11
job 3 on machine M1 is 𝑝13 = 3. Sequencing jobs j2 and
j3 according to SPT;
𝑆𝑒𝑡 − 𝐼 = {𝑗2 , 𝑗3 }
b) Arrange sequence of jobs in set-II according to LPT.
Process times of jobs in set-II are 𝑝21 = 1, 𝑝24 = 5 and,
𝑝25 = 2. Hence, revised sequence is;
𝑆𝑒𝑡 − 𝐼𝐼 = {𝑗4 , 𝑗5 , 𝑗1 }
Johnson’s Optimal sequence:
(𝑆𝑒𝑡 − 𝐼 ) + (𝑆𝑒𝑡 − 𝐼𝐼 ) = {𝑗2 , 𝑗3 , 𝑗4 , 𝑗5 , 𝑗1 }
Job (j) j2 j3 j4 j5 j1
𝒑𝟏𝒋 2 3 6 7 5
𝒑𝟐𝒋 4 3 5 2 1

12
• We shall now construct a Directed Graph which will
depict the time aspect in an explicit manner.
Availability of
Process time Job 2 the machine M1 Job 3 Job 4 Job 5 Job 1
t=0
M1 2, 2 3, 5 6, 11 7, 18 5, 23
t=2 t=5 t=11 t=18
Completion time
Availability of
the job J2 = 2
t=2 r2 =2 r3 =5 r4 =11 r5 =18 r1 =23

M2 4, 6 3, 9 5, 16 2, 20 1, 24
t=6 t=9 t=16 t=20

C2 =6 C3 =9 C4 =16 C5 =20 C1 =24 Cmax


Idle time = 2 Idle time = 0 Idle time = 2 Idle time = 2 Idle time = 3
Makespan = Cmax = 24 Total Idle time
= 2+2+2+3=9
Figure: Directed Graph For Optimal Sequence {j2, j3, j4, j5, j1}

13
• The schedule for the optimal sequence is presented in
graphical form using directed graph and a Gantt chart.
• Directed graph also presents the critical path.
• All the process on machine M1 are on critical path.
• Gantt chart shows idle times on machine M2.
𝐶𝑚𝑎𝑥 = max{𝐶1 , 𝐶2 , 𝐶3 , 𝐶4 , 𝐶5 , } = max{24,6,9,16,20} = 24
𝐼𝑑𝑙𝑒 𝑡𝑖𝑚𝑒 = 2 + 2 + 2 + 3 = 9
• The Johnson’s method gives the optimum value of
Makespan, 𝐶𝑚𝑎𝑥 = 24 and minimum Idle Time = 9
• Johnson’s method does not provide a unique solution,
there could be other solutions too, but it provides a true
optimum sequence.

14
M1 J2 J3 J4 J5 J1

2 5 11 18 23

M2 J2 J3 J4 J5 J1

2 6 9 11 16 18 20 23 24

2 2 2 3

Fig. Idle time = 2 Idle time = 2 Idle time = 2 Idle time = 3


NTS Total Idle time Cmax
= 2+2+2+3=9 Makespan = Cmax = 24
Figure: Gantt Chart For Optimal Sequence {j 2, j3, j4, j5, j1}

15
• In the next part of today’s discussion, we shall study
further how the Johnson’s algorithm may be extended to
a special case of three machine flow shop problem.
• A flow shop problem exists when all the jobs share the
same processing order on all the machines.
• In a flow shop, the technological constraints demand that
the jobs pass between the machines in same order.
• Hence, there is a natural processing order (sequence) of
the machines characterized by the technological
constraints for each and every job in a flow shop.
• Frequently occurring practical scheduling problems focus
on two important decisions:

16
➢ The sequential ordering of the jobs that will be
processed serially by two or more machines.
➢ The machine loading schedule which identifies the
sequential arrangement of start and finish times on
each machine for various jobs.
• The job sequence on the machines should be such that
the Makespan or the total facility processing time should
be minimized.
• The flow shop contains 3 different machines arranged in
series on which a set of n jobs are to be processed.
• Each of the n jobs requires 3 operations and each
operation is to be performed on a separate machine.

17
• The flow of the work is unidirectional; thus every job must
be processed through each machine in a given
prescribed order.
• In other words, if machines are numbered from 1,2,3 then
operation of job j will correspondingly be numbered (1,j),
(2,j), (3,j).
• In this context, each job has been assigned exactly 3
operations.
• Statement of the problem.

MINIMIZATION OF MAKESPAN (𝑭𝟑 ||𝑪𝒎𝒂𝒙 ) PROBLEM


• This is the same flow shop problem as defined in two-
machine case except that now there are three machines

18
arranged in series for processing of 𝒏 jobs in a
prescribed order.
• However, Johnson’s 2-machine algorithm cannot be
extended to general 3-machine flow shop.
• Nevertheless, under special conditions, generalization is
possible.
• In this regard, if either of the following condition satisfies,
the Johnson’s 2 machine algorithm may be extended to
3-machine flow shop to achieve optimum makespan.

Either,
min(𝑝1𝑗 ) ≥ max(𝑝2𝑗 )
Or
min(𝑝3𝑗 ) ≥ max(𝑝2𝑗 )
19
• In other words, machine 2 is completely dominated by
either the first or the third machine so that no bottleneck
could possibly occur on the second machine.
• Subject to the above conditions, the optimal scheduling
rule is applicable to 3-machine flow shop.
• The working procedure is the same as that described in
the two machines case except that the three machines
flow shop is reduced to two dummy machine 𝑀1′ and 𝑀2′
such that processing times of job 𝑗 on machine 𝑀1′ and
𝑀2′ are (𝑝1𝑗 + 𝑝2𝑗 ) and (𝑝2𝑗 + 𝑝3𝑗 ) respectively.
• Johnson’s algorithm is then applied to these two dummy
machines to find the optimal job sequence.

20
Example
Consider an instance of (𝑭𝟑 ||𝑪𝒎𝒂𝒙 ) problem as given in the
following Table:
Job Process time Process time Process time
(j) (M1) (M2) (M3)
1 8 2 4
2 5 4 5
3 6 1 3
4 7 3 2

Find the optimal schedule:

21
Solution
• Check for minimum value of process time on machines
M1 and M3.
• These times are 5 and 2 respectively.
• Check maximum time on machine M2 which is 4.
• Since min{𝑝1𝑗 } ≥ max{𝑝2𝑗 }, the problem can be
converted to surrogate 2-machine problem.
• The problem data for two surrogate machines 𝑀1′ and 𝑀2′
is given in the following table.

22
Job (j) Process time (𝑴′𝟏 ) Process time (𝑴′𝟐 )
1 8+2=10 2+4=6
2 5+4=9 4+5=9
3 6+1=7 1+3=4
4 7+3=10 3+2=5

Apply Johnson’s Rule:


Step-1: For jobs 1 ≤ 𝑗 ≤ 4 find the jobs where the process
times 𝑝1𝑗 ≤ 𝑝2𝑗 , and we find from the above table the only

23
the job 𝑗2 has the same process time 9 on machine M1 as
that on the machine M2. Hence
𝑆𝑒𝑡 − 𝐼 = {𝑗2 }
Step-2: For jobs 1 ≤ 𝑗 ≤ 4
find the jobs where the
process times 𝑝1𝑗 > 𝑝2𝑗 , and
we find from the above table
the following jobs 𝑗1 , 𝑗3 & 𝑗4
satisfy this rule. Hence we make the next set as:
𝑆𝑒𝑡 − 𝐼𝐼 = {𝑗1 , 𝑗3 , 𝑗4 }

24
Step-3:
a) Arrange sequence of jobs in Set-I according to SPT
rule. Since Set-I contains only one job hence the set
remains the same, that is,
𝑆𝑒𝑡 − 𝐼 = {𝑗2 }

b) Arrange the sequence of


jobs in Set-II according to
LPT rule. Thus the Set-II
becomes:
𝑆𝑒𝑡 − 𝐼𝐼 = {𝑗1 , 𝑗4 , 𝑗3 }
c) The Optimal Sequence is the union of the two sets Set-I
and Set-II:
25
𝑂𝑝𝑡𝑖𝑚𝑎𝑙 𝑆𝑒𝑞𝑢𝑒𝑛𝑐𝑒 = {𝑆𝑒𝑡 𝐼 } ∪ {𝑆𝑒𝑡 𝐼 }
𝑆𝑒𝑡 − 𝐼 = {𝑗2 }; 𝑆𝑒𝑡 − 𝐼𝐼 = {𝑗1 , 𝑗4 , 𝑗3 }
𝑂𝑝𝑡𝑖𝑚𝑎𝑙 𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒 = {𝑗2 , 𝑗1 , 𝑗4 , 𝑗3 }
The sequence may now be depicted in the form of a directed
graph and a Gantt Chart as follows:

26
Process
time j2 j1 j4 j3

M1 5,5 8,13 7,20 6,26

Completion
time

M2 4,9 2,15 3,23 1,27

M3 5,14 4,19 2,25 3,30

Cmax
Figure: Directed Graph For Sequence {j2, j1, j4, j3} for 3-machine
scheduling to obtain optimum Makespan

27
M1 j2 j1 j4 j3
5 13 20 26

M2 j2 j1 j4 j3
5 9 13 15 20 23 26 27

M3 j2 j1 j4 j3
9 14 15 19 23 25 27 30
time
Figure: Gantt Chart For Schedule {j2, j1, j4, j3 } for 3-
machine scheduling to obtain optimum Makespan

28
• Application of Johnson’s algorithm to three machine flow
shop problem has been tested by various authors.
• Johnson’s algorithm appeared in 1950’s. Further even
after 70 years of the pioneering work of Johnson, no
optimal strategies could be developed for flow shop
problem with number of machines 𝑚 > 3.
• In the next lecture we shall discuss how to deal with flow
shop problems with number of machines 𝑚 > 3.

29

You might also like