## ¿Está seguro?

This action might not be possible to undo. Are you sure you want to continue?

**© 2002 Springer-Verlag London Limited
**

Estimation of Optimum Genetic Control Parameters for Job Shop

Scheduling

S. G. Ponnambalam

1

, N. Jawahar

2

and B. Senthil Kumar

3

1

Department of Production Engineering, Regional Engineering College, Tiruchirapalli, India;

2

Department of Mechanical Engineering,

Thiagarajar College of Engineering, Madurai, India; and

3

Bluemount Ceramics Limited, Coimbatore, India

Genetic algorithms (GA) have demonstrated considerable

success in providing good solutions to many non-polynomial

hard optimisation problems. GAs are applied for identifying

efﬁcient solutions for a set of numerical optimisation prob-

lems. Job shop scheduling (JSS) has earned a reputation for

being difﬁcult to solve. Many workers have used various

values of genetic parameters. This paper attempts to tune

the control parameters for efﬁciency, that are used to acceler-

ate the genetic algorithm (applied to JSS) to converge on

an optimal solution. The genetic parameters, namely, number

of generations, probability of crossover, probability of

mutation, are optimised relating to the size of problems. The

results are validated in job shop scheduling problems. The

results indicate that by using an appropriate range of para-

meters, the genetic algorithm is able to ﬁnd an optimal

solution faster.

Keywords: Control parameters; Genetic algorithm; Job

shop scheduling

1. Introduction

Many optimisation problems in the industrial engineering

world and, in particular, in manufacturing systems are very

complex in nature and difﬁcult to solve by conventional

optimisation techniques. The use of formal approaches in

industry is frequently limited owing to the complexity of the

models or algorithms, or the lack of data used in the models.

Since the 1960s, there has been an increasing interest in

imitating living beings to solve difﬁcult optimisation problems.

Simulating the natural evolutionary process of human beings

results in stochastic optimisation techniques called evolution-

ary algorithms, which can often outperform conventional

optimisation methods when applied to difﬁcult real-world

Correspondence and offprint requests to: Dr S. G. Ponnambalam,

Department of Production Engineering, Regional Engineering College,

Tiruchirapalli, 620 015, India. E-mail: ponsȰrect.ernet.in

problems. There are currently three main avenues of this

research: genetic algorithms (GAs), evolutionary programming

(EP), and evolution strategies (ESs). Genetic algorithms are

perhaps the most widely known types of evolutionary algor-

ithm today [1].

1.1 Job Shop Scheduling

Scheduling allocates resources over time in order to perform

a number of tasks. Typically, resources are limited and there-

fore tasks are assigned to resources in a temporal order. The

jobs are input to the scheduling engine of a production planning

system. It determines the sequences and periods for processing

jobs on its dedicated machines and determines the reduction

of the work-in-process inventory produced by increasing the

throughput of jobs. Jobs often follow technological constraints

that deﬁne a certain type of shop ﬂoor. Typically, the objectives

are the reduction of makespan of an entire production program,

the minimisation of mean tardiness, the maximisation of

machine load or some weighted average of many similar

criteria. Within the great variety of production scheduling

problems, the general job shop problem (JSP) is probably the

one most studied during the last decade. It has earned a

reputation for being difﬁcult to solve. It illustrates at least

some of the demands required by a wide range of real-world

problems [2].

1.2 Representation of JSP

Consider a shop ﬂoor where jobs are processed by machines.

Each job consists of a certain number of operations. Each

operation has to be processed in a dedicated machine, and, for

each operation, a processing time is deﬁned. The order of

operations for each job is prescribed by production planning.

The technological constraints in the production sequence are

therefore statutory problems. The basic JSP is a purely deter-

ministic and static optimisation problem, since the processing

Estimation of Optimum Genetic Control Parameters 225

time and constraints are ﬁxed, and no stochastic events occur.

The solution space (sample space) consists of (n!)

m

feasible

schedules [3].

1.3 Heuristic and Search Techniques

Various types of scheduling problem are solved in different

job shop environments. Varieties of algorithms are employed

to obtain optimal or near optimal schedules. Traditionally, the

automatic generation of scheduling plans for job shops has

been addressed using optimisation and approximation

approaches [4,5]. Optimisation algorithms include enumerative

procedures and mathematical programming techniques (linear

programming, goal programming, transportation, network and

dynamic programming).

The approximation techniques used are branch–bound, pri-

