Validity Constraints and the TSP GeneRepair of Genetic Algorithms

Similar documents
Reducing Premature Convergence Problem in Genetic Algorithm: Application on Travel Salesman Problem

Introduction to Genetic Algorithm (GA) Presented By: Rabiya Khalid Department of Computer Science

Evolutionary Computation

Crossover and Diversity: A Study about GVR

Minimizing Makespan for Machine Scheduling and Worker Assignment Problem in Identical Parallel Machine Models Using GA

Optimisation and Operations Research

Genetic Algorithm for Variable Selection. Genetic Algorithms Step by Step. Genetic Algorithm (Holland) Flowchart of GA

Enhanced Order Crossover for Permutation Problems

GENETIC ALGORITHMS. Narra Priyanka. K.Naga Sowjanya. Vasavi College of Engineering. Ibrahimbahg,Hyderabad.

Journal of Global Research in Computer Science PREMATURE CONVERGENCE AND GENETIC ALGORITHM UNDER OPERATING SYSTEM PROCESS SCHEDULING PROBLEM

Logistics. Final exam date. Project Presentation. Plan for this week. Evolutionary Algorithms. Crossover and Mutation

Evolutionary Algorithms

The Metaphor. Individuals living in that environment Individual s degree of adaptation to its surrounding environment

Part 1: Motivation, Basic Concepts, Algorithms

Genetic Algorithms for Optimizations

An Effective Genetic Algorithm for Large-Scale Traveling Salesman Problems

Machine Learning. Genetic Algorithms

Machine Learning. Genetic Algorithms

The Allele Meta-Model Developing a Common Language for Genetic Algorithms

Processor Scheduling Algorithms in Environment of Genetics

2. Genetic Algorithms - An Overview

A METAEVOLUTIONARY APPROACH IN SEARCHING OF THE BEST COMBINATION OF CROSSOVER OPERATORS FOR THE TSP

Keywords Genetic Algorithm (GA), Evolutionary, Representation, Binary, Floating Point, Operator

Genetic Algorithms in Matrix Representation and Its Application in Synthetic Data

Genetic'Algorithms'::' ::'Algoritmi'Genetici'1

Computational Intelligence Lecture 20:Intorcution to Genetic Algorithm

APPLICATION OF COMPUTER FOR ANALYZING WORLD CO2 EMISSION

Genetic Algorithm: A Search of Complex Spaces

A Comparison between Genetic Algorithms and Evolutionary Programming based on Cutting Stock Problem

Introduction To Genetic Algorithms

What is Evolutionary Computation? Genetic Algorithms. Components of Evolutionary Computing. The Argument. When changes occur...

Memetic Algorithm with Hybrid Mutation Operator

Recessive Trait Cross Over Approach of GAs Population Inheritance for Evolutionary Optimisation

Comparative Study of Different Selection Techniques in Genetic Algorithm

Solving the Reentrant Permutation Flow-Shop Scheduling Problem with a Hybrid Genetic Algorithm

Evolutionary Computation. Lecture 3. Evolutionary Computation. X 2 example: crossover. x 2 example: selection

initial set of random solutions called population satisfying boundary and/or system

Performance Analysis of Multi Clustered Parallel Genetic Algorithm with Gray Value

Genetic Algorithm: An Optimization Technique Concept

Assoc. Prof. Rustem Popa, PhD

Genetic approach to solve non-fractional knapsack problem S. M Farooq 1, G. Madhavi 2 and S. Kiran 3

Genetic Algorithm for Supply Planning Optimization under Uncertain Demand

GENETIC ALGORITHM BASED APPROACH FOR THE SELECTION OF PROJECTS IN PUBLIC R&D INSTITUTIONS

Introduction To Genetic Algorithms

Comp215: Genetic Algorithms - Part 1

Implementation of CSP Cross Over in Solving Travelling Salesman Problem Using Genetic Algorithms

VISHVESHWARAIAH TECHNOLOGICAL UNIVERSITY S.D.M COLLEGE OF ENGINEERING AND TECHNOLOGY. A seminar report on GENETIC ALGORITHMS.

Enhancing genetic algorithms using multi mutations

Enhancing Genetic Algorithms using Multi Mutations

