Topic 03-1 - Abdelmaguid
Topic 03-1 - Abdelmaguid
2, 267–281
1. Introduction
Due to the importance of scheduling in improving the performance of manufac-
turing systems and the current trend in manufacturing technology towards the use of
flexible manufacturing systems (FMSs), the scheduling problem in these systems has
been given a focus through the last few years. As defined by Baker (1974), scheduling
is ‘the allocation of resources over time to perform a collection of tasks’. In a flexible
manufacturing system the resources include machines, material handling system,
storage space, etc. The task of the scheduling process is to determine the start/end
times for the individual operations such that a specified performance measure is
optimized. The minimization of makespan objective is the most frequently used
because it is directly related to the efficient utilization of resources.
The studied problem has the same structure as introduced in Bilge and Ulusoy
(1995). It is concerned with the simultaneous scheduling of machines and AGVs in a
flexible manufacturing system. The studied flexible manufacturing system consists of
a set of different machines performing different tasks and a set of identical AGVs
that perform the material handling and transportation tasks between the machines.
All the raw material and AGVs are assumed to be located at the Load/Unload (L/U)
station at the beginning of the schedule.
International Journal of Production Research ISSN 0020–7543 print/ISSN 1366–588X online # 2004 Taylor & Francis Ltd
http://www.tandf.co.uk/journals
DOI: 10.1080/0020754032000123579
268 T. F. Abdelmaguid et al.
Due to the similarity between job shops and FMSs in the processing steps and
routing plans (Greenwood 1988), the majority of the research work available in the
FMS scheduling literature considers only the scheduling of parts on the machines or
merely assumes uninterrupted availability of the material handling equipment. As
indicated by Sabuncuoglu and Hommertzheim (1992), this assumption is valid for a
conveyorized production system but it is not reasonable for systems which use
AGV-based material handling. The consideration of the AGV scheduling inevitably
increases the complexity of the problem as it comprises unseparable decisions for
both the machines and AGV scheduling. The sole machine scheduling part has the
same structure as the traditional job shop scheduling problem, which is among the
hardest combinatorial optimization problems (Lenstra and Rinnooy Kan 1978 and
Garey and Johnson 1979), and the AGV scheduling part is similar to the pickup and
delivery problem, which is also known to be an NP-complete problem (Lenstra and
Rinnooy Kan, 1981). This high level of complexity necessitates the use of efficient
search techniques.
The previous work on the studied problem is found to fall in two main categories:
The first one dealt with the dynamic version of the problem by providing some online
dispatching rules for the scheduling process and made use of simulation tools to
assess their performance. The second category dealt with the static version of the
problem by developing suitable heuristics.
Egbelu and Tanchoco (1984) introduced the first simulation-based experimental
studies that address the scheduling of AGVs. Nevertheless, their system is not an
FMS and machine scheduling is not directly considered. Sabuncuoglu and
Hommertzheim (1989) developed a simulation model to test different scheduling
rules. Their results indicate that scheduling AGVs is as important as scheduling
machines. In Sabuncuoglu and Hommertzheim (1992), they propose a dynamic
dispatching algorithm for scheduling machines and AGVs in an FMS.
Bilge and Ulusoy (1995) developed a heuristic, named ‘Sliding Time Window
(STW)’, to solve the simultaneous off-line-scheduling of machines and material
handling in an FMS. They provide a mixed integer programming model to formulate
the problem in addition to a complete, fully stated, list of 82 test problems to assess
the performance of their heuristic. Smith et al. (1999) studied the job shop scheduling
problem while considering material handling. Their problem has the same structure
as our studied problem, but with the consideration of the loading and unloading
processes. They emphasize the importance of addressing a complete job-shop
scheduling problem (JSSP), in which the material handling is considered.
From the literature review, only one paper, by Ulusoy et al. (1997), is found to
deal with the application of GAs on the studied problem. In their work, the authors
provide a suitable coding scheme in which chromosomes are fixed-length strings
containing two consecutive locations to represent both dimensions of the search
space: operation sequencing and AGV assignment. With this coding, the authors
implemented their GA program and tested it on the 82 test problems that were
solved previously by the STW heuristic. For brevity, the GA coding of Ulusoy
et al. (1997) will be called UGA from now on.
In this paper, a new GA coding scheme is introduced for solving the studied
problem. This method is a hybrid scheme that utilizes the operations-based coding
used in the JSSP (Gen and Cheng 1997) for the scheduling of machines, besides a
heuristic, to solve the other part of the problem, which is the scheduling of AGVs.
The introduction of the heuristic in the coding reduces the chromosome length to
Simultaneous scheduling of machines and AGVs 269
half the size of UGA, which consequently increases the efficiency of the GA search.
The proposed coding along with a set of GA operators, which are selected from
similar coding methods, are programmed and compared with both the STW and
UGA using the 82-problem testbid found in Bilge and Ulosoy (1995).
PROCEDURE DECODE_CHROMOSOME
BEGIN
FOR i ¼ 1 TO chromosome_length DO
BEGIN
op operation at location i in the chromosome;
mc processing machine of op;
pre predecessor operation of op in job sequence;
op.completion_time st þ op.processing_time;
IF (tft<min_tft) THEN
BEGIN
min_tft tft;
best_AGV agv;
END
END
Add necessary deadheading and loaded trips to best_AGV for operation op;
tft best_AGV.last_trip_finish_time;
IF(st<tft) THEN st tft;
END
Simultaneous scheduling of machines and AGVs 271
The VAA is a greedy algorithm that searches for the best AGV that will result in
the earliest start time of an operation at its assigned machine. The AGV trips are
classified into deadheading and loaded. In the deadheading trips the AGV is
unloaded and moves from its current location to a location where it will be
loaded, while in the loaded trips, the AGV is transporting the material of a job
from one location to another. The time at which an AGV can start its deadheading
trip is determined by getting the maximum of its last trip finish time and the com-
pletion time of the predecessor operation ( pre). The comparison made in the VAA is
based on the summation of this possible deadheading trip start time and the required
deadheading trip time, if any. Since the AGVs are identical in the studied problem,
they have equal loaded trip times. Accordingly, the loaded trip time is not added to
the compared value.
The idea of this decoding method is based on the fact that, for a given sequence
of operations represented by the operations-based coding method, the generated
machine schedule will be stretched when the vehicle transportation times are con-
sidered. This happens because the start time of each operation is shifted. Intuitively,
the algorithm that minimizes the shifts of the start times of operations will result in
minimizing the makespan value for the combined Machine/AGV schedule for a
given sequence of operations. The VAA tries to achieve that by searching for the
AGV that has the minimum completion time for each trip and hence will result in the
minimum shift possible for the start time of each operation.
the given sequence in the chromosome. As illustrated in the pseudo code, the
algorithm starts by giving a feasible start time for each operation, such that this
start time satisfies the technological constraints (pertaining to the operations’
processing sequence of a job) and machine availability constraints that restrict the
processing of operations on a machine to only one at a time. This start time will then
be modified by the VAA, which adds the necessary travel time after assigning a
vehicle.
Figure 3 illustrates how the VAA works for the third operation in the chromo-
some ‘11-21-31-12-22-23-32’. Here, the decoding algorithm has scheduled the first
two operations (operations 11 and 21) and the role has come for operation 31 to be
scheduled. As operation 31 is the first operation in job 3, It needs a raw material
transfer from the L/U station to its processing machine M2. The following options
are available.
(1) The first option is to use AGV1, which is currently located at machine M1,
where it has finished its last trip at time 4. So it needs to do a deadheading
trip from machine M1 to the L/U station followed by a loaded trip from
the L/U station to machine M1. The time needed by the deadheading
trip is 4 time units. Consequently, AGV1 will finish the deadheading trip
at time 8.
Simultaneous scheduling of machines and AGVs 273
(2) The second option is to use AGV2, which is at machine M2, where it has
finished its last trip at time 10. So it needs to do a deadheading trip
from machine M3 to the L/U station. The time needed by the deadheading
trip is 14 time units. Consequently, AGV2 will finish the deadheading trip at
time 24.
Since AGV1 can finish the required deadheading trip sooner than AGV2, it will be
selected to handle the trips for operation 31.
3. GA operators
There are many previously developed operators for the job shop and flow shop
scheduling problems (Murata et al. 1996 and Gen and Cheng 1997) that can be
adopted here due to the similarity of GA coding. In this section, the adopted
operators are described along with other necessary GA operations.
crossover operators. In both single and two point crossover operators, the
crossover positions are selected randomly and the genes are then interchanged to
generate two child chromosomes from the selected parents. In the uniform crossover
operator, interchange locations are selected randomly and their number is also
random.
In the case of single point crossover version 1 shown in figure 4, some operations,
like the shaded operations 32 and 21, do not appear in the same side of the crossover
position for the two parent chromosomes. So when the genes are interchanged,
these operations will be duplicated in the child chromosomes, resulting in
incorrect schedules. This problem is solved by exchanging the duplicated operations
in the right-hand side of a child chromosome with the other child’s duplicated
operations.
In most of the cases, the gene interchanges result in violating the technological
constraints, which can be simply fixed by reordering the operations of each job. This
will be explained later in the schedule repair algorithm section.
PROCEDURE SCHEDULE_REPAIR
BEGIN
FOR i ¼ 1 TO chromosome_lenght - 1 DO
BEGIN
_chk: opi operation at location i in the chromosome;
prei predecessor operation of opi in job sequence;
(a) Simple mutation with types of crossover (b) Swap mutation with types of crossover
195 Makespan 195
Makespan
190 Single pt. ver 1 190 Single pt. ver 1
Single pt. ver 2 Single pt. ver 2
Two pt. ver 1 Two pt. ver 1
185 Two pt. ver 2 185 Two pt. ver 2
Two pt. ver 3 Two pt. ver 3
180 Uniform 180 Uniform
175 175
170 170
165 165
0 100 200 300 0 100 200 300
Generations Generations
(c) Shift mutation with types of crossover (d) 2-Pt. Crossover (ver 2) with types of mutation
195 Makespan 195 Makespan
190 Single pt. ver 1
Single pt. ver 2 190 Simple
Two pt. ver 1 Swap
185 Two pt. ver 2 Shift
Two pt. ver 3
185
180 Uniform
180
175
175
170
165 170
160 165
0 100 200 300 0 100 200 300
Generations Generations
181
179
177
Average
175
Makespan
173
171
169
0.4
1
0.8
0.7
0.6
0.6
0.5
0.4
0.8
Crossover
0.3
0.2
probability Mutation
0.1
1
0.01
Probability
0.0001
operator regardless of the used mutation operator; whereas the behaviours of the
other single point and two point crossover operators combined with different
mutation operators are indistinguishable.
EX11 0.59 96 96 96 0
EX21 0.61 105 104 102 2
EX31 0.59 105 105 99 6
EX41 0.91 118 116 112 4
EX51 0.85 89 87 87 0
EX61 0.78 120 121 118 3
EX71 0.78 119 118 115 3
EX81 0.58 161 152 161 9*
EX91 0.61 120 117 118 1
EX101 0.55 153 150 147 3
EX12 0.47 82 82 82 0
EX22 0.49 80 76 76 0
EX32 0.47 88 85 85 0
EX42 0.73 93 88 88 0
EX52 0.68 69 69 69 0
EX62 0.54 100 98 98 0
EX72 0.62 90 85 79 6
EX82 0.46 151 142 151 9*
EX92 0.49 104 102 104 2
EX102 0.44 139 137 136 1
EX13 0.52 84 84 84 0
EX23 0.54 86 86 86 0
EX33 0.51 86 86 86 0
EX43 0.8 95 91 89 2
EX53 0.74 76 75 74 1
EX63 0.54 104 104 104 0
EX73 0.68 91 88 86 2
EX83 0.5 153 143 153 10*
EX93 0.53 110 105 106 1
EX103 0.49 143 143 141 2
EX14 0.74 108 103 103 0
EX24 0.77 116 113 108 5
EX34 0.74 116 113 111 2
EX44 1.14 126 126 126 0
EX54 1.06 99 97 96 1
EX64 0.78 120 123 120 3
EX74 0.97 136 128 127 1
EX84 0.72 163 163 163 0
EX94 0.76 125 123 122 1
EX104 0.69 171 164 159 6
in these tables equals the difference between the best results obtained by UGA and
the proposed GA.
From the comparison of results, shown in tables 1 and 2, the proposed GA is
shown to be superior, or at least similar, to the STW heuristic in all the studied
problems, whereas UGA failed to produce better solutions compared with the STW
heuristic in six cases. The proposed GA shows better conduct compared to UGA for
problems having t/p ratios greater than 0.25, as the proposed GA results in better
solutions for 19 problems versus six problems by UGA. However, UGA succeeds in
achieving better solutions in six problems versus only three problems for the
proposed GA, for the problems having t/p ratios less than 0.25.
280 T. F. Abdelmaguid et al.
We note here that the results obtained by UGA for the seven problems EX81,
EX82, EX83, EX810, EX820, EX830 and EX840 (labelled by * in tables 1 and 2) are
proven to be invalid in Abdelmaguid (2000) and the results obtained by the STW are
in fact the optimal solutions for these problems. By excluding UGA results in those
seven problems, it can be seen that the proposed GA presents better performance
compared with UGA, as it succeeds in achieving better solutions in 22 problems
versus only five problems by UGA.
Simultaneous scheduling of machines and AGVs 281
5. Conclusions
In this paper, the problem of simultaneous scheduling of machines and
identical automated guided vehicles (AGVs) in flexible manufacturing systems is
addressed by considering the minimization of the makespan objective. A new
hybrid GA/heuristic coding scheme is developed for the studied problem. The
developed coding scheme and the GA operators, which are selected from the
literature of the application of GAs to scheduling problems, are programmed
using Cþþ language.
From the testing of the proposed GA and the adopted operators, it is found that
the best combination of the crossover and mutation operators is the shift mutation
and uniform crossover. The suggested range for the mutation probability is from 0.3
to 1.0, and the suggested range for the crossover probability is from 0.8 to 1.0. After
determining the best GA settings, the algorithm is compared with the STW heuristic
and UGA. The comparison indicates that the proposed GA has a complete success
over the STW and represents better performance compared to UGA.
Acknowledgements
The authors would like to thank an anonymous referee whose comments and
suggestions helped to improve the layout and presentation of this paper.
References
ABDELMAGUID, T. F., 2000, Scheduling of flexible manufacturing systems using hybrid genetic
algorithm. MSc thesis, Cairo University, Egypt.
BAKER, K. R., 1974, Introduction to Sequencing and Scheduling (New York: Wiley).
BILGE, U. and ULUSOY, G., 1995, Time window approach to simultaneous scheduling of
machines and material handling system in an FMS. Operations Research, 43, 1058–1070.
EGBELU, P. J. and TANCHOCO, J. M. A., 1984, Characterization of automated guided vehicle
dispatching rules. International Journal of Production Research, 22, 359–374.
GAREY, M. R. and JOHNSON, D. S., 1979, Computers and Intractability (New York: W.H.
Freeman and Company).
GEN, M. and CHENG, R., 1997, Genetic Algorithms and Engineering Design (New York: Wiley).
GOLDBERG, D. E., 1989, Genetic Algorithms in Search, Optimization and Machine Learning
(New York: Addison-Wesley).
GREENWOOD, N. R., 1988, Implementing Flexible Manufacturing Systems (London:
Macmillan).
LENSTRA, J. K. and RINNOOY KAN, A. H. G., 1978, Complexity of scheduling under precedence
constraints. Operations Research, 26, 22–35.
LENSTRA, J. K. and RINNOOY KAN, A. H. G., 1981, Complexity of vehicle routing and schedul-
ing problems. Networks, 11, 221–227.
MURATA, T., ISHIBUCHI, H. and TANAKA, H., 1996, Genetic algorithms for flowshop scheduling
problems. Computers and Industrial Engineering, 30, 1061–1071.
SABUNCUOGLU, I. and HOMMERTZHEIM, D. L., 1992, Dynamic dispatching algorithm for
scheduling machines and automated guided vehicles in a flexible manufacturing system.
International Journal of Production Research, 30, 1059–1079.
SABUNCUOGLU, I. and HOMMERTZHEIM, D. L., 1989, Expert simulation systems - recent devel-
opments and applications in flexible manufacturing systems, Computers and Industrial
Engineering, 16, 575–585.
SMITH, J. S., PETERS, B. A. and SRINIVASAN, A., 1999, Job shop scheduling considering material
handling. International Journal of Production Research, 37, 1541–1560.
ULUSOY, G., SIVRIKAYA-SERIFOGLU, F. and BILGE, U., 1997, A genetic algorithm approach to
the simultaneous scheduling of machines and automated guided vehicles. Computers and
Operations Research, 24, 335–351.