ority rule based, heuristics, local search algorithms (ITS, SA,

TS), and evolutionary programs (GA). The salient points [2,5–

7] concerning scheduling algorithms are:

Optimisation algorithms provide satisfactory or optimal results

if the problems to be solved are not large. Most scheduling

problems are NP-hard, that is, the computational requirement

grows exponentially as a function of the problem size, and

this degrades the performance of conventional OR techniques

and hence optimisation approaches are ruled out in practice.

The quality of solutions using branch and bound algorithms

depends on the bounds; a good bound requires a substantial

amount of computation.

Various factors such as conﬁguration of the system shop load

levels, objective criteria, and the like, govern the performance

of priority dispatching rules (pdrs). The performance of pdrs

has been analysed using simulation experiments, which are

evaluative rather than generative. Hence, generalisation of the

use of a particular rule is difﬁcult to establish. Priority based

rules are questionable for stability and environment dependence.

The performance of heuristics is satisfactory as long as the

operating characteristics and objectives of the system remain

the same. Heuristics yield good solutions, and are robust to

the systems.

Local search-based heuristics are known to produce excellent

results in short run times, but they are susceptible to being

stuck in local entrapments (local minima).

Evolutionary programs, which belong to random search pro-

cesses, are regarded as better than simulation in the sense that

they guarantee near optimal solutions in actual cases. By

changing the evaluation parameters of the genetic search pro-

cess, the solutions can also be obtained for other objectives

and can be more ﬂexible. These are useful considerations for

any difﬁcult optimisation problems.

The above discussion indicates that there are many avenues to

explore in the area of heuristic search algorithms for job shop

scheduling. There is much literature available in this area; but,

very few authors have attempted to evaluate the optimal control

parameters for GA. In this paper an attempt has been made

to establish optimal control parameters for efﬁciency, which

are used to accelerate the genetic algorithm (applied to JSS)

in converging on optimal solutions.

2. Genetic Algorithm for Job Shop

Scheduling

As a ﬁrst step towards the development of an integrated

schedule for the job shop model, the operation times are

considered. The problem under consideration is the generation

of an optimal ﬁnite schedule for n jobs on m machines of the

system with makespan criteria.

2.1 Schedule Generation Heuristic

Nascimento and Mario [8] showed, from the point of view of

CPU time and solution quality, that the Gifﬂer and Thompson

(GT) [9] schedule generation algorithm, originally designed for

the traditional job shop model, can provide good results even

for the ﬂexible manufacturing system environment. They struc-

tured two branch–bound algorithms and compared their behav-

iour on the job shop model.

The GT algorithm is a numerical version of the procedure

described for drawing a Gantt chart to arrive at an active

feasible schedule. Whenever two or more jobs contend for the

same facility at one time (conﬂict), the choice is made arbi-

trarily, and one active feasible schedule is obtained. Enumerat-

ing all possible choices, which occur at different stages, one

by one, the entire set of active feasible schedules can be

obtained including the optimal one. The tie-breaking rules

employed in this work are arbitrary. The complete set of active

feasible solutions is obtained by pruning the tree in all possible

ways. The optimal solution is obtained by evaluating the

feasible schedules. The weakness of this method is that enumer-

ating all possible combinations is a time-consuming process.

The GT algorithm is an effective enumerative procedure for

providing all feasible schedules in a job shop environment.

However, enumerating all feasible combinations is complicated

and is not practicable as the size of the problem (number of

jobs and/or processors) increases. In this context, instead of

resolving the conﬂicts one by one by all possible means, the

heuristic that uses a GT algorithm in conjunction with pdrs is

used in this paper for scheduling the job shop problem with

the minimum makespan criterion. The pdrs are used to resolve

conﬂicts among the contending jobs in the GT procedure. The

optimal combinations of pdrs, one for each machine, to resolve

the conﬂicts among the contending jobs in the GT procedure

are evolved through a genetic search process.

2.2 Genetic Algorithm for Schedule Generation

To solve a problem, which belongs to iterative evolution

heuristic search, with a GA we have to choose a representation

of the solution space and the objective function. The schedule

generated using the machinewise pdr set in the GT procedure

represents the solution and the objective function is the makes-

pan time. A method is employed which uses an optimal

machine set (independent pdrs, one for each machine). A

genetic search process evolves the best machinewise pdr set

for minimising makespan time. In the proposed GA, each gene

