Sequencing Problem

0% found this document useful (0 votes)
877 views27 pages
The general Sequencing Problem is to find the sequence out of (n!)m possible sequences which minimize the total elapsed time between the start of the job in the first machine and the complet…

Uploaded by

Saurabh Mishra
  • Introduction
  • Assumptions
  • Basic Terms
  • Processing n jobs through 2 machines
  • Optimum sequence Algorithm
  • Example
  • Solution

Sequencing Problem

Introduction
The selection of an appropriate order for a series of jobs to be done on a finite number of service facilities, in some pre-assigned order, is called sequencing. A practical situation may corresponds to an industry producing a number of products, each of which is to be processed through different machines, of course, finite in number. The general sequencing problem may be defined as: Let there be n jobs to be performed one at a time on

Introduction
on each of m machines. The sequence (order) of the machines in which each job should be performed is given. The actual or expected time required by the jobs on each of the machines is also given. The general sequencing problem, therefore, is to find the sequence out of (n!)m possible sequences which minimize the total elapsed time between the start of the job in the first machine and the completion of the job on the last machine.

Assumptions
Each job once started on a machine, is to be performed up to completion on that machine. The processing time on each machine is known. Such a time is independent of the order of the jobs in which they are to be processed. The time taken by each job in changing over from one machine to another is negligible.

Assumptions
A job starts on he machine as soon as the job and the machine both are idle and job is next to the machine and the machine is also next to the job. No machine may process more than one job simultaneously. The order of completion of job has no significance, i.e. no job is to be given priority. The order of completion of jobs is independent of sequence of jobs.

Basic Terms
Number of Machines: It refers to the no. of service facilities through which a job must pass before it is assumed to be completed. Processing Order: It refers to the order (sequence) in which given machines are required for completing the job. Processing Time: It indicates the time required by a job on each machine.

Basic Terms
Total Elapsed Time: It is the time interval between starting the 1st job and completing the last job including the idle time in a particular order by the given set of machines. Idle time on a machine: It is the time for which a machine does not have a job to process, i.e. idle time from the end of job (i-1) to the start of job i.

Basic Terms
Processing Time: It indicates the time required by a job on each machine. No passing rule: It refers to the rule of maintaining the order in which jobs are to be processed on given machines.

Processing n jobs through 2 machines


Let there be n jobs, each of which is to be processed through 2 machines, say M1 & M2 in the order M1M2. That is, each job has to pass through the same sequence of operations. Or, a job is assigned on M1first and after it has been completely machine M1, it is assigned to machine M2. If the machine M2 is not free at the moment for processing the same job, then the job has to wait in a waiting line for its turn on machine M2 (no passing).

Processing n jobs through 2 machines


Let tij (i=1,2 and j=1,2,,n) be the time required for processing jth job on the ith machine. Since passing is not allowed, therefore machine M1will remain busy in processing all the n jobs one by one while machine M2 may remain idle after completion of one job and before starting of another job. Thus the objective is to minimize the idle time od the 2nd machine.

Processing n jobs through 2 machines


Let X2j be the time for which machine M2 remains idle after finishing (j-1)th job and before starting processing jth job (j=1,2,,n). Total Elapsed Time (T) is
n n 2

t
!1


!1

The problem is to minimize T. However, since t 2 !1 is the total time for which machine M2has to work and is thus fixed, it does not form a part of the optimization problem.

Processing n jobs through 2 machines


n

Thus the problem reduces to that of minimize


!1

A convenient procedure for obtaining a sequence of performing jobs to minimize is well illustrated by the following Gantt Chart:
n 2
!1

t11

t12

t13

t14

t15

t1n

M1 M2
X21 t21 X22 t22 X23 t23 X24 t24 X25 X2n t2n

Time taken in hours

From the chart, it is clear that


21

! t 11 t 11  t 12  ! 0 !
21

X 22

 t 21 may be
21

t 11  t 12 " other ise

21

 t 21

Thus expression
22

or

22

ritten as :  t 21 , 0a ! t 11
22

ax. _ 11  t 12  t !

Thus
21


23

22

ax. _ 11  t 12  t 21 , t 11 a since t ,
21 2 3 ax. t 1  t 2 !1 !1 2 3 ax. t 1  t 2 !1 !1

21

imilarly,
21

! 

ax. _ 11  t 12  t 13  t 21  t 22  t
23


2

, 0a

22

2 , !1

, t 11

1 2 , t 1  t 2 !1 !1

In General,
n

!1

n-1 n-2 n n-1 ax. t1  t 2 , t1  t 2 ,...., t11 !1 !1 !1 !1

Optimum sequence Algorithm


List the jobs along with their processing times in a table.
Job umber
1 2

: : :

J1 t 11 t 21

J2 t 12 t 22

J 3 .......... J n t 13 .......... t1n t 23 .......... t 2n

Processing Time on machine

Examine the rows for processing times on machines M1 and M2, and find the smallest processing time in each row, i.e. find out min.(t1j, t2j) for all j.

