Changes between Version 2 and Version 3 of Crossover
- Timestamp:
- 06/08/10 20:05:00 (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Crossover
v2 v3 67 67 ---- 68 68 == Crossover for !RealVectorEncoding == 69 70 '''Common Operator Parameters:''' 71 The following paramters are present for all Crossover operators that can be applied to real vector encoded solutions: 72 73 ||= Parameter =||= Description =|| 74 || Bounds || The lower and upper bounds of the real vector. || 75 || Child || The child vector resulting from the crossover. || 76 || Parents || The parent vectors which should be crossed. || 77 || Random || The pseudo random number generator which should be used for stochastic crossover operators. || 78 69 79 === !AverageCrossover === 70 80 The average crossover (intermediate recombination) produces a new offspring by calculating in each position the average of a number of parents. It is implemented as described by (Beyer and Schwefel 2002). … … 73 83 The blend alpha beta crossover (BLX-a-b) for real vectors is similar to the blend alpha crossover (BLX-a), but distinguishes between the better and worse of the parents. The interval from which to choose the new offspring can be extended more around the better parent by specifying a higher alpha value. It is implemented as described in (Takahashi and Kita 2001). 74 84 85 '''Additional Operator Parameters:''' 86 ||= Parameter =||= Description =|| 87 || Alpha || The value for alpha (Default: 0.75) || 88 || Beta || The value for alpha (Default: 0.25) || 89 || Maximization || Whether the problem is a maximization problem or not. || 90 || Quality || The quality values of the parents. || 91 75 92 === !BlendAlphaCrossover === 76 93 The blend alpha crossover (BLX-a) for real vectors creates new offspring by sampling a new value in the range [min_i - d * alpha, max_i + d * alpha) at each position i. Here min_i and max_i are the smaller and larger value of the two parents at position i and d is max_i - min_i. It is implemented as described in (Takahashi and Kita 2001). 94 95 '''Additional Operator Parameters:''' 96 ||= Parameter =||= Description =|| 97 || Alpha || The value for alpha (Default: 0.5) || 77 98 78 99 === !DiscreteCrossover === … … 82 103 The heuristic crossover produces offspring that extend the better parent in direction from the worse to the better parent. It is implemented as described in (Wright 1994). 83 104 105 '''Additional Operator Parameters:''' 106 ||= Parameter =||= Description =|| 107 || Maximization || Whether the problem is a maximization problem or not. || 108 || Quality || The quality values of the parents. || 109 84 110 === !LocalCrossover === 85 111 The local crossover is similar to the arithmetic all positions crossover, but uses a random alpha for each position x = alpha * p1 + (1-alpha) * p2. It is implemented as described in (Dumitrescu et al. 2000, p. 194). … … 87 113 === !MultiRealVectorCrossover === 88 114 Randomly selects and applies one of its crossovers every time it is called. 115 116 [[Image(MultiRealVectorCrossover_Parameters.png)]] 117 118 '''Additional Operator Parameters:''' 119 ||= Parameter =||= Description =|| 120 || 0-10 || 10 Crossover Operators || 121 || Quality || The quality values of the parents. || 122 || Probabilities || The array of relative probabilities for each operator (Default: Uniform {{{[1,1,1,1,1,1,1,1,1,1]}}}) || 89 123 90 124 === !RandomConvexCrossover === … … 94 128 The simulated binary crossover (SBX) is implemented as described in (Deb and Agrawal 1995). 95 129 130 131 '''Additional Operator Parameters:''' 132 ||= Parameter =||= Description =|| 133 || Contiguity || Specifies whether the crossover should produce very different (small value) or very similar (large value) children. Valid values must be greater or equal to 0 (Default: 2). || 134 96 135 === !SinglePointCrossover === 97 136 Breaks both parent chromosomes at a randomly chosen point and assembles a child by taking one part of the first parent and the other part of the second pard. It is implemented as described in (Michalewicz 1999). … … 100 139 The uniform all positions arithmetic crossover constructs an offspring by calculating x = alpha * p1 + (1-alpha) * p2 for every position x in the vector. Note that for alpha = 0.5 it is the same as the !AverageCrossover. It is implemented as described in (Michalewicz 1999). 101 140 141 '''Additional Operator Parameters:''' 142 ||= Parameter =||= Description =|| 143 || Alpha || The alpha value in the range [0;1] (Default: 0.33) || 144 102 145 === !UniformSomePositionsArithmeticCrossover === 103 146 The uniform some positions arithmetic crossover (continuous recombination) constructs an offspring by calculating x = alpha * p1 + (1-alpha) * p2 for a position x in the vector with a given probability (otherwise p1 is taken at this position). It is implemented as described in (Dumitrescu et al. 2000, p. 191). Note that Dumitrescu et al. specify the alpha to be 0.5. 104 147 148 '''Additional Operator Parameters:''' 149 ||= Parameter =||= Description =|| 150 || Alpha || The alpha value in the range [0;1] (Default: 0.5) || 151 || Probability || The probability for crossing a position in the range [0;1] (Default: 0.5) || 105 152 ---- 106 153 == Crossover for !SymbolicExpressionTreeEncoding ==