53 #if !defined(LIBEVOCOSM_FSM_TOOLS_H)
54 #define LIBEVOCOSM_FSM_TOOLS_H
106 static const double default_weights [] = { 20.0, 20.0, 20.0, 20.0, 20.0 };
mutation_selector()
Creation constructor.
Definition: machine_tools.h:103
Wraps a roulette wheel for selecting mutations.
Definition: machine_tools.h:95
size_t get_index() const
Get a mutation index.
Definition: machine_tools.h:159
mutation_id
Types of mutation supported.
Definition: machine_tools.h:69
Mutate that initial state.
Definition: machine_tools.h:75
A set of common tools for finite state machines.
Definition: machine_tools.h:65
void set_weight(mutation_id a_type, double &a_new_weight)
Change a given weight.
Definition: machine_tools.h:148
A toolkit and framework for implementing evolutionary algorithms.
Definition: analyzer.h:60
Swap two states.
Definition: machine_tools.h:74
Mutate a state transition.
Definition: machine_tools.h:72
A simulated roulette wheel for weighted selection.
Definition: roulette.h:89
~mutation_selector()
Destructor.
Definition: machine_tools.h:126
Replace a new state with a randomly-generated one.
Definition: machine_tools.h:73
size_t get_index() const
Retrieve a random index.
mutation_selector & operator=(const mutation_selector &a_source)
Assignment operator.
Definition: machine_tools.h:136
mutation_selector(const mutation_selector &a_source)
Copy constructor.
Definition: machine_tools.h:116
double set_weight(size_t a_index, double a_weight)
Change the weight assigned to an entry.
Mutate an output symbol.
Definition: machine_tools.h:71