a two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job...

20
J. Magalhães-Mendes 1 A two-step optimization approach for job shop scheduling problem using a genetic algorithm Jorge Magalhães Mendes Working Paper 06.2013 Departamento de Engenharia Civil CIDEM Instituto Superior de Engenharia do Porto Instituto Politécnico do Porto Rua Dr. António Bernardino de Almeida, 431 4200-072 Porto PORTUGAL e-mail: [email protected]

Upload: others

Post on 06-Jul-2020

8 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

1

A two-step optimization approach for job shop

scheduling problem using a genetic algorithm

Jorge Magalhães Mendes

Working Paper 06.2013

Departamento de Engenharia Civil

CIDEM

Instituto Superior de Engenharia do Porto

Instituto Politécnico do Porto

Rua Dr. António Bernardino de Almeida, 431

4200-072 Porto

PORTUGAL

e-mail: [email protected]

Page 2: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

2

A two-step optimization approach for job shop scheduling problem

using a genetic algorithm

Abstract: This paper presents a two-step optimization approach to solve the

complex scheduling problem in a job shop environment. This problem is also

known as the Job Shop Scheduling Problem (JSSP). The JSSP is a difficult

problem in combinatorial optimization for which extensive investigation has been

devoted to the development of efficient algorithms. The proposed approach is

based on a genetic algorithm. Genetic algorithms are an optimization

methodology based on a direct analogy to Darwinian natural selection and

mutations in biological reproduction. The chromosome representation of the

problem is based on random keys. The schedules are constructed using a

schedule generation scheme in which the priorities and delay times of the

operations are defined by the genetic algorithm and obtaining parameterized

active schedules. After a schedule is obtained a local search heuristic using

Monte Carlo method is applied to improve the solution. The approach is tested on

a set of standard instances taken from the literature and compared with other

approaches. The computation results validate the effectiveness of the proposed

approach.

Keywords: Scheduling; Discrete Optimization; Genetic Algorithm; Job Shop;

heuristics.

1. Introduction and background

The JSSP consists of a set of different machines (e.g., lathes, milling machines, drills,

etc.) that perform operations on jobs. Each job consists of a sequence of operations,

each of which uses one of the machines for a fixed duration. Once started, the operation

cannot be interrupted. Each machine can process at most one operation at a time. A

schedule is an assignment of operations to time intervals on the machines. The problem

is to find a schedule of minimal time to complete all jobs (French 1982).

Scheduling operations problems arise in diverse areas such as flexible

manufacturing, production planning and scheduling, logistics, supply chain problem,

Page 3: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

3

etc. A common feature of many of these problems is that no efficient solution

algorithms are known that solve each instance to optimality in a time bounded

polynomial in the size of the problem. Discrete optimization can help to overcome these

difficulties (Dorndorf and Pesch 1995).

To make the right decision, the manager must have reliable and complete

information and adequate scheduling models. Single and small scale productions are

characterized by many work orders. So, the application of new tools based on discrete

optimization not only in production process but also in determination of priority of

technological operations will be appropriate (Mendes 2010).

The JSSP is considered as a particularly hard combinatorial optimization

problem (Lawler et al. 1982). Over the last few decades, a good number of algorithms

have been developed for solving JSSP. However, no single algorithm is capable of

solving all kinds of JSSPs optimally (or near optimally) within a reasonable time limit.

Thus, there is scope to analyze the difficulties of JSSPs as well as to design algorithms

that may be able to solve most of the standard problems (Hasan et. al. 2008).

In early stages, Giffler and Thompson (1990), Carlier and Pinson (1989), Pinson

(1990), Brucker et al. (1994), Williamson et al. (1997) have been successful in solving

small instances, including the notorious 10×10 instance of Fisher and Thompson

proposed in 1963 and only solved twenty years later.

More recently, many approximate methods have been developed to solve the

JSSP, such as simulated annealing (SA) (Lourenço 1995), tabu search (TS) (Nowicki

and Smutnicki (1996, 2005), Pezzela and Merelli (2006), Zhang et al. (2008)), genetic

