0% found this document useful (0 votes)
64 views9 pages

Comparison Between Mixed Integer Programing With Heuristic Method For Jon Shop Scheduling With Separable Sequence-Dependent Set Ups

The document compares mixed integer programming (MIP) and heuristic methods for solving job shop scheduling problems with sequence-dependent setups. MIP formulations provide optimal solutions but long computation times, while heuristics are faster but provide suboptimal solutions. The author develops an MIP model that considers setup times and enforces machine sequences and operation non-overlap constraints. A heuristic is also presented that uses earliest start times and job tail estimates to schedule operations. The paper aims to compare the solution quality and run times of MIP and the heuristic.

Uploaded by

fauzan akmal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views9 pages

Comparison Between Mixed Integer Programing With Heuristic Method For Jon Shop Scheduling With Separable Sequence-Dependent Set Ups

The document compares mixed integer programming (MIP) and heuristic methods for solving job shop scheduling problems with sequence-dependent setups. MIP formulations provide optimal solutions but long computation times, while heuristics are faster but provide suboptimal solutions. The author develops an MIP model that considers setup times and enforces machine sequences and operation non-overlap constraints. A heuristic is also presented that uses earliest start times and job tail estimates to schedule operations. The paper aims to compare the solution quality and run times of MIP and the heuristic.

Uploaded by

fauzan akmal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

COMPARISON BETWEEN MIXED INTEGER PROGRAMMING WITH HEURISTIC (I Gede Agus Widyadana)

COMPARISON BETWEEN MIXED INTEGER


PROGRAMMING WITH HEURISTIC METHOD
FOR JOB SHOP SCHEDULING WITH SEPARABLE
SEQUENCE-DEPENDENT SETUPS
I Gede Agus Widyadana
Lecturer at the Department of Industrial Engineering, Faculty of Industrial Technology
Petra Christian University

ABSTRACT
The decisions to choose appropriate tools for solving industrial problems are not just tools that achieve
optimal solution only but it should consider computation time too. One of industrial problems that still
difficult to achieve both criteria is scheduling problem. This paper discuss comparison between mixed integer
programming which result optimal solution and heuristic method to solve job shop scheduling problem with
separable sequence-dependent setup. The problems are generated and the result shows that the heuristic
methods still cannot satisfy optimal solution.
Keywords: job shop, sequence dependent setup, Mixed Integer Programming, heuristic.

1. INTRODUCTION
Today many researches are focused in scheduling problem because this problems are
occur practically and still difficult to find some methods that are satisfy computation time
and optimal solution.
The job shop scheduling problem can be described as the problem of assigning a set of
jobs with predetermined machine operation sequences to a set of machines so as to
minimize the time required to complete all jobs in the systems known as makespan. The
sequence dependent setups time means that setup of particular job in the particular
machine are depend on job that have been processed before.
The job shop scheduling problem with sequence dependent setups appears frequently
in the real life situations, but mainly because its complexity, it has received little attention
from researchers until recently.
Studies of scheduling problems involving sequence dependent setup have mostly
focused on single and parallel machine cases. For the job shop scheduling problem with
sequence dependent setups, Zhou and Egbelu presents a heuristic procedure for
minimizing the makespan and Ovacik and Uzsoy describe a heuristic, based on the
shifting bottleneck procedure, for minimizing the maximum lateness jobs.
In their paper, Choi and Korkmaz built a new heuristic method for job shop
scheduling with separable sequence dependent setups and then compare their heuristic
method with Zhou and Egbelu method and Earliest-Start-Time-First with shortestprocessing-time tie breaking rule (EST/SPT) by generated some problems.
The result of their comparison shows that their heuristic method is the most powerful
in general. But they do not compare their heuristic method with mixed integer
programming formulation that guarantees best solution.
Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra
http://puslit.petra.ac.id/journals/industrial

JURNAL TEKNIK INDUSTRI VOL. 3, NO. 1, JUNI 2001: 9 - 17

