Created by Scott Robert Ladd at Coyote Gulch Productions.
Implements a elitism selector. More...
#include <selector.h>
Public Member Functions | |
elitism_selector (double a_factor=0.9) | |
Constructor. More... | |
elitism_selector (const elitism_selector< OrganismType > &a_source) | |
Copy constructor. More... | |
elitism_selector & | operator= (const elitism_selector< OrganismType > &a_source) |
Assignment operator. More... | |
virtual vector< OrganismType > | select_survivors (vector< OrganismType > &a_population) |
Select individuals that survive. More... | |
![]() | |
virtual | ~selector () |
Virtual destructor. More... | |
Additional Inherited Members | |
![]() | |
static size_t | rand_index (size_t n) |
Static function to allow use of g_random function pointer in random_shuffle. | |
static void | set_seed (uint32_t a_seed) |
Set the seed for the random number generator. | |
static uint32_t | get_seed () |
Set the seed for the random number generator. | |
static std::string | version () |
Get version number. | |
![]() | |
static prng | g_random |
A shared random number generator. | |
static std::string | g_version |
Version number. | |
Elitism is one of the simplest type of selection – it simply says that the n best organisms will survive into the next generation.
OrganismType | - The type of organism |
|
inline |
Constructs a new elistism_selector with a value that defines the number of organisms that should survive into the next generation.
a_factor | - Percentage of bets fitness required to surivive |
|
inline |
Creates a new object identical to an existing one.
a_source | - The source object |
|
inline |
Assigns an existing object the state of another.
a_source | - The source object |
|
virtual |
Produces a vector containing copies of the organisms selected for survival.
a_population | - A population of organisms |
Implements libevocosm::selector< OrganismType >.
References libevocosm::fitness_stats< OrganismType >::getBest().
© 1996-2005 Scott Robert Ladd. All rights reserved.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.