0% found this document useful (0 votes)
24 views17 pages

Topic 03-1 - Abdelmaguid

Uploaded by

imran_chaudhry
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views17 pages

Topic 03-1 - Abdelmaguid

Uploaded by

imran_chaudhry
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

int. j. prod. res., 2004, vol. 42, no.

2, 267–281

A hybrid GA/heuristic approach to the simultaneous scheduling of


machines and automated guided vehicles

TAMER F. ABDELMAGUIDy*, ASHRAF O. NASSEFz,


BADAWIA A. KAMALz and MOHAMED F. HASSANz

In this paper, the problem of simultaneous scheduling of machines and identical


automated guided vehicles (AGVs) in flexible manufacturing systems is addressed
with the objective of minimizing the makespan. This problem is composed of two
interrelated decision problems: the scheduling of machines, and the scheduling of
AGVs. Both problems are known to be NP-complete, resulting in a more
complicated NP-complete problem when they are considered simultaneously. A
new hybrid Genetic-algorithm/heuristic coding scheme is developed for the
studied problem. The developed coding scheme is combined with a set of genetic
algorithm (GA) operators selected from the literature of the applications of GAs
to the scheduling problems. The algorithm is applied to a set of 82 test problems,
which was constructed by other researchers, and the comparison of the results
indicates the superior performance of the developed coding.

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.

Revision received June 2003.


yDaniel J. Epstein Department of Industrial and Systems Engineering, GER 240, 3715
McClintock Ave, University of Southern California, Los Angeles, CA 90089-0115, USA.
zDepartment of Mechanical Design and Production, Faculty of Engineering, Cairo
University, Egypt.
*To whom correspondence should be addressed. e-mail: abdelmag@usc.edu

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).

2. The proposed GA coding/decoding scheme


Genetic Algorithms (GAs) are simple, broadly applicable search algorithms, that
generate new solutions to a given optimization problem by exploiting the past
performance of older solutions in a manner that imitates the evolutionary process
as found in nature. In GAs, each individual solution is represented in the form of a
finite length string called a chromosome. A chromosome is composed of a set of
locations known as genes that assume discrete values pertaining to the problem’s
solution. Through the use of genetic operators, such as crossover and mutation,
modifications to the chromosomes of randomly selected solutions are introduced
in a systematic fashion to generate a new generation of solution alternatives,
moving towards the optimization of certain criteria (Goldberg 1989). The main
concern when applying GAs to an optimization problem is to find a suitable
coding scheme that transforms feasible solutions into representations amenable to
GA search and reversibly to decode those representations.
It is well known that the functionality of genetic algorithms highly depends on
finding a suitable coding scheme that should be as minimal as it is completely
expressive – meaning that the chromosome length must be as minimum as possible,
in order to concentrate on the beneficial solution alternatives and eliminate any
waste in computational time. Meanwhile, the coding scheme should be able to
represent all possible solution alternatives in the search space. In scheduling
problems, this objective is largely satisfied by using a chromosome that holds the
sequence of operations by which they are scheduled, which is referred to as
operations-based coding.

2.1. The decoding algorithm


In the proposed coding/decoding scheme, the structure of the first part of the
studied problem, which is the scheduling of operations, is theoretically similar to the
job shop scheduling problem, so operations-based coding is employed. The vehicle
assignment and scheduling part is handled by a heuristic called ‘vehicle assignment
algorithm (VAA)’. This algorithm is embodied in the used decoding scheme.
The following pseudo code illustrates the proposed decoding method and the
inherent VAA.

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;

IF ( pre ¼ NULL) THEN st 0


ELSE st pre.completion_time;
270 T. F. Abdelmaguid et al.

ns Number of scheduled operations on machine mc;

IF(ns > 0) THEN


BEGIN
sched lastly scheduled operation on machine mc;
ct sched.completion_time;
IF(st<ct) THEN st ct;
END

CALL VAA(op, st, pre);

op.completion_time st þ op.processing_time;

Schedule operation op on machine mc;


END
END

The VAA receives from the DECODE_CHROMOSOME procedure the current


operation being scheduled (op), its suggested start time (st) and its predecessor
operation in the job sequence ( pre). Its basic role is to find the AGV that is capable
of accomplishing the trip in the shortest time and to modify the value of (st) such
that the transportation time is considered.

PROCEDURE VAA(op : Operation; st : float; pre : Operation)


BEGIN
min_tft 1;
FOR v ¼ 1 TO number_of_AGVs DO
BEGIN
agv AGV(v);
S agv.last_trip_destination;
IF( pre 6¼ NULL) THEN
D processing machine of operation pre;
ELSE
D Load/Unload station;

dht travel time between S and D;


tft MAX( pre.completion_time, agv. last_trip_finish_time) þ dht;

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.

2.2. An illustrative example


