Operations Research: Department of Mathematics

You might also like

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

OPERATIONS RESEARCH

Chapter 4

Job Sequencing and Replacement


Theory

Prof. Bibhas C. Giri

Department of Mathematics
Jadavpur University
Kolkata, India
Email: bcgiri.jumath@gmail.com
MODULE - 1: Basic Terminologies and
Assumptions of Job Sequencing, and
Processing of n Jobs through 2 and 3
Machines

1.0 Introduction

In this Module, we discuss the problem of determining the sequence (order) in which
a number of jobs should be performed on different machines in order to make effective
use of available facilities and achieve greater output. If there are n jobs which are to
be performed on m different machines then the problem is to determine the sequence
of jobs, which minimizes the total elapsed time, that is, the time from the start of the
first job up to the completion of the last job.

Suppose that 2 or 3 jobs are to be processed on 2 or 3 machines. Then the job se-
quencing can be done by the method of enumeration. If, however, the number of jobs
and/or machines increases, then the problem becomes complicated and the method
of enumeration is not suitable.

Let us suppose that we have n machines and m jobs. Then we have (n!)m possible
sequences. For n = 5 and m = 5, we have (5!)5 = 25, 000,000,000 possible sequences. It
is time consuming to find all the sequences and select the optimal one among all the
sequences. Hence, we have to look for an easier method for finding the optimal sequence.

2
1.1 Basic Terminologies

In the following, we describe the basic terminologies which are commonly used in job
sequencing:

Number of machines - It refers to the number of service facilities through which a


job must pass before it is assumed to be completed.

Processing time - This is the time required by each job on each machine.

Precessing order - This refers to the order (sequence) in which machines are required
for completing the job.

Idle time on a machine - This is the time during which a machine does not have a
job to process.

Total elapsed time - This is the time interval between starting the first job and com-
pleting the last job, including the idle time (if any), in a particular order by the given
set of machines.

No passing rule - This means that the passing is not allowed, i.e., the same order
of jobs is maintained over each machine. If n jobs are to be processed through two
machines A and B in the order AB, then this means that each job will go to machine
A first and then to B.

1.2 Principal Assumptions

General assumptions for sequencing problems are as follows:

• The processing time on each machine is known.

• The time required to complete a job is independent of the order of jobs in which
they are to be processed.

• No machine can process more than one job simultaneously.

• The time taken by each job in changing over from one machine to another is
negligible.

• Each job, once started on a machine is to be performed up to completion on that


machine.
• The order of completion of job has no significance, i.e., no job is to be given
priority.

• A job starts on the machine as soon as the job and the machine both are idle.

1.2.1 Types of Job Sequencing Problem


Various types of job sequencing problem arise in the world. All sequencing problems
cannot be solved. Here, we consider the following four types of job sequencing prob-
lem:

I. n jobs are to be processed on 2 machines, say, machine A and machine B in the


order AB. This means that each job is to be processed first on machine A and
then on machine B.

II. n jobs are to be processed on 3 machines A, B and C in the order ABC, i.e., first
on machine A, second on machine B and third on machine C.

III. n jobs are to be processed on m machines in the given order

IV. 2 jobs are to be processed on m machines in the given order.

1.3 I. Processing of n Jobs through 2 Machines

Suppose that n jobs are to be processed on 2 machines, say, A and B. Each job has to
pass through the same sequence of operations in the same order, i.e., passing is not
allowed. After a job is completely processed on machine A, it is assigned to machine
B. If machine B is not free at that moment, then the job enters in the waiting queue.
Each job from the waiting queue is assigned to machine B according to FIFO (first in
first out) discipline.
Let Ai = processing time for ith job on machine A
Bi = processing time for ith job on machine B
T = total elapsed time
The problem is to determine the sequence in which n jobs should be processed through
machines A and B so that the total elapsed time (T ) is minimum. In the following, we
present a technique developed by Johnson and Bellman for determining an optimal
sequence.
1.3.1 Johnson’s Algorithm
Step 1 Select the minimum processing time out of all Ai ’s and Bi ’s. If it is Ar then do
the rth job first. If it is Bs then do the sth job at last.