EVOLUTIONARY ALGORITHMS AT CHOICE: FROM GA TO GP EVOLŪCIJAS ALGORITMI PĒC IZVĒLES: NO GA UZ GP

Machine Learning: Algorithms and Applications

A Genetic Algorithm on Inventory Routing Problem

IMPLEMENTATION OF AN OPTIMIZATION TECHNIQUE: GENETIC ALGORITHM

Genetic Algorithms and Genetic Programming Lecture 13

Available online at International Journal of Current Research Vol. 9, Issue, 07, pp , July, 2017

Supplemental Digital Content. A new severity of illness scale using a subset of APACHE data elements shows comparable predictive accuracy

TIMETABLING EXPERIMENTS USING GENETIC ALGORITHMS. Liviu Lalescu, Costin Badica

A Study of Crossover Operators for Genetic Algorithms to Solve VRP and its Variants and New Sinusoidal Motion Crossover Operator

Optimizing Dynamic Flexible Job Shop Scheduling Problem Based on Genetic Algorithm

College of information technology Department of software

Genetic Algorithms using Populations based on Multisets

Plan for today GENETIC ALGORITHMS. Randomised search. Terminology: The GA cycle. Decoding genotypes

Simulation approaches for optimization in business and service systems

A Heuristic for Improved Genetic Bin Packing. Arthur L. CORCORAN and Roger L. WAINWRIGHT

Implementation of Genetic Algorithm for Agriculture System

Introduction Evolutionary Algorithm Implementation

Genetic Algorithm with Upgrading Operator

A Genetic Algorithm for Order Picking in Automated Storage and Retrieval Systems with Multiple Stock Locations

Energy management using genetic algorithms

EMM4131 Popülasyon Temelli Algoritmalar (Population-based Algorithms) Introduction to Meta-heuristics and Evolutionary Algorithms

A Viral Systems Algorithm for the Traveling Salesman Problem

An Evolutionary Optimization for Multiple Sequence Alignment

An introduction to evolutionary computation

The Impact of Population Size on Knowledge Acquisition in Genetic Algorithms Paradigm: Finding Solutions in the Game of Sudoku

Feature Selection for Predictive Modelling - a Needle in a Haystack Problem

Evolutionary Algorithms and Simulated Annealing in the Topological Configuration of the Spanning Tree

Hybridization of Genetic Algorithm and Neural Network for Optimization Problem

What is an Evolutionary Algorithm? Presented by: Faramarz Safi (Ph.D.) Faculty of Computer Engineering Islamic Azad University, Najafabad Branch

Genetic Algorithms. Lecture Overview. A Brief History. Evolutionary Computation. Biological Systems: A rough guide. Biological Systems: A rough guide

Changing Mutation Operator of Genetic Algorithms for optimizing Multiple Sequence Alignment

Faculty of Cognitive Sciences and Human Development

COMPARATIVE STUDY OF SELECTION METHODS IN GENETIC ALGORITHM

A Novel Genetic Algorithm Based on Immunity

Genetic Algorithms. Part 3: The Component of Genetic Algorithms. Spring 2009 Instructor: Dr. Masoud Yaghini

PARALLEL LINE AND MACHINE JOB SCHEDULING USING GENETIC ALGORITHM

Improving Differential Evolution Algorithm with Activation Strategy

10. Lecture Stochastic Optimization

Optimal Design of Laminated Composite Plates by Using Advanced Genetic Algorithm

Designing High Thermal Conductive Materials Using Artificial Evolution MICHAEL DAVIES, BASKAR GANAPATHYSUBRAMANIAN, GANESH BALASUBRAMANIAN

Modeling and Optimisation of Precedence-Constrained Production Sequencing and Scheduling for Multiple Production Lines Using Genetic Algorithms

Rule Minimization in Predicting the Preterm Birth Classification using Competitive Co Evolution

OPTIMIZATION OF MULTI-TRIP VEHICLE ROUTING PROBLEM WITH TIME WINDOWS USING GENETIC ALGORITHM

A Comparison of Recombination Operators for Capacitate Vehicle Routing Problem. Abstract

International Journal of Advanced Research in Computer Science and Software Engineering

Use of Genetic Algorithms in Discrete Optimalization Problems