Figure 1 shows the data of an example problem that is used to demonstrate the
developed decoding method. The solution of the problem is represented graphically
by a Gantt chart with a small modification made to represent the AGV schedule. As
shown in figure 2, a row is added for each AGV (we have 2 AGVs in the given
example) to show the time intervals during which the AGV is performing its
transportation tasks. These time intervals are illustrated by horizontal bars,
where the ID of the operation that will be performed by the destination machine
is labelled inside. The time needed by an AGV to complete a transportation task
may include part for a deadheading trip depending on the AGV’s previous location.
This part is represented in the modified Gantt chart using a shaded area in the
horizontal bar.
To illustrate how the decoding method and the VAA work, consider the chromo-
some ‘11-21-31-12-22-23-32’ in the given example. Like the operations-based-coding
in the JSSP, the operations are scheduled according to the earliest start time basis by

(a) Job description


Job Operation Machine Processing
ID ID time
1 11 M1 10
12 M3 14 (b) Travel time matrix
2 21 M2 8 from/to L/U M1 M2 M3
22 M1 6 L/U 0 4 10 8
23 M3 12 M1 4 0 6 6
3 31 M2 10 M2 14 8 0 10
32 M3 8 M3 12 6 6 0

Figure 1. Example problem.


272 T. F. Abdelmaguid et al.

Figure 2. A modified Gantt chart representing a solution to the problem in figure 1.

Figure 3. An illustration of the Vehicle Assignment Algorithm (VAA).

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.

2.3. Comparison with UGA


In comparison, the UGA uses two genes for each operation. The first one holds
an operation’s code and the second contains a number that refers to the AGV that
will be assigned to handle the necessary trip(s) of that operation. Using such a coding
method, an operations’ sequence in a chromosome can be associated with an
exponential number of possible AGV assignments. For instance, if the system con-
tains 2 AGVs and n operations, this coding will result in possibly 2n different AGV
assignments. This tremendously large number of solution alternatives is not
necessary because some of them are far from the optimum, as they have inefficient
AGV assignments such as assigning all trips to one AGV. In addition, it is found
that this coding method will result in a large number of different chromosomes
sharing the same objective function value, which leads to the presence of a large
number of representatives for each local optima. This problem has been faced and
stated in the work of Ulusoy et al. (1997). In the proposed coding, this problem has
been largely reduced by using the VAA, which provides a single method to assign
AGVs for a given sequence of operations.

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.

3.1. Crossover operators


Crossover operators are an essential part in GAs. They help in the inheritance of
better characteristics from the fittest solutions among generations by exploiting their
good genes. In the studied problem, six crossover operators have been considered.
Figures 4 through 9 illustrate the mechanism of gene interchanges in these six

Figure 4. Single point crossover version 1.


274 T. F. Abdelmaguid et al.

Figure 5. Single point crossover version 2.

Figure 6. Two-point crossover version 1.

Figure 7. Two-point crossover version 2.

Figure 8. Two-point crossover version 3.


Simultaneous scheduling of machines and AGVs 275

Figure 9. Uniform crossover.

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.

3.2. Mutation operators


Mutation operators help the GA to reach as many points in the search space as
possible. They are viewed as a transition from the current solution to its neighbour-
hood, as in local search algorithms. The following mutation operators were found
suitable for the proposed coding method; however, they also need the schedule the
repair process after they are applied.
(1) Simple mutation. The notion of the simple mutation operator is similar to
that applied in a simple genetic algorithm. A loop is made over the opera-
tions in the chromosome and a random choice is made to decide whether or
not an operation’s position in the chromosome will be exchanged with
another randomly selected one. The exchange process is done only for the
operations belonging to different jobs.
(2) Swap mutation. In this mutation operator, only two operations belonging to
different jobs are selected randomly and their positions are exchanged.
Figure 10 depicts how this operator works and also shows the resultant
chromosome after applying the schedule repair algorithm.
(3) Shift mutation. In this mutation operator, a randomly selected operation is
removed and put at another randomly selected position while the positions
of the operations located after this location are shifted, as illustrated in
figure 11.
276 T. F. Abdelmaguid et al.

Figure 10. Swap mutation.

Figure 11. Shift mutation.

3.3. The schedule repair algorithm


The schedule repair algorithm is necessary for satisfying the technological
constraints that may be violated during the GA search. It must be applied
after the crossover and mutation operators. It involves the exchange of the
positions of operations belonging to the same job such that a valid sequence of
operations is achieved. The following pseudo code illustrates how this algorithm
works.

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;

IF( prei 6¼ NULL) THEN


FOR j ¼ i þ 1 TO chromosome_length DO
BEGIN
opj operation at location j in the chromosome;
IF ( prei ¼ opj) THEN
BEGIN
Swap locations of opi and opj;
GOTO _chk;
END
END
END
END
Simultaneous scheduling of machines and AGVs 277

3.4. Elite preservation


