Evocosm - A C++ Framework for Evolutionary Computing

Main Index

Created by Scott Robert Ladd at Coyote Gulch Productions.


Public Member Functions | List of all members
libevocosm::machine_tools::mutation_selector Class Reference

Wraps a roulette wheel for selecting mutations. More...

#include <machine_tools.h>

Public Member Functions

 mutation_selector ()
 Creation constructor. More...
 
 mutation_selector (const mutation_selector &a_source)
 Copy constructor. More...
 
 ~mutation_selector ()
 Destructor. More...
 
mutation_selectoroperator= (const mutation_selector &a_source)
 Assignment operator. More...
 
void set_weight (mutation_id a_type, double &a_new_weight)
 Change a given weight. More...
 
size_t get_index () const
 Get a mutation index.
 

Detailed Description

This class encapsulates a roulette wheel for selecting mutations. By default, the simple_fsm::mutate operator uses a pre-defined mutation_selector with default percentages of:

The default values were chosen based on my past experience. You can define your own mutation_selector with different weights, and pass it to simple_fsm::mutate.

See also
roulette_wheel

Constructor & Destructor Documentation

libevocosm::machine_tools::mutation_selector::mutation_selector ( )
inline

Constructs a new mutation_selector with the default weights for the roulette wheel.

libevocosm::machine_tools::mutation_selector::mutation_selector ( const mutation_selector a_source)
inline

Creates a copy of an existing object.

Parameters
a_source- The source object to be copied
libevocosm::machine_tools::mutation_selector::~mutation_selector ( )
inline

Destroys a mutation selector, freeing resources.

Member Function Documentation

mutation_selector& libevocosm::machine_tools::mutation_selector::operator= ( const mutation_selector a_source)
inline

Assigns the state of one mutation selector to another.

Parameters
a_source- The source object
void libevocosm::machine_tools::mutation_selector::set_weight ( mutation_id  a_type,
double &  a_new_weight 
)
inline

Changes a specific mutation weight to a new value.

Parameters
a_type- Identifies the specific mutation weight to be set
a_new_weight- New weight to be assigned

References libevocosm::roulette_wheel::set_weight().


The documentation for this class was generated from the following file:

© 1996-2005 Scott Robert Ladd. All rights reserved.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.