Step 2 If there is a tie in selecting the minimum of all the processing times, then such
a situation is dealt with the following three ways:

(i) If the minimum of all the processing times is Ar , which is also equal to Bs ,
that is, min(Ai , Bi ) = Ar = Bs , then do the rth job first and sth job at last.

(ii) If min(Ai , Bi ) = Ar , but Ar = Ak , i.e., there is a tie for minimum among


Ai ’s, then select any one.

(iii) If min(Ai , Bi ) = Bs , but Bs = Bt , i.e., there is a tie for minimum among


Bi ’s, then select any one.

Step 3 Now, eliminate the job which has already been assigned from further consid-
eration, and repeat steps 1 and 2 until an optimal sequence is found.

Note: Johnson’s algorithm concentrates on minimizing the idle time of machines. It is


proved that the optimal sequence of n jobs which are to be processed on machine A and
machine B in the order AB necessarily involves the same ordering of jobs on each machine.
The total elapsed time is minimum when the sequence of jobs is same for both the machines.

Example 1.1: Suppose that there are five jobs, each of which has to be processed on
two machines A and B in the order AB. Processing times are given in the following
table:

Job Machine A Machine B


1 6 3
2 2 7
3 10 8
4 4 9
5 11 5

Determine a sequence in which these jobs should be processed so as to minimize the


total processing time.

Solution: The minimum time in the given table is 2, which corresponds to job 2 on
machine A. So the allocation of jobs will start as 2 . Now, we eliminate job
2 from further consideration. The reduced set of processing times is as follows:
Job Machine A Machine B
1 6 3
3 10 8
4 4 9
5 11 5

Now, the minimum time is 3 for job 1 on machine B. Therefore, this job would be done
at last. The allocation of jobs till this stage would be 2 1 . After deletion of
job 1, the reduced set of processing times is as follows:

Job Machine A Machine B


3 10 8
4 4 9
5 11 5

Similarly, by repeating the above steps, the optimal sequence is obtained as


2 4 3 5 1 . On the basis of this optimal sequence, the minimum elapsed time
is obtained from the following table as 36 hours.

Job Machine A Machine B


Time in Time out Time in Time out
2 0 2 2 9
4 2 6 9 18
3 6 16 18 26
5 16 27 27 32
1 27 33 33 36

Further, idle time for machine A = total elapsed time − time when the last job is out
of machine A = 36 − 33 = 3 hours. Idle time for machine B = time at which the first job
in a sequence finishes on machine A + (time when the ith job starts on machine B) −
(time when the (i -1)th job finishes on machine B). Therefore, idle time for machine
B = 2 + (9 − 9) + (18 − 18) + (27 − 26) + (33 − 32) = 4 hours

Example 1.2: A book binder company has one printing machine and one binding ma-
chine. There are manuscripts of a number of different books. Processing times for
printing and binding are given in the following table:
Book Time (in hours)
Printing Binding
A 5 2
B 1 6
C 9 7
D 3 8
E 10 4

Determine the sequence in which books should be processed on the machines so that
the total time required is minimized.

Solution: The minimum time in the given table is 1 which corresponds to the book B
on printing machine. Therefore, the allocation of jobs will start as B Now,
book B is eliminated. The reduced set of processing times is given in the following
table:

Book Time (in hours)


Printing Binding
A 5 2
C 9 7
D 3 8
E 10 4

Now, the minimum time is 2 for book A on binding machine. Therefore, this job
should be done at last. The allocation of jobs till this stage is B A The
reduced set of processing times is as follows:

Book Time (in hours)


Printing Binding
C 9 7
D 3 8
E 10 4

Similarly, by repeating the above steps, the optimal sequence is obtained as


B D C E A Now, on the basis of this optimal sequence, we construct the
following table:
Book Printing Binding
Time in Time out Time in Time out
B 0 1 1 7
D 1 4 7 15
C 4 13 15 22
E 13 23 23 27
A 23 28 28 30