algorithms (GA) (Aarts et al. (1994), Croce et al. (1995), Dorndorf and Pesch (1995),

Wang and Zheng (2001), Gonçalves et al. (2005), Essafi et al. (2008), Hasan et al.

(2008), Mendes (2012), Qing-doa-er-ji and Wang (2012)), particle swarm optimization

Page 4: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

(PSO) (Sha and Hsu (2006)

Binato et al. (2002), Aiex et al.

Pardalos and Shylo (2006),

The rest of this paper is organized as follows:

described in Sect. 2. and the

described in Sect. 4. The computational results are presented and discussed in Sect. 5.

Finally, in Sect. 6 we present some concluding

2. Problem definition

The JSSP may be described

job i represents ni ordered operations. The execution of each operation

as oij) requires one machine

Figure 1. Each machine can process at most one operation at a time and once an

operation initiates processing on a given machine it must complete processing on that

machine without interruption. The operations of a given job have to be processed in a

given order. The problem consists in finding a schedule of the operations on the

machines, taking into account the precedence constraints, which minimizes the

makespan (Cmax), that is, the finish time of the last operation completed in the schedule.

Figure 1. An example of a Job Shop System.

J. Magalhães

(2006)), greedy randomized adaptive search procedure (GRASP),

, Aiex et al. (2003)) and others heuristics (Rego and Duarte

Shylo (2006), Pardalos et al. (2010)).

The rest of this paper is organized as follows: The problem

the types of schedules in Sect. 3. The approach proposed is

The computational results are presented and discussed in Sect. 5.

we present some concluding remarks.

efinition

described as follows: n jobs are to be scheduled on m

ordered operations. The execution of each operation

) requires one machine m selected from a set of machines for a fixed duration, see

Figure 1. Each machine can process at most one operation at a time and once an

ates processing on a given machine it must complete processing on that

machine without interruption. The operations of a given job have to be processed in a

given order. The problem consists in finding a schedule of the operations on the

nto account the precedence constraints, which minimizes the

), that is, the finish time of the last operation completed in the schedule.

Figure 1. An example of a Job Shop System.

J. Magalhães-Mendes

4

), greedy randomized adaptive search procedure (GRASP),

Rego and Duarte (2009),

problem definition is

The approach proposed is

The computational results are presented and discussed in Sect. 5.

m machines. Each

ordered operations. The execution of each operation j of job i (noted

selected from a set of machines for a fixed duration, see

Figure 1. Each machine can process at most one operation at a time and once an

ates processing on a given machine it must complete processing on that

machine without interruption. The operations of a given job have to be processed in a

given order. The problem consists in finding a schedule of the operations on the

nto account the precedence constraints, which minimizes the

), that is, the finish time of the last operation completed in the schedule.

Page 5: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

5

Let J = {0, 1, …, N, N+1} denote the set of operations to be scheduled and M =

{1,..., m} the set of machines. The operations 0 and N+1 are dummy, have no duration

and represent the initial and final operations.

The operations are interrelated by two kinds of constraints:

• First, the precedence constraints, which force each operation j to be

scheduled after all predecessor operations, Pj, are completed;

• Second, operation j can only be scheduled if the machine it requires is

idle. Further, let dj denote the (fixed) duration (processing time) of

operation j.

Let A(t) be the set of operations being processed at time t, and let rj,m = 1 if

operation j requires machine m to be processed and rj,m = 0 otherwise.

Let Fj represent the finish time of operation j. A schedule can be represented by

a vector of finish times (F1, …, Fm, ... , Fn+1).

Additionally, the standard job-shop scheduling problem makes the following

assumptions (Hasan et. al. 2008):

• Each job consists of a finite number of operations;

• The processing time for each operation in a particular machine is defined;

• There is a pre-defined sequence of operations that has to be maintained to

complete each job;

• Delivery times of the products are undefined;

• There is no setup cost or tardy cost;

• A machine can process only one job at a time;

• Each job visits each machine only once;

• No machine can deal with more than one type of task;

