0% found this document useful (0 votes)
74 views

Genetic Algorithms For Solving Scheduling Problems

This document summarizes a conference paper about using genetic algorithms to solve scheduling problems in flexible manufacturing cells. The paper describes developing a flexible manufacturing cell with four sectors controlled by computers to study single machine, flow-shop, and job-shop scheduling problems. Genetic algorithms were used to minimize makespan for scheduling problems in the flexible manufacturing cell. Results showed genetic algorithms efficiently solved the various scheduling optimization problems.

Uploaded by

Olivia brianne
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views

Genetic Algorithms For Solving Scheduling Problems

This document summarizes a conference paper about using genetic algorithms to solve scheduling problems in flexible manufacturing cells. The paper describes developing a flexible manufacturing cell with four sectors controlled by computers to study single machine, flow-shop, and job-shop scheduling problems. Genetic algorithms were used to minimize makespan for scheduling problems in the flexible manufacturing cell. Results showed genetic algorithms efficiently solved the various scheduling optimization problems.

Uploaded by

Olivia brianne
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/262334394

Genetic algorithms for solving scheduling problems in flexible manufacturing


cells

Conference Paper · April 2005

CITATIONS READS

5 1,241

2 authors:

Antonio Ferrolho Manuel Crisóstomo


Polytechnic Institute of Viseu University of Coimbra
20 PUBLICATIONS   65 CITATIONS    129 PUBLICATIONS   692 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

FCT_A2HR_2012 View project

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.

The user has requested enhancement of the downloaded file.


Genetic Algorithms for Solving Scheduling Problems in
Flexible Manufacturing Cells
ANTÓNIO FERROLHO
Electrical Engineering Department
Superior School of Technology of the Polytechnic Institute of Viseu
Campus Politécnico de Repeses, 3504-510 Viseu
PORTUGAL
http://www.estv.ipv.pt/PaginasPessoais/antferrolho

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.

1 Introduction shop scheduling and job-shop scheduling. The results


This paper investigates scheduling problems in Flexible obtained in the scheduling problems of the FMC show
Manufacturing Cells. The scheduling objective is to the efficiency of the GA in solving these problems.
minimize the makespan, and we used a genetic
algorithm for solving the optimization scheduling
problem. 2 Flexible Manufacturing Cell
A genetic algorithm is based on the principle of Today two or more CNC machines are considered a
survival of the fittest. The basic idea is to start with a set Flexible Manufacturing Cell (FMC) and two or more
of solutions and to generate a set of new solutions by cells are considered a Flexible Manufacturing System
applying some well-defined operators on the old ones. (FMS) [4]. FMS are typical real time concurrent systems
Then, some solutions are selected to form a new set with composed of a number of computer-controlled machine
which another iteration is started, and so on until some tools, automated material handling and storage systems
stopping criterion is met. To develop an effective [5] and [7]. FMS and Computer Integrated
genetic algorithm for a specific problem, some more Manufacturing (CIM) systems using industrial control
ingredients need to be provided [2]. In general, a GA networks [6].
consists of the following steps:
Step 1. Initialization. An FMC with industrial characteristics was
Step 2. Evaluation of fitness function. developed with the objective of studying the scheduling
Step 4. Genetic operation. problems in these types of manufacturing systems. Fig.
Step 5. Repeat steps 2 to 4. 1 presents the layout of the FMC developed. The FMC
We have developed one FMC with industrial is comprised of four sectors, which are controlled by
characteristics with the objective of studying the PCs and different software. The four sectors are:
scheduling problems in these types of manufacturing − The manufacturing sector, made up of two CNC
systems. The FMC was used to study the following machines (mill and lathe), one ABB IRB140 robot
scheduling problems: single machine scheduling, flow- and one buffer.
− The assembly sector, made up of one Scorbot ER Control of existing equipment in each sector is
VII robot, one small conveyor and an assembly carried out by four computers: PC1 – manufacturing
table. sector, PC2 – assembly sector, PC3 – handling sector
− The handling sector, made up of one great and PC4 – storage sector. Coordination, synchronization
conveyor. and integration of the four sectors is carried out by the of
− The storage sector, made up of five warehouses and FMC computer Manager.
one robot ABB IRB1400. Whenever a PC needs to communicate with another
PC in a lower hierarchical layer, it sends a message
Storage
Raw materials
through the Ethernet net. The messages consist
PC
Lathe CNC PC1+PC2 PC3+PC4
Lathe Finished
Products
of a command and a group of parameters:
Lathe
Lathe COMMAND|PARAMETERS. The PC that
receives the message then sends two messages:
the first indicates to the client that the
Buffer

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

PC M Contains the engineering and design functions


Engineering
where the product is designed and developed.
Outputs: drawings and the bill of materials.
CAD

Second layer:
PC M

Orders
Where the process plans for manufacturing,
Planning
assembling, and testing are made.
CAP

PC M
Third layer:

Inputs: process plans, drawing, bill of materials


Scheduling
Ethernet

and customer order.


M2 J J2 J3 Output: order to the manufacturing floor.
M1
PP&C
J3 J J2

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

The operations of the machine tools and material


Data movement equipment are monitored by a data
Buffer

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.

PCM – FMC Manager: Engineering + Planning + Scheduling


PC1 – Manufacturing sector: Mill + Lathe + Robot IRB140 + buffer
PC2 – Assembly sector: Robot Scorbot ER VII + small conveyor
PC3 – Handling sector: big conveyor
PC4 – Storage sector: Robot IRB1400 + Automatic Storage

Fig. 2 – FMC hierarchical structure.


and the bill of materials. - Finding the optimum processing sequence so as to
The second layer is process planning. Here the optimize CNC machine use – the scheduling layer.
process plans for manufacturing, assembling and testing - Coordination, integration and control of all the
are carried out. sectors in FMC.
The third layer is scheduling. The process plans - Controlling and supervising the entire operation in
together with the drawing, the bill of materials and the FMC in real time.
customer orders are the input to scheduling. The output - Maintaining a database of jobs to manufacture,
of scheduling is the release of the order to the including the respective NC programmes.
manufacturing floor. The PCM – FMC Manager is - Synchronizing the various sectors so as to produce
responsible for the engineering, planning and scheduling variable lots of different types of parts depending
activities. on the customer’s orders.
The fourth layer is control. Manufacturing is - Monitoring the current state of production.
controlled by a hierarchically structured real time - Guaranteeing tolerance of failures, safety and
computer system (PC1, PC2, PC3 and PC4). Its set coherence of data.
points are the operating parameters used for starting and
controlling the activities on the production floor.
The fifth layer is data acquisition. The operations of 3 Scheduling: problem formulation
the machine tools and material movement equipment are Assuming we know the manufacturing products, their
monitored by a data acquisition system. The collected manufacturing schedule and the available resources for
data represents the state of the manufacturing system execution, the scheduling task consists in determining
and is the feedback information used for control. the schedule passage of the products (jobs) for the
The central computer (FMC Manager) controls all resources and defining the attribution of resources,
the production of FMC, calling the several computers considering the times at the beginning and end of
and communication nets of data, that allow control and operations, with the objective of optimizing one or more
supervision in real time of the operations, picking up performance measures. This description is particularized
and processing the flows of information of the various for the case of the scheduling problems in production
resources. Fig. 3 presents the main window of the systems, as is the case of the Flexible Manufacturing
software developed for the PC - FMC Manager. Cells. In fact, scheduling problems appear associated to
very different areas of activity, such as
Information about robots, CNC machines and conveyor. arranging school schedules, defining the order
in which airplanes land at an airport, choosing
the order of execution of different programs in
Layout of FMC. Mill information. a computer, and so on.
Supposed we have n jobs {J1,...,Jn} to be
processed in m machines {M1,... ,Mm}. Possible
solutions are determined by (n!)m [10]. The
processing job in a machine is designated by
operation and characterized by the respective
processing time pij (job i, machine j). For each
job technological restrictions are defined, that
Send NC codes is the necessary operations sequence of job
to the machines. processing. Thus, the scheduling problem
consists in determining a sequence of passage
Start boton. of jobs to the respective machines so that it is:
Lathe information.
1) compatible with technological restrictions
and 2) optimal, according to performance
Fig. 3 – Main windows of the software developed for the measures. Table 1 and Fig. 4 clarify the
PC - Manager of FMC. notation used.

The PC - FMC Manager is responsible for: Description Symbol Remarks


- Developing and designing new products to Number of jobs n
manufacture – the engineering layer. Job i Ji
- Production plans, assemblies and product tests – the Machine j Mj
planning layer. Operation time Oij
Processing time pij
Read time for Ji ri
Due date for Ji di Algorithm GA
Allowance for ai ai=di-ri { t := 0; //counter
//starts a population on n
Ji Starts_population (P, t);
individuals
Waiting time of Evaluation (P, t); //evaluates individuals fitness
Ji preceding the //tests criteria (duration, fitness,
Wik Repeat until (t = d)
respective k th and so on.)
operation //increases the counter of
{ t := t + 1;
m generations
Total waiting //selects the couples for
Wi Wi = Wik Selection_of_parents (P, t);
time of Ji k =1
crossover
//accomplishes selected couples
Recombination (P, t);
[W ]
m
Completion crossover
Ci C i = ri + ik + p ij ( k ) //disturbs the group generated by
time of Ji k =1 Mutation (P, t);
crossover
Flow time of Ji Fi Fi=Ci-ri Evaluation (P, t); //evaluates new fitness
Lateness of Ji Li Li=Ci-di Survive (P, t) //selects survivors
Tardiness of Ji Ti Ti=max{0, Li} }
Earliness of Ji Ei Ei=max{-Li, 0} }
n t – actual generation;
Idle time on d – criterion to finish the algorithm;
Ij I j = C max − pij P – population
machine Mj i =1
Table 1 –Scheduling problem notation. Fig. 5 – Basic pseudocode of a Genetic Algorithm.

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}

For the schedule result we calculated the


optimal Tmax. We found Tmax=1, as shown in Table 3. Fig. 6 – Gantt diagram for the 8/2/F/Fmax.

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

View publication stats

You might also like