You are on page 1of 20

Int J Adv Manuf Technol (1998) 14:588-607 The International Journal of

© 1998 Springer-Verlag London Limited


Rdvanced
manufacturing
Technoiogu
A Genetic Algorithm for Scheduling Flexible Manufacturing
Systems
N. Jawahar t, P. Aravindan* and S. G. Ponnambalam*
~Department of Mechanical Engineering, Thiagarajar College of Engineering, Madurai, India; *Department of Mechanical Engineering,
PSG College of Technology, Coimbatore, India; and *Regional Engineering College, Tiruchirapalli, India

General job shop scheduling and rescheduling with alternative manufacturing with the application of computers and precise
route choices for an FMS environment is addressed in this controls has lead to the development of such systems. They
paper. A genetic algorithm is proposed to derive an optimal provide flexibility for job shops with nearly the efficiency of
combination of priority dispatching rules "pdrs" (independent large volume manufacturing. This paper deals with an auto-
pdrs one each for one Work Cell "WC"), to resolve the conflict mated job shop or flexible manufacturing system (FMS), which
among the contending jobs in the Giffler and Thompson "GT" can achieve both flexibility and productivity. It is the type of
procedure. The performance is compared with regard to makes- system emerging in manufacturing to compete in the global
pan criteria and computational time. The optimal WCwise-pdr market that is becoming increasingly competitive every day.
is proved to be eJficient in providing optimal solutions in a The various components of the FMS are generally grouped
reasonable computational time. Also, the proposed GA based as follows [1]:
heuristic method is extended to revise schedules on the arrival
of new jobs, and on the failure of equipment to address the FMS descriptions: workstation specification, material
dynamic operation mode of flexible manufacturing systems. An handling system description, layout
iterative search technique is proposed to find the best route description and pallet/fixture avail-
choice for all operations to provide a feasible and optimal ability.
solution. The applicability and usefulness of the proposed Part descriptions: operation sequence for each part and
methodology for the operation and control of FMS in real- resource requirement for each oper-
time are illustrated with examples. The scope of the genetic ation.
search process and future research directions are discussed. Scheduling parameters: tool loading and schedule specifi-
cation.
Keywords: Flexible manufacturing systems; Genetic algor-
ithm; Scheduling The realisation of the objectives of the FMS depends on all
the above aspects. Once the FMS and part descriptions are
defined, then the performance/profitability of the system
depends entirely on how efficiently the production resources
1. Introduction are used and on how the flow of selected parts is processed
through the system (i.e. releasing and dispatching at operational
Automating a job shop can pave the way for producing a level). The overall allocation of system resources (scheduling)
variety of parts in small lots flexibly in a produce-to-order and the status of the system determines the above decision [2].
environment. The shop structure is therefore moving towards Determining an efficient schedule for the general job shop
a pure job shop coupled with automation. With numerical problem has been the subject of research for more than 50
control machines, having large magazines capable of holding years. For n jobs and m machines in the general case there
a variety of tools and with automatic tool changers, linked by will be (n!) '~ feasible sequences [3]. The evolution of CIM
automatic material handling devices and integrated computer has complicated the issue because of its complex nature of
control systems, it has become possible to achieve automation working. Scheduling problems are known to be complex even
in a flexible job shop. The technological breakthrough in for simple formulations and are NP-hard in many cases. The
automatic generation of scheduling plans for job shops are
traditionally addressed using optimisation and approximation
Correspondence and offprint requests to: Dr S. G. Ponnambalam, approaches [4]. Optimisation algorithms include enumerative
Department of Mechanical Engineering, PSG College of Technology,
Post Box l611, Peelamedu, Coimbatore 641004, India. E-mail: procedures and mathematical programming techniques (linear,
psgct@giasmd01 .vsnl.net.in integer programming, goal programming, transportation, net-
A Genetic" Algorithm .for Scheduling FMS 589

work and dynamic programming). The techniques included in 2. Operating Environment and Problem
approximation techniques are: implicit enumeration (branch- Definition
bound); decomposition (Lagrangian relaxation); priority rule
based; heuristics; local search algorithms (iterative search,
2.1 FMS Descriptions
simulated annealing, threshhold annealing, Tabu-search); evol-
utionary programs (genetic algorithms); A1 techniques
The FMS considered in this paper, is for a pare job shop, and
(knowledge-based and expert systems). Optimisation algorithms
provide satisfactory or optimal results if the problems to be is described as follows:
solved are not too large and are restricted to low-dimensional 1. The overall system comprises several computer numerical
over-simplified problems. Approximation algorithms are prob- controlled processors (called a Work Ceil °'WC"), an auto-
lem dependent and raise the problem of overcoming the diffi- matic material handling system, part-carrying conveyors
culties between computer and human reasoning. In both the (input and output), a robot, and an automated storage and
cases, the efficiency problem arises [5]. Approximation algor- retrieval system (ASfRS). All the above are linked by means
ithms are capable of guaranteeing the solution to be within a of host computer.
fixed percentage of the actual optimum and are considered as 2. There will be from 2 to 10 such work cells (WC) in the
useful tools for solving discrete optimisation problems. system. A WC is either a machining centre or an assembly
Since the inception of computer integrated manufacturing machine or an inspection station. Each WC is provided with
(CIM), emphasis has been on including alternative route independent tool magazines, automated part loading and
choices in scheduling analysis. Fanti et al. [6] indicated that unloading arrangements, part program controller, automatic
the routeing flexibility is one of the main features of FMS. tool changer (ATC) and buffer storage.
They proposed three methods for real-time routeing selection:
3. An automated guided vehicle (AGV) transfers materials,
I. Total route workload (TRW). pallets and fixtures between WCs, WC and AS/RS, and
load/unload station and WC. This handles the part flow
2. Route bottleneck workload (RBW).
within the system.
3. Shortest clear-out time (SCOT).
4. A sufficiently large number of general purpose pallets/
All their approaches are based on a merit index estimation of fixtures is available.
each available route depending upon the corresponding resource 5. The AS/RS is used to store the raw materials necessary
burden. Nasr and Elsayed [7] pointed out that separating for the parts to be processed as well as the work in
process planning and scheduling results in a production sched- progress inventories.
ule that lacks flexibility and adaptability, and due attention
should be given to these two functions to achieve realistic and The arrangement of the FMS hardware is shown in Fig. !.
effective production scheduling. They have developed a mixed
integer programming model for a general job shop type machin- 2.2 Part Description
ing system with alternative machine tool routeings, and based
on that formulation have presented two algorithms, namely,
The scheduling problem considered in this paper arises in the
bound algorithm and shortest finish time (SFT) algorithms, to
following context.
minimise the mean flow-time. The above discussion shows that
scheduling has to incorporate alternative manufacturing plans.
©
This will significantly enhance the productivity of the system,
especially during dynamic changes in the state of the system.
Considering the above aspects, this paper addresses a genetic
algorithm (GA) based scheduler that can handle alternative
route choices with a rescheduling capability. A GA based
heuristic is developed that provides independent workcellwise
(WC) priority dispatching rules (pdrs), one each for one WC
(Wcwise-pdr set), to generate a near optimal schedule for fixed
routeing problems with makespan objective. This is extended
using an iterative search process to incorporate alternative
route choices. Further, a regenerative rescheduling scheme is
suggested to address dynamic cases. ROBOT I
The rest of the paper is organised as follows. In Section 2,
the operating environment and the problem are defined. The
proposed algorithm along with a comparative study are
addressed in Section 3. In Section 4, the concept of reschedul-
ing and its functioning are presented. In Section 5, a method
to handle alternative route choice is proposed and illustrated Fig. 1. Configuration of flexible manufacturing system. WC, work cell;
with an example. Finally, conclusions and the scope for further AGV, automated guided vehicle; TT~ tool transporter; TC, tool
improvement are given in the last section. changer; AS/RS, automated storage/retrieval system; S, shuttle.
590 IV. Jawahar et al.

1. There are n jobs to be processed in one or more of m 3. Proposed Schedule Generation


facilities or WC during a certain planning horizon. Urgent Heuristic
parts arrive in the system randomly and join the queue.
2. Each job, once started, must be pertbrmed to completion Nascimento and Mario [8] showed, with CPU time and solution
(no pre-emptive priorities). quality, that the Giffter and Thompson (GT) schedule gener-
3. The operation sequence of all jobs along with alternative ation algorithm [9], which was originally designed for the
WC choices for each operation are known. For each oper- traditional job shop model, can still provide good results for
ation, a particular WC is selected based on the availability an FMS model. They structured two branch-bound (B-B)
of the tools and the economic aspects. This consideration algorithms and compared their behaviour on both a job shop
restricts the use of only one WC for one operation and and an FMS model. Kim and Kim [10] presented a simulation-
ensures the availability of the tools required at the WC at based real-time scheduling methodology for an FMS which
any instant. employs discrete event simulation with information about the
4. The operation time of a job at each facility includes the current state of the shop floor. It estimates system performance
loading, unloading, tool changeover and set-up times (both with different scheduling rules and selects the best dispatching
tool and workpiece) along with processing time (i.e. the rule for a given criterion. The selected dispatching rule is used
time between the part being picked and then returned to until the difference between the actual performance value and
the local buffer). the value estimated by simulation exceeds a given limit. In
this context, a GA based methodology is suggested that evolves
Y g(ij)
- -

independent pdrs, one each for one WC, to resolve the conflicts
Tij = Q * [L~j + ~ (M,.(O + I¥S~.(o q TS~.(o) + ULo] in GT procedure. Before presenting the proposed methodology,
y=l
the enumerating procedure of the GT algorithm [9], the B-B
5. Deadlines (due dates) are assumed to be between 2 to 6 technique proposed by Greenberg [11] for resolving conflicts
times that of the total processing time of the job. in GT, Greenberg's technique extended to break lower bound
6. There is no constraint on fixture and pallet availability. TIEs [t2] and the direct application of pdrs in GT procedure
7. Transportation times are small compared to the operation [13] along with their restrictions are observed. Next, the pro-
times. There will also be a certain amount of cushioning posed GA based heuristic is presented. Then, the effectiveness
period between the operations related to each job (the of the methodology is compared in terms of solution accuracy
cushioning period is the time the job waits until the WC with respect to the criterion "makespan time" of the schedule
for the next operation becomes free) and that period can and computational time.
be used for transportation. In these aspects the transfer time
has been assumed to be negligible. 3.1 Giffler and Thompson Algorithm

Giffler and Thompson [9] proposed an algorithm to generate


2.3 Objective all feasible schedules for a pure job shop. The GT algorithm
is a numerical version of the procedure described for drawing
Production systems are designed essentially to meet demand a Gantt chart to arrive at an active feasible schedule. Whenever
efficiently. Productivity indicates the efficiency of the system two or more jobs contend for the same facility at one time
effectiveness and depends on many factors such as hardware (conflict), the choice is made arbitrarily and one active feasible
utilisation, tardiness, in-process inventory, and manufacturing schedule is obtained. By enumerating all possible choices,
lead time. One or more of the above parameters are used to which occur at different stages one by one, the entire set of
measure the efficiency of the system. The scheduling objective active feasible schedules can be obtained, including the optimal
criterion is selected based on those performance parameters. one. The tree diagram (Fig. 2) shows the conflicts which arise
The performance parameter is decided based upon the business at different scheduling points for example 1 given in Table 1.
environment. The utilisation function, which leads to increased The complete set of active feasible solutions, obtained (S 1 to
hardware usage (the complement of idle time), is widely S12) by pruning the tree in all possible ways, is given in
adopted where the capital cost is high. FMSs belong to the Table 2. The optimal solution is obtained by evaluating the
high-capital-intensive category since they comprise sophisti- feasible schedules with the desired objective criterion. The
cated and integrated components. Considering this aspect, the schedule S1 is the optimal solution for the makespan criterion.
utilisation of hardware is considered as the appropriate measure The above illustration shows that enumerating all possible
of system performance. combinations is a much more time-consuming process and is
highly complex for large problems.
2.4 Problem Specification
3.2 Greenberg's B-B Technique
The problem is to spread all the activities or tasks associated
with n jobs in an FMS (whose operating environment has just Greenberg [11] suggested a B-B methodology for pruning the
been described above) over the time scale with a minimum conflict resolution tree of active feasible schedules for the
makespan criterion to maximise the utilisation of the system optimal schedule, instead of resolving all the conflicts one by
hardware. one and searching for the optimal with the GT algorithm. He
A Genetic Algorithm for Scheduling FMS 591

Table 3. Component-operation (/TT~i) matrix (example 2).

Sequence k 1 2 3 Due time


Part i j Tii D(i)

1 3 i 2
20 15 7 42
2 2 I 3
i2 9 4 25
3 2 3 -
7 9 - 16

Sl $2 $3 $4 $5 $6 $7 S8 $9 Sl0 Stl S12


Step 3, Resolve conflict and select the j o b Ci" which has
Fig. 2. Complete set of feasible schedules (tree diagram) for example 1. LB(Ci) = LBMIN
C1, C2, C3, conflict job numbers; rot, makespan time; S1-S12,
feasible schedules. This B - B method does not guarantee an optimal solution,
since there is a possibility of obtaining the same m i n i m u m
Table 1. Component-operation (J/~j) matrix (example 1). lower bound (LBMIN) value for more than one job. This
situation leads to a TIE between them. If the ties are resolved
Sequence k l 2 3 Due time arbitrarily, then the resultant one may not be the optimal.
Pm't i j T~i D(i) Example 2 given in Table 3 is one such problem with TIEs.
The tree diagram in Fig. 3 shows the lower bound TIE cases
t 3 1 2 and the possibility of obtaining a poor solution with an arbitrary
7 4 2 17 resolution of the TIEs. The computational complexity with the
2 2 3 I lower b o u n d determination and lower b o u n d tie situations,
5 6 3 23 which are inevitable with larger problems, restrict the appli-
3 2 1 3 cation of G r e e n b e r g ' s bound technique.
4 2 3 15

3.3 Extension of Greenberg's Technique to


Resolve LB TIE with pdrs
proposed a lower bound (LB) technique to find the optimal
schedule for the makespan criterion. T h e earliest completion Jawahar et al. [12] suggested a method to resolve lower bound
time of all the jobs at every scheduling point is the LB for TIEs in G r e e n b e r g ' s technique with pdrs. In this method, if
resolving the conflict among jobs. T h e conflict is resolved by there is more than one conflicting j o b having the same mini-
selecting one of the contending jobs that has the m i n i m u m LB m u m LB value at any stage of the conflict resolution, then
value to obtain the schedule. The schema of the B - B technique one of the simple pdrs given in Table 4 resolves the conflict.
is given below. W h e n e v e r a TIE arises, there are four different schedules, one
each for each pdr. The step by step procedure of the extended
BBT conflict f~( ) B - B technique is given below:
Step 1. Find lower b o u n d value LB(Ci) o f all contending jobs.
LB(Ci) = M a x i m u m of {EJ(i,Ci)} V i and Ci EBBT conflict fn( )
W h e r e EJ(i,Ci) is the earliest completion time of job Step 1. Find lower b o u n d value LB(Ci) of all contending jobs.
i when conflict j o b Ci is loaded. LB(Ci) = M a x i m u m of {lsJ(i, Ci)} V i and Ci
Step 2. Find minirnum value o f lower b o u n d Step 2. Find m i n i m u m value of lower bound
LBMIN = m i n i m u m of LB(Ci) V Ci LBMIN = m i n i m u m of LB(Ci) V Ci

Table 2. Feasible schedules for example 1.

Job i S1 $2 $3 $4 $5 $6 $7 $8 $9 SI0 Sl! $12


WC WC WC WC WC WC WC WC WC WC WC WC
t 2 3 I 2 3 t 2 3 t 2 3 1 2 3 1 2 3 1 2 3 I 2 3 t 2 3 t 2 3 t 2 3 1 2 3

S~ 8 t2 ! 12 16 1 17 21 1 12 I6 1 t9 23 12 27 3t 20 I9 23 12 22 26 i5 8 t2 1 8 t2 I 17 21 I0 23 27 16
F~ 11 13 7 15 17 7 20 22 7 15 17 7 22 24 18 30 32 26 22 24 18 25 27 21 lI 13 7 11 /3 7 20 22 t6 26 28 22
$2 14 1 8 16 1 8 14 l 8 21 1 15 12 1 6 12 1 6 12 1 6 12 1 6 16 5 10 17 5 11 23 5 i7 16 5 10
F2 16 5 13 18 5 13 t6 5 13 23 5 20 14 5 11 I4 5 ll 14 5 1t 14 5 tt t8 9 15 19 9 t6 25 9 22 t8 9 15
$3 12 6 14 I0 6 14 10 6 14 t0 6 12 15 6 19 15 6 17 10 6 t9 10 6 12 5 1 16 5 1 8 5 1 7 5 1 7
F3 13 91611 91611 91611 91416 921 t6 9 19 11 92I 11 914 6 418 6 410 6 4 9 6 4 9

Si: Start time of job i; F~: Finish time of job i.


592 N. Jawahar et al.

Code = 0 (SPT) : Select the one from the conflict set


having the smallest total operation
time processing time T~;
Return that job Ci;
Code = 1 (LPT) : Select the one from the conflict set
~ L B =58 having the longest total processing
LB=4 2 ~ LB=51 / time T~;
Return that job Ci;
Code = 2 (EDT) : Select the one from the conflict set
having the earliest due time Di;
LB4/~/N~ ~4j LB= 4 ~ L B =50 Return that job Ci;
Code = 3 (MINSLK) : Select the one from the conflict set
having the smallest slack time
( D i - 7",');
Return that job Ci;

3.5 Scope of GA to Scheduling Problems

This section addresses the principle behind the genetic search


(a) (b) (c) process, and the scope of the application of GA to scheduling
Fig. 3. Tree diagram for example 2. LB, lower bound for makespan. problems, as an introduction to the proposed methodology. In
(A) C2 is loaded at tie stage I; C2 is loaded at tie stage 2. (B) C3 is recent work on combinatorics, search algorithms atta'act much
loaded at tie stage 2. (C) C3 is loaded at tie stage 1. attention. Local search based heuristics are known to produce
excellent results in short run times, but they are susceptible to
Table 4. Priority dispatching rules and the respective codes. becoming struck in local minima. Evolutionary algorithms can
be formulated almost independently for the details of the
Priority dispatching rule Symbol Code problems under consideration. The formulation decides the
quality of the solutions. Local search offers further improve-
Shortest total processing time, (rain. Of T~) SPT 0 ment of solutions resulting from schedule generation heuristics
Longest total processing time (max. Of Ti) LPT l [14]. GA applies a local search operator in an evolutionary
Earliest due time (min. Of Di) EDT 2 framework. These algorithms, combine the advantages of both
worlds, the efficiency of local search and the robustness of
Minimum Slack time (min. Of (D~- Tg)) MINSLK 3
evolution [15]. Essentially, a GA is a set of procedures that,
when repeated, enables solutions for specific problems to be
found. GAs generate successive populations of alternative sol-
Step 3. Checking for TIEs and conflict resolution utions, until a solution that yields acceptable results is found.
If LBMhV is equal in more than one conflict job, then The various solutions of this family can be seen as samples
there is a TIE. In such cases, the TIE is broken using of the search space. They compete and cooperate through a
pdr and the conflict is resolved. number of iterations to achieve improvements. Within the
Otherwise, the job Ci that has LB(Ci)=LBMIN is generation of each successive population, there is an improve-
selected. ment in the quality of the individual solutions. In this way a
GA can quickly achieve a successful outcome without the need
It is concluded that no single pdr guarantees an optimal
to examine every possible solution to the problem [16]. There
solution, but one among the four provides an optimal solution.
will be a question regarding the time required for computation,
but the present-day speed of the computers makes this process
3.4 Direct Application of pdrs in GT Algorithm for acceptable. The increasing performance of modern computer
Scheduling systems allows the application of new algorithms such as GA
and simulated annealing, for production scheduling problems
Another simple approach that can be used to resolve the that required too much computing time in the past [17].
conflict among contending jobs and to prune the tree of feasible In recent work the GA is much used in scheduling. The
schedules in the GT procedure is the direct application of pdrs following work indicates the applications of GA in manufactur-
[13]. The conflict is resolved by selecting the job that ranks ing planning and scheduling. Kopfer and Mattfield [15] pro-
first according to the pdrs. This technique is presented below: posed a hybrid GA for the job shop problem and showed that
the results are encouraging. Schultz and Mertens [17] compared
PDRT Conflict_~n()/ * Sub program for resolving conflict
the GA with an expert system approach and priority rules.
with direct application of pdr*/
They indicated that the GA generally produces satisfactory
get : pdr code; schedules, and its performance depends on run time (i.e. popu-
Switch (pdr code). lation size and number of generations). Biegel and Davern [18]
A Genetic Algorithmfor Scheduling FMS 593

showed the method of applying genetic concepts to scheduling 3.6 GA Based Schedule Generation Methodology
problems. An elementary n-task, one-processor problem is pro-
vided to demonstrate the GA methodology for the job shop Instead of resolving conflicts using an extended B-B technique
scheduling (JSS) problem. Further, they extended the technique and the direct application of pdrs in the GT procedure, a
to the n-task on m-processor (serial) case. Their paper can be method is suggested which uses an optimal Wcwise-pdr set
used as a primer on applying genetic algorithms to the JSS (independent pdrs, one each for one WC). A genetic search
problem. Dorndorf and Pesch [19] proposed a GA based on process evolves the best WCwise-pdr set for minimising makes-
pan time. This resolves the conflicts in the GT schedule
the idea of using a chain of priority rules which fits the needs
generation procedure. This part addresses the details of the
of a particular problem. Within the GA each gene represents
genetic search process that evolves the optimal WCwise-pdr
a priority rule from the set of priority rules. While decoding
set, and the method of generating the schedule.
a chromosome, to generate a feasible schedule, the ith rule is
applied for scheduling the ith conflict in the schedule generation 3.6.1 Genetic Program for the Evolution of WCwise
procedure. In their GA process, they employed a GT algorithm Priority Dispatching Rule
[9] to generate an active feasible schedule and used the makes-
In the proposed GA, each gene (g) represents a pdr code (0,
pan time of the schedule as the fitness parameter. Billo et al.
1, 2 and 3), one each for one WC. Floating-point encoding
[20] illustrated the use of GA to solve problems associated
has been used to identify the pdr code. The chromosome (c),
with the formation of machine cells. The GA formulation
the length of which is equal to the number of WCs in the
included a fitness function that incorporated two competing
system, represents a WCwise-pdr set and is representative of
objectives: a feasible solution. The position of the gene in a chromosome
1. Maximise similarity of parts. indicates the WC number and the pdr code in that position
identifies the pdr for conflict resolution by that WC.
2. Minimise number of cells. The genetic search process starts with a randomly generated
Weindal and Garlichs [21] presented a GA for the decentral set of chromosomes (WCwise-pdr sets) called the initial popu-
production scheduling of an assembly system. Dorndorf and lation. The size of the population (pop~ize) depends on the
Pesch [22] proposed another genetic search process that is solution space. The possible number of combinations of WCwise-
pdr sets are 4 ' ' where m is the number of WCs in the system.
encoded with machine numbers. In the proposed GA, the
Hence, the population size is related to the number of WCs in
operations are ordered by inserting the optimal sequences for
the system and has been assumed to be equal to the number of
each machine, which are obtained separately with a B-B
WCs in the system. The WCwise-pdr set of a chromosome is
technique, with respect to the machine order defined in the
applied in the GT procedure (the method to generate all schedules)
chromosome, and a feasible schedule is generated. This method
to give a feasible schedule. This produces a timetable with the
provides near optimal schedules but requires the performance of
start and end of the processing period, and the makespan time.
additional computation to find the optimal machine sequences.
The fitness parameter (fit(c)) is the makespan time. It is found
Sridhar and Rajendran [23] addressed a genetic search process tl'n-ough the schedule generated using the WCwise-pdr set and is
{'or part family grouping and scheduling parts within part represented by the chromosome c.
families in a flow-line based manufacturing cell. In their work,
the objectives of makespan and total flow-time have been fit(c) = makespan time con'esponding to clu-omosome c.
considered independently and together. The process of selecting the chromosomes to represent the
The reasons indicated by the various researchers who have next generation has the following steps:
used GA for scheduling are summarised as: 1. Conversion of the fitness parameter value to a new fitness
value (newer(c)), a parameter suitable for minimisation
1. The practical use of exact enumeration methods is restricted
to problem sizes of a few hundred operations. objective.
2. Most conventional schedule generation heuristics produce f/t(c)
newfit(c) = 1 F
only reasonable solutions.
3. Priority dispatching rules run the risk of missing the global Where F is the sum of the fitness parameter of all chromo-
shop floor goals. somes
4. Heuristical methods are very problem dependent. p o p size

5. This random search process is better than simulation in the g = ~ fit(c)


sense that it guarantees near optimal solutions in actual c=l

cases. 2. Conversion of the new fitness parameter to an expected


6. By changing the evaluation parameter of the genetic search frequency of selection (p(c)).
process, the solutions can be obtained for other suitable new fit(c)
objectives and can be made more flexible. p ( c ) = po, ~i~
7. The method can be extended with neural works in order to n~wjit(c)
find system specific operating strategies for operational man- e-i

agement. 3. Calculation of the cumulative probability of survival (cp(c))


594 N. Jawahar et al.

cp(c) = ~ p(c) The purpose of mutation is to introduce new genetic material,


e=l or to recreate good genes that were lost by chance through a
poor selection of mates. To do this effectively, the effect of
A random selection procedure, which is explained below,
mutation must be a major one. At the same time, the valuable
generates the next population of the same size. A random
gene pool must be protected from wanton destruction. Thus,
number r between 0 and 1 is obtained and a chromosome c is
the probability of mutation would be small [16]. On the above
selected which satisfies the following condition:
grounds, the value of the probability of mutation (p_mut) has
c p ( c - I) .<- r ~ c p ( c ) been assumed to be 0.05.
This selection process is repeated a number of times equal to The repetition of the whole process (iteration) of evaluation,
the population size. The method used here is more reliable in selection, reproduction and mutation depends on the size of
that it guarantees that the most fit individuals will be selected, the problem. The number of iterations is related to the number
and that the actual number of times each is selected will be of jobs n to be scheduled, and has been fixed as 4 × n, subject
its expected frequency + I. This procedure enables the fittest to a maximum of 100. The best chromosome in each iteration
chromosome to have multiple copies and the worst to die off. is stored, and the best among those stored is the optimal one.
The next step is to carry out the crossover operation, which The above procedure is followed on similar lines by most of
is a reproduction method. This involves two steps: the workers in this field [15,18,20,23]. The genetic search
process for the evolution of the optimal WCwise-pdr set is
1. Selection of chromosome for crossover. outlined in Fig. 4 and the algorithm is presented in the
2. Crossover operation. schema below.
The probability of crossover (p_cross) is the one vital para- GPEOWCPDR (Genetic Program for the Evolution of optimal
meter that needs attention at this juncture. The value for Wcwise-pdr)
p_cross has been assumed to be 0.3, so that at least 30% of
the chromosomes selected for the new population will undergo # define p cross = 0.3, p J n u t = 0.05, no_it = 4n;
the crossover operation and produce offspring. The procedure for (i = 1 to n ) / * input: component-operation matrix(job data) *
/
tbr this selection is as follows. Random numbers between 0
for ( k = l to m)
and 1 are generated for all chromosomes and those chromo-
somes that obtain a random number less than the p___crossvalue
input : j and %j;
are the chromosomes selected for crossover. If the number of
selected chromosomes is odd, then the above procedure is (if number of operations to any job i is m', which is less than
repeated until one more chromosome gets selected and the m then assign j = 0 and T~j = =0 for the remaining ( m - m')
operations)
number of selected chromosomes becomes even. The genetic
literature addresses many crossover operators [14]. Notable
set it no = 0;
among them are: partially mapped crossover (PMX), ordinal
set: length of the string (chromosome) chr_len = m;
mapped crossover (OMX) and edge crossover (EX). They
set: no of chromosomes in the population pop_size = m;
use either single-point crossover or two-point crossover. This
program uses the EX crossover method because of its simplicity /* initialisation of population (pdr to be followed by
in operation and because the chromosome is short. This splits each machine) */
the parent chromosomes into two parts with a random number for (c = 1 to pop_size)
generated with the range 1 . . . ( m - 1) and interchanges the
genes from that crossover position. for (g = 1 to chr_len)
generate: random pick of pdr code (0, 1, 2 & 3) i.e.
pdr codes of W C j ;
[' Read : Job data % .
BEGIN:
V /* creation of new population */
! i;,]iiallselWCwise-par sets %
it_no. = it_no + 1;
-~[ Generate : Schedules, ~..~j /* evaluation of individuals and probability
of
survival of chromosome c */
[,,Evaluate : population~
(a) for (c = 1 to pop_size)
.e;a e Sew "+ ..................... (
I Select :Members for next generation% find: fit)c); new_.fit(c); p(c);
}
V
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . ,o,: % store:best schedule and the best chromosome (the pdr
to be followed by machines);
NOt satisfied [Check : Terminating l calculate : cumulative probability cp(c) for each chromosome c;
/* selection of chromosomes for next generation */
Sa ,?ed I for (c = 1 to pop_size)
1 Sort the best WCwise - pdr set and schedule
(
Fig. 4. Genetic search process for optimal WCwise=pdr set. get random number r;
A Genetic Algorithm .for Scheduling FMS 595

Table 5. Component-operation matrix of example 3.

Component-operation matrix j/T U Total processing Due time Due time


time T~ multiplier D~
k 1 2 3 4 5 6

l 2 1 3 5 6 m
70 4
24 16 20 10 10 280
2 3 2 ! 6 - t20 3 360
35 30 40 15 _ o m

3 2 1 3 4 5 5 6 80 2 160
20 25 t5 10 5
5
4 1 3 2 5 6 4 150 5 750
25 35 45 15 20 10
5 2 l 3 4 6 ll0 6 660
30 20 40 10 10
6 2 1 3 6 4 5 90 5 450
20 20 30 15 10 5
7 3 1 4 6 - 60 4 240
t5 i5 20 10
8 I 2 6 5 - 90 3 270
40 10 15 25
9 2 4 6 - - 50 2 100
12 23 15 -
10 3 2 5 4 - 120 3 360
35 45 30 10

TabLe 6. Initial population of the pdr codes, Table 9. Population to represent next generation.

WC number j 1 2 3 4 5 6 New chromosome 1' 2' 3' 4' 5' 6'


Chromosome number c number c "

1 1 1 3 1 2 0 Generated random0.6309 0.2538 0.1627 0,8413 0.7572 0.4409


2 3 1 1 I 3 2 number r
3 1 0 1 0 1 I
Old chromosome 4 2 1 6 5 3
4 0 l 3 0 3 2
number c
5 l 0 3 2 1 3
6 2 I 0 2 0 1

Table 10. Chromosomes selected for crossover,

Table 7. Fitness value of the initial population. Random number r0.4409 0,3507 0,0079 0.4224 0.5220 0.7023

Chromosome number c 1 2 3 4 5 6 r less than p crossno no yes no no no


Selected - - 3'(1) - - -
Makespan time fit(c) 425 489 309 353 346 384

Table 11. Parents and offspring.


Table 8. Probability of selection of chromosomes.
Parents Chromosome 3"(3') ~ 1 3 1 2 0
c l 2 3 4 5 6 Null chromosome O"(O') 0 0 0 0 0 0
Offspring Crossed chromosome 3"' 1 1 0 0 0 0
p(c) 0.1631 0.1576 0.1732 0,1694 0.1700 0.1667 Crossed chromosome 0"' 0 0 3 1 2 0
cp(c) 0.16 0.32 0.49 0.66 0.83 l
596 N. Jawahar et al.

Table 12. New population. find chromosome c satisfying the condition


cp(cp - l) -< r -< cp(c);
jl 2 3 4 5 6 select c for next population and set as c';
Cr
I
/

/* selection of strings for crossover module */


1'(4) 0 1 3 0 3 2
2'(2) 3 1 1 1 3 2 count = 0;
3'(3"') 1 1 0 0 0 0 for c ' = 1 to p o p _ s i z e
4'(6) 2 t 0 2 0 1 {
5'(5) 1 0 3 2 1 3 get r a n d o m n u m b e r r;
6'(3) 1 0 1 0 1 1
if r ~ p _ c r o s s
{
select c' and label as c " ;
count = count + 1;
}
}
if count is odd
Table 13. Schedule for the example problem.
add a null c h r o m o s o m e O ' (all the pdr codes are zero);
/* crossover operation */
i j st~j ftij
while(all parents exhausted) do
1 2 50 74 {
1 1 90 106 get : one parent c " and c " + 1;
1 3 106 126 spin : a cut point randomly between 0 and c h r _ l e n ;
1 5 149 159 do : cross over;
t 6 159 169
2 3 50 75 set : c h i l d as c ' " and c ' " + 1;
2 2 119 149 overlap : c r o s s e d c ' " with their respective uncrossed
2 1 149 189 c';
2 6 189 204 }
3 2 12 32
/* mutation operation */
3 1 65 90
3 3 90 105 for ( c ' = 1 to pop_size)
3 4 105 115 {
3 5 t59 164 for (j = 1 to c h r _ l e n )
3 6 169 174 {
4 1 40 65
4 3 126 161 get : random n u m b e r r;
4 2 199 244 if r -< p _ m u t
4 5 244 259 mutate the gene g;
4 6 259 279 }
4 4 289 299 }
5 2 169 199
5 1 209 229 if ( i L n o --< n o J t ) , then goto BEGIN:
5 3 239 279 select: best a m o n g the best schedules from the iterated sol-
5 4 279 289 utions;
5 6 289 299 END:
6 2 149 169
6 1 189 209
6 3 209 239 3.6.2 Illustrative Example
6 6 239 254
6 4 254 264 The input job data of 10 jobs that requires processing on 6
6 5 264 269
7 3 0 15 W C s (example problem 3) is given as a c o m p o n e n t - o p e r a t i o n
7 l 106 12l matrix in Table 5.
7 4 159 179
7 6 204 214
8 1 0 40 Generation of Initial Population. For each WC [ 1 . . . j . . . m]
8 2 40 50 generate an integer r a n d o m n u m b e r [ 0 . . . 3] and put as a
8 6 50 65 string. The position n u m b e r represents the W C n u m b e r and
8 5 65 90 the n u m b e r in that position is the pdr code to be followed by
9 2 0 12
9 4 12 35 that WC. Similarly generate m strings. Each string represents
9 6 35 50 one c h r o m o s o m e and Table 6 gives the entire population.
10 3 15 50
10 2 74 119
10 5 119 t49 Determination of the Fitness Value. The makespan time
10 4 149 159 of the schedules obtained using WCwise-pdr set of all the
c h r o m o s o m e s (c = 1 to p o p J i z e ) is given in Table 7.
A Genetic Algorithm for Scheduling FMS 597

Table 14. Make@an time of schedules generated with different methods.

Example X Makespan time of schedules generated with


Problem number
n = 10 Direct application of pdr TIEs resolved in branch-bound method with pdr W C - p d r evolved
m=6 through
SPT LPT MINSLK EDT SPT LPT MINSLK EDT GA

t 361 524 353 332 291 ~* 316 276 ;: 298 299


2 280 270 255 285 300 230* 255 295 255 ~*
3 195 210 235 225 160 .... 172 155 ~ 165 185
4 295 365 372 368 275 295 245 :~ 275 270 ~
5 300 350 325 315 280* 335 285 '~* 295 295
6 2t9 265 243 212 218 217 205** 209 203 *
7 270 200 185 210 200 180" 195 195 I85 ....
8 260 345 290 285 230* 230" 230* 230* 235 ....
9 430 455 535 515 380** 490 380 370* 395
i0 300 270 275 240** 244 280 230* 250 240 ....

11 248 272 263 253 244 237 225** 292 /96"


12 287 274 230 256 268 221 .... 259 292 200 '~
13 23I 222 293 220 188 * 197 244 192 19i *~
14 2t8 279 236 338 19F 204 240 240 t94 ....
15 231 277 268 215 204 152" 264 239 t96 ....
16 210 236 243 234 19l 232 185" 201 190 ....
17 303 314 323 330 367 225* 244 .... - 249
18 294 287 318 286 272* 296 - 300 239*
t9 294 303 360 340 256 340 244* 279 245 ~
20 292 300 33t 359 378 276 ~' 522 269 279 ....
Average compu- 0.0782 0.0921 0.0642 0.1093 45.2345 54.2340 46.3245 53.2341 3.7834
tational time (s)

X, data set of the example problems are given in the Appendix; *indicates the best solution; *°'indicates the second best solution.

Storo tho Bust Solution. The best schedule corresponds to Solution at (it_no) : 18th iteration
c h r o m o s o m e c = 3 and the makespan time is 309. Optimal WCwise-pdr : 1-2-2-0-t-1
Schedule : Table 13
Creation of Now Population. Total value of the evaluation
function of the population
pop-,vize
3.7 Performance Comparison
F = ~ fit(c) = 2306
c-- I
Varied c o m m e n t s on the feasibility of the application of the
proposed methodology to this scheduling problem are discussed
T h e probabilities of selection o f c h r o m o s o m e s and their respect- in this Section. The problems considered address a typical
ive cumulative probabilities, which have been calculated using range of problems for short-term planning. M a n y data sets
the parameter new fit(c), are given in Table 8. The random have been experimented with, and the results obtained com-
numbers generated and c h r o m o s o m e s selected for the next pared with the extended B - B technique and the direct appli-
generation are given in Table 9. The c h r o m o s o m e s selected cation o f pdrs. The makespan time of the schedules and the
with a p cross of 0.3 for crossover from the new set are computational time of a sample of twenty problems (randomly
shown in Table 10. Since only one c h r o m o s o m e is selected generated) obtained with all the methodologies is given in
(i.e. 3': 1 1 3 1 2 0), a null c h r o m o s o m e O ' ( 0 0 0 0 0 0 ) is Table 14.
added to m a k e the n u m b e r o f c h r o m o s o m e s selected even, and T h e extended B - B methodology takes m u c h more time and
they b e c o m e the parents ( 3 " and O " ) and undergo crossover. the computational complexity is also high. The direct appli-
The parents, and their respective offspring ( 3 ' " and O ' " ) , cation of pdrs for resolving conflict does not guarantee optimal
produced with a crossover point 3, are given in Table 11. The or near optimal solutions and no generalisation is possible.
crossed Y " replaces the 3 ' and becomes 3' in the new The computational time is less than for the other methods; but
population. No element has been selected for mutation. The the weakness of this method is that most of the time it provides
new population obtained after crossover and mutation is given poor solutions.
in Table 12. The application of a genetic algorithm (with classical genetic
operators) to this problem is useful as the values of the
Tormination. Repeat the steps of generation and evaluation objective function are optimal, or very close to the optimal.
of the new population until i t _ n o = no__it.
The values obtained are comparable to the best solution obtain-
able with the extended B - B technique. Also a near optimal
fqosu/t. Best makespan time : 299 solution can be obtained with reasonable computational time.
598 N. Jawahar et aL

Table 15. Computational time with GA based heuristic. Scheduling schemes

Number of jobs n Number of WCs m

m =4 m=5 m =6
CT CT CT Real time Off-line Off-line rescheduting

l0 2.09 3.08 2.8


20 t0.82 17.09 28.79 Conventional/Regeneration Use/Edit
30 35.5 41.21 72.86
40 70.77 120.99 188.24 Fig. 6. Classification of scheduling schemes.
50 i40.82 237.9I 282.31
60 247.03 463.71 575.93
70 431.32 607.2 917.64 at after any one of the following events: new job arrival,
80 596.43 965.39 1565.11
completion of one operation or job, resource failure, blocking,
90 778.35 1385.i7 1995.99
100 1046.98 1701.09 2878.63 congestion, etc. The decision is taken based on many system
attributes: resource requirements and their availability, criti-
cality of jobs, objective function, reliability of the components
of the system, and so on. In an off-line method, scheduling
The computational time increases exponentially with problem algorithms or mathematical programs determine the best sched-
size in the GA based methodology. The computation experience ule and execute the best schedule strictly, regardless of the
with the GA heuristic is given in Table 15 and Fig. 5. events occurring after its formation. This is a finite-capacity
detailed scheduling approach in which the allocations of
resources over a span of time (planning horizon) for each and
4. Concept and Methodology of every activity are planned in advance and a new schedule is
Rescheduling not constructed before the complete execution of the current
schedule. Off-line rescheduling is a mix of these two modes
4.1 Scheduling Schemes and so is sometimes called "hybrid". In off-line rescheduling,
a new schedule is generated upon the occurrence of some
Scheduling schemes are classified broadly into two categories,
prespecified real-time event. Further, the off-line rescheduling
real-time and off-line. In real-time scheduling, jobs are released
schemes can be classified into conventional/regeneration and
on an event basis in real-time, and it is an approach in which
use/edit methods based on the approach/concept of rescheduling
the decision to assign a job to a particular facility is arrived
[5]. In regeneration/conventional schemes the revision is carried
out by means of complete regeneration of the entire schedule.
Edit/use schemes revise only those operations that are affected
on the occurrence of unpredictable real-time events. A classi-
Number o f W C s 'm' = 6 fication of scheduling schemes is given in Fig. 6.

4.2 Rescheduling Concept


2200- The present work considers an FMS in which the parts arrive
2000- at the system in a random fashion and unpredictable events
occur. In such a case, no planning horizon can be fixed and
1800 ~
hence the allocation of resources and the subsequent control
Number of WCs 'm'
1600- must be on a real-time basis. Scheduling for an FMS is
comparable with the general scheduling schemes, but it needs
1400-
to respond to the changes in the state of the system influenced
g 1200- by both internal (resource failures) and external (marketing and
eL
technological) disturbances. This necessitates a good scheduling
O 1000-
scheme to address the dynamic environment. With this in
800- mind, the scheduling scheme for an FMS is normally carried

t.atComponon,O=onO nx Sch u'o hed 'orJ 1


I ManufacturingSystems
0 10 20 30 40 50 60 70 80 90 100
Job arrival Machine/Toolfailure [
Number of jobs

Fig. 5. Computational experience with GA based heuristic, Fig. 7. Proposed rescheduling scheme.
A Genetic Algorithm ¢or Scheduling FMS 599

Table 16. Data used for illustrating the concept of rescheduling.

Part number i Component-operation matrix Elapsed time (32) when part i Due time
(WC number j/operation time To) arrives in the system "D~"

Operation sequence k
1 2 3 4 5 6

1 1 2 3 4 5 6 0 144
10 12 15 10 20 5
2 2 1 4 5 . . . . 0 11(1
I5 20 I0 l0 - -

3 2 3 4 - - - 0 120
10 10 20
4 1 2 3 5 6 - 0 180
15 15 t5 10 10 -

5 2 1 4 3 6 - 0 240
25 30 20 10 20 -
6 3 1 2 5 6 - 0 lg4
20 30 12 10 20 -
7 1 2 3 5 6 4 0 225
35 10 10 5 5 10
8 2 1 3 4 6 - 0 I80
10 15 20 l0 5 -
9 1 2 4 3 5 - 60 270
3O 20 23 12 5 -

10° 3 - - - - - 100 100


10 - -

1! 1 2 4 6 - - 150 300
20 20 15 10 - -

12 2 I 3 5 6 4 190 340
2O 30 25 15 5 10

10~: WC3 breakdown.

Table 17, WCwise-pdr set for control at different time blocks. remain the same and the W C s do not fail, the FMS operates
with a control strategy set, which consists of pdr codes one
Time WCs priority dispatching rule codes Valid time for each W C (WCwise-pdr set). The WCwise-pdr set is revised
generated via GA block
as and when the state o f the system changes. The c o m p o n e n t -
operation matrix is updated at times o f disturbances to the
WC1 WC2 WC3 WC4 WC5 WC6
operation of the system, the genetic search procedure is
0 0 2 3 1 2 2 0-60 repeated and the new control strategy is evolved, The revised
60 0 2 0 1 0 0 60--100 WCwise-pd set then controls the operation of the system, The
100 0 0 0 2 3 2 I00-t50 scheduling/rescheduling m e c h a n i s m is outlined in Fig. 7, The
150 3 3 0 2 2 2 150-190 methods of updating the j o b matrix for new j o b arrivals and
190 2 0 1 0 0 0 190-next
machine breakdown cases are explained below.

4.2.1 New Job Arrival


out using either real-time or off-line rescheduling schemes.
Off-line rescheduling schemes are better in the sense that W h e n a new j o b arrives, after an elapsed time unit of X from
the last schedule, then the operations carried out up to the
1. They consider the future course of action.
elapsed time are the completed events and are not considered
2. Schedules can be generated in an optimal way, and a for rescheduling. The remaining operations of the old jobs and
detaited plan of activities is available for follow up. the operations o f the new jobs have been reschedtfled at a
In this context, the methodology suggested for rescheduling in time unit of X. The c o m p o n e n t - o p e r a t i o n matrix revises the
this paper is off-line rescheduling, with complete regeneration, operation time T~i of the completed events as zero and provides
to address the dynamic e n v i r o n m e n t of the FMS. a new schedule with the "updated c o m p o n e n t - o p e r a t i o n
The proposed rescheduling m e c h a n i s m specifies a particular m a m x " , The partially completed operations of the old jobs at
pdr to be followed by each W C in real-time according to the time X in a particular W C should not be interrupted, and
updated job matrix. As long as the parts under circulation continue their processing on that W C after rescheduling, While
600 N. Jawahar et al.

resolving conflicts, this factor is considered and the job under of the best route choice along with its optimal WCwise-pdr
processing on the WC at time X is loaded first. set for the generation of minimum makespan schedule.

4.2.2 Machine~Tool Failure


Whenever a processing facility fails and becomes unavailable for 5.1 Methodology for Evolving Best Routes and
a specified time duration, schedules need revision. The failure Optimal WCwise-pdr Set Combination
event has been assumed as an imaginary job that requires pro-
cessing on the WC under failure at time X with the topmost The proposed method is an iterative search process. In this
priority (by assigning a very large negative value of due time Di methodology, for all operations to be scheduled and associated
say -9999) and an operation time T~j which is equal to the with all the jobs, one feasible route rik is randomly selected
repair/replacement time. It is assumed that the repair/replacement from the alternative routes for operation k of job i. The facility
time is predictable and exactly known, on failure and sub- or WC numberj and the operation time Tij corresponding to
sequent revision. With this imaginary job, the component- the route choice k made for all the operations is the input to
operation matrix is updated, and revised schedules are obtained.
generate schedule. The schedule generating mechanism employs
GPEOWCPDR (Section 3.6) which provides a WCwise-pdr set
4.3 Numerical Illustration for Rescheduling for resolving conflict cases. The WCwise-pdr set generated in
the GA process resolves conflicts in the GT enumerative
The above concept of rescheduling can be applied to any size technique and gives a feasible and near optimal schedule. The
of problem. In this section, a small problem is illustrated to optimal WCwise-pdr set for conflict resolution, the resultant
show how the scheduler/rescheduler operates for controlling schedule, the corresponding schedule and the performance eval-
the parts flow in a random FMS in real-time. uator of makespan time are recorded. The above procedure
The data used for the purpose of illustration is given in (called one iteration, i.e. it_ran = 1) of the random route
Table 16. The system considers six WCs. Initially there are 8 choice selection for operations, the schedule generation with
parts (labelled as 1 to 8). New jobs 9, 11 and 12 arrive at the
GPEOWCPDR and the recording of the relevant information
system at 60, 150 and 190 time units. WC3 fails at 100 time
of makespan time, is carried out a number of times (no_ran).
unit and requires 10 units of time for rectification. The WCwise-
The number of times the procedure is repeated depends on the
pdr set evolved through the proposed genetic process at times
available number of route choices. In this analysis, it is
0, 60, 100, 150 and 190 are given in Table 17 and will control
assumed arbitrarily to be fifty and is left to the choice of the
the flow of parts during the specified time blocks. The sched-
user. This is given in the schema as follows.
ules to be followed by different time blocks, which undergo
change along with the state of the system (updated component- Schema of the proposed GA for the selection of alternate
operation matrix), are given in Table 18. The following data route choice
have been used in the genetic search process: p__cross:O.3;
p_mut : 0.05. BEGIN:
it_ran = 0;/* it_ran: Random search iteration number */
4.4 Scope of the Proposed Rescheduling Concept do
{
The proposed concept is off-line regeneration with the updated for all jobs ( i = 1 to n)
component matrix which evolves a new control strategy using /* i: job number*/
the GA process as and when the state of the system changes. for all operations (k = 1 to km)
This ensures an optimal or near optimal schedule. Since the /* k: Operation number */
regeneration is carried out by repeating the GA procedure, the
schedule can be revised for any size of problem. The major /* km~: Maximum no. of operations for job i' */
concern in this proposed methodology is its computation time. random select route qk from available routes;
The computation time limits its application domain. The com- get facility j and processing time T4j of the selected
putation time increases exponentially with problem size (Fig. 5). r o u t e rik;
Hence this methodology is best suited to small to medium size }
problems. However, this method can also be applied to large generate schedule using genetic search module
problems provided the operation times for individual processes GPEOWCPDR;
are sufficiently longer than the required computing time ibr record the optimal schedule;
rescheduling, and the computing speed is sufficiently high. }
while (iLran --< no_ran);
/* no J a n : Number of iterations */
5. GA Based Heuristic Extended for compare the different schedules of various route choices;
Alternative Routes select the best route combination for makespan objective;
print result: Best route combination, WCwise-pdr set and
In this section, a GA heuristic extended to handle alternative its corresponding schedule
route choices is presented. This extension enables the selection END:
r~
,E P'~O D-- t - - e q e - - t'--
,~ u% ~ h% --* O 0 ~0 ~--4 C q ¢ q ~ C',l ~ 1 C-I C ' l C q
~m~ Z Z Z Z Z
~3
o ~ ~ o ~ ~ o < < < < < < < < < <
i ~ e ~ ~ Z Z Z Z Z Z Z Z Z
o ~ ~ ~ ~ ~ ~ o ~ ~ ~ ~ ~ ~ < < < < < < < < < <
o- - ~o ~ ~~ ~
~
~~ ~ ~
mm
~~ m m ~ ~o
~ ~< << ~< << <
~< < < < < <
Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z
< < < ~
o
z
z
602 N. Jawahar et al.

5.2 Illustration with an Example ation, the facility number and the operation time for all possible
routes is given as the component-operation matrix (job data)
in Table 19.
In this Section the approach employed to include alternative For all operations associated with all jobs, one route for one
route choices is illustrated with a randomly generated sample operation is randomly selected. With those selected routes, the
problem. Since the purpose of this illustration is to obtain an job matrix is read out and the operations are scheduled with
insight of the working of the algorithm, a small problem is that job data. The routes selected, the job data and the optimal
considered. However, the methodology has no restrictions on schedule generated with that data are given in Table 20. This
the size of the problem. The computation involved with larger is random search process number one and the makespan time
problems (more WCs m, large number of parts n, more alterna- corresponding to it as 148.
tive choices for each operation r~k) is very high since the entire The random selection of route choices for all the operations
G A procedure has to be repeated more times (it~ran) and and the schedule generation has been carried out fifty times
each G A cycle requires a computation time which increases and the best route choice is selected, based on makespan
exponentially with number of jobs and WCs. criteria. The best route choice combination data and the result-
The number of jobs to be scheduled is 5 (i.e. n = 5). The ant optimal schedule that is obtained in the 26th iteration is
number of WCs in the system is 8 (i.e. m = 8), with which given in T a b l e 2 t . The makespan time corresponding to this
all the operations are carried out. The number of operations is 122. The average time taken for one iteration in the above
associated with each job, the number of routes for each oper- problem is 1.4 on a 486 D E L L system.

Table 19. Data used for illustration.

Job number i Operation number k Route r~k WC number j Operation time To

1 1 1 I 20
2 2 22
3 3 24
2 l 4 10
2 5 18
3 1 6 10
2 7 15
4 1 8 5
2 1 1 1 24
2 2 28
2 1 3 18
2 5 22
3 1 4 20
2 8 30
4 1 6 15
2 7 18
3 1 1 1 20
2 1 3 15
3 l 4 18
4 1 7 22
5 1 5 10
6 1 6 13
2 8 15
4 1 1 2 20
2 1 4 22
3 1 3 24
4 1 5 12
5 1 8 10
5 1 1 1 15
2 3 18
2 1 2 20
3 l 5 24
2 6 i0
4 l 4 5
5 1 7 6
2 8 9
r~ ~r

B
cr Q-
t~
--i
0

0 o

o
¢r t)

~o
© ©

©
i
_m &

C booo o
c~
F~
© =o

GO
~ o o o ~ 0 ,m

c~

ml c~
~n
~ 0 0 ~
604 N. Jawahar et aL

5.3 Limitation of the Proposed Methodology References

In this case also, the primary concern of the methodology is


the computational time. The computation time required to 1. D. A. Taglia and M. Santochi, "A software architecture for FMS
obtain an optimal solution for the above problem with fifty simulation and control", Annals CIRP, 42(t), pp. 489-492, 1993.
2. D. C. Li and I.-S. She, "Using unsupervised learning technologies
iterations is 70 s. This is comparatively long and is questionable to induce scheduling knowledge for FMS", International Journal
for application to a larger problem. However, it can be used of Production Research, 32(9), pp. 2187-2199, 1995.
for any static problem of any size where the computation is 3. P. Mellor, "A review of job shop scheduling", Operation Research
carried out at an earlier date and the schedule can be con- Quarterly, 17(2), pp. 161-171, 1966.
structed before the start of the operation. The restriction of the 4. P. Brucker, Scheduling Algorithms, Springer-Verlag, Berlin-Heid-
elberg, 1~ edn, 1995.
number of possible choices with economical routes and avoid- 5. L Hutchison, "Current and future issues concerning FMS schedul-
ing congestion in a particular WC widens the application ing", International Journal of Management Sciences, 19(6),
domain in the flexible manufacturing scenario. pp. 529-537, 1991.
6. M. P. Fanti, E. L. O. Valvo, M. Piecentini and G. Piscitellil,
"Real-time routeing selection in flexible manufacturing systems",
Proceedings of IMTDR Conference, New Delhi, pp. 727-732, 1993.
6. Conclusions 7. N. Nasr and E. A. Elsayed, "Job shop scheduling with alternative
machines", International Journal Production Research, 28(9),
In this paper, a GA based heuristic, which uses a GT procedure pp. 1595-1609, 1990.
along with pdrs, for FMS scheduling problems with makespan 8. M. A. Nascimento, "Giffler and Thompson algorithm for job shop
scheduling is still good for flexible manufacturing systems", Jour-
as the criterion, has been addressed. A comparison in terms of nal of the Operational Research Society, 44(5), pp. 521-524, 1993.
makespan time of the schedules and computation time has been 9. B. Giffler and G. L. Thompson, "Algorithms for solving production
carried out. The comparison indicates that the GA based heuristic scheduling problems", International Journal of Operations
search process is suitable for FMS scheduling problems because: Research, 8, pp. 487-503, 1960.
10. M. H. Kim and Y.-D. Kim, "Simulation based real-time scheduling
1. The computational time is reasonable. in FMS", Journal of ManufacturingSystem, 13(2), pp. 85-93, 1994.
11. H. H. Greenberg, "A branch and bound solution to the general
2. The solution is closer to other methodologies and capable scheduling problem", International Journal of Operation Research,
of providing solutions nearer to optimal. 16, pp. 353-361, 1968.
3. By changing the evaluation parameter of the genetic search 12. N. Jawahar, P. Aravindan, S. G. Ponnambalamand A. Arvindkarthi-
process, solutions can be obtained for other suitable objec- keyan, "Branch bound technique in combination with priority dis-
patching rules for scheduling FMS", Proceedings of the International
tives and can be made more flexible. Conference on CAD/CAM, Automation, Robotics and Factories of
4. The method can be extended with artificial neural works in the future (INCARF'96), New Delhi, pp. 143-150, 1996.
order to find system-specific operating strategies for oper- 13. K. R. Baker, "Introduction to Sequencing and Scheduling", Wiley,
New York, 1974.
ational management and can be used for the development
14. Z. Michalewicz, "Genetic Algorithms + Data Structures = Evol-
of an expert system by inducing scheduling knowledge in ution Programs", Springer-Verlag, Berlin-Heidelberg, USA, 1992.
an FMS environment. 15. H. Kopfer and D. C. Mattfield, "A hybrid search algorithm for
5. The heuristic search process can be regarded as better than the job shop problem", Proceedings of the First International
Conference on Operations and Quantitative Management, Vol. 2,
simulation in the sense that it guarantees near optimal pp. 498-505, 1997.
solutions in actual cases. 16. T. Masters, "Practical Neural Network Recipes in C++", Academic
6. Rescheduling with regeneration guarantees the solution qual- Press, USA, 1993.
17. J. Schultz and P. Mertens, "A comparison between an expert
ity whatever the state of the system parameters and system, a GA and priority for production scheduling", Proceedings
addresses real-time operation. of the First International Conference on Operations and Quantitat-
7. The extensions to handle alternative route choices and to ive Management", vol. 2, pp. 505-513, 1997.
revise the schedules in real-time operations lead to signifi- i8. J. E. Biegel and J. J. Davern, "Genetic algorithms and job shop
scheduling", International Journal of Computers and Industrial
cantly enhanced productivity. Engineering, 19(1-4), pp. 81-90, 1990.
The applicability of the GA based methodology has consider- 19. U. Dorndorf and E. Pesche, "Combining genetic and local search
for solving the job shop scheduling problem", APMOD93 Proceed-
able potential application to manufacturing with further ings, Budapest, pp. 142-149, 1993.
refinement in certain aspects, as outlined below. 20. R. E. Billo, B. Bidanda and D. Tate, "A genetic algorithm
formulation of the cell formation problem", Proceedings of the
1. It requires a fast rescheduling mechanism. 16'h International Conference on Computers and Industrial Engin-
2. The approach needs to include other hardware elements of eering, 7-9 March, pp. 341-344, 1994.
the system to make the scheduling task an integrated one. 21. E. h. H.-P. Weindahl and R. Gartichs, "Decentral production
scheduling of assembly systems with genetic algorithm", Annals
3. Analysis has to be extended for faster convergence with CIRP, 43(1), pp. 389-395, 1994.
fewer iterations and to reduce the possibility of getting 22. U. Dorndorf mid E. Pesch, "Evolution based learning in a job shop
trapped in a local minima. environment", Computers and Operations Research, 22, pp. 25-40,
1995.
4. Development of a systematic approach for determining the 23. J. Sridhar and C. Rajendran, "Scheduling in flow shop and cellular
methodologies or the values of the major ingredients of the manufacturing with multiple objectives - a genetic algorithmic
genetic operators specific to scheduling problems, such as approach", International Journal of Production Planning and Con-
crossover and mutation. trol, 7(4), pp. 374-382, 1996.
A Genetic Algorithm .for Scheduling FMS 605

Nomenclature Appendix

(pdr string) number in a population


C , C ~ C ~ C t~t chromosome
Example 1
Ci contending job identifier/number
cfm conflict WC identifier j T~
chn_len length of a pdr string/chromosome (equal to number of
_ 2413 2
WCs in the system)
.... 1612 3 , i 25
cp(c) cumulative probability of chromosome c ... 2011 4 3 115 ~o~
d,,, due date multiplier ' m!6 ~ 4 11o 6 .* I 10 /
Di due time (i.e. D~ =dm * Ti)
DT datum time 0t0
E(i,Ci) earliest completion time of job i when one of the con- ), 2801 360 160 750 4soi 2~L 27oI ~
tending job Ci is loaded
fit(c) fimess value (makespan time) of chromosome'c'
Example 2
F sum of the fitness values (makespan time) of all chromo-
somes in a population t 2 3 4 5 6 7 8 9

FG finish time of operation k of job i k j 1 Tij J TII J Tii J T,I j Tu j T~I j IT. " "
1 I 10 4 20 2 ,02
g position (gene representing pdr) number in a chromosome
2 2 ,0 3 10 3 25
i job number
a 3 ,0 2 ,0 , 20
it_no iteration number in genetic search process 4 4 ,0 t 20 6 10 5 20 4 2° 5 2° 4 2C 5 2C~10
it_ran random route search iteration number , lOlO o
J work cell (WC) number ;. 6 5 6 5 ~i 0 0
k operation sequence number 150 901 140

kml maximum number of operations for job i


L~j loading time of job i at WC j
Example 3
LB(Ci) lower bound value when conflict job Ci is loaded
LBMIN minimum of LB(Ci) V Ci
m number of WCs in the system ' 7i IT,i[, IT, i
l ,} 101 2 25
M><i~> time of machining an operation y of job i at WC j ' l~3 301 I a0 3
n number of jobs 1120 , 20 ol ol I io ol o 412o I ll*0t 5
NcJi number of contending jobs at times of conflict 4 5 20 61 lO :o 1o oI oI 4 :o oi o !
no__it number of genetic iterations 5 0 0 0 0 6 10 0 0 / 0[ 0[ 0 0 0 0 0 0 4 2 o~

no_ran number of random search iterations 6 0 0 0 0 ~o oo oi° ° ototo o o o °I 0


D~ 105 ,50 300 90 20 80 i 10 150 84 ._~
ODT old datum time
p cross probability of crossover
p_mut probability of mutation Example 4
p(c) probability of selection of chromosome c for next gener- i 1 2 '~ 3 I 4 ] s 6'
ation
pop__size size of the population l 2 10 2 15 3 10 1 30 1 40 3 t to 11 log 2I lo
Q batch size (Q -> 1) 2 2 20 l 10 I 25 2 ,0 2 25 31 15
F random (float) number 3 3 10 4 25 4 20 1 20 3 20 5 l0 4 I0 1 25 31 20 3 28
route number for the kth operation of job i 4 4 20 3 ,0 3 tO 5 10 5 2 6 10 s 206 5 4 i 2° 5
5 5 20 5 15 6 5 6~ 5 0 0 0 0 6 5 5 5 5~25 i 4 10
ST~ start time of operation k of job i
6 6 10 6 20 5] 5 0 0 0 0 u 0 o o o o ~_~oL~_5
r~ processing time of job i on machine j
90 180 ,20 1651} 144 200
j=m D,
L
total processing time of job i (i.e. T,= ~ T0)
Example 5
~Sy(o) tool changeover time between each machining activity for
job i at WC j i 1 2 ~ 4 s 6 7 8 I ~ to
ULy(ij) unloading time of job i at WC j J /T~I j T~ j T~ j Tgi j Ti~ j Tit j T ~ .
set-up time between each machining activity for job i at 1 2 10 1 30 2 40 1 20 3 10 3 20 2 _ 1 ~ 1 0 ~ 40 4 I0
WSy(ij)
WC j 7, 3 15 2 50 3 20 3 20 2 5 2 10 4, 10! 2]201 3-'~ 6 10!

2D array of p rows and q columns a 125 340 510 240 110 4 i0 0 oi 3130 ~12c 1!0
x~q
2- ~20 420 410 430 5 5 620 0 oiszo~i~@o
Y machining operation number in a WC
61o 0 0 °20 1o!4 0 0 0 0i o , 0 o
number of machining operations involved with job i on
we j 0000002601° 000 o N 4 0 41 l0 01 c 0 ol
!1~ 160 420 250 140 ,20 0 300 ~_ 90
o

{ { {
o o o

o o ,,~

{ E
F~
m

You might also like