Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
MA|PM: Memetic algorithms with population management Kenneth Sörensen University of Antwerp kenneth.sorensen@ua.ac.be Marc Sevaux University of Valenciennes marc.sevaux@univ-valenciennes.fr August 2004 1 Introduction Many researchers agree that the quality of a metaheuristic optimization approach is largely a result of the interplay between intensification and diversification strategies (see e.g. Ferland et al. (2001); Laguna et al. (1999)). One of the main motivations for this paper is the observation that the design of evolutionary algorithms, including memetic algorithms, makes it particularly difficult to control the balance between intensification and diversification. As Hertz and Widmer (2003) point out, preserving the diversity of the population of an evolutionary algorithm is necessary. Although EA have the operators to increase or decrease the diversity of the population, most lack the means to control this diversification. Using diversity measures in genetic algorithms is not a new idea, and has been proposed in the context of fitness sharing, crowding and many others. MA|PM differs from these methods in several respects, the most important ones being the maintenance of a small population of high-quality individuals and the use of population management strategies to actively control the diversity. In this talk, we discuss some experiments to test the performance of a number of MA|PM (memetic algorithms with population management). MA|PM were recently introduced as a variant of classical memetic algorithms to overcome some of their drawbacks, i.e. premature or slow convergence and a lack of means to control the diversity of a small population of individuals. Due to space restrictions, this extended abstract describes only the basic structure of a MA|PM. Some experiments will be discussed during the talk. Further information can be found in the full paper, recently accepted for publication in Computers & Operations Research. 1 2 MA|PM This section describes the new memetic algorithm with population management. Its main distinguishing features are • a small population (typically 10 to 30 solutions), • a local improvement operator (e.g. a local search, or simple tabu search procedure), • population management to control the diversity of the population. 2.1 Algorithm overview A memetic algorithm with population management is structured much like a standard memetic algorithm, but differs in the use of population management. An outline is given in algorithm 1. Algorithm 1 MA|PM outline 1: initialize population P 2: set population diversity parameter ∆ 3: repeat 4: select: p1 and p2 from P 5: crossover: p1 ⊗ p2 → o1 , o2 6: local search: improve o1 and o2 7: for each offspring o do 8: while o does not satisfy conditions for addition (input function) do 9: mutate o 10: end while 11: remove solution: P ← P \b 12: add solution: P ← P ∪ o 13: end for 14: update diversity parameter ∆ 15: until stopping criterion satisfied Initially, a small population is built randomly or using initial heuristics. From this population, two parent solutions are selected and subjected to the crossover operator, forming one or two new offspring solutions. These solutions are improved by a local search operator and added to the population, after being subjected to population management. 2 2.2 Population management Population management controls the diversity of a small population of high-quality solutions. It uses an input function that determines whether an offspring solution is added to the population or not. In MA|PM, this input function takes the following two factors into account: • the quality of the solution, and • the diversity of the population after addition of the solution, or —in other words— the contribution that the solution makes to the diversity of the population; this is measured as the “distance” of the solution to the population, see section 2.4. 2.3 Distance measures To evaluate whether a candidate solution sufficiently diversifies the population, a distance measure d is used that determines for each pair of solutions their relative distance (or similarity). The distance should be measured in the solution space and not — as is commonly done— in the objective function space. Distance measures cannot be developed independently of the problem or even the representation (encoding) of the solution. For binary representations, the Hamming distance can be used. For solutions that are encoded as vectors of real numbers, some form of the Minkowsky-r-distance P (d(~x, ~y ) = ( ni=1 |xi − xj |r )1/r ) is appropriate (e.g. Euclidean, Manhattan, Chebychev). For permutation problems, several distance measures have been developed in the literature. For a more elaborate discussion, we refer to Sörensen (2003). 2.4 Distance of a solution to the population Given a distance measure that can calculate the distance between any pair of solutions, the distance of a given solution sk to the population can be calculated as follows: dP (sk ) = min d(sk , si ). si ∈P (1) 2.5 Input function and diversity parameter It is obvious that a solution that has a small distance to another solution already in the population, will not contribute much to the diversity of a population. Therefore, a solution is not added to the population if its distance to the population is below a 3 certain threshold ∆. We call ∆ the diversity parameter. Assuming that the quality of sk is sufficient, a solution can be added to the population if the following holds: dP (sk ) = min d(sk , si ) ≥ ∆. si ∈P (2) As shown in algorithm 1, a solution that does not have a sufficiently large distance to the population, is randomly mutated until it does. Of course, other strategies are possible, such as simply discarding the solution. 2.6 Population management strategies Using the diversity parameter ∆, the diversity of the population can be controlled as higher values for ∆ will increase the diversity of the population while lower values will decrease it. A high value of ∆ will allow only solutions that have a large distance to all solutions in the population and will lead —perhaps after a few iterations— to a population that consists of very different solutions. A low value of ∆ will allow solutions in the population that are relatively similar to solutions already in the population. This will result in a less diverse population. 2.7 Selection, crossover and other genetic operators Several genetic operators have to be defined in order for the algorithm to work. The selection operator —used for the selection of parent solutions and for the selection of solutions to remove from the population when new solutions need to be added— can be a binary tournament selection, a roulette wheel selection or any other selection method. Crossover operators should be designed to preserve the good features of the parent solutions as much as possible. A bad choice of crossover operator will result in offspring solutions that most likely have a rather poor quality. 2.8 Intensification A local search procedure is necessary to maintain a population of high-quality solutions. This local search procedure should be able to quickly improve the quality of a solution produced by the crossover operator, without diversifying it into other regions of the search space. Neighborhood-search methods like simple tabu search approaches are particularly useful for this purpose. 4 References J.A. Ferland, S. Ichoua, A. Lavoie, and E. Gagné. Scheduling using tabu search methods with intensification and diversification. Computers and Operations Research, 28:1075– 1092, 2001. A. Hertz and M. Widmer. Guidelines for the use of meta-heuristics in combinatorial optimization. European Journal of Operational Research, 151(2):247–252, 2003. M. Laguna, R. Martı́, and V. Campos. Intensification and diversification with elite tabu search solutions for the linear ordering problem. Computers and Operations Research, 26:1217–1230, 1999. K. Sörensen. Distance measures based on the edit distance for permutation-type representations. In A. Barry, editor, Proceedings of the Workshop on Analysis and Design of Representations and Operators (ADoRo), GECCO Conference, pages 15–21, Chicago, 2003. 5