Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Job Sequencing Problem Notes, Lecture notes of Advanced Algorithms

Sequencing problems can be solved either using Gantt Charts or by applying an algorithm.

Typology: Lecture notes

2020/2021

Uploaded on 06/21/2021

lumidee
lumidee 🇺🇸

4.4

(47)

364 documents

1 / 10

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
SEQUENCING PROBLEM:
These problems arise when we are concerned with situations where there is a choice as to the
order in which a number of tasks can be performed. In such cases, the effectiveness is a function
of the order or sequence in which the tasks are performed. A sequencing problem could involve
jobs in a manufacturing plant, aircraft waiting for landing and clearance, maintenance scheduling
in a factory, programmes to be run on a computer centre, customers in a bank and so forth.
There are four different types of sequencing problems:
Processing n jobs on two machines
Processing n jobs on three machines.
Processing n jobs on k machines
Processing 2 jobs on k machines
There are some general assumptions made to solve the sequencing problems. They are:
a) The processing time on various machines is independent of the order in which different
jobs are processed on them.
b) The time taken by different jobs in going from one machine to another is negligible.
c) A job once started on a machine would be performed to the point of completion
uninterrupted.
d) A machine cannot process more than one job at a given point of time.
e) A job would start on a machine as soon as the job and the machine on which it is to be
processed are both free.
SOLUTION TO SEQUENCING PROBLEMS:
Sequencing problems can be solved either using Gantt Charts or by applying an algorithm.
I. GANTT CHARTS
We illustrate the use of Gantt Charts with the help of the following examples:
Example 1:Suppose that there are two jobs J1 and J2, each requiring work on two
machines M1 and M2, in this order with the required processing times given as
follows:
What order of performance of the jobs will involve the least time?
Job
Machine
M1
M2
J1
4
10
J2
8
7
pf3
pf4
pf5
pf8
pf9
pfa

Partial preview of the text

Download Job Sequencing Problem Notes and more Lecture notes Advanced Algorithms in PDF only on Docsity!

SEQUENCING PROBLEM:

These problems arise when we are concerned with situations where there is a choice as to the order in which a number of tasks can be performed. In such cases, the effectiveness is a function of the order or sequence in which the tasks are performed. A sequencing problem could involve jobs in a manufacturing plant, aircraft waiting for landing and clearance, maintenance scheduling in a factory, programmes to be run on a computer centre, customers in a bank and so forth.

There are four different types of sequencing problems:

 Processing n jobs on two machines  Processing n jobs on three machines.  Processing n jobs on k machines  Processing 2 jobs on k machines

There are some general assumptions made to solve the sequencing problems. They are:

a) The processing time on various machines is independent of the order in which different jobs are processed on them. b) The time taken by different jobs in going from one machine to another is negligible. c) A job once started on a machine would be performed to the point of completion uninterrupted. d) A machine cannot process more than one job at a given point of time. e) A job would start on a machine as soon as the job and the machine on which it is to be processed are both free.

SOLUTION TO SEQUENCING PROBLEMS:

Sequencing problems can be solved either using Gantt Charts or by applying an algorithm.

I. GANTT CHARTS We illustrate the use of Gantt Charts with the help of the following examples:

Example 1: Suppose that there are two jobs J1 and J2, each requiring work on two machines M1 and M2, in this order with the required processing times given as follows:

What order of performance of the jobs will involve the least time?

Job Machine M1 M J1 4 10 J2^8

Solution:

For processing the two jobs, two orders are possible J1-J2 and J2-J1. Both these alternatives are evaluated in the above figure. The first part of the figure depicts the job sequences J1-J2, according to which the two jobs can be completed in 21 hours. The other sequence J2-J1 depicts that the two jobs would take 25 hours to finish. Thus, the job sequence J1-J2 is optimal, since the total elapsed time is lower of the two. Example 2: There are three jobs 1,2 and 3, each requiring work on two machines M1 and M2, in the order M1M2 with the required processing times given as follows:

In what sequence should the jobs be performed so that the elapsed time, T, is the least?

Solution: With three jobs to be processed on two machines, we have six possible orders namely 123, 132,213,231,312 and 321. Each of these sequences is evaluated in the chart shown below:

Job Machine M1 M 1 3 5 2 6 4 3 5 8

The sequence 132 takes minimum processing time in aggregate, that is 20 hours and hence is optimal.

As evident from the above example, the use of Gantt chart becomes disproportionately difficult as the number of jobs increases such that when there are n jobs, each of which is to be processed on two machines in the same order, there are n! possible sequences. Thus when we have 6 jobs to be processed, we need to evaluate 6!=720 possible orders in an attempt to find the optimal sequence.

Hence we need a more efficient method by which the sequence desired can be determined.

ALGORITHM FOR SOLVING SEQUENCING PROBLEMS: JHONSONS RULE

The method shall be discussed in respect of processing of n jobs through (a) two machines, (b) three machines and (c) k machines.

Processing n jobs through 2 machines:

We already have the following information:

 Only two machines are involved.  Each job is to be processed in the order AB so that the first work would be performed on machine A and then on machine B.  The processing time for different jobs on first machine A 1 ,A 2 ,…,An are given and so are the processing times on the second machine B 1 ,B 2 ,…,Bn.

With the objective to determine the sequence in which the jobs may be performed so that the total time taken (i.e. the total elapsed time) is minimum, we proceed as follows.

Let Ai=Time required by job I of machine A.

Bi=Time required by job I on machine B.

T=Total elapsed time for jobs 1,2,…,n

Ti=idle time on machine B, from end of job i-1 to the start of job i.