Optimum sequence Algorithm


If the smallest processing time is for the first machine M1, then place the corresponding job in the 1st available position in the sequence, otherwise place 2nd machine M2. If there is a tie in selecting the minimum of all the processing times, then there may be 3 situations 1. Minimum among all processing times is same for the machines, i.e., min.(t1j, t2j)= t1k = t2r, then process the kth job first and the rth job last.

Optimum sequence Algorithm


2. If the tie for minimum occurs among processing times t1j on machine M1 only, then select arbitrarily the job to process first. 3. If the tie for minimum occurs among processing times t2j on machine M2, then select arbitrarily the job to process last. Cross off the jobs already assigned and repeat steps 1 through 4, placing the remaining jobs next to first or next to last, until all the jobs have been assigned.

Optimum sequence Algorithm


Calculate idle time for machines M1 and M2: Idle time for M1 = Total elapsed time (time when the last job in a sequence finishes on M1. Idle time for M2= Time at which the 1st job in a sequence finishes on M1 + (time when the jth job in a sequence starts on M2) {(time when the (j1)th job in a sequences finishes on M2)}
n j! 2

The total elapsed time to process all jobs through 2 machines as under:

Total elapsed time= Time when the nth job in a sequence finishes on machine M2.
Total elapsed time ! Time when the nth job in a sequence finishes on machine M 2
n j! 2 n j! 2

! t 2j  I 2j Where, t 2j I 2j ! Time required for processing jth job on machine M 2 ! Time for which machine M 2 remains idle after processing (j - 1)th job and before starting work on jth job.

Example
In a factory, there are six jobs to perform, each of which should go through 2 machines A & B, in the order A, B. The processing timings (hrs) for the jobs are given here. You are required to determine the sequence for performing the jobs that would minimize the total elapsed time, T. What is the value of T?
Job : Processing Time on machine : : J1 1 5 J2 3 6 J3 8 3 J4 5 2 J5 6 2 J6 3 10

Solution
The smallest processing time in the given problem is 1 on machine A. So, perform J1 in the beginning. The reduced set of processing times becomes
Job rocessing Time on machine B : A: : J2 3 6 J3 8 3 J4 5 2 J5 6 2 J6 3 10

The min. processing time in this reduced problem is 2 which corresponds to J4 & J5 both on machine B. Since the corresponding processing time of J5 on machine A is larger than the processing time of J4 on machine A, J5 will be processed in the last and J4

Solution
shall be processed next to last. The updated job sequence is
J1 J4 J5

The remaining processing times are:


Job : J2 3 6 J3 8 3 J6 3 10 : Processing Time on machine :

Now, there is a tie among 3 jobs for the smallest processing time in this reduced problem. These corresponds to J2 and J6 on machine A, and to

Solution
J3 on machine B. As the corresponding processing time of J6 on machine B is larger than the corresponding processing time of J2 on machine B, J6 will be processed next to J1 and J2 should be placed next. The updated job sequence is:
J1 J6 J2 J3 J4 J5

The sequence is optimum one. The total elapsed time is calculated below:

Job

Machine A In Out 0 1 4 7 15 20 1 4 7 15 20 26

Machine B In Out 1 6 16 22 25 27 6 16 22 25 27 29

Idle time on B 1 ------

J1 J6 J2 J3 J4 J5

T=29 hrs

Solution
Idle time of machine A is 29-26 = 3 hrs and Idle time of machine B is 1 hr The Gantt chart for the above problem is

Gantt Chart

J1 J6 J2

J3

J4

J5

A B
J1
X21

J6

J2

J3

J4

J5

10

12

14

16

18 20 22 24 26 28 30

|u0001u0002u0003u0004u0005u0003u0006u0007b	
u000bf
Ou0003u000e	
u000fu0002u0004u000eu0005
u0003
á u0001u0002 u0003u0002u0004u0002u0005u0006u0007b	 b
 u000b	 u000bff
bf
u0007u000bu0006u0002 
	u000f	 
b
 u000b u0003u0002
u0007u0002u0003 b
u000ebu000fu0003 u0006b u000fu0002 u0010b	u0002 b	 u000b 
u0007	u0007u0006u0002 	u0011u0012u000fu0002
 b
 u0003u0002
u0013u0007u0005u0002

u000bu0005u0007u0004u0007u0006u0007u0002u0003u0014 u0007
Ou0003u000e	
u000fu0002u0004u000eu0005
u0003u0012
b	 u0002u000bu0005u0001 b
 u0012 u0012u000bu0005u0001u0007	u0002u0003u001a u0001u0002 u0003u0002u001bu0011u0002	u0005u0002 u001eb
u0010u0002
u001f b
 u0006u0001u0002
u0012u000bu0005u0001u0007	u0002u0003 u0007	 u0019u0001u0007u0005u0001 u0002u000bu0005u0001 u000ebu000f u0003u0001bu0011u0004u0010 u000fu0002 fu0002
b
u0012u0002u0010 u0007u0003
u0016u0007u0013u0002	u001a u0001u0002
u000fu0010u0010u0002
u0018u000eu0005
u0003u0010
á !u000bu0005u0001 u000ebu000f b	u0005u0002 u0003u0006u000b
u0006u0002u0010 b	 u000b u0012u000bu0005u0001u0007	u0002u0014 u0007u0003 u0006b u000fu0002
fu0002
b
u0012u0002u0010 u0011f u0006b u0005bu0012fu0004u0002u0006u0007b	 b	 u0006u0001u000bu0006 u0012u000bu0005u0001u0007	u0002u001a
á u0001u0002 f
bu0005u0002u0003u0003u0007	u0016 u0006u0007u0012u0002 b
u000fu0010u0010u0002
u0018u000eu0005
u0003u0010u0012
á u0017 u000ebu000f u0003u0006u000b
u0006u0003 b	 u0001u0002 u0012u000bu0005u0001u0007	u0002 u000bu0003 u0003bb	 u000bu0003 u0006u0001u0002 u000ebu000f u000b	u0010 u0006u0001u0002
u0012u000bu0005u0001u0007	u0002 u000fbu0006u0001 u000b
u0002 u0007u0010u0004u0002 u000b	u0010 u000ebu000f u0007u0003 	u0002 u0006 u0006b u0006u0001u0002 u0012u000bu0005u0001u0007	u0002
u000b	u0010
ãu001bu0010u0005u0004u0007u001d	
u0010
á u001eu0002
u000b	 
u0013 u001fu001bu0004u0014u0005u0003u0010 %u0006 
u0002
u0002
u0003 u0006b u0006u0001u0002 	bu001a b
 u0003u0002
u0013u0007u0005u0002

u000bu0005u0007u0004u0007u0006u0007u0002u0003 u0006u0001
bu0011u0016u0001 u0019u0001u0007u0005u0001 u000b u000ebu000f u0012u0011u0003u0006 fu000bu0003u0003 u000fu0002
b
u0002 u0007u0006 u0007u0003
u000bu0003u0003u0011u0012u0002u0010 u0006
ãu001bu0010u0005u0004u0007u001d	
u0010u0012
á u001d
u000eu001bf "fu001bu0018u0010u000f u001du0005
 %u0006 u0007u0003 u0006u0001u0002 u0006u0007u0012u0002 u0007	u0006u0002
u0013u000bu0004 u000fu0002u0006u0019u0002u0002	
u0003u0006u000b
u0006u0007	u0016 u0006u0001u0002 &u0003u0006 u000ebu000f u000b	u0010 u0005bu0012fu0004u0002u0006u0007	u0016 u0006u0001u0002 u0004u000bu0003u0006 u000ebu000f
u0007	u0005u0004u0011u0010u0007	u0016 u0006u0001u0002
ãu001bu0010u0005u0004u0007u001d	
u0010u0012
á b	
u0004u0010u0010u0005u0003u0006 u001du0005
 %u0006 u0007	u0010u0007u0005u000bu0006u0002u0003 u0006u0001u0002 u0006u0007u0012u0002 
u0002u001bu0011u0007
u0002u0010 u000fu0018 u000b
u000ebu000f b	 u0002u000bu0005u0001 u0012u000bu0005u0001u0007	u0002u001a
á u001e
 u0018u001bu0010u0010u0005u0003u0006 	u0002f %u0006 
u0002
u0002
u0003 u0006b u0006u0001u0002 
u0011u0004u0002 b
b	
u0004u0010u0010u0005u0003u0006u0007u0003u0007u001c
u000bu0010u0007u000eu0014	
u0002u0006u0014u0007#u0007
u001bu0004u0014u0005u0003u0010
á u001du0002u0006 u0006u0001u0002
u0002 u000fu0002 	 u000ebu000fu0003u0014 u0002u000bu0005u0001 b
 u0019u0001u0007u0005u0001 u0007u0003 u0006b u000fu0002 f
bu0005u0002u0003u0003u0002u0010
u0006u0001
bu0011u0016u0001 ' u0012u000bu0005u0001u0007	u0002u0003u0014 u0003u000bu0018 (& ) (' u0007
b	
u0004u0010u0010u0005u0003u0006u0007u0003u0007u001c
u000bu0010u0007u000eu0014	
u0002u0006u0014u0007#u0007
u001bu0004u0014u0005u0003u0010u0012
á u001du0002u0006 u0006u0007u000e u001eu0007+&u0014' u000b	u0010 u000e+&u0014'u0014,u0014	u001f u000fu0002 u0006u0001u0002 u0006u0007u0012u0002 
u0002u001bu0011u0007
u0002u0010 
b
f
bu0005u0002u0003u0003u0007	u0016 u000eu0006u0001 u000ebu000f b	 u0006u0001u0002 u0007u0006u0001 u0012

You might also like