(g) represents a pdr code (0,1,2,3), one for each machine.

Floating-point encoding has been used to identify the pdr code.

226 S. G. Ponnambalam et al.

Table 1. Operators used in the experiment.

Operator Values used

Selection operator Roulette wheel operator

Crossover operator EX operator

Mutation operator Uniform mutation

Table 2. Experiments conducted.

Description of experiments

Trial pFcross pFmut noFit

number

1 0.1 0.01 50

2 0.1 0.15 50

3 0.1 0.3 50

4 0.3 0.01 50

5 0.3 0.15 50

6 0.3 0.3 50

7 0.6 0.01 50

8 0.6 0.15 50

9 0.6 0.3 50

10 0.1 0.01 100

11 0.1 0.15 100

12 0.1 0.3 100

13 0.3 0.01 100

14 0.3 0.15 100

15 0.3 0.3 100

16 0.6 0.01 100

17 0.6 0.15 100

18 0.6 0.3 100

19 0.1 0.01 250

20 0.1 0.15 250

21 0.1 0.3 250

22 0.3 0.01 250

23 0.3 0.15 250

24 0.3 0.3 250

25 0.6 0.01 250

26 0.6 0.15 250

27 0.6 0.3 250

The chromosome (c), the length of which is equal to the

number of machines in the system, represents a machinewise

pdr set and is a representative of a feasible solution. The

position of the gene in a chromosome indicates the machine

number, and the pdr code and the position identify the pdr for

conﬂict resolution by that machine.

Table 3. Example problem.

j m T

jm

m T

jm

m T

jm

m T

jm

m T

jm

D

i

1 2 21 1 53 5 95 4 55 3 34 1032

2 1 21 4 52 5 16 3 26 2 71 744

3 4 39 5 98 2 42 3 31 1 12 888

4 2 77 1 55 5 79 3 66 4 77 1416

5 1 83 4 34 3 64 2 19 5 37 948

6 2 54 3 43 5 79 1 92 4 62 1320

7 4 69 5 77 2 87 3 87 1 93 1652

8 3 38 1 60 2 41 4 24 5 83 984

9 4 17 2 49 5 25 1 44 3 98 932

10 5 77 4 79 3 43 2 75 1 96 1480

The genetic search process starts with a randomly generated

set of chromosomes called the initial population. The size of

the population (popFsize) depends on the solution space. The

possible number of combinations of the machinewise pdr sets

is 4

m

where m is the number of machines in the system.

Hence, the population size is related to the number of machines

in the system and is assumed to be equal to the number of

machines in the system.

The machinewise pdr set of chromosomes is applied in the

GT procedure (the method to generate all schedules) to produce

a feasible schedule. This produces a timetable with the start

and end of processing periods, and the makespan time. The

ﬁtness parameter ﬁt(c) is the makespan time. This is found

using the schedule generated from the machinewise pdr set

and is represented by the chromosome c.

fit (c) ϭ makespan time corresponding to chromosome c

The process of selecting the chromosomes to represent the

next generation has the following steps.

1. Conversion of the ﬁtness parameter values to a new ﬁtness

value (newFﬁt(c)), a parameter suitable for the minimisation

objective.

newFfit(c) ϭ 1 Ϫ

fit(c)

F

where F is the sum of the ﬁtness parameters of all chromo-

somes

F ϭ

popFsize

cϭ1

fit(c)

2. Conversion of the new ﬁtness parameter to an expected

frequency of selection, p(c).

p(c) ϭ

newFfit(c)

popFsize

cϭ1

newFfit(c)

3. Calculation of the cumulative probability of survival, cp

(c).

cp(c) ϭ

popFsize

cϭ1

p(c)

4. A random selection procedure, which is explained below,

Estimation of Optimum Genetic Control Parameters 227

Table 4. Results obtained for the example problem. popFsize ϭ 10, number of genes per chromosome ϭ bit length ϭ number of machines ϭ 5.

Number Probability of crossover Probability of crossover Probability of crossover

of 0.1 0.3 0.6

iterations Probability of mutation Probability of mutation Probability of mutation

0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

50 920 963 873 969 873 873 873 878 873

100 977 873 873 878 873 873 873 873 873

250 900 873 873 1024 873 873 878 873 873

Table 5. Bench mark problems considered.

Problem Problem Number of Number of

number name components machines

1 ft06 6 6

2 la01 10 5

3 la05 10 5