Proposition of New Genetic Operator for Solving Joint Production and Maintenance Scheduling: Application to the Flow Shop Problem

Path-finding in Multi-Agent, unexplored And Dynamic Military Environment Using Genetic Algorithm

Research Article Improving Genetic Algorithm with Fine-Tuned Crossover and Scaled Architecture

An introduction to genetic algorithms for neural networks

A Gene Based Adaptive Mutation Strategy for Genetic Algorithms

Transcription:

Validity Constraints and the TSP GeneRepair of Genetic Algorithms George G. Mitchell Department of Computer Science National University of Ireland, Maynooth Ireland georgem@cs.nuim.ie Abstract In this paper we present the outcome of a sets of experiments to evaluate the effectiveness of a new adjunct genetic operator GeneRepair. This operator was developed to correct invlaid tours which may be generated following crossover or mutation of our particular implementation of the genetic algorithm. Following implementation and testing of our genetic algotihm with GeneRepair we found a significant positive side in our results. Using GeneRepair along side traditional crossover and mutation operators we have been able to travers the search space of a problem and generate very good results in an extremely efficent manner, in both time and number of evaluations required. KEY WORDS Genetic Algorithms, TSP, Optimisation, Problem Constraints, GeneRepair. 1 Introduction In this paper we present a novel approach to solving permutation problems that uses only standard crossover and standard mutation. We isolate the problem constraints in a separate operator, which operates as an adjunct operator to the standard set of genetic operators. This approach is applicable to any problem domain where the solution constraints can be identified in the gene string. In this paper we explore two different types of permutation problems. We look at the Travelling Salesman Problem (TSP), which is a well-known NP- Complete problem [1]. The TSP involves visiting all cities on a map, generating the shortest total tour distance. As Mitchell [2] points out: some type of encoding require specially defined crossover and mutation operators... like the Traveling Salesman Problem in which the task is to find a correct ordering for a collection of objects. 2 Representation and Operators The natural choice of representation for the TSP is an Order-based representation. These have been successfully applied to the TSP and the very similar Vechicle Routing Problem VRP problems by Fogel [3, 4, 5], Banzhaf [6], Ambati [7] and Pereira et al [8]. Additionally, the genetic operators employed must also be Order-based. If either the representation or the operators do not respect the Order based nature of the problem, then invalid solutions will be generated. First, we looked at the crossover operators that respect the Order-based nature of permutation problems, and prevent the introduction of errors such as invalid tours [2]. The order preserving crossover operators that have been developed include: Order Crossover [9], Modified Crossover [10], Partially Mapped Crossover [11], Cycle Crossover [12], 2-quick / 2-repair [13], plus a number of less frequently used crossover operators [14]. Secondly, we looked at Order-based mutation operators developed for Order-based problems. These include: Displacement Mutation [15], Exchange Mutation [6], Insertion Mutation [3, 15], Simple Inversion Mutation [16, 17], Inversion Mutation [4, 5] and other order preserving mutation [18]. We present a solution for Order-based problems that uses only standard crossover and standard mutation. To counteract the invalid tours that occur as a result, we introduce GeneRepair - a genetic repair operator that has a number of positive effects: It allows the use of standard GA libraries, with the addition of a single repair operator for permutation problems. It simplifies the understanding of the GA, by allowing the use of standard crossover and mutation for Order-based problems. Finally, it removes problem specific activities from the genetic operators themselves, and isolates it in a single intra-generation operation.