During the GA run, the best-fit individuals may vanish because the GA depends
on random selections. The elite preservation strategy is used to preserve a set of the
fittest individuals throughout the generations, and make the necessary replacement
of these individuals when better individuals appear. This set has a constant size
defined by the algorithm user.

4. Experiments and computational results


4.1. Comparison between various combinations of crossover and mutation operators
For six crossover and three mutation operators, there are 18 combinations to be
tested. For each combination, ten testing problems with various average AGV travel
time to average machine processing time (t/p) ratios are used. These ten problems are
selected from the 82 test problems of Bilge and Ulusoy (1995). Each problem is
solved using 20 simultaneous GA runs and the best makespan value of these runs
is recorded throughout generations. Every GA run has a fixed crossover probability
of 1.0, mutation probability of 1.0, population size of 40 and maximum number of
generations of 300. Crossover and mutation probabilities are set to an equal value so
that each operator has an equal probability of usage during the search. In addition,
that probability was set to 1.0 to get the maximum effect of each operator on the
comparison outcomes. A computer program is specially developed using C þþ
programming language to perform the experiments.
Figure 12 shows the experimentation results obtained for a selected problem.
These results indicate that the combination of the uniform crossover and shift
mutation operators engenders the best performance of the GA. Furthermore, it is
noticeable that the worst performance is obtained by the crossover version 1

(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

Figure 12. Comparison of genetic operators.


278 T. F. Abdelmaguid et al.

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

Figure 13. GA Performance at different crossover and mutation probabilities.

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.

4.2. Tuning GA parameters


After defining the best combination of GA operators, the most useful ranges for
the crossover and mutation probabilities are to be determined. The studied range for
the mutation probability is between 0.0001 and 1.0, and the studied range for the
crossover probability is between 0.4 and 1.0. The average makespan computed for 20
simultaneous GA runs is used to measure the conduct of the algorithm. Figure 13
shows the obtained results.
It is found that higher crossover and mutation probabilities result in better
solutions. For the crossover probability, the best range is found to be from 0.8 to
1.0 and for the mutation probability, the best range is found to be from 0.3 to 1.0.
The performance of the algorithm seems to be uniform through these ranges, as
shown in figure 13.

4.3. Computational results


After defining the best combination of operators and probability ranges, the
algorithm is applied to the 82 test problems designed by Bilge and Ulusoy (1995).
The used algorithm settings are: crossover probability ¼ 0.8, mutation
probability ¼ 0.4, population size ¼ 40, elite set size ¼ 10, number of generations ¼
400, crossover operator: uniform crossover, mutation operator: shift mutation,
selection scheme: roulette wheel, and number of GA runs ¼ 20.
The results obtained by Bilge and Ulusoy (1995) using the STW heuristic and
UGA coding are compared with the best results obtained by the proposed GA
coding and operators. Tables 1 and 2 show these results. The improvement value
Simultaneous scheduling of machines and AGVs 279

Problem t/p ratio STW UGA Proposed GA Improvement

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

* UGA results for these problems are proven to be invalid.


Table 1. Results for problems with t/p > 0.25.

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.

Problem t/p ratio STW UGA Proposed GA Improvement

EX110 0.15 126 126 126 0


EX210 0.15 148 148 148 0
EX310 0.15 150 148 150 2
EX410 0.15 121 119 119 0
EX510 0.21 102 102 102 0
EX610 0.16 186 186 186 0
EX710 0.19 137 137 137 0
EX810 0.14 292 271 292 21*
EX910 0.15 176 176 176 0
EX1010 0.14 238 236 238 2
EX120 0.12 123 123 123 0
EX220 0.12 143 143 143 0
EX320 0.12 148 145 145 0
EX420 0.12 116 114 114 0
EX520 0.17 100 100 100 0
EX620 0.12 183 181 181 0
EX720 0.15 136 136 136 0
EX820 0.11 287 268 287 19*
EX920 0.12 174 173 173 0
EX1020 0.11 236 238 236 2
EX130 0.13 122 122 122 0
EX230 0.13 146 146 146 0
EX330 0.13 149 146 146 0
EX430 0.13 116 114 114 0
EX530 0.18 99 99 99 0
EX630 0.14 184 182 182 0
EX730 0.17 137 137 137 0
EX830 0.13 288 270 288 18*
EX930 0.13 176 174 174 0
EX1030 0.12 237 241 237 4
EX140 0.18 124 124 124 0
EX241 0.13 217 217 217 0
EX340 0.18 151 151 151 0
EX341 0.12 222 221 221 0
EX441 0.19 179 172 172 0
EX541 0.18 154 148 148 0
EX640 0.19 185 184 184 0
EX740 0.24 138 137 137 0
EX741 0.16 203 203 203 0
EX840 0.18 293 273 293 20*
EX940 0.19 177 175 175 0
EX1040 0.17 240 244 240 4
* UGA results for these problems are proven to be invalid.
Table 2. Results for problems with t/p<0.25.

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.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy