Genetic Algorithms For Solving Scheduling Problems
Genetic Algorithms For Solving Scheduling Problems
net/publication/262334394
CITATIONS READS
5 1,241
2 authors:
Some of the authors of this publication are also working on these related projects:
Robot Navigation Based on Visual Memories and Odometric Data View project
All content following this page was uploaded by Manuel Crisóstomo on 18 April 2015.
MANUEL CRISÓSTOMO
Institute of Systems and Robotics
University of Coimbra
Polo II, 3030-290 Coimbra
PORTUGAL
[email protected]
Abstract – In this paper, scheduling problems in Flexible Manufacturing Cells (FMC) are studied. The scheduling
objective is to minimize the makespan. We used a genetic algorithm (GA) for solving the optimization scheduling
problem. We have developed one FMC with industrial characteristics with the objective of studying scheduling
problems in these types of manufacturing systems (single machine scheduling, flow-shop scheduling and job-shop
scheduling). The practical results obtained from the FMC for the various scheduling problems show the efficiency of
GA in solving these problems.
Key-Words: - Genetic Algorithm, Scheduling, single machine, Flow-shop, Job-shop and Flexible Manufacturing Cell.
Conveyor
Storage
Paletes
command was received and whether or not it
of
ABB IRB140 robot
ABB IRB1400 robot will be executed. The second message
indicates if the command was well executed or
Finished
Manager
Assembly
of FMC
sector
Products
Mill
if an error occurred.
Mill CNC Scorbot ER VII Storage
Raw materials
Conveyor
The hierarchical structure implemented in
Mill
FMC is shown in Fig. 2. Messages cannot be
IRB1400 sent from a higher hierarchical layer to an
Controller
IRB140
inferior layer without going through the
Controller
intermediate layers [8].
The first layer contains the engineering and
Fig. 1 – Layout of Flexible Manufacturing Cell. design functions where the product is designed and
developed. The outputs of this activity are the drawings
First layer:
Internet
Second layer:
PC M
Orders
Where the process plans for manufacturing,
Planning
assembling, and testing are made.
CAP
PC M
Third layer:
Fourth layer:
PC1 PC2 PC3 PC4 Manufacturing is controlled by a hierarchically
structured real time computer system. Its set
Control points are the operating parameters used for
starting and controlling the activities on the
Control production floor.
Lathe
Fifth layer:
Inputs/Outputs
Conveyor
acquisition acquisition system. The collected data represents
IRB 140 IRB 1400
CAM the state of the manufacturing system and is he
Mill Assembly
Unit
ER VII feedback information used for control.
M1
...
Oij(m-1) 4.1 Genetic Operators
...
Genetic operators allow the manipulation chromosomes
...
Oij(m-1) Oij(m)
and are responsible for the evolution of the quality of
M2 ...
solutions during the performance of the GA. From the
Wim pij(m)
... mathematical point of view, operators allow the creation
Oij(2)
Mj ... of new searching points in the solution’s space, based on
Oij(1)
Wi2 pij(2)
the actual population’s members.
M(m-1) ... There are countless genetic operators [1] and [2]. In
pij(1)
Oij(3)
...
this work we used: selection, crossover, mutation and
Mm
ri
...
elitism.
di Ci
ai Li
Selection means to choose, among the individuals
Fi that belong to a population, those who will be used to
Fig. 4 – Gantt diagram of a typical job Ji. create descendants for the next generation and how
many descendants each one can generate. If brief,
selection is the choice of parents’ chromosomes. The
chromosomes that belong to a population are considered
4 A Genetic Algorithm to be filtered in order to generate better individuals
The pseudocode of a basic genetic algorithm is
according to a certain criterion.
shown in Fig. 5. We can see that genetic algorithms start
Crossover is an operator of “coupling”, which allows
with a population P of n individuals, where each
new chromosomes to be produced (offspring) through
individual codifies a solution to the problem. The
the exchange of partial information among pairs of
evaluation of each individual’s performance is based on
chromosomes (parents). In order to avoid the repetition
a function of fitness evaluation. The best ones will tend
of genes in chromosomes, we used order crossover
to be the progenitors of the following generation,
(OC).
allowing them to transmit their features to the next
The aim of mutation is to assure the genetic diversity
generations [3] and [9].
of a population of chromosomes. Mutation consists of
The stopping criteria can be:
random changes of one or more genes in chromosomes.
- When a solution with a certain value of fitness is
The mutation rate is very low, as in natural populations.
reached (for the type of problems demanding a
To assure that the best member of a population is not
cheaper solution, without finding the best solution);
eliminated, there is the elitism operator [1], which
- When a certain time limit is reached (for problems
passes the best chromosomes or the best ones of a
demanding solutions in time);
generation onto the next generation.
- When a certain number of generations is reached.
The algorithm applied to the scheduling problems of
FMC is basically defined by the following steps:
1) The population individuals constitute possible 3 7 8 -1 0
solutions for the scheduling problems. 5 8 9 -1 0
2) Each individual is constituted by one 4 12 12 0 0
chromosome. Table 3 – Completion time, due date, lateness and
3) One chromosome codes the solution through tardiness.
characters (genes).
4) The initial population can be generated randomly. 5.2 A Genetic Algorithm for Solving Flow-shop
5) The evaluation function is determined (fitness) for Scheduling Problem
each individual. Table 4 presents the processing times of 8 jobs in two
machines (Mill and Lathe). For this problem the total
number of schedules is (8!)2. In this problem, we found
5 Scheduling Problems in the Flexible the maximum flow time (Fmax) for the optimal schedule.
Manufacturing Cell
Genetic Algorithms were used, as a tool to solve the Job Mill Lathe
scheduling problems in the Flexible Manufacturing Cell 21 2 10
we developed. The scheduling problems studied and 22 3 7
implemented in FMC were: 23 8 2
− Single machine scheduling problem. 24 7 5
− Flow-shop scheduling problem. 25 9 3
− Job-shop scheduling problem. 26 4 4
We classify scheduling problems according to four 27 1 9
parameters: n/m/A/B. The parameter n is the number of 28 6 8
jobs, m is the number of machines, A describes the flow Table 4 – Processing time on machine.
pattern (F for the flow-shop case and G for the general
job-shop case), B describes the performance measure by After genetic algorithm application to the problem
which the schedule is to be evaluated. When m=1, A is 8/2/F/Fmax, we arrived at the result presented in Fig. 6, in
left blank. which the sequence is S={J27, J21, J22, J26, J28, J24,
J25, J23} with Fmax = 49.
5.1 A Genetic Algorithm for Solving a
Single Machine Scheduling Optimal schedule for the mill:
Problem S={J27, J21, J22, J26, J28, J24, J25, J23}
The n! permutations of the n jobs constitute all
the possible solutions for the problem n/1//B.
Table 2 presents the processing times and
due dates of 6 jobs. After applying the Genetic
Algorithm to the resolution of the problem, we
obtained the following result S=(J6, J2, J1, J3,
J5, J4).
Ji 1 2 3 4 5 6
di 7 3 8 12 9 3
pi 1 1 2 4 1 3
Table 2 – Due dates and processing times for Optimal schedule for the lathe:
the jobs. S={J27, J21, J22, J26, J28, J24, J25, J23}
Job Completion Due Date Lateness Tardiness 5.3 A Genetic Algorithm for Solving Job-shop
Time Scheduling Problem
Ji(k) k
di(k) Li(k) Ti(k) Genetic algorithm was applied in the resolution of the
Ci ( k ) = p i (l )
l =1
Job-shop scheduling problem, in FMC. Table 5 presents
6 3 3 0 0 the processing order and the times of 9 jobs. Jobs 1, 2, 3
2 4 3 1 1 and 4 require mill first and then lathe. Jobs 5 and 6
1 5 7 -2 0 require lathe first and then mill. Only job 7 is to be
processed on mill alone. Jobs 8 and 9 require lathe type of problem. For example the code bit-string can be
alone. This problem is of the type 9/2/G/Fmax. inadequate; selection through the proportionality of
fitness can drive to premature convergence; crossing and
Processing order and times mutation operators can make descending solutions
Job First Machine Second Machine unviable; and an inadequate adjustment of the
1 Mill 8 Lathe 2 parameters can decrease global performance. For this
2 Mill 7 Lathe 5 reason, the decisions on each step of the creation of the
3 Mill 9 Lathe 8 algorithm should be analysed carefully, because there
4 Mill 4 Lathe 7 are many possibilities to implement a GA and the
5 Lathe 6 Mill 4 relationship among the objects of decision are not
6 Lathe 5 Mill 3 generally sufficiently clear and simple.
7 Mill 9 ----- -----
8 Lathe 1 ----- -----
9 Lathe 5 ----- ----- References:
Table 5 – Processing order and time. [1] Davis, L.; Handbook of Genetic Algorithms;
International Thomson Computer Press, 1996.
After genetic algorithm application we arrived at the [2] Goldberg, D. E.; Genetic Algorithms in
following result: Search, Optimization, and Machine Learning;
- Processing sequence for the Mill, SMill={J4, J3, J2, Addison-Wesley, New York, 1989.
J1, J7, J5, J6}; [3] Holland, J.; Adaptation in Natural and
- Processing sequence for the Lathe, SLathe={J5, J6, Artificial Systems; University of Michigan
J8, J9, J4, J3, J2, J1}. Press, 1975.
From this we see that the flow time is 44 (Fmax=44) [4] Mikell P. Groover; Automation, Production
for an optimal schedule. Systems, and Computer Integrated
Manufacturing; Prentice Hall, New Jersey,
2001.
6 Conclusion [5] Najjari, H.; Steiner, S.J.; Integrated and
In this paper, we used Genetic Algorithms to solve intelligent control system for a flexible
scheduling problems in Flexible Manufacturing Cells manufacturing cell; Industrial Electronics,
(FMC). An FMC has been developed. We presented the 1997. ISIE’97, Proceedings of the IEEE
layout and hierarchical structure of the FMC. The International Symposium, Volume 1, July
scheduling problems studied and implemented in this 1997, pp. 165-170.
FMC were: single machine scheduling problem, flow- [6] Kim B. H., Cho, K.H. and Park K.S.; Analysis
shop scheduling problem and job-shop scheduling and feedback control of Lon works-based
problem. network systems for automated manufacturing;
Some scheduling problems are very difficult to solve. 2000 IEEE International Conference on
The difficulty is not in modelling but in computation, Systems. Man and Cybernetics, Univ of Ulsan,
since there is a total of (n!)m possible schedules, and Ulsan, South Korea.
each one must be examined to select the one that gives [7] Wang Jiacun and Deng Yi; Incremental
the minimum makespan (completion time – Cmax) or modelling and verification of flexible
optimizes whatever measure of effectiveness is chosen. manufacturing systems; Journal of Intelligent
Scheduling problems for 3 jobs/m machines up to n Manufacturing, vol. 10, nº 6, 1999, pp.485-
jobs/m machines have proven very difficult to solve. For 502.
this type of problems, if the GA has been developed [8] U. Rembold, B. O. Nnaji and A. Storr;
correctly, we can obtain good solutions, maybe even the Computer Integrated Manufacturing and
optimal schedule. For any scheduling problem, the GA Engineering; Addison-Wesley, 1993.
has a big possibility to find the optimal solution. [9] A. Henni, M. Koudil, K. Benatchba, H.
GA constitute a new research instrument, capable of Oumsalem, K. Chaouche; A parallel
being used in several areas of human activities. Their environment using taboo search and genetic
main advantage lies in genetic diversity: for each step of algorithms for solving partitioning problems in
the search process, a group of candidates is considered codesign; WSEAS Transactions on Systems,
and involved in the creation of new candidates. vol. 3, pp. 8-13, January 2004.
Obtaining a good result by the Genetic Algorithms [10] Simon French; Sequencing and Scheduling: An
will depend on the code method, on the types of genetic Introduction to the Mathematics of the Job-
operators used, on the fitting of parameters, and so on. A Shop; John Wiley & Sons, New York, 1982.
GA in its basic form can be insufficient for a certain