3 GeneRepair The GeneRepair enhanced genetic algorithm operates in the manner of traditional genetic algorithms, and can be summarized as follows: 1. Generate the initial population P(0) at random and set i = 0; 2. Evaluate the fitness of each individual in P(i); 3. Select parents from P(i) based on their fitness. 4. Apply standard crossover 5. Apply standard mutation. 6. Apply GeneRepair. 7. Repeat until convergence. The TSP is NP-Complete, and may be characterized by two separate facets: Optimisation and Permutation. Responsibility for optimisation lies with the standard genetic algorithm, which effectively remains unchanged from Holland [16]. Responsibility for only allowing valid permutation in the population lies solely with the GeneRepair operator. 3.1 Solution Constraints Combinatorial problems like the TSP place constrains on the valid solutions. Solutions are only valid when all N cities in the problem are present in the solution. Thus, we use a fixed-length chromosome to represent our tours. Furthermore, a solution is only considered valid when all cities are represented once only in the solution, and no cities are absent. These constraints act as a trigger for the application of the GeneRepair operator. Non order-preserving crossover (above) can cause a violation of the validity constraint, by combining parent strings, which result in invalid offspring. See Figure 1. Similarly, non order-preserving mutation operators can also generate invalid solutions. This happens when mutation randomly inserts a city that already exists in the solution. Parent 1 0 1 2 3 4 5 6 7 8 9 Parent 2 8 4 1 6 3 7 9 2 0 5 Child 1 0 1 2 3 4 7 9 2 0 9 Child 2 8 4 1 6 3 5 6 7 8 5 Figure 1: Constraint violation by 2-Point Crossover. In practice, GeneRepair examines each tour in turn, enforcing the following: 1. Correct number of cities in the tour 2. No duplicate cities 3. No missing cities These constrains invoke the GeneRepair operator, and identifies the string the location of duplicate cities (see Figure 2). Figure 2: GeneRepair- Invalid cities identified. 3.2 Repair Detection of invalid cities: Child 1 0 1 2 3 4 7 9 2 0 9 Knowing the location of the offending cities, GeneRepair replaces these cities iteratively with valid cities retrieved from a corrective template. The first strategy investigated was to replace the duplicate cities with the missing cities, according to a pre-determined template (see Figure 3). GeneRepair Template 0 1 2 3 4 5 6 7 8 9 (i) Child 1 0 1 2 3 4 7 9 2 0 9 (ii)child 1 GeneRepaired 0 1 2 3 4 7 9 5 6 8 Figure 3: GeneRepair- correction of tour. The majority of GeneRepair replacements were performed in a left-to-right manner - replacing the leftmost duplicate city first. Additionally, the replacement city was retrieved from the template also in a left-to-right manner. However, brief evaluation of a random replacement technique, randomly selecting the replacement city from the template was also evaluated. Initial results show no identifiable difference between the two techniques. The replaced city is selected according to a corrective template. Three different types of template were investigated: 1. Static template. This consisted of a preset valid tour, and remained constant throughout. 2. Parent-based Template. Select the fitter parent, and use that as the corrective template. This template varied for every corrected individual.

3. Random Template. For each corrected individual a new template of random numbers was generated, within the validity constraints of the TSP problem. in essence can be viewed as a second mutation operator whilst maintaining problem validity. Each of these techniques was tested on a select number of TSP problems. The parent-based solution produced the worst results. Both random and fixed template solutions produced good results, with the randomly generated template producing marginally better results. 4 Experiment 1 - TSP We evaluated GeneRepair on the TSP benchmark problems from the Heidelberg TSPLIB problem set [19]. We previously investigated the use of GeneRepair versus non-generepair Genetic Algorithm TSP and VRP search [20]. For these experiments we investigated the potential of the GeneRepair based solution, without reference to a non-generepair implementation. We optimised the genetic parameters of crossover and mutation in order to produce the best solutions on selected TSP problems. This investigated the ability of GeneRepair to generate optimal solutions only, as the benchmark solutions are assured optimal solutions. We conducted approximately 6 experiments on each of the 3 following problem sets, eli51, st70 and eil101. Throughout all experiments the population size was the square of the number of cities in the problem set. Tournament and roulette wheel selection (but not truncation selection) were used. Only 1-point and 2-point crossover was investigated. Exchange mutation was used exclusively, with rates varying between 0% and 10%. The first problem set involved a 51-city TSP problem. Tests revealed the optimal mutation rate to be 0.75%. The second problem involved 70 cities and optimality was found with mutation at 0.76%. The final problem involved 101 cities and again a mutation rate of 0.76 was found to be the best. Figure 4 illustrates the test conducted for each of the problem set to obtain the optima mutation rate. An experiment was conducted to evaluate the effects of an adaptive mutation rate Figure 5 illustrates the effect of this adaptive mutation rate. The Genetic Algorithm clearly improves following a mutation rate change with improvements being made at approximately 3,500, 7,000 and 17,000 generations. The adaptive mutation rate initially changes at 5000 generations causing some diversity in the population and resulting in improvements in the tour length. The number of repairs for the first thousand generations of the algorithm is initially high, even when a low mutation rate is applied. The percentage of repairs declines rapidly to between 1% and 2%, as can been seen in figure 6. It is important to note that with a low mutation rate, information in the population is exploited and the mutation effect of GeneRepair is embraced. GeneRepair Figure 4: Distance at various mutation rates Figure 5: Adaptive mutation effect on GA convergence Figure 6: Percentage of repairs for each problem

