Evocosm - A C++ Framework for Evolutionary Computing

Main Index

Created by Scott Robert Ladd at Coyote Gulch Productions.


libevocosm::exponential_scaler< OrganismType > Class Template Reference

An exponential fitness scaler. More...

#include <scaler.h>

Inheritance diagram for libevocosm::exponential_scaler< OrganismType >:

libevocosm::scaler< OrganismType > libevocosm::globals

List of all members.

Public Member Functions


Detailed Description

template<class OrganismType>
class libevocosm::exponential_scaler< OrganismType >

Implements an exponential fitness scaling, whereby all fitness values are modified such that new fitness = (a * fitness + b) ^ n.
Parameters:
OrganismType - The type of organism

Constructor & Destructor Documentation

template<class OrganismType>
libevocosm::exponential_scaler< OrganismType >::exponential_scaler ( double  a_a = 1.0,
double  a_b = 1.0,
double  a_power = 2.0 
) [inline]

Creates a new exponential scaler with a given set of parameters. The formula used is new_fitness = (a * fitness + b) ^ power.

Parameters:
a_a - A multplier against the fitness
a_b - Added to fitness before exponentiation
a_power - Power applied to the value


Member Function Documentation

template<class OrganismType>
virtual void libevocosm::exponential_scaler< OrganismType >::scale_fitness ( vector< OrganismType > &  a_population  )  [inline, virtual]

Performs exponential scaling on the fitness of the target population.

Parameters:
a_population - A population of organisms

Implements libevocosm::scaler< OrganismType >.


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.