4 abz6 10 10

5 ft10 10 10

6 la16 10 10

7 orb03 10 10

8 la08 15 5

9 la23 15 10

10 la37 15 15

11 ft20 20 5

12 la26 20 10

13 swv01 20 10

14 abz27 20 15

generates the next population of the same size. A random

number r between 0 and 1 is obtained and a chromosome

c is selected which satisﬁes the condition:

cp(c Ϫ 1) р r р cp(c)

This selection process is repeated a number of times equal to

the population size. The method used here is more reliable in

Table 6. Results of problem 1 (6 ϫ 6 problem ft06).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 83 67 70 74 72 69 83 70 67

noFit ϭ 100 73 70 67 78 67 67 79 70 70

noFit ϭ 250 72 67 67 69 69 67 80 69 67

Fig. 1. Results of problem 1 (6 ϫ 6 problem ft06).

that it guarantees that the most ﬁt individuals will be selected,

and that the actual number of times each is selected will

be its expected frequency. This procedure enables the ﬁttest

chromosome to have multiple copies and the worst to die off.

The next step is to carry the crossover operation, which is

a reproduction method. This involves two steps.

1. Selection of chromosome for crossover.

2. Crossover operator

The probability of crossover (pFcross) is the one vital para-

meter that needs attention now. The value for pFcross will be

varied from 0.1 to 0.6 in steps of 0.2. If the value is assumed

to be 0.3, then at least 30% of the chromosomes selected for

the new population undergo crossover and produce offspring.

The procedure for selection is as follows. Random numbers

between 0 and 1 are generated for all chromosomes, and those

chromosomes that obtain a random number less than the

pFcross value are selected for crossover. If the number of

selected chromosomes is odd, then the above procedure is

repeated until one or more chromosomes is selected and the

number of selected chromosomes becomes even. The literature

provides many crossover operators [10,11]. Notable among

them are: partially mapped crossover (PMX), ordinal mapped

crossover (OMX), and edge crossover (EX). They use a single-

point or a two-point crossover.

This program uses the EX crossover method because of its

simplicity in operation and because the length of the chromo-

228 S. G. Ponnambalam et al.

Table 7. Results of problem 2 (10 ϫ 5 problem la01).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 920 963 873 969 873 873 873 878 878

noFit ϭ 100 977 873 873 878 873 873 873 873 873

noFit ϭ 250 900 873 873 1024 873 873 878 873 873

Fig. 2. Results of problem 2 (10 ϫ 5 problem la01).

Table 8. Results of problem 3 (10 ϫ 5 problem la05).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 545 463 463 545 463 463 463 463 463

noFit ϭ 100 463 463 463 601 463 463 463 463 463

noFit ϭ 250 570 463 463 463 463 463 463 463 463

Fig. 3. Results of problem 3 (10 ϫ 5 problem la05).

Table 9. Results of problem 4 (10 ϫ 10 problem abz6).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1349 1268 1325 1374 1240 1202 1410 1275 1254

noFit ϭ 100 1350 1263 1213 1341 1280 1271 1315 1282 1215

noFit ϭ 250 1316 1202 1250 1360 1272 1250 1356 1235 1238

Fig. 4. Results of problem 4 (10 ϫ 10 problem abz6).

Estimation of Optimum Genetic Control Parameters 229

Table 10. Results of problem 5 (10 ϫ 10 problem ft10).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1306 1269 1255 1329 1358 1279 1300 1336 1306

noFit ϭ 100 1434 1246 1266 1399 1342 1291 1326 1304 1230

noFit ϭ 250 1268 1230 1306 1358 1290 1240 1385 1240 1240

Fig. 5. Results of problem 5 (10 ϫ 10 problem ft10).

Table 11. Results of problem 6 (10 ϫ 10 problem la16).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1168 1230 1212 1291 1184 1162 1222 1211 1236

noFit ϭ 100 1288 1193 1157 1269 1201 1152 1231 1152 1173

noFit ϭ 250 1229 1180 1152 1250 1195 1168 1178 1180 1182

Fig. 6. Results of problem 6 (10 ϫ 10 problem la16).

Table 12. Results of problem 2 (10 ϫ 10 problem orb03).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1482 1398 1432 1388 1390 1408 1460 1376 1380

noFit ϭ 100 1473 1362 1375 1500 1385 1392 1408 1375 1375

noFit ϭ 250 1383 1373 1363 1534 1363 1309 1424 1352 1337