Another important metric to be considered when examining GeneRepair enhanced Genetic Algorithms is the number of improvements versus mutation rate, this is illustrated in figure 7. Figure 7 and 8 illustrate how poor selection of mutation rate can lead to wasteful use of computation time. Figure 10 illustrates the impact that selection operator and crossover type together with mutation rate has on the best solution found. Figure 7: N o of improvements at specific Mutation rates Figure 10: Effect of mutation, crossover & selection Figure 8: N o of generations to find best average solution Figure 9: N o of generations to find best average solution 5 Explanation for GENEREPAIR GeneRepair is composed of two distinct tasks: fault detection and fault correction. To help identify the exact reason for GeneRepairs improvement in performance, we analysed each phases in turn. First we measure the frequency with which GeneRepair was invoked. GeneRepair repaired approximately 11% of the alleles, while solving the benchmark TSP problems. Additionally, some of these alleles required multiple repair operations. (As may be expected, these figures are higher during the first 100 epochs). For comparison, we recorded the number of invalid tours generated by our solution without GeneRepair [20]. Approximately 15% of individuals were found to violate the TSP validity constraint. In general, GeneRepair does increase the number of generated individuals that form part of the valid search space. However, this relatively modest increase in the search space does not adequately account for the significant increase in performance obtained. For example, increasing the population size to allow for this 11% wastage, had little effect on the quality of the results generated. Next we investigated the fault correction part of GeneRepair. First, we analyse how errors are introduced. Crossover introduces the majority of errors as it is always applied. It does this by combining incompatible sections of tours. (See figure 1) N-point-Crossover preserves the identicallity between both parents. Thus, the GeneRepair operator is invoked