From the last column, we find that the minimum elapsed time is 30 hours. Idle time
for printing process = total elapsed time − time when the last job is out of machine A
= 30 − 28 = 2 hours. Idle time for binding process = 1 + (7 − 7) + (15 − 15) + (23 − 22) +
(28 − 27) = 3 hours.

Example 1.3: There are seven jobs, each of which has to be processed on two machines
A and B in the order AB. Processing times are given in the following table:

Job Machine A Machine B


1 3 8
2 12 10
3 15 10
4 6 6
5 10 12
6 11 1
7 9 3

Determine a sequence of these jobs that will minimize the total elapsed time. Also
find total elapsed time and idle machines A and B.

Solution: The smallest processing time is 1 hour for job 6 on machine B. Thus job 6
will be processed last on machine A as shown below: 6 .

The reduced set of processing times becomes


Job Machine A Machine B
1 3 8
2 12 10
3 15 10
4 6 6
5 10 12
7 9 3

There are two equal minimal values: processing time of 3 hours for job 1 on machine
A and processing time of 3 hours for job 7 on machine B. According to Johnson’s rules,
job 1 is scheduled first and job 7 next to 6 as shown below:
1 7 6 .

The reduced set of processing times becomes

Job Machine A Machine B


2 12 10
3 15 10
4 6 6
5 10 12

Again there are two equal minimal values; processing time of 6 hours for job 4 on
machine A as well as on machine B. We may choose arbitrarily to process job 4 next to
1 or next to job 7 as shown below:
1 4 7 6 or 1 4 7 6 .

The reduced set of processing times becomes

Job Machine A Machine B


2 12 10
3 15 10
5 10 12

There are three equal minimal values: processing time of 10 hours for job 5 on ma-
chine A and for jobs 2 and 3 on machine B. According to rules: job 5 is scheduled next
to job 4 in the first or next to job 1 in the second schedule. Job 2 then is scheduled
next to job 7 in the first schedule or next to job 4 in the second schedule. The optimal
sequences are shown below:
1 4 5 3 2 7 6 or 1 5 3 2 4 7 6 .

The calculation of both sequencing for total elapsed time for machines A and B are
shown in the following tables:

Job Machine A Machine B


Time in Time out Time in Time out
1 0 3 3 11
4 3 9 11 17
5 9 19 19 31
3 19 34 34 44
2 34 46 46 56
7 46 55 56 59
6 55 66 66 67

Job Machine A Machine B


Time in Time out Time in Time out
1 0 3 3 11
5 3 13 13 25
3 13 28 28 38
2 28 40 40 50
4 40 46 50 56
7 46 55 56 59
6 55 66 66 67

From the above tables, we see that the total elapsed time in both sequencing is 67
hours and idle time for machine A is 1 hour; idle time for machine B is 17 hours.

1.4 II. Processing n Jobs through 3 Machines

In this section, we discuss on extension of Johnson’s procedure for scheduling n jobs


on three machines A, B and C in order ABC. This list of jobs with their processing
times on three machines A, B and C is given below.
Processing time Job
on machine 1 2 3 ··· n
A t11 t12 t13 ··· t1n
B t21 t22 t23 ··· t2n
C t31 t32 t33 ··· t3n

An optimal solution to this problem can be obtained if either or both of the following
conditions hold good:

1. The minimum processing time on machine A is at least as great as the maximum


processing time on machine B, that is, min t1j ≥ max t2j , for j = 1, 2, · · · , n.

2. The minimum processing time on machine C is at least as great as the maximum


processing time on machine B, that is, min t3j ≥ max t2j , for j = 1, 2, · · · , n.

If either or both the above conditions hold good, then the algorithm can be summa-
rized in the following steps:

Step 1 : Examine the processing times of the given jobs on all three machines and if ei-
ther one or both the above conditions hold, then go to Step 2; otherwise, the algorithm
fails.
Step 2 : Introduce two fictitious machines, say G and H, with corresponding process-
ing times given by

