
Genetic Algorithms for Combinatorial Optimization The Assembly Line Balancing Problem Michael C Ferris Edward J Anderson Computer Sciences Department University of Cambridge University of Wisconsin Judge Institute of Management Studies Madison Wisconsin Mill Lane Cambridge CB RX England ferriscswiscedu ejaphxcamacuk August Revised June Revised January Abstract Genetic algorithms are one example of the use of a random element within an algorithm for combi natorial optimization We consider the application of the genetic algorithm to a particular problem the Assembly Line Balancing Problem A general description of genetic algorithms is given and their sp ecialized use on our testb ed problems is discussed We carry out extensive computational testing to nd appropriate values for the various parameters asso ciated with this genetic algorithm These exp eriments underscore the imp ortance of the correct choice of a scaling parameter and mutation rate to ensure the go o d p erformance of a genetic algorithm We also describ e a parallel implementation of the genetic algorithm and give some comparisons b etween the parallel and se rial implementations Both versions of the algorithm are shown to b e eective in pro ducing go o d solutions for problems of this type with appropriately chosen parameters Subject classications Programming combinatorial optimization parallel pro cessing Pro duc tionScheduling assembly line balancing Keywords Genetic algorithms combinatorial optimization parallel pro cessing assembly line balancing Introduction Algorithms based on genetic ideas were rst used to solve optimization problems more than twenty [4] years ago following the development of the fundamental ideas of genetic algorithms by John Holland at the University of Michigan During the s this work continued but was largely unknown In the last few years however there has b een increasing interest in genetic algorithms [25 , 6] [7, 8, 13] see for example the conference pro ceedings and the b o oks A number of researchers have lo oked at the application of genetic algorithms to optimization of nonlinear functions our interest however is in the application of this technique to combinatorial optimization problems There has b een a variety of work done in this area much of it considering [19, 29, 16] the application of genetic algorithms to the solution of the travelling salesman problem This is not surprising given the imp ortance of the travelling salesman problem and its frequent use as a vehicle for testing new metho ds in combinatorial optimization However there are particular diculties with the use of a genetic algorithm for the travelling salesman problem and it is our b elief that the usefulness of the metho d for other combinatorial optimization problems cannot b e fairly assessed on the basis of its p erformance on the travelling salesman problem alone It is appropriate to start with an outline description of the way in which a genetic algorithm works The metho d op erates with a set of p otential solutions This is referred to as a population and members of the p opulation are sometimes called individuals The p opulation changes over time but always has the same size N say Each individual is represented by a single string of characters At every iteration of the algorithm a tness value f ii N is calculated for each of the current individuals Based on this tness function a number of individuals are selected as p otential parents These form what is sometimes called a mating p o ol The mating p o ol will have N members but some will b e duplicates of each other so that it contains several copies of some individuals in the current p opulation and no copies of others Individuals which are not selected for the mating p o ol are lost Two new individuals can b e obtained from two parents in the mating p o ol by choosing a random p oint along the string splitting b oth strings at that p oint and then joining the front part of one parent to the back part of the other parent and vice versa Thus parents ABCABCABC and AABBCCCBA might pro duce ospring ABCBCCCBA and AABABCABC when mated This pro cess is called crossover It is not necessary for every member of the mating p o ol to b e involved in crossover some will b e left unchanged Individuals in the mating p o ol may also change through random mutation when characters within a string are changed directly Normally each character is given such a small probability of b eing changed that most of the time individuals are left unaltered The pro cesses of crossover and mutation are collectively referred to as recombination The end result is a new p opulation the next generation and the whole pro cess rep eats Over time this leads to convergence within a p opulation with fewer and fewer dierences b etween individuals When a genetic algorithm works well the p opulation converges to a go o d solution of the underlying optimization problem and the b est individual in the p opulation after many generations is likely to b e close to the global optimum A mo del algorithm is given in Exhibit I Exhibit I Mo del Algorithm rep eat for each individual i do evaluate tness f i create mating p o ol of size N based on tness values f i for i to N do remove pairs of individuals fj k g from mating p o ol recombine using individual s j and k until p opulation variance is small A more detailed description of some elements of the metho d is given in the next section It is imp ortant to realize that we have chosen one simple metho d of implementing a genetic algorithm as has b een describ ed by Gol There are many other versions which have b een suggested some of which do not op erate on a generation by generation basis and others of which use dierent mechanisms for repro duction At the heart of all these metho ds however is the idea that go o d new solutions can b e obtained by using as building blo cks parts of previously existing solutions There has b een an increasing interest in the use of search techniques which contain a sto chas tic element as metho ds for the solution of hard combinatorial optimization problems Simulated [23 , 9, 14] [12, 17] Annealing has this prop erty as do es Tabu Search in some implementations There has also b een some recent work which has considered techniques which combine lo cal search and [1] the genetic algorithm ideas outlined ab ove For example Aarts et al have shown that such a technique is comp etitive with Simulated Annealing for some job shop scheduling problems Also [20] recent careful computational work by Johnson et al has demonstrated that simulated annealing for example can b e comp etitive with the b est available heuristic metho ds for certain very large combinatorial optimization problems This is the context in which the genetic algorithm approach should b e evaluated An optimistic assessment of the p otential of this metho d is that for at least some dicult combinatorial problems a suitably tuned genetic algorithm may b e comp etitive with the b est available heuristic techniques There are a number of similarities b etween a genetic algorithm and other sto chastic search techniques The running time of these metho ds will dep end on certain parameter settings with a greater likelihoo d that an optimal or nearoptimal solution is found if the algorithm is allowed to run for a long time Also such metho ds have applicability across a wide range of problem domains part of their attraction is that they hold out the promise of eectiveness without b eing dep endent on a detailed knowledge of the problem domain One of the ma jor dierences b etween genetic algorithms and other sto chastic search metho ds is that genetic algorithms op erate using a whole p opulation of individuals and in this sense they have a kind of natural parallelism not found in Simulated Annealing or Tabu Search techniques It is not easy to assess the eectiveness of this type of algorithm For any particular problem there are likely to b e sp ecial purp ose techniques and heuristics which will outp erform a more general purp ose metho d In a sense this may not b e imp ortant One advantage of simulated annealing for example is that for many problems a very small amount of programming eort and a single long computation will suce to nd as go o d a solution as would b e obtainable with a much faster and more sophisticated metho d which might take weeks to understand and program Might something similar b e true for genetic algorithms The primary aim of this pap er is to demonstrate that genetic algorithms can b e eective in the solution of combinatorial optimization problems and to give some guidance on the implementation of the genetic algorithm for b oth serial and parallel architectures Many previous implementations of this metho d have b een guided by exp eriments initially carried out by and later extended by a number of other authors for example In the great ma jority of these exp eriments nonlinear function optimization problems have b een solved rather than combinatorial optimization problems We b elieve that there is much more to b e learnt ab out the b est implementation of genetic algorithms for combinatorial problems The pap er consists of two parts In the rst part we describ e a fairly standard implementation of the genetic algorithm technique for the Assembly Line Balancing Problem A careful discussion is given of the appropriate setting for the various parameters involved and some exp eriments are rep orted to indicate the relative imp ortance of the genetic op erators of crossover and
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages23 Page
-
File Size-