some is small. This splits the parent chromosome into two

parts with a random number generated with the range 1 %

(mϪ1) and interchanges the genes from that crossover position.

The purpose of mutation is to introduce new genetic material,

or to recreate good genes that were lost by chance through a

poor selection of mates. To do this effectively, the effect of

mutation must be a major one. At the same time, the valuable

gene pool must be protected from wanton destruction. Thus,

the probability of mutation must be small and is varied between

0.01 to 0.3 in steps of 0.15 [10].

The repetition of the whole process (iteration) of evaluation,

selection, reproduction, and mutation depends on the size of

the problem and is varied in the range 50–250. The best

chromosome in each iteration is stored, and the best among

those stored is the optimal one. The above procedure is fol-

lowed on similar lines by most workers in this ﬁeld [12–16].

230 S. G. Ponnambalam et al.

Fig. 7. Results of problem 7 (10 ϫ 10 problem orb03).

Table 13. Results of problem 5 (15 ϫ 15 problem la08).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1288 1339 1288 1527 1288 1290 1463 1306 1290

noFit ϭ 100 1397 1288 1288 1390 1290 1288 1397 1290 1288

noFit ϭ 250 1470 1288 1288 1290 1288 1288 1288 1288 1288

Fig. 8. Results of problem 8 (15 ϫ 5 problem la08).

Table 14. Results of problem 9 (15 ϫ 10 problem la23).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1852 1631 1711 1809 1662 1636 1780 1663 1577

noFit ϭ 100 1713 1631 1615 1788 1677 1573 1644 1652 1614

noFit ϭ 250 1633 1622 1586 1627 1631 1595 1729 1577 1623

Fig. 9. Results of problem 9 (15 ϫ 10 problem la23).

3. The Schema of the Genetic Search Process

The genetic search process used in this paper is outlined below.

# deﬁne pFcross, pFmut, noFit;

for ( i ϭ 1 to n) /* Input : Component-Operation Matrix (job

data)*/

for ( k ϭ 1 to m)

{

input : j & T ;

(if Number of operations to any job i is m’, which is less

than m then assign j ϭ 0 & Tϭ0 for the remaining (mϭm’)

operations)

}

set : itFno ϭ 0;

set : length of the string (chromosome) chrFlen ϭ m;

set : no of chromosomes in the population popFsize ϭ m;

/* initialisation of population (pdr to be followed by each m/c)

Estimation of Optimum Genetic Control Parameters 231

Table 15. Results of problem 10 (15 ϫ 15 problem la37).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1996 1959 1937 2143 2000 1872 2129 1911 1980

noFit ϭ 100 2086 1867 1961 2070 1871 1965 1955 1988 1948

noFit ϭ 250 1990 1927 1913 1922 1895 1897 1989 1797 1897

Fig. 10. Results of problem 10 (15 ϫ 15 problem la37).

Table 16. Results of problem 11 (20 ϫ 5 problem ft20).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1726 1711 1633 1661 1726 1661 1711 1633 1633

noFit ϭ 100 1726 1633 1661 1768 1661 1633 1778 1607 1633

noFit ϭ 250 1761 1633 1633 1715 1661 1633 1765 1633 1633

Fig. 11. Results of problem 11 (20 ϫ 5 problem ft20).

Table 17. Results of problem 12 (20 ϫ 10 problem la26).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 2194 2036 1969 2144 2048 2006 2250 1906 2010

noFit ϭ 100 2136 1384 1974 2169 2035 1989 2043 2025 1956

noFit ϭ 250 2109 2027 1949 2008 1944 2001 2066 1956 2029

for (c ϭ 1 to popFsize)

{

for (g ϭ 1 to chrFlen)

generate : random pick of pdr code ( 0,1,2,3)

BEGIN:

/* creation of new population */

itFno ϭ itFno ϩ1;

/* evaluation of individuals & probability of survival of chro-

mosome c */

for (c ϭ 1 to popFsize)

{

ﬁnd : ﬁt (c) ; newFﬁt (c) ; p(c);

}

store : best schedule and the best chromosome ( the pdr)

calculate : cumulative probability cp(c) for each chromosome c;

/* selection of chromosome for next generation */

for (c ϭ 1 to popFsize)