Page 6: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

6

• The system cannot be interrupted until each operation of each job is finished;

• No machine can halt a job and start another job before finishing the previous

one;

• Each and every machine has full efficiency.

3. Types of schedules

This section presents a classification of schedules for project scheduling problems.

Classifying schedules is the basic work to be done before attacking scheduling

problems (Kolisch 1995). Schedules can be classified into one of the following three

types of schedules:

• Semi-active schedules. These are feasible schedules obtained by sequencing

activities as early as possible. In a semi-active schedule the start time of a

particular activity is constrained by the processing of a different activity on

the same resource or by the processing of the directly preceding activity on a

different resource;

• Active schedules. These are feasible schedules in which no activity could be

started earlier without delaying some other activity or breaking a precedence

constraint. Active schedules are also semi-active schedules. An optimal

schedule is always active;

• Non-delay schedules. These are feasible schedules in which no resource is

kept idle at a time when it could begin processing some activity. Non-delay

schedules are active and hence are also semi-active.

The set of active schedules is usually very large and contains many schedules

with poor quality. To reduce the solution space was used the concept of parameterized

active schedules (Gonçalves et al. 2005).

Page 7: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

4. A two-step approach

The approach presented in this paper is based on a genetic algorithm to perform its

optimization process. Figure

The approach has two main steps:

• Step1: Combines a genetic algorithm

(SGS). This SGS

to obtain a schedule for each chromosome;

• Step2: This step

improve the solution obtained

The Genetic Algorithms (GAs) follows the principles of

proposed by Charles Darwin

One fundamental advantaged of GAs from traditional methods is described by

Goldberg (1989): in many optimization methods, we move gingerly from a single

solution in the decision space to the next using some transition rule to determine the

next solution.

J. Magalhães

step approach

The approach presented in this paper is based on a genetic algorithm to perform its

Figure 2 shows the architecture of approach.

has two main steps:

ombines a genetic algorithm with a schedule generation scheme

(SGS). This SGS generates parameterized active schedules. This

to obtain a schedule for each chromosome;

step makes use of a local search procedure that attempts to

improve the solution obtained previously.

Figure 2. Architecture of the approach.

The Genetic Algorithms (GAs) follows the principles of The Origin of Species

proposed by Charles Darwin (1859).

One fundamental advantaged of GAs from traditional methods is described by

in many optimization methods, we move gingerly from a single

solution in the decision space to the next using some transition rule to determine the

J. Magalhães-Mendes

7

The approach presented in this paper is based on a genetic algorithm to perform its

a schedule generation scheme

This step allows

hat attempts to

The Origin of Species

One fundamental advantaged of GAs from traditional methods is described by

in many optimization methods, we move gingerly from a single

solution in the decision space to the next using some transition rule to determine the

Page 8: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

8

First of all, an initial population of potential solutions (individual) is generated

randomly. A selection procedure based on a fitness function enables to choose the

individual candidate for reproduction. The reproduction consists in recombining two

individuals by the crossover operator, possibly followed by a mutation of the offspring.

Therefore, from the initial population a new generation is obtained. From this new

generation, a second new generation is produced by the same process and so on. The

stop criterion is normally based on the number of generations.

The GA based-approach uses a random key alphabet U (0, 1) and an

evolutionary strategy identical to the one proposed by Goldberg (1989).

4.1 Details of the GA

A real-coded GA is adopted in this article. Compared with the binary-code GA, the real-

coded GA has several distinct advantages, which can be summarized as follows (Y.-Z.

Luo et al. 2006):

• It is more convenient for the real-coded GA to denote large scale numbers and

search in large scope, and thus the computation complexity is amended and the

computation efficiency is improved;

• The solution precision of the real-coded GA is much higher than that of the

binary-coded GA;

• As the design variables are coded by floating numbers in classical optimization

algorithms, the real-coded GA is more convenient for combination with classical

optimization algorithms.

Page 9: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

9

In this paper a chromosome represents a solution to the problem and is encoded

as a vector of random keys (random numbers). Each solution chromosome is made of