more during early evolution than it is when we reach convergence. Secondly, the replacement strategy replaces invalid (i.e. duplicate) genes with missing genes, according to the replacement strategy described above. So, in conclusion, GeneRepair is a multi-point mutation operator, that is applied heavily during early evolution and rarely applied when convergence is achieved. 1-point mutation tends to introduce errors and, GeneRepair will Fix the error, but it does So randomly. Either the mutation will remain unaffected by GeneRepair and another duplicate city will be replaced. This has tie effect of causing 2-point mutation. Alternatively, the mutation itself will be repaired, which Reduces the level of mutation. Importantly, the mutation introduced by GeneRepair is Not an alternative to standard mutation, as standard mutation is still required when near-optimal convergence is reached. Initial results seem to indicate that the reduction in mutation is (at least partly) counteracted by GeneRepair's introduction of its own mutogenic effect, but investigations are ongoing. This may account for our improved performance as it effectively prohibits the problem of premature convergence. Furthermore, it is applied less frequently during final convergence, allowing an optimal to be achieved. (This seems to mimic the operation of a Boltzman machine on simulated annealing problems.) However, investigations are at a relatively early phase, and research is ongoing. 6 Future work The experiments performed so far highlight the need for a number of further investigations. Future work is necessary to compare the effectiveness of GeneRepair against the order-preserving crossover and mutation operators. We will also conduct experiments to evaluate the effectiveness of GeneRepair on large problems with more than 1000 cities. Finally, we will explore the interplay between standard mutation and the mutogenic effects of GeneRepair. This may involve the use of an adaptive mutation rate in conjunction with GeneRepair. 7 Conclusion We solved a permutation problem by combining standard genetic operators with a novel genetic repair operator - GeneRepair. Validity constraints that originate in the problem domain are thus centralized in a single repair operator. We explored the use of GeneRepair on the TSP, using the fitness function to optimise the solution while GeneRepair ensures the validity of solutions. This approach is potentially applicable to any domain where the solution constraints can be separated from the fitness function. Results produced so far have either reached global optimal solutions, or have been close to optimal solutions. Furthermore, solutions appear to be produced in a relatively small number of generations. We examined the higher levels of early mutation that result from GeneRepair operations, as one possible explanation for the results produced so far. References: [1] M.R Garey and D.S. Johnson (1979). Computers and Intractability. A Guide to the Theory of NP-Completeness. New York, NY: W. H Freeman and Company. [2] M. Mitchell (1999). An Introduction to Genetic Algorithms, Cambridge USA, London UK: MIT Press. [3] D.B. Fogel (1988), An Evolutionary Approach to the Travelling Salesman Problems, Biological Cybernetics, 60 : 139-144. [4] D.B. Fogel (1993), Empirical Estimation of the Computation Required to Discover Approximate Solutions to the Travelling Salesman Problem Using Evolutionary Programming, Proceedings of 2nd Annual Conference on Evolutionary Programming, 56-61. [5] D.B. Fogel (1993), Applying Evolutionary Programming to Selected Travelling Salesman Problems, Cybernetics and Systems: An International Journal, 24 : 27-36 [6] W. Banzhaf (1990), The Molecular Travelling Salesman, Biological Cybernetics, 64 : 7-14. [7] B.K. Ambati, J. Ambati and M.M. Mokhtar (1991), Heuristic Combinatorial Optimisation by Simulated Darwinian Evolution: a Polynomial Time Algorithm for the Traveling Salesman Problem, Biological Cybernetics, 65 : 31-35. [8] F. B. Pereira, J. Tavares, P. Machado, and E. Costa (2002), GVR: a New Genetic Representation for the Vehicle Routing Problem, Proceedings of the 13th Irish Conference on Artificial Intelligence and Cognitive Science, 95-102. [9] G. Syswerda (1991), Schedule Optimization Using Genetic Algorithms, Handbook of Genetic Algorithms, New York NY, Van Nostrand Reinhold, 350-372. [10] L. Davis (1985), Applying Adaptive Algorithms to Epistatic Domains, Proceedings of the International Joint Conference on Artificial Intelligence, 162-164. [11] D.E. Goldberg and R. Lingle (1985), Alles, Loci and the TSP, Proceedings of the First International Conference on Genetic Algorithms and Their Applications, 154-159.

[12] I.M. Oliver, D.J. Smith and J.R.C. Holland (1987), A Study of Permutation Crossover Operators on the TSP, Genetic Algorithms and Their Applications: Proceedings of the Second International Conference, 224-230. [13] M. Gorges-Schleuter (1989) ASPARAGOS An Asynchronous Parallel Genetic Optimization Strategy, Proceedings of the Third International Conference on Genetic Algorithms, 422-427. [14] Crawford, K. D., R. Wainwright (1996), Research Question: How does one go about developing a new crossover operator with an a priori expectation of its merit? (A Survey of Crossover Operators for Genetic Algorithms), Technical Report UTULSA-MCS-96-2, The University of Tulsa, USA. [15] Z. Michalewicz (1992), Genetic Algorithms + Data Structures = Evolution Programs, Berlin Germany, Springer Verlag. [16] J. Holland (1975), Adaptation in Natural and Artificial Systems, Ann Arbor USA, University of Michigan. [17] J. Grefenstette, R. Gopal, B. Rosmaita and D. Van Gucht (1985), Genetic Algorithms for the TSP, Proceedings of the First International Conference on Genetic Algorithms and Their Applications, 160-65. [18] P. Larrañaga, C.M.H Kuijpers, R.H. Murga, I. Inza and S. Dizdarevic (1999), Genetic Algorithms for the Travelling Salesman Problem A Review of Representations and Operators, Artificial Intelligence Review, 13 : 129 170. [19] G. Reinelt. (1991), TSPLIB: A traveling salesman problem library. ORSA Journal on Computing, 3:376 384. [20] G.G. Mitchell, D. O Donoghue, D Barnes, M McCarville (2003), GeneRepair - A Repair Operator for Genetic Algorithms, Proceedings of the Genetic and Evolutionary Computation Conference, GECCO 03, LBP, 88-93.