{

232 S. G. Ponnambalam et al.

Fig. 12. Results of problem 12 (20 ϫ 10 problem la26).

Table 18. Results of problem 13 (205 ϫ 10 problem swv01).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 2362 2132 2148 2257 2149 2148 2283 2183 2169

noFit ϭ 100 2214 2156 2155 2271 2162 2147 2161 2128 2161

noFit ϭ 250 2159 2068 2113 2224 2134 2148 2164 2061 2090

Fig. 13. Results of problem 13 (20 ϫ 10 problem swv01).

Table 19. Results of problem 14 (20 ϫ 15 problem abz27).

Makespan time values

pFcross ϭ 0.1 pFcross ϭ 0.3 pFcross ϭ 0.6

pFmut 0.01 0.15 0.3 0.01 0.15 0.3 0.01 0.15 0.3

noFit ϭ 50 1182 1033 1063 1119 1051 1042 1117 1056 1041

noFit ϭ 100 1062 1028 1017 1024 1018 1026 1018 1058 1020

noFit ϭ 250 1057 1056 1003 1072 1004 1051 1064 1045 978

Fig. 14. Results of problem 14 (20 ϫ 15 problem abz27).

get random number r;

ﬁnd chromosome c satisfying the condition cp(cϪ1) Ͻϭ r

Ͻϭ cp(c);

select c for next population and set as c’;

}

/* selection of strings for crossover module */

count ϭ 0;

for c’ ϭ 1 to popFsize;

{

get random number r;

if r Ͻϭ pFcross;

{

select c’ and label as c’’;

count ϭ count ϩ1;

}

}

if count is odd add a null chromosome O’ (all pdr ϭ 0)

/* cross over operation */

Estimation of Optimum Genetic Control Parameters 233

Table 20. Problemwise better solutions.

Problem Number Number of pFcross pFmut noFit

number of jobs Machine

1 6 6 0.1 0.15 50

2 10 5 0.1 0.15 50

3 10 5 0.1 0.01 100

4 15 5 0.1 0.01 50

5 10 10 0.1 0.15 250

6 10 10 0.1 0.15 250

7 10 10 0.1 0.3 250

8 10 10 0.3 0.3 250

9 15 10 0.3 0.3 100

10 20 5 0.6 0.15 100

11 20 10 0.1 0.15 100

12 20 10 0.6 0.15 250

13 15 15 0.6 0.15 250

14 20 15 0.6 0.3 250

while ( all parents exhausted ) do

{

get : one parent c’’ and c’’ ϩ1;

spin : a cut point randomly between 0 and chrFlen;

do : cross over;

set : child as c’’ and c’’ ϩ1;

Overlap : crossed c’’’ with their respective uncrossed c’ ;

}

for ( c’ ϭ 1 to popFsize)

{

for ( j ϭ 1 to chrFlen)

{

get : random number r;

if r Ͻϭ pFmut;

mutate the gene g;

}

}

if ( itFno Ͼϭ noFit), then goto BEGIN;

select : best among the best schedule from the iterated sol-

utions;

END :

4. Experiments Conducted

The operators used in the experiment are given in Table 1.

From our previous study, we found that these operators perfor-

med well on a wide variety of data.

The experiments conducted on 14 benchmark problems

of different sizes collected form the OR-Library (http://

mscmga.ms.ic.ac.uk./) are given in Table 2.

5. Data Requirement

The data requirement for a 10 job, 5 machine problem is

explained in Table 3. For a detailed description of the procedure

please refer to Jawahar et al. [17].

The makespan values obtained for the example problem for

the various parameter values are given in Table 4. It can be

Table 21. The suggested parameter values.

Number Number of pFcross pFmut noFit

of jobs machines

6 6 0.1 0.15 50

10 5 0.1 0.15 100

15 5 0.1 0.15 100

10 10 0.1 0.15 250

15 10 0.3 0.3 100

20 5 0.6 0.15 100

20 10 0.6 0.15 250

15 15 0.6 0.15 250

20 15 0.6 0.3 250

seen from the table that the optimal parameters for the example

problem are:

Number of iterations : 50

Probability of mutation : 0.1

Probability of crossover : 0.6

6. Results and Discussion

The bench-mark problems considered for evaluation in this

paper are given in Table 5.

The results obtained for the 14 problems are presented in

the form of Tables 6 to 19 and Figs 1–14. The better solutions

are given in Table 20.

Based on the results presented in the Table 20, it is possible

to consolidate the results and the following parameter values

are suggested for the various sizes of the problems. The