2n genes where n is the number of operations (excluding 0 and n+1):

Chromosome = (genel , .., genen , gene n+1 , ... , gene 2n )

The priority decoding expression uses the following expression:

1,..., (1)= =j jPRIORITY gene j n

The delay time used by each activity is given by the following expression:

1 1.5 (2)+

= × ×jmDelay time gene MaxDur

where MaxDur is the maximum duration of all activities. The factor 1.5 is

obtained after some experimental tuning.

A maximum delay time equal to zero is equivalent to restricting the solution

space to non-delay schedules and a maximum delay time equal to infinity is equivalent

to allowing active schedules. To reduce the solution space was used the value given by

expression (2), see Gonçalves et al. (2005).

4.2 Construction of a schedule

Schedule generation schemes (SGS) are the core of most heuristic solution procedures

for scheduling operations.

This heuristic makes use of the priorities and the delay times defined by the

genetic algorithm and constructs parameterized active schedules. In this work was used

the SGS described in Gonçalves et al. (2005) and Mendes et al. (2009).

Page 10: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

10

4.3 Local search

Local search algorithms move from solution to solution in the space of candidate

solutions (the search space) until an optimal solution or a stopping criterion is found.

In this work is applied the two exchange local search, based on the work of

Nowicki and Smutnicki (1996).

The local search procedure begins by identifying the critical path in the solution

obtained by the schedule generation procedure. Any operation on the critical path is

called a critical operation. It is possible to decompose the critical path into a number of

blocks where a block is a maximal sequence of adjacent critical operations that require

the same machine. The critical path thus gives the neighborhood of moves.

After the critical path will be known, the Monte Carlo Method selects the block

where we make the swapping operations. In fact, this process selects the most critical

resource to make the swapping between two consecutive operations.

4.4 Initial population

The initial population is generated randomly. The quality of this population is poor and

one way to improve it is to incorporate some chromosomes generated by priority rules.

In this paper are selected the priority rules GRPW (greatest rank positional

weight) and SPT (shortest processing time) to improve some chromosomes of the initial

population.

4.5 Evolutionary strategy

There are many variations of genetic algorithms obtained by altering the reproduction,

crossover, and mutation operators. Reproduction is a process in which individual

(chromosome) is copied according to their fitness values (makespan). Reproduction is

accomplished by first copying some of the best individuals from one generation to the

Page 11: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

next, in what is called an elitist strategy.

In this paper the fitness proportionate selection, also known as roulette

selection, is the genetic

reproduction. The characteristic of the roulette wheel selection is stochastic sampling.

The fitness value is used to associate a probability of selection with each

individual chromosome. If

probability of being selected is,

1

, 1,..., (3)

=

= =

ii N

i

i

fp i n

f

A roulette wheel model is established to represent the survival probabilities for

all the individuals in the population. Then the roul

(Goldberg 1989).

The Figure 3 shows this evolutionary strategy with the operators selection,

recombination (or crossover) and mutation

After selecting, crossover may proceed in two steps. First, members of the newly

selected (reproduced) chromosomes in the mating pool are mated at random. Second,

J. Magalhães

t is called an elitist strategy.

In this paper the fitness proportionate selection, also known as roulette

operator for selecting potentially useful solutions for

The characteristic of the roulette wheel selection is stochastic sampling.

The fitness value is used to associate a probability of selection with each

individual chromosome. If fi is the fitness of individual i in the population, its

probability of being selected is,

, 1,..., (3)= =p i n

A roulette wheel model is established to represent the survival probabilities for

all the individuals in the population. Then the roulette wheel is rotated for several times

shows this evolutionary strategy with the operators selection,

recombination (or crossover) and mutation (Mendes 2010).

Figure 3. Evolutionary strategy.

After selecting, crossover may proceed in two steps. First, members of the newly

selected (reproduced) chromosomes in the mating pool are mated at random. Second,

J. Magalhães-Mendes

11

In this paper the fitness proportionate selection, also known as roulette-wheel

operator for selecting potentially useful solutions for

