operations research - epgp.inflibnet.ac.in

13
OPERATIONS RESEARCH Chapter 4 Job Sequencing and Replacement Theory Prof. Bibhas C. Giri Department of Mathematics Jadavpur University Kolkata, India Email: [email protected]

Upload: others

Post on 26-Mar-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

OPERATIONS RESEARCH

Chapter 4

Job Sequencing and ReplacementTheory

Prof. Bibhas C. Giri

Department of Mathematics

Jadavpur University

Kolkata, India

Email: [email protected]

MODULE - 1: Basic Terminologies andAssumptions of Job Sequencing, andProcessing of n Jobs through 2 and 3Machines

1.0Introduction

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 andm = 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.1Basic 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 whichmachines 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.2Principal 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 ProblemVarious 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 onmmachines in the given order

IV. 2 jobs are to be processed onmmachines in the given order.

1.3I. 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 AlgorithmStep 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 printingmachine. 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 twomachines

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 Jobon 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, · · · ,5The 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.