[[PageOutline]] = Crossover = Crossovers are HeuristicLab 3.3 operators that implement the `ICrossover` interface. Crossover operators for different encodings have already been implemented, such as: ---- == Crossover for !BinaryVectorEncoding == === !MultiBinaryVectorCrossover === Randomly selects and applies one of its crossovers every time it is called. '''Operator Parameters:''' ||= Parameter =||= Description =|| === NPointCrossover === N point crossover for binary vectors. It is implemented as described in (Eiben and Smith 2003). === !MultiBinaryVectorCrossover === Randomly selects and applies one of its crossovers every time it is called. === !SinglePointCrossover === Single point crossover for binary vectors. It is implemented based on the NPointCrossover. === !UniformCrossover === Uniform crossover for binary vectors. It is implemented as described in (Eiben and Smith 2003). ---- == Crossover for !IntegerVectorEncoding == === !DiscreteCrossover === Discrete crossover for integer vectors. It is implemented as described in (Gwiazda 2006, p. 17). === !MultiIntegerVectorCrossover === Randomly selects and applies one of its crossovers every time it is called. === !SinglePointCrossover === Single point crossover for integer vectors. It is implemented as described in (Michalewicz 1999). ---- == Crossover for !PermutationEncoding == === !CosaCrossover === An operator which performs the crossover described in the COSA optimization method. It is implemented as described in (Wendt 1994). === !CyclicCrossover === An operator which performs the cyclic crossover on two permutations. It is implemented as described in (Eiben and Smith 2003). === !CyclicCrossover2 === An operator which performs the cyclic crossover on two permutations. It is implemented as described in (Affenzeller et al. 2009, p. 136) === !EdgeRecombinationCrossover === An operator which performs the edge recombination crossover on two permutations. It is implemented as described in (Whitley et al. 1991). == !MaximalPreservativeCrossover == An operator which performs the maximal preservative crossover on two permutations. It is implemented as described in (Mühlenbein 1991). === !MultiPermutationCrossover === Randomly selects and applies one of its crossovers every time it is called. === !OrderBasedCrossover === An operator which performs an order based crossover of two permutations. It is implemented as described in (Syswerda 1991). === !OrderCrossover === An operator which performs an order crossover of two permutations. It is implemented as described in (Eiben and Smith 2003). === !OrderCrossover2 === An operator which performs an order crossover of two permutations. It is implemented as described in (Affenzeller et al. 2009, p. 135). === !PartiallyMatchedCrossover === An operator which performs the partially matched crossover on two permutations. It is implemented as described in (Fogel 1988). === !PositionBasedCrossover === An operator which performs the position based crossover on two permutations. It is implemented as described in (Syswerda 1991). ---- == References == * Affenzeller, M. et al. 2009. Genetic Algorithms and Genetic Programming - Modern Concepts and Practical Applications. CRC Press. * Eiben, A.E. and Smith, J.E. 2003. Introduction to Evolutionary Computation. Natural Computing Series, Springer-Verlag Berlin Heidelberg. * Fogel, D.B. 1988. An Evolutionary Approach to the Traveling Salesman Problem. Biological Cybernetics, 60, pp. 139-144, Springer-Verlag. * Gwiazda, T.D. 2006. Genetic algorithms reference Volume I Crossover for single-objective numerical optimization problems. * Michalewicz, Z. 1999. Genetic Algorithms + Data Structures = Evolution Programs. Third, Revised and Extended Edition, Springer-Verlag Berlin Heidelberg. * Mühlenbein, H. 1991. Evolution in time and space - the parallel genetic algorithm. FOUNDATIONS OF GENETIC ALGORITHMS. Morgan Kaufmann. pp. 316-337. * Syswerda, G. 1991. Schedule Optimization Using Genetic Algorithms. In Davis, L. (Ed.) Handbook of Genetic Algorithms, Van Nostrand Reinhold, New York, pp. 332-349. * Wendt, O. 1994. COSA: COoperative Simulated Annealing - Integration von Genetischen Algorithmen und Simulated Annealing am Beispiel der Tourenplanung. Dissertation Thesis. IWI Frankfurt. * Whitley et.al. 1991, The Traveling Salesman and Sequence Scheduling, in Davis, L. (Ed.), Handbook of Genetic Algorithms, New York. pp. 350-372