The characteristic of the roulette wheel selection is stochastic sampling.

The fitness value is used to associate a probability of selection with each

in the population, its

, 1,..., (3)

A roulette wheel model is established to represent the survival probabilities for

ette wheel is rotated for several times

shows this evolutionary strategy with the operators selection,

After selecting, crossover may proceed in two steps. First, members of the newly

selected (reproduced) chromosomes in the mating pool are mated at random. Second,

Page 12: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

12

each pair of chromosomes undergoes crossover as follows: an integer position k along

the chromosome is selected uniformly at random between 1 and the chromosome length

l. Two new chromosomes are created swapping all the genes between k+1 and l, see

Mendes (2012).

The mutation operator preserves diversification in the search. This operator is

applied to each offspring in the population with a predetermined probability. We

assume that the probability of the mutation in this paper is 0.001.

4.5 GA configuration

Though there is no straightforward way to configure the parameters of a genetic

algorithm, we obtained good results with values: population size of 5 × number of

activities in the problem; mutation probability of 0.001; top (best) 1% from the

previous population chromosomes are copied to the next generation; stopping criterion

of 10000 generations.

5. Computational results

This section presents computational results with the implementation proposed in this

paper:

• GA-MC-SPc (Genetic Algorithm with Local Search using Monte Carlo and

Single Point crossover).

To evaluate the performance of proposed approach, we considered the following

classes of problems, taken from the literature:

• ABZ5, ABZ6, ABZ7, ABZ8 and ABZ9 proposed by Adams et al. (1988);

• FT6, FT 10 and FT20 originally proposed by Fisher and Thompson (1963);

Page 13: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

13

• LA1-LA40 proposed by Lawrence (1984);

• ORB1-ORB10, proposed by Applegate and Cook (1991).

Tables 1, 2, 3 and 4 summarize the experimental results. It lists number of jobs,

number of operations, instance, best known solution (BKS) and the algorithm GA-MC-

SPc. The last row of each table shows the value of the average relative deviation

(ARD).

The ARD is calculated in the following way:

max

1

(4)=

−=∑ i

NISi

i i

C BKSRE

BKS

(5)=RE

ARDNIS

where NIS is number of instances solved.

Table 1. Experimental results for instances ABZ5-ABZ9.

Jobs Operations

/job

Instance BKS GA-MC-

SPc

10 10 ABZ5 1234 1234

10 10 ABZ6 943 943

15 20 ABZ7 656 688

15 20 ABZ8 645 704

15 20 ABZ9 661 715

% ARD 4,44%

Table 2. Experimental results for instances FT06, FT10 and FT20.

Jobs Operations

/job

Instance BKS GA-MC-SPc

6 6 FT06 55 55

10 10 FT10 930 930

20 5 FT20 1165 1165

% ARD 0,00%

Page 14: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

14

Table 3. Experimental results for instances LA01-LA40.

Jobs Operations

/job

Instance BKS GA-MC-SPc

10 5 LA01 666 666

10 5 LA02 655 655

10 5 LA03 597 597

10 5 LA04 590 590

10 5 LA05 593 593

15 5 LA06 926 926

15 5 LA07 890 890

15 5 LA08 863 863

15 5 LA09 951 951

15 5 LA10 958 958

20 5 LA11 1222 1222

20 5 LA12 1039 1039

20 5 LA13 1150 1150

20 5 LA14 1292 1292

20 5 LA15 1207 1207

10 10 LA16 945 945

10 10 LA17 784 784

10 10 LA18 848 848

10 10 LA19 842 842

10 10 LA20 902 902

15 10 LA21 1046 1049

15 10 LA22 927 927

15 10 LA23 1032 1032

15 10 LA24 935 939

15 10 LA25 977 977

20 10 LA26 1218 1218

20 10 LA27 1235 1251

20 10 LA28 1216 1225

20 10 LA29 1157 1166

20 10 LA30 1355 1355

30 10 LA31 1784 1784

30 10 LA32 1850 1850

30 10 LA33 1719 1719