The objective is to determine the sequence S in which n jobs may be performed so that T is minimized. The total elapsed time, T, is determined by the point of time at which the first job goes on machine A and the point of time on which the last job comes off machine B. At any moment of time machine B is either working or idle.

The total time for which machine B has to work is 1

n i i

B

 which is determined by the given job

times and has nothing to do with the sequence in which they are performed. Thus,

1 1

n n i i i i

T B t  

As evident the first term in the R.H.S of the above equation is constant, thus the main aim is to minimize the 2nd^ term, i.e. the total idle time on machine B. If Dn ( ) S represents the total idle

time on machine B for sequence S, one needs to find a sequence S* of jobs (1,2,…,n) such that

Dn ( S )  Dn ( S 0 ) for any S 0. Thus it may be stated that an optimal sequence can be obtained by

using the following rule:

Job j precedes job (j+1) if Min A ( (^) j , B (^) j  1 )  Min A ( (^) j (^)  1 , Bj )

For example, suppose there are two jobs with the following time requirements:

Job 1: Machine A :- 4 hours, Machine B:- 10 hours

Job 2: Machine A:- 8 hours, Machine B:- 7 hours

Thus A 1 =4, A 2 = 10, B 1 =8 and B 2 =7.

Here, minimum of A 1 ,B 2 is 4 and minimum of A 2 ,B 1 is 8. Since Min(A 1 ,B 2 ) < Min(A 2 ,B 1 ), it is clear that job 1 should precede job 2. If this condition was not satisfied, then job 2 would have preceded job 1.

Furthermore, if Min(Aj,Bj+1)=Min(Aj+1,Bj), then job j would be indifferent to job j+1; any of them could precede the other.

This rule can be extended to find the optimal sequence of a set of given jobs. Starting with any sequence S 0 , the optimal sequence S* can be obtained by successive interchange of consecutive jobs by applying the above mentioned rule.

The algorithm can be stated in a stepwise manner as follows:

  1. Select the smallest processing time, considering A 1 ,A 2 ,…,An and B 1 ,B 2 ,…,Bn together.

a. If the minimum is for Ar, i.e. for the rth^ job on machine A, do the rth^ job first. b. If the minimum is for Bs, i.e. for the sth^ job on machine B, do the sth^ job in the end. c. In case of a tie between Ar and Bs, perform the rth^ job first and the sth^ job last. d. If there is a tie between two or more timings in either of the series, select either of the jobs involved and perform them first or last, accordingly as the tie is in A 1 ,A 2 ,…,An and B 1 ,B 2 ,…,Bn.

  1. After the job(s) has/have been assigned, apply steps 1 and 2 to the reduced set of processing times obtained by deleting the machine times corresponding to the job(s) already assigned.

J 8 28 36 36 42

J 5 36 43 43 48

J 1^43 50 50

J 2 50 58 58 60

J 7 58 63 63 65

The total elapsed time T is 65 hours for this sequence. Other sequences can also be evaluated similarly.

Processing n jobs through 3 machines:

No general solution is available (except enumeration) for the sequencing problems of processing n jobs through 3 machines. However , we do have a method applicable under the condition that no passing of jobs is permissible (i.e. same order over each machine is maintained) and if either/both the following conditions is/are satisfied.

For three machines, A,B and C on which some jobs are to be performed in the order ABC.

Condition 1: The minimum of the times for different jobs on machine A is at least equal to the maximum of the times of different jobs on machine B.

Condition 2: The minimum of the times of various jobs on machine C is at least equal to the maximum of the times of the different jobs on machine B.

If Min Ai represents the least of the job times on machine A, Min Ci represents the least of the job times on machine C, and Max Bi indicates the largest of the job times on machine B, then either MinAiMaxBi or MinCiMaxBi or both are satisfied then the following method can be

applied.

The Method:

  1. Replace the given problem with an equivalent problem involving n jobs and 2 fictitious machines G and H, and define the corresponding processing times Gi and Hi as follows: ( 1, 2,..., ) ( 1, 2,..., )

i i i i i i

G A B for i n H B C for i n

  1. To the problem obtained in step 1, we apply the same method discussed for processing n jobs through 2 machines. The optimal sequence resulting from this shall also be optimal for the given problem.

Example: You are given the following data regarding the processing times of some jobs on three machines I, II and III. The order of processing is I-II-III. Determine the sequence that minimizes the total elapsed time (T) required to complete jobs. Also evaluate T and the idle time of II and III.

Job

Processing Time (Hours) Machine I II III A 3 4 6 B 8 3 7 C 7 2 5 D 4 5 11 E^9 1 F 8 4 6 G 7 3 12

Solution: According to the given information,

3 5 5

i i i

Min I Max II Min III

Since Min III (^) iMax IIi , the second of the conditions specified is met. Now, the problem can

be solved as follows:

Job Gi (  I (^) iIIi ) Hi (  IIiIIIi ) A 7 10 B 11 10 C 9 7 D 9 16 E 10 6 F 12 10 G 10 15

According to this, there are two optimal sequences. They are:

S 1 : A D G B F C E

S 2 : A D G F B C E

We now evaluate S 1 for the value of T as shown in the below table:

Job Machine A Machine B Machine C 1 7 2 6 2 8 2 5 3 6 1 4 4 6 3 4 5 7 3 2 6 8 2 1 7 5 4 5 The manager, who, in fairness, insists on performing jobs in the sequence in which they are received, is refusing to accept an eighth order, which requires 7,2 and 5 hours respectively on A,B and C machines, because, according to him, the eight jobs would require a total of 61 hours for processing, which exceeds the firms capacity. Advise him.

3. Find the sequence that minimizes the total elapsed time required (T) in completing the following jobs. Each job is processed in the order ABC. Also calculate T.

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