2. METHODS
There are two methods that are used to solve Job Shop Scheduling with Separable
Sequence-Dependent Setups, and then they are compared according good solution and
computation time.
2.1 Mixed Integer Programming Formulation
The job shop-scheduling problem we consider has the following usual assumptions.
There are m machines and n jobs in the system. Each job j has a fixed machine
(operation) sequence j = (1j , 2 j , , mj ), where i j represents the ith machine that the
job j is proceed on. Each machine can process one job at a time and each job can be
processed by only one machine at a time. Preemption of jobs is not allowed and a
separable, sequence-dependent setup is necessary for each job before it can be processed
on each machine.
The following notation is used throughout the paper. Unless stated otherwise, indices j
and k will denoted jobs and except for the case when used as subscript of , indices i and
h will be used for denoting machines. Also, in this paper, we will distinguish an operation
from a job. A job consists of series of operation and an operation (Oij ) is defined as the
processing of job j on a particular machine i.
n
= number of jobs in the system;
m
= number of machines in the system;
A
= set of ordered pairs of jobs, {(j,k)| j = 1,,n, k = 1,,n, j k};
j
= machine operation sequence of job j, j ,=( 1j ,, m j) j = 1,,n;
Oij = operation corresponding to job j on machine i, i=1..,m, j = 1..,n;
p ij
= processing time of operation Oij , i=1..,m, j = 1..,n;
S i jk = required setup time for job k on machine i, Oik, when job j on machine i, Oij, is
processed immediately before Oik, j = 1,,n, k = 1,,n, j k;
ti
= completion time of latest scheduled operation on machine i, i = 1,m
qj
= lower bound estimate of the remaining time that job j has to stay in the system,
j = 1,,n;
Vi
= set of jobs available for processing on machine i at or after ti, i = 1,,m;
V
= union of Vi;
Cmax = makespan of a schedule;
tij
= scheduled completion time of operation Oij ( CT(Oij )), i=1..,m, j = 1..,n;
With the above notations, Job Shop Scheduling with Separable Sequence-Dependent
Setups can be formulated as mixed integer programming problem as follows. Without
loss of generality, it is assumed that dummy job with zero processing time and zero
sequence-dependent setup time is added on each machine, i.e. S i0j = 0, for j = 1,n, and
p i0 = 0 for i = 1,,m. Let

xijk

10

1,

=
0,

if job k immediatel y follows job j on machine i,


or equivalent ly , O ik immediatel y follows O ij ,
O t h e r w i s e.

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

COMPARISON BETWEEN MIXED INTEGER PROGRAMMING WITH HEURISTIC (I Gede Agus Widyadana)

Then:
Minimize
Subject to

Cmax

(1)

t j j + p j j t j j

h = 1,,m-1, j = 1,,n;

(2)

t mj j + p mj j Cmax

j = 1,,n;

(3)

t ij + p ij + S ijk xijk t ik + (1 xijk )M

i = 1,,m, j = 0,1,,n,

(4)

i = 1,,m, j = 0,1,,n;

(5)

i = 1,,m, k = 0,1,,n;

(6)

2 | U i | (n + 1) 1; i = 1,..m,

(7)

xijk = 1

k j
n

x
j k

ijk

=1

ijk
(j,k) A
j Ui; kUi

| U i | 1

x ijk {0,1}, t ij 0.

(8)