30 10 LA34 1721 1721

30 10 LA35 1888 1888

15 15 LA36 1268 1278

15 15 LA37 1397 1408

15 15 LA38 1196 1205

15 15 LA39 1233 1244

15 15 LA40 1222 1228

% ARD 0,18%

Page 15: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

15

Table 4. Experimental results for instances ORB1-ORB10. here

Jobs Operations

/job

Instance BKS GA-MC-

SPc

10 10 ORB1 1059 1059

10 10 ORB2 888 888

10 10 ORB3 1005 1005

10 10 ORB4 1005 1005

10 10 ORB5 887 887

10 10 ORB6 1010 1010

10 10 ORB7 397 397

10 10 ORB8 899 899

10 10 ORB9 934 934

10 10 ORB10 944 944

% ARD 0,00%

The computational results shows that the algorithm GA-MC-SPc in Table 1 is

able to find 2 of the best solutions in 5, Table 2 has found all the best solution, Table 3

shows that is able to find the best know solution for 30 instances, i.e., about 75% of the

instances and in Table 4 has found all the best solutions.

In order to verify the performance of the proposed approach, GA-MC-SPc is

compared with some algorithms reported in the literature in recent years, see Table 5.

The performance of GA-MC-SPc was evaluated on a standard set of 50

benchmark instances belonging to two classical sets known LA from Lawrence (1984)

and ORB from Applegate and Cook (1991).

The approach GA-MC-SPc obtained all the optimal solutions for the instances

ORB and has the same results than the approaches Nowicki and Smutnicki (2005),

Zhang et al. (2008) and Pardalos et al. (2010). For LA instances the approach GA-MC-

SPc is positioned in the top ten best results of the state-of-art (ranked in fifth place with

the approach proposed by Qing-doa-er-ji and Wang (2012)).

The computational time dispended is in the range [45, 11876] seconds.

Page 16: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

16

Table 5. Comparison of the ARD for the different number of problems authors considered.

NIS Instances Authors Algorithm ARD(%)

Pardalos et al. (2010) GES 0.00

Sha and Hsu (2006) HPSO 0.02

40 LA01-LA40 Nowicki and Smutnicki (2005) i-TSAB 0.05

Pezzela and Merelli (2006) - 0.11

This paper GA-MC-SPc 0.18

Qing-doa-er-ji and Wang (2012) HGA 0.18

Rego and Duarte (2009) F&F-PRD 0.29

Sha and Hsu (2006) PSO 0.37

Gonçalves et al. (2005) P. Active 0.41

Aiex (2003) - 0.43

Hasan et al. (2008) GR-SA-RA 0.97

Gonçalves et al. (2005) Active 1.10

Gonçalves et al. (2005) Non-Delay 1.20

Aarts et al. (1994) GLS2 1.75

Binato et al. (2002) - 1.87

Aarts et al. (1994) GLS1 2.05

Adams et al. (1988) SBI 3.67

This paper GA-MC-SPc 0.00

10 ORB1-ORB10 Nowicki and Smutnicki (2005) i-TSAB 0.00

Zhang et al. (2008) TS 0.00

Pardalos et al. (2010) GES 0.00

This computational experience has been performed on a computer with an Intel

Core 2 Duo CPU T7250 @2.00 GHz. The algorithm proposed in this work has been

coded in VBA under Microsoft Windows NT.

6. Conclusions and further research

A GA two-step approach to solving the job shop scheduling problem has been

proposed. This approach combines a genetic algorithm with a schedule generation

scheme to obtain schedules. After a schedule is obtained, a local search heuristic is

applied to improve the solution. The chromosome representation of the problem is

based on random keys. The schedules are constructed using a priority rule in which the

Page 17: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

17

priorities are defined by the genetic algorithm. Schedules are constructed using a

procedure that generates parameterized active schedules. The experimental results show

that the proposed approach has a good performance when compared with others

proposed algorithms tested using 50 instances taking from the literature. Further work

could be conducted to explore the possibility of genetically correct the chromosomes