suggested parameter values are given in Table 21.

7. Conclusion

In this paper, an attempt is made to optimise the genetic

algorithm control parameters for job shop scheduling problems.

After carrying out various experiments with various sets of

parameter values, the results obtained are presented. As the

number of jobs and number of machines increases, the value

of the control parameters must also be increased. If the problem

is smaller, then increasing the number of iterations, the prob-

ability of crossover, and the probability of mutation leads to

chaos in the solution. It is decided that, the control parameters

arrived at above will produce an efﬁcient solution and will

lead to the optimum solution faster and avoid entrapments in

local minima.

References

1. M. Gen and R. Cheng, Genetic Algorithm and Engineering Design,

John Wiley, New York, 1996.

2. D. C. Mattfeld, Evolutionary Search and the Job Shop – Investi-

gations on Genetic Algorithm for Production Scheduling, Physica-

Verlag, Heidelberg, Germany, 1996.

234 S. G. Ponnambalam et al.

3. K. R. Baker, Introduction to Sequencing and Scheduling, John

Wiley, New York, 1974.

4. J. Blazewicz, K. Ecker, G. Schmidt and J. Weglarz, Scheduling

in Computer and Manufacturing Systems, Springer-Verlag, Berlin,

Heidelberg, 1993.

5. P. Brucker, Scheduling Algorithms, Springer-Verlag, Berlin, Heid-

elberg, 1995.

6. J. Hutchison, “Current and future issues concerning FMS schedul-

ing”, Management Science, 19, pp. 529–537, 1991.

7. M.-C. Portmann, “Scheduling methodologies: optimization and

compusearch approaches”, in A. Artiba and S. E. Elmagharaby

(ed.), The Planning and Scheduling of Production Systems, Chap.

9, pp. 271–300, 1997.

8. M. A. Nascimento, “Gifﬂer and Thompson algorithms for job

shop scheduling is still good for ﬂexible manufacturing systems”,

Journal of Operations Research Society, 44, pp. 521–524, 1993.

9. B. Gifﬂer and G. L. Thompson, “Algorithms for solving production

scheduling problems”, Operations Research, 8, pp. 487–503, 1960.

10. Z. Michalewicz, Genetic Algorithms ϩ Data structures ϭ Evol-

utionary Programs, Springer-Verlag, Berlin, Heidelberg, 1992.

11. H. Adelsberger, M. Neubaurer and J. M. Pawlowski, “Genetic

algorithms for scheduling: an in-depth analysis and comparison

with simulated annealing”, Proceedings of the First International

Conference on Operations and Quantitative Management, Jaipur,

India, vol. 2, pp. 514–521, 5–8 January 1997.

12. J. E. Biegel and J. J. Davern, “Genetic algorithm and job shop

scheduling”, Computers and Industrial Engineering, 19, pp. 81–

90, 1990.

13. R. E. Billo, B. Bidanda and D. Tate, “A genetic algorithm

formulation of the cell formation problem”, Proceedings of the

16th International Conference on Computers and Industrial Engin-

eering, pp. 341–344, 7–9 March 1994.

14. C. Chiu and Y. Yih, “A learning-based methodology for dynamic

scheduling in distributed manufacturing systems”, International

Journal of Production Research, 33, pp. 3217–3232, 1995.

15. H. Kopfer and C. Mattfeld, “A hybrid search algorithm for job

shop problem”, Proceedings of the First International Conference

on Operations and Quantitative Management, Jaipur, India, vol.

2, pp. 498–505, 5–8 January 1997.

16. J. Sridhar and C. Rajendran, “Scheduling in ﬂow shop and cellular

manufacturing with multiple objectives – a genetic algorithmic

approach”, Production Planning and Control, 7, pp. 374–382, 1996.

17. N. Jawahar, P. Aravindan and S. G. Ponnambalam, A genetic

algorithm for scheduling ﬂexible manufacturing systems, Inter-

national Journal of Advanced Manufacturing Technology, 14, 58–

607, 1998.

Nomenclature

c, c’, c’’, c’’’ chromosome (pdr string) number in population

Ci contending job identiﬁer

cfm conﬂicting machine identiﬁer

chrFlen length of pdr string/chromosome (equal to number of

WCs in the system)

cp(c) cumulative probability of chromosome c

d

m

due time multiplier

D

i

due time (i.e. D ϭ d

m

* Ti)

dim total number of machine attributes in each pair of