Constraint (2) and (3), which also appear in a regular job shop scheduling problem
formulation, enforce the specified machine operation sequence of each job. Constraint (4)
prevents operations within each machine from overlapping. With this constraint, job k
immediately following job j on machine i can start only after both the processing of job j
and the setup for job k are completed. This constraint becomes redundant if there is no
adjacency between jobs j and k. Observe that job index k starts form 1 rather than 0. By
ignoring the case for k = 0, constraint (4) associated with the last scheduled job an each
machine and the dummy job is nullified.
Constraint (5) (8) define the circular permutations of operation on each machine i.
Constraint (5) picks exactly one job immediately following job j on machine i and
constraint (6) picks exactly one job immediately preceding job k on machine i. Constraint
(7), which is equivalent to the subtour elimination constraint in traveling salesman
problem, guarantees the continuity of the adjacency between jobs in each machine, i.e. it
prohibits the partial grouping of jobs in each machine. It should be mentioned here that
constrained (7) is redundant with respect to constrain (4) in the sense that its removal
from the formulation does not affect the solutions of above mixed integer program.
However, the inclusion of constraint (7) in the formulation provides stronger mixed
integer programming formulation for equivalent related to traveling salesman problem.
2.2 Heuristic Procedure
Three definitions for the description of the heuristic are:
1. EST(Oij ) is defined as earliest possible process start time of job j on machine i. i =
1,,n, j = 1,,m. Let us assume without loss of generality that the h th operation of job
j, O hj j is performed on machine i, i = hj . Then EST(Oij ) is computed as:

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

11

JURNAL TEKNIK INDUSTRI VOL. 3, NO. 1, JUNI 2001: 9 - 17

max{CT(O hj i j),t i + S ifj }