supplied by the genetic algorithm to reflect the solutions obtained by the local search

heuristic.

Acknowledgements

This work has been partially supported by the CIDEM (Centre for Research &

Development in Mechanical Engineering). CIDEM is a unit of FCT – Portuguese

Foundation for the Science and Technology.

References

Aarts, E.H.L., Van Laarhoven, P.J.M., Lenstra, J.K. & Ulder, N.L.J. (1994). A

computational study of local search algorithms for job shop scheduling. ORSA

Journal on Computing, 6, pp. 118-125.

Adams, J., E. Balas. E. & Z. Zawack, Z. (1988). The shifting bottleneck procedure for

job shop scheduling, Management Science, 34, pp. 391-401.

Aiex, R.M., Binato, S. & Resende, M.G.C. (2003). Parallel GRASP with Path-

Relinking for Job Shop Scheduling. Parallel Computing, 29(4), pp. 393-430.

Applegate, D. & Cook, W. (1991). A computational study of the job-shop scheduling

problem. ORSA Journal on Computing, 3(2), pp. 149-156.

Binato, S., Hery, W.J., Loewenstern, D.M. & Resende, M.G.C. (2002). A GRASP for

Job Shop Scheduling. In: Essays and Surveys in Metaheuristics, Ribeiro, C.,

Hansen, P. (Eds.), Kluwer Academic Publishers.

Brucker, P., Jurisch, B. & Sievers, B. (1994). A Branch and Bound Algorithm for Job-

Shop Scheduling Problem. Discrete Applied Mathematics, 49, pp. 105-127.

Carlier, J. & Pinson, E. (1989). An Algorithm for Solving the Job Shop Problem.

Management Science, 35(29), pp.164-176.

Page 18: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

18

Darwin, C. (1859). The Origin of Species by Means of Natural Selection. John Murray,

Albemarle Street, London.

Dorndorf, U. & Pesch, E. (1995). Evolution Based Learning in a Job Shop

Environment. Computers and Operations Research, 22, pp. 25-40.

Essafi, I., Mati, Y. & Pérès, S.D. (2008). A genetic local search algorithm for

minimizing total weighted tardiness in the job-shop scheduling problem,

Computers & Operations Research, 35(8), pp. 2599-2616.

Fisher, H. & Thompson, G.L. (1963). Probabilistic Learning Combinations of Local

Job-Shop Scheduling Rules, in: Industrial Scheduling, J.F. Muth and G.L.

Thompson (eds.), Prentice-Hall: Englewood Cliffs, NJ, pp. 225-251.

French, S. (1982). Sequencing and Scheduling: An Introduction to the Mathematics of

the Job Shop. Publisher: Ellis Horwood Ltd, UK.

Giffler, B. & Thompson, G.L. (1960). Algorithms for Solving Production Scheduling

Problems. Operations Research, 8(4), pp. 487-503.

Croce, F., Tadei, R. & Volta, G. (1995). A Genetic Algorithm for the Job Shop

Problem, Computers and Operations Research, 22(1), pp. 15-24.

Goldberg, D.E. (1989). Genetic Algorithms in Search, Optimization and Machine

Learning. Addison-Wesley: Reading, MA.

Gonçalves, J.F., Magalhães-Mendes, J. & Resende, M.C.G.. (2005). A hybrid genetic

algorithm for the job shop scheduling problem. European Journal of

Operational Research, 167(1), pp. 77-95.

Hasan, S. M. K., Sarker, R. & Cornforth, D. (2008). GA with Priority Rules for Solving

Job-Shop Scheduling Problems. Proceedings of the IEEE Congress on

Evolutionary Computation, CEC 2008, June 1-6, Hong Kong, China, pp. 3804-

3811.

Lawler, E. L., Lenstra, J.K. & Rinnooy Kan, H.G. (1982). Recent developments in

deterministic sequencing and scheduling: A survey. In Deterministic and

Stochastic Scheduling, Dempster, M., Lenstra, J., and Rinnooy Kan, H. Eds.

Dordrecht, The Netherlands: Reidel.

