GaMultiValueCrossover
crossover operation create offspring by choosing specified number of crossover points at random positions, then it alternately copies values from parents' codes, and at very crossover point it changes parent from which it copies values. The first parent from which copying starts is chosen randomly.
More...
#include <D:/Temp/vs/gal/source/CrossoverOperations.h>
Inherits Chromosome::GaCrossoverOperation.
Public Member Functions | |
virtual GAL_API GaChromosomePtr GACALL | operator() (const GaChromosome *parent1, const GaChromosome *parent2) const |
More details are given in specification of GaCrossoverOperation::operator () method. | |
virtual GaParameters *GACALL | MakeParameters () const |
More details are given in specification of GaOperation::MakeParameters method. | |
virtual bool GACALL | CheckParameters (const GaParameters ¶meters) const |
More details are given in specification of GaOperation::CheckParameters method. |
GaMultiValueCrossover
crossover operation create offspring by choosing specified number of crossover points at random positions, then it alternately copies values from parents' codes, and at very crossover point it changes parent from which it copies values. The first parent from which copying starts is chosen randomly.
This class has no built-in synchronizator, so LOCK_OBJECT
and LOCK_THIS_OBJECT
macros cannot be used with instances of this class. Because this genetic operation is stateless all public method are thread-safe.
GaChromosomePtr Chromosome::CrossoverOperations::GaMultiValueCrossover::operator() | ( | const GaChromosome * | parent1, | |
const GaChromosome * | parent2 | |||
) | const [virtual] |
More details are given in specification of GaCrossoverOperation::operator () method.
This method is thread-safe.
Implements Chromosome::GaCrossoverOperation.
virtual GaParameters* GACALL Chromosome::CrossoverOperations::GaMultiValueCrossover::MakeParameters | ( | ) | const [inline, virtual] |
More details are given in specification of GaOperation::MakeParameters method.
This method is thread-safe.
Implements Common::GaOperation.
virtual bool GACALL Chromosome::CrossoverOperations::GaMultiValueCrossover::CheckParameters | ( | const GaParameters & | parameters | ) | const [inline, virtual] |
More details are given in specification of GaOperation::CheckParameters method.
This method is thread-safe.
true
.Implements Common::GaOperation.