EST(Oij )
j
j
i
max{EST(O h 1 j) + p h 1 j,t i + S fj

if O jh 1 is scheduled
if O hj 1 is not scheduled

(9)

where f, finishing its operation Oif at ti , is the last scheduled job on machine i. It should
be note that EST(Oi,j) includes both setup time and idle time and that it is dynamically
updated as ti changes.
2. The tail of job j, denoted by q j , represents a lower bound estimate of the remaining
time that the job has to stay in the system. Ideally, this estimate would include lower
bounds of the forced idle times and setup times. In this algorithm, q j is estimated by a
simple difference between the lower bound estimate of the completion time of job j,

EST (

j
m

j) + p

j
m

j , and a projected completion time of operation Oij .

Thus if job j is available for processing on machine i, then its tail is computed as

q j = EST (mj j ) + pmj j ( EST ( Oij ) + pij )


Initially, the tail of job j is computed as q j =

(10)

m
i =1

p ij .

3. Make use of in this heuristic is the minimum local makespan of a pair of operations,
which is defined as the minimum makespan obtained by solving a two-job/m machine
problem with release time, where the two jobs are those associated with the pair of
operations under consideration. Instead of finding the minimum local makespan of a
pair of operations, they use the lower bound on it. For two operations (jobs) on the
same machine, the lower bound on the minimum local makespan is computed as, for j,
k Vi and j k ,

EST (Oij ) + pij + q j ,

LB(Oij , Oik ) max


EST (Oik ) + pik + q k ,

EST (O ) + p + q + S i + p + q
ij
ij
j
jk
ik
k,

(11)

then the lower bound on the completion time of job j at the state of system (t1,,tm ),
jVi , i = 1,,m, can be obtained as

LB(Oij ) = min {LB( Oij , Oik )}


kVi

(12)

The lower bound in equation (3) represents an optimistic completion time of job j if
operation Oij is followed by operation Oik. The lower bound in equation (4) is the best
optimistic completion time of job j at a given state of the system (t1,,tm ).
In each iteration of algorithm below, they choose an operation from two candidate
operations: one with the earliest start time and the other with minimum LB(Oij ) at a given
state of the system, (t1 ,,tm ).
Algorithm SDJSS
i
Inputs: m, n, j , p ij , S jk
Outputs: CT(Oij ) (=tij )
STEP 1. t1 = 0, EST(Oij ) = 0, and CT(Oij ) = 0 for i = 1,,m, j = 1,n.
STEP 2. For all Oij not yet scheduled, compute EST(Oij ) using equation (9).
12

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

COMPARISON BETWEEN MIXED INTEGER PROGRAMMING WITH HEURISTIC (I Gede Agus Widyadana)

For all jVi , I = 1,,m, compute q I using equation (10).


STEP 3. Let Q1 = {(i,j)| EST(Oij ) EST(O hk), j Vi , k Vh , i, h = 1,,m},
R1 = {(i,j) Q1 | p ij p hk, (h,k) Q1 }.
Choose an operation Oi1 j1 such that (i1 ,j1 ) R1 .
STEP 4. Compute LB(Oij ) using equation (12), for j Vi and i = 1,,m.
Let P = {(i,j) | LB(Oij ) LB(Ohk), j Vi , k Vh , i, h = 1,,m},
Q2 = {(i,j) P | EST(O ij ) EST(Ohk), (h,k) P},
R2 = {(i,j) Q2 | p ij p hk, (h,k) Q2 }.
Choose an operation Oi2 j2 such that (i2 ,j2 ) R2 .
STEP 5. If i1 = i2 , then i * i 2 , j * j 2 ; Else (if i1 i2 ), i * i1 , j * j1

t i * EST (Oi* j * ) + pi * j * ;

STEP 6.

CT (Oi* j * ) t i * ;

Vi* Vi* { j*},V V { j *}, where i * is the index of machine on


i*

i*

which the job j* is processed immediately after machine i*.


If unscheduled operations remain, go to step 2.
3. COMPARISON
This paper only compare two problem due to time restrictions, both of the problems
have 3 machines and 5 jobs with same operation.
3.1 First Problem
The first problem be generated with randomize processing time and setup times have a
lower limit of 1 and upper limit of 5. Detail of the problem is:
Table 1. Processing Time
Job (j)
1
Machine seq. ( j) 3 2 1
5 5 4
Proc. Time (pij)

2
1 3 2
5 1 2

3
3 2 1
4 2 4

4
1 2 3
4 2 5

5
3 1 2
4 4 5

Setup Times (Sijk )


Table 2. Machine 1
j
0
1
2
3
4
5

0
0
1
3
3
3
3

1
3
0
4
4
1
1

k
2
1
2
0
1
2
3

3
1
4
2
0
3
2

4
3
3
4
1
0
2

5
1
3
4
3
4
0

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

13

JURNAL TEKNIK INDUSTRI VOL. 3, NO. 1, JUNI 2001: 9 - 17

Table 3. Machine 2
0
0
3
3
4
4
3

j
0
1
2
3
4
5

1
4
0
2
3
2
2

k
2
2
1
0
4
3
4

3
4
3
3
0
1
1

4
4
4
3
4
0
1

5
1
4
1
4
3
0

k
2
3
4
0
3
3
1

3
1
4
1
0
2
4

4
2
1
4
2
0
3

5
2
4
2
4
2
0

Table 4. Machine 3
0
0
3
1
2
1
4

j
0
1
2
3
4
5

1
1
0
3
3
2
2

The optimal solution is calculated using softare LINGO and run in computer with
Pentium II/400 specification. The result is:
Makespan
: 33
No. of iterations : 575515
Elapsed time
: 13 minutes, 39 seconds
Table 5. Schedule
Machine
1
2
3
Machine
1
1
1
1
1
2
2
2

14

Job Sequences
4 2 3 5 1
1 3 4 2 5
1 3 2 5 4

Job Start setup Finish proc


time
time
1
26
33
2
7
14
3
14
20
4
0
7
5
21
28
1
2
3

2
22
11

11
27
16

Machine Job Start setup Finish proc


time
time
2
4
16
22
2
5
27
33
3
3
3
3
3

1
2
3
4
5

0
14
6
24
18

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

6
18
14
32
24

COMPARISON BETWEEN MIXED INTEGER PROGRAMMING WITH HEURISTIC (I Gede Agus Widyadana)

The makespan of heuristic methods are 34 with sequences:


Table 6. Job Sequences
Machine
Job Sequences
1
2 4 1 5 3
2
1 4 3 2 5
3
1 3 2 5 4
The first problem show that the result from mixed integer programming is better one
unit time than heuristic method.
3.2 Second Problem
In the second problem, setup time is greater than processing time. This situation is
common in real condition for this problem; so the second problem is generated randomly
using spreadsheet with lower limit of 1 and an upper limit of 5 for processing time and
lower limit of 11 and upper limit of 31 for setup time.
Table 7. The sequence dan processing time
Job (j)
Machine seq. (
j)
Proc. Time (pij)

1
3 2 1
4 4 2

2
1 3 2
2 3 3

k
2
16
13
0
27
29
24

3
26
25
24
0
15
26

4
19
28
27
24
0
14

5
24
20
22
30
30
0

k
2
13
17
0
31
22
30

3
16
15
23
0
20
13

4
22
18
29
25
0
16

5
19
19
29
16
17
0

3
3 2 1
2 5 1

4
1 2 3
2 3 4

5
3 1 2
2 3 2

Setup Times (Sijk )


Table 8. Machine 1
j
0
1
2
3
4
5

0
0
18
20
25
21
29

1
26
0
30
24
22
14

Table 9. Machine 2
j
0
1
2
3
4
5

0
0
20
20
25
24
17

1
27
0
28
25
19
24

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

15

JURNAL TEKNIK INDUSTRI VOL. 3, NO. 1, JUNI 2001: 9 - 17

Table 10. Machine 3


j
0
1
2
3
4
5

0
0
11
24
12
19
27

1
14
0
21
18
12
21

k
2
18
30
0
23
25
15

3
22
23
12
0
17
26

4
23
19
20
11
0
19

5
30
12
27
22
17
0

The optimal solution from mixed integer programming model is:


Makespan
: 115
No. of iterations : 896070
Elapsed time
: 19 minutes, 54 seconds
Table 11. Schedule
Machine
Job Sequences
1
2 5 4 3 1
2
3 5 4 1 2
3
3 5 2 1 4
Machine Job Start setup Finish proc Machine
time
time
1
1
83
109
2
1
2
0
18
2
1
3
67
83
1
4
51
76
3
1
5
26
51
3
3
2
1
67
95
3
2
2
95
115
3
2
3
8
29

Job Start setup Finish proc


time
time
4
53
71
5
35
53
1
2
3
4
5

66
48
0
91
24

91
66
24
114
48

The makespan of heuristic methods are 125 with sequences:


Table 12. Job Sequences
Machine
Job Sequences
1
4 1 2 3 5
2
1 3 2 4 5
3
1 3 2 4 5
It can be seen from the result that makespan from heuristic method are 125, so mixed
integer programming in this case are better 10 unit times or 8% than heuristic method.

16

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

COMPARISON BETWEEN MIXED INTEGER PROGRAMMING WITH HEURISTIC (I Gede Agus Widyadana)

4. CONCLUSION
Calculation result from two case show that mixed integer programming give better
result than heuristic method which be build by Choi & Korkmaz although their method
are better than other heuristic method that showed in their paper.
It can be seen that with same problem size and operation, but with wider deviation and
greater setup time, performance of heuristic method become worst compare with mixed
integer-programming method.
Although mixed integer programming method will give optimal result for job shop
scheduling with separable sequence-dependent setups, but computation time increase fast
when problem size are bigger, and there is possibility that software cant solve the
problem because of limitation capacity.
The result of two cases is not enough to make satisfy conclusion, so it is better to
make more cases by generate it with variation in problem size, operation route, set up and
operation time.
Because performances of heuristic methods in this problem have big possibility far
from optimal solution, so there is area for research to find another heuristic method,
which can give better performance. Research in meta-heuristic method like genetic
algorithm, simulated annealing and tabu search maybe can give better result.

REFERENCES
Murty Katta G., 1995. Operations Research Deterministic Optimization Models, Prentice
Hall: Upper Saddle River, New Jersey.
Pinendo Michael, 1995. Scheduling Theory, Adgorithms and System, Prentice hall:
Eaglewood Cliffs New Jersey.
LINGO, 1999. Users guide, Lindo Systems Inc.

Jurusan Teknik Industri, Fakultas Teknologi Industri, Universitas Kristen Petra


http://puslit.petra.ac.id/journals/industrial

17

You might also like