Lawrence, S. (1984). Resource Constrained Project Scheduling: An Experimental

Investigation of Heuristic Scheduling Techniques. GSIA, Carnegie Mellon

University, Pittsburgh, PA.

Lourenço, H.R. (1995). Local optimization and the job-shop scheduling problem,

European Journal of Operational Research, 83, pp. 347-364.

Page 19: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

19

Luo, Y.-Z. Tang, G.-J., Wang, Z.-G. & Li, H.-Y., (2006). Optimization of perturbed

and constrained fuel-optimal impulsive rendezvous using a hybrid approach,

Engineering Optimization, 38(8), 959-973.

Magalhaes-Mendes, J., (2008). Project scheduling under multiple resources constraints

using a genetic algorithm, WSEAS Transactions on Business and Economics,

World Scientific and Engineering Academy and Society, USA, 11, 487-496.

Magalhaes-Mendes, J., Gonçalves, J.F. & Resende, M.G.C., (2009). A random key

based genetic algorithm for the resource constrained project scheduling problem,

Computers & Operations Research, 36, 92-109.

Magalhaes-Mendes, J., (2010). Complex scheduling problems using an optimization

methodology. WSEAS Trans. Info. Sci. and App., 7(2), 220-229.

Magalhães-Mendes, J. (2012). An Experimental Study of Genetic Crossover Operators

for the Job Shop Scheduling Problem. Proceedings of 3rd International

Conference on Mathematical Models for Engineering Science (MMES’12),

Paris, France, pp.197-203.

Nowicki, E. & Smutnicki, C. (1996). A Fast Taboo Search Algorithm for the Job-Shop

Problem. Management Science, 42(6), pp. 797-813.

Nowicki, E. & Smutnicki, C. (2005). An advanced tabu search algorithm for the job

shop problem. Journal of Scheduling, 8(2), pp. 145-159.

Pardalos, M. & Shylo, O.V. (2006). An algorithm for the job shop scheduling problem

based on global equilibrium search techniques. Computational Management

Science, 3(4), pp. 331-348.

Pardalos, M., Shylo, O.V. & Vazacopoulos, A. (2010). Solving job shop scheduling

problems utilizing the properties of backbone and “big valley”. Computational

Optimization and Applications, 47(1), pp. 61-76.

Pezzela, F. & and Merelli, E. (2000). A tabu search method guided by shifting

bottleneck for the job shop scheduling problem. European Journal of

Operational Research, 120, pp. 297-310.

Pinson, E. (1990). A practical use of Jackson’s preemptive schedule for solving the job-

shop problem. Annals of Operations Research, 26(1-4), pp. 269-287.

Qing-doa-er-ji, R. & Wang, Y. (2012). A new hybrid genetic algorithm for job shop

scheduling problem, Computers & Operations Research, 39(10), pp. 2291-2299.

Rego, C. & Duarte, R. (2009). A filter-and-fan approach to the job shop scheduling

problem. European Journal of Operational Research, 194(3), pp. 650–662.

Page 20: A two-step optimization approach for job shop scheduling ... · complex scheduling problem in a job shop environment. This problem is also known as the Job Shop Scheduling Problem

J. Magalhães-Mendes

20

Sha, D. Y. & Hsu, C. (2006). A hybrid particle swarm optimization for job shop

scheduling problem. Computers & Industrial Engineering, 51(4), pp. 791-808.

Williamson, D. P., Hall, L.A., Hoogeveen, J.A., Hurkens, C. A. J. Lenstra, J. K.

Sevastjanov, S. V. & Shmoys, D. B. (1997). Short Shop Schedules. Operations

Research, 45(2), pp. 288-294

Wang, L. & Zheng, D. (2001). An effective hybrid optimisation strategy for job-shop

scheduling problems. Computers & Operations Research, 28(6), pp. 585-596.

Zhang, C. Y., Li., P. & Guan, Z. (2008). A very fast TS/SA algorithm for the job shop

scheduling problem. Computers & Operations Research, 35, pp. 282-294.