examples

DT datum time

EJ(i,CT) earliest completion time of job i when one of con-

tending job Ci is loaded

ﬁt(c)/F(c) ﬁtness value (makespan time) of chromosome c

F sum of ﬁtness values of all chromosomes in a popu-

lation

FT

ik

/ft

ij

ﬁnish time of operation k of job i on machine j

g position (gene representation pdr code of machine j or

storage cell address)

number in chromosome

i job number

itFno iteration number

j machine number

k operation sequence number

m number of machines in the system

n number of jobs

Ncﬁ number of contending jobs at time of conﬂict

newFﬁt(c) modiﬁed or scaled ﬁtness parameter value of chromo-

some c

noFit number of genetic iterations

ODT old datum time

p machine number /identiﬁer

pFcross probability of crossover

pFmut probability of mutation

p(c) probability of selection of chromosome c for next gen-

eration

popFsize population size

r

ik

route number for the kth operation of job i

ST

ik

/ st

ij

start time of operation k of job i on machine j

T

ij

total processing time of job i

x

pq

2D array of p rows and q columns

EDD earliest due data

EDT earliest due time

EX edge crossover

GA genetic algorithm

GT Gifﬂer and Thompson

ITS iterative search

JSS job shop scheduling

JSP job shop problem

LP linear programming

LPT longest processing time

MINSLK minimum slack

MM makespantime

NP non-polynomial

OMX ordinal mapped crossover

pdr(s) priority dispatching rule(s)

PMX partially mapped crossover

SPT shortest processing time

- Quantitative Techniques - An Introduction
- A simultaneous optimization approach for off line blending and scheduling of oil refinery operations.pdf
- GA
- ESTIMATING THE NUMBER OF GENERATIONS IN A HUMAN GENETIC PROCESS
- c g
- IMC Mining Integrated Pit Dump and Haulage
- 61-T10044
- PSOC-UNIT3-4-6-2012
- 2 IJAEST Volume No 3 Issue No 2 Aerodynamic Multi Objective Optimization Using Parallel Genetic Algorithm 78 88
- HCM540-StaffingAndScheduling-II
- art%3A10.1007%2Fs40903-015-0019-4
- 11 Chapter 1
- Evaluación de sistemas renovables
- Operating Room Scheduling under Uncertainty
- HYDROTHERMAL COORDINATION FOR SHORT RANGE FIXED HEAD STATIONS USING FAST GENETIC ALGORITHM
- Chapter 8 -Soil Carbon 2014
- Brown Genetic and Evolutionary Algorithms
- Transmission Expansion Planning Considering
- IJAIEM-2013-05-08-013
- Ga Parameters
- Or e Hand Book 2017-18-Dr. Sitaram
- Ms 41 Unit 7 Suplementary
- A UAV Path Planning Method Based on Threat Sources
- Lec11
- 1304.7461
- Multi-Modal Function Optimization
- Gong Article
- principle of lean thinking
- A Scatter Search Approach to Sequence-Dependent Setup Times
- A Genetic Algorithm for Generating Optimal Assembly Plans

- Design of Experiments
- Mueller Ralph 200708 Phdxxxxxxxxxxx
- 1-s2.0-S0020025503004420-main
- 1-s2.0-S0377221709004263-main
- Sanjib Kumar Saren - Review of Flexible Manufacturing System Based on Modeling and Simulation_v21_2
- 412
- control theory notes.pdf
- Sample_Chapter.pdf
- EPM
- Mech Lectures 01
- 1-s2.0-S0007850607600237-main
- Unit-11-55.pdf
- 83cbaa4638a0daedbd28688feeec2c511904
- Comparative Study Simulation Softwares
- Materials Laboratory Manual
- Btech Common Subs 2 Yr 14 15
- art%3A10.1007%2Fs00170-005-0150-6
- MSprojectTutorial-FinalVersion
- Autocad Basics
- PDF
- IC Learning Series 2012 - Foundry Practice
- 13.2.4
- 1347272749770-Mechanical Question Bank
- Inspection Report
- IJEST11-03-05-161
- Lecture 14j
- (Www.entrance Exam.net) GATE2006
- Docu vvvvvvvment
- Lecture 7
- Lesson 1 Intro to Drawing

Sign up to vote on this title

UsefulNot usefulCerrar diálogo## ¿Está seguro?

This action might not be possible to undo. Are you sure you want to continue?

Cargando