(i) tGj = t1j + t2j , j = 1, 2, · · · , n, i.e., the processing time on machine G is the sum of
the processing times on machines A and B.

(ii) tHj = t2j + t3j , j = 1, 2, · · · , n, i.e., the processing time on machine H is the sum of
the processing times on machines B and C.

Step 3 : Determine the optimal sequence for n jobs and two machine equivalent se-
quencing problem with the prescribed ordering GH in the same way as discussed
earlier.

Example 1.4: Find the sequence that minimizes the total time required in performing
the following jobs on three machines in order ABC. Processing times (in hours) are
given in the following table :

Job : 1 2 3 4 5
Machine A : 8 10 6 7 11
Machine B : 5 6 2 3 4
Machine C : 4 9 8 6 5
Solution: From data of the problem, we see that min(tAj ) = 6; min(tCj ) = 4; max(tBj ) =
6. Since the condition min(tAj ) ≥ max(tBj ) is satisfied for all j, the given problem can
be converted into a problem of 5 jobs and two machines. The processing times on two
dummy machines G and H can be determined by the following relationships:
tGj = tAj + tBj and tHj = tBj + tCj , j = 1, 2, · · · , 5
The processing time for the new problem are given below :

Job : 1 2 3 4 5
Machine G : 8 + 5 =13 10 + 6 =16 6+2 =8 7+3 =10 11+4 =15
Machine H : 5+4 =9 6+9 =15 2+ 8 =10 3+ 6 =9 4 + 5 =9

When the procedure described for n jobs on two machines is applied to this problem,
the optimal sequence so obtained is given by 3 2 5 1 4
The total minimum elapsed time is obtained from the following table:

Item Machine A Machine B Machine C


Time in Time out Time in Time out Time in Time out
3 0 6 6 8 8 16
2 6 16 16 22 22 31
5 16 27 27 31 31 36
1 27 35 35 40 40 44
4 35 42 42 45 45 51

The minimum total elapsed time is 51 hours. The idle time for machines A, B and C
are 9(= 51 − 42) hours, 31(= (6 − 0) + (16 − 8) + (27 − 22) + (35 − 31) + (42 − 40) + (51 − 45))
hours and 19(= (8 − 0) + (22 − 16) + (40 − 36) + (45 − 44)) hours, respectively.

Example 1.5: A company has to process five items on three machines A, B and C.
Processing times are given in the following table:

Item Ai Bi Ci
1 4 4 6
2 9 5 9
3 8 3 11
4 6 2 8
5 3 6 7

Find the sequence that minimizes the total elapsed time.


Solution: Here, min(Ai ) = 3, max(Bi ) = 6 and min(Ci ) = 6. So the condition max(Bi ) ≤
min(Ci ) is satisfied. Now, we consider two fictitious machines G and H with corre-
sponding processing times Gi = Ai + Bi and Hi = Bi + Ci , where Gi and Hi are the
processing times for the ith job on machine G and machine H, respectively. The pro-
cessing times for the new problem are given below:

Item Gi = Ai + Bi Hi = Bi + Ci
1 8 10
2 14 14
3 11 14
4 8 10
5 9 13

Following Johnson’s algorithm, the optimal sequence can be obtained as


1 4 5 3 2 Then the minimum elapsed time is obtained from the following
table as 49 hours.

Item Machine A Machine B Machine C


Time in Time out Time in Time out Time in Time out
1 0 4 4 8 8 14
4 4 10 10 12 14 22
5 10 13 13 19 22 29
3 13 21 21 24 29 40
2 21 30 30 35 40 49

Idle time for machine A = 49-30 = 19 hours. Idle time for machine B = 4 + (10 −
8) + (13 − 12) + (21 − 19) + (30 − 24) + (49 − 35) = 29 hours. Idle time for machine C =
8 + (14 − 14) + (22 − 22) + (29 − 29) + (40 − 40) = 8 hours.

You might also like