EvolvingObjects
|
Public Member Functions | |
eoHypercubeCrossover (const double &_alpha=0.0) | |
(Default) Constructor. | |
eoHypercubeCrossover (eoRealVectorBounds &_bounds, const double &_alpha=0.0) | |
Constructor with bounds. | |
virtual std::string | className () const |
The class name. | |
bool | operator() (EOT &_eo1, EOT &_eo2) |
hypercube crossover - modifies both parents | |
Protected Attributes | |
eoRealVectorBounds & | bounds |
double | alpha |
double | range |
Definition at line 344 of file eoRealOp.h.
eoHypercubeCrossover< EOT >::eoHypercubeCrossover | ( | const double & | _alpha = 0.0 | ) | [inline] |
(Default) Constructor.
The bounds are initialized with the global object that says: no bounds.
_alpha | the amount of exploration OUTSIDE the parents as in BLX-alpha notation (Eshelman and Schaffer) 0 == contractive application Must be positive |
Definition at line 356 of file eoRealOp.h.
eoHypercubeCrossover< EOT >::eoHypercubeCrossover | ( | eoRealVectorBounds & | _bounds, |
const double & | _alpha = 0.0 |
||
) | [inline] |
Constructor with bounds.
_bounds | an eoRealVectorBounds that contains the bounds |
_alpha | the amount of exploration OUTSIDE the parents as in BLX-alpha notation (Eshelman and Schaffer) 0 == contractive application Must be positive |
Definition at line 371 of file eoRealOp.h.
bool eoHypercubeCrossover< EOT >::operator() | ( | EOT & | _eo1, |
EOT & | _eo2 | ||
) | [inline, virtual] |
hypercube crossover - modifies both parents
_eo1 | The first parent |
_eo2 | The first parent |
Implements eoBF< EOT &, EOT &, bool >.
Definition at line 387 of file eoRealOp.h.
References eoRng::flip(), eoRealBaseVectorBounds::minimum(), and eoRng::uniform().