FREE::ES::EvolutionaryStrategyOptimizer< TIndividual > Class Template Reference
[Evolutionary strategies]

Simple evolutionary strategy optimizer with one population... More...

#include <freEvolutionaryStrategyOptimizer.h>

Inheritance diagram for FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >:

Inheritance graph
FREE::ES::EvolutionaryStrategyOptimizerBase
[legend]
Collaboration diagram for FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >:

Collaboration graph
FREE::ES::EvolutionaryStrategyOptimizerBase
[legend]

List of all members.

Public Types

typedef
EvolutionaryStrategyOptimizer 
Self
typedef
EvolutionaryStrategyOptimizerBase 
Superclass
typedef
itk::SmartPointer
< Self
Pointer
typedef
itk::SmartPointer
< const Self
ConstPointer
typedef TIndividual IndividualType
typedef
IndividualType::Pointer 
IndividualPointer
typedef
IndividualType::ObjectiveValueType 
ObjectiveValueType
typedef
IndividualType::IndividualIDType 
IndividualIDType
typedef std::vector
< IndividualIDType
IndividualSelectionType
typedef std::map
< IndividualIDType,
IndividualSelectionType
HeritageMapType
typedef Population
< IndividualType
PopulationType
typedef
PopulationType::Pointer 
PopulationPointer
typedef
itk::SingleValuedCostFunction 
CostFunctionType
typedef
CostFunctionType::Pointer 
CostFunctionPointer
typedef
CostFunctionType::ParametersType 
CostFunctionParametersType
typedef
ParentSelectorBase
< IndividualType
ParentSelectorType
typedef
ParentSelectorType::Pointer 
ParentSelectorPointer
typedef
RecombinatorBase
< IndividualType
RecombinatorType
typedef
RecombinatorType::Pointer 
RecombinatorPointer
typedef MutationBase
< IndividualType
MutationType
typedef
MutationType::Pointer 
MutationPointer
typedef
SelectionBase
< IndividualType
SelectionType
typedef
SelectionType::Pointer 
SelectionPointer

Public Member Functions

virtual
::itk::LightObject::Pointer 
CreateAnother (void) const
virtual const char * GetNameOfClass () const
virtual void SetNumberOfParents (const unsigned long _arg)
virtual unsigned long GetNumberOfParents () const
virtual void SetNumberOfChildren (const unsigned long _arg)
virtual unsigned long GetNumberOfChildren () const
virtual void SetMutateIntitialPopulation (const bool _arg)
virtual bool GetMutateIntitialPopulation () const
virtual void SetThreshold (const ObjectiveValueType _arg)
virtual
ObjectiveValueType 
GetThreshold () const
virtual void SetParentSelector (ParentSelectorType *pParentSelector)
virtual const
ParentSelectorType
GetParentSelector () const
virtual
ParentSelectorType
GetParentSelector ()
virtual void SetRecombinator (RecombinatorType *pRecombinator)
virtual const
RecombinatorType
GetRecombinator () const
virtual
RecombinatorType
GetRecombinator ()
virtual void SetMutation (MutationType *pMutation)
virtual const
MutationType
GetMutation () const
virtual MutationTypeGetMutation ()
virtual void SetSelection (SelectionType *pSelection)
virtual const
SelectionType
GetSelection () const
virtual SelectionTypeGetSelection ()
virtual const
PopulationType
GetPopulation () const
virtual PopulationTypeGetPopulation ()
virtual const
IndividualType
GetCurrentChild () const
virtual IndividualTypeGetCurrentChild ()
const IndividualTypeGetBestIndividualEver () const
const IndividualTypeGetBestIndividual () const
virtual void Initialize (const PopulationType &population)
virtual void Initialize ()
virtual void StartOptimization ()
virtual void ResumeOptimization ()
const HeritageMapTypeGetRecentParentSelections () const
const PopulationPointerGetRecentPopulationSelections () const
const PopulationPointerGetNewChildren () const

Static Public Member Functions

static Pointer New (void)

Protected Member Functions

 EvolutionaryStrategyOptimizer ()
 EvolutionaryStrategyOptimizer (const EvolutionaryStrategyOptimizer &)
virtual ~EvolutionaryStrategyOptimizer ()
void PrintSelf (std::ostream &os, itk::Indent indent) const
virtual void EvaluatePopulation (PopulationType *pPopulation) const
virtual void EvaluateIndividual (IndividualType *pIndividual) const
virtual IndividualPointer FindBestIndividual (PopulationType *pPopulation)
virtual void SetBestIndividual (PopulationType *pPopulation)
virtual
CostFunctionParametersType 
ConvertIndividualToParameter (const IndividualType *pIndividual) const

Private Attributes

ParentSelectorPointer m_ParentSelector
RecombinatorPointer m_Recombinator
MutationPointer m_Mutation
SelectionPointer m_Selection
PopulationPointer m_Population
bool m_PopulationIsInitialized
bool m_MutateIntitialPopulation
unsigned long m_NumberOfParents
unsigned long m_NumberOfChildren
ObjectiveValueType m_Threshold
HeritageMapType m_ParentSelections
PopulationPointer m_SelectionVictims
PopulationPointer m_NewChildren
IndividualPointer m_CurrentChild


Detailed Description

template<class TIndividual>
class FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >

Simple evolutionary strategy optimizer with one population...

This is simple evolutionary strategy using one population. Every generation will run through the following sequenze of steps:

Number of parents (my) and children (lambda) can be set via parameters of the optimizer. Other charakteristics, e.g. like comma or plus strategies depend on the choosen subcomponents.
E.g. for a classic (my/rho+lambda)-ES you would choose follwing subcomponents:

Definition at line 76 of file freEvolutionaryStrategyOptimizer.h.


Member Typedef Documentation

template<class TIndividual>
typedef EvolutionaryStrategyOptimizer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Self

Standard "Self" typedef.

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 81 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef EvolutionaryStrategyOptimizerBase FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Superclass

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 82 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef itk::SmartPointer<Self> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Pointer

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 83 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef itk::SmartPointer<const Self> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ConstPointer

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 84 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef TIndividual FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::IndividualType

Definition at line 90 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef IndividualType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::IndividualPointer

Definition at line 93 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef IndividualType::ObjectiveValueType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ObjectiveValueType

Definition at line 94 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef IndividualType::IndividualIDType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::IndividualIDType

Definition at line 95 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef std::vector<IndividualIDType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::IndividualSelectionType

Definition at line 96 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef std::map<IndividualIDType,IndividualSelectionType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::HeritageMapType

Definition at line 97 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef Population<IndividualType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PopulationType

Type of the population

Definition at line 100 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef PopulationType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PopulationPointer

Definition at line 101 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef itk::SingleValuedCostFunction FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::CostFunctionType

Type of the Cost Function

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 104 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef CostFunctionType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::CostFunctionPointer

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 105 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef CostFunctionType::ParametersType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::CostFunctionParametersType

Definition at line 106 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef ParentSelectorBase<IndividualType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ParentSelectorType

Type of the parent selector

Definition at line 109 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef ParentSelectorType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ParentSelectorPointer

Definition at line 110 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef RecombinatorBase<IndividualType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::RecombinatorType

Type of the recombinator

Definition at line 113 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef RecombinatorType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::RecombinatorPointer

Definition at line 114 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef MutationBase<IndividualType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::MutationType

Type of the mutation

Definition at line 117 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef MutationType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::MutationPointer

Definition at line 118 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef SelectionBase<IndividualType> FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SelectionType

Type of the selection

Definition at line 121 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
typedef SelectionType::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SelectionPointer

Definition at line 122 of file freEvolutionaryStrategyOptimizer.h.


Constructor & Destructor Documentation

template<class TIndividual>
FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvolutionaryStrategyOptimizer (  )  [inline, protected]

Definition at line 34 of file freEvolutionaryStrategyOptimizer.txx.

template<class TIndividual>
FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvolutionaryStrategyOptimizer ( const EvolutionaryStrategyOptimizer< TIndividual > &   )  [protected]

template<class TIndividual>
FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::~EvolutionaryStrategyOptimizer (  )  [inline, protected, virtual]

Definition at line 52 of file freEvolutionaryStrategyOptimizer.txx.


Member Function Documentation

template<class TIndividual>
static Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::New ( void   )  [inline, static]

Method for creation through the object factory.

Definition at line 87 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual ::itk::LightObject::Pointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::CreateAnother ( void   )  const [inline, virtual]

Definition at line 87 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual const char* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetNameOfClass (  )  const [inline, virtual]

Run-time type information (and related methods).

Definition at line 90 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetNumberOfParents ( const unsigned long  _arg  )  [inline, virtual]

Set/Get number of parents.

Definition at line 126 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::ActualizeMainComponent().

template<class TIndividual>
virtual unsigned long FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetNumberOfParents (  )  const [inline, virtual]

Definition at line 127 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetNumberOfChildren ( const unsigned long  _arg  )  [inline, virtual]

Set/Get number of children.

Definition at line 130 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::ActualizeMainComponent().

template<class TIndividual>
virtual unsigned long FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetNumberOfChildren (  )  const [inline, virtual]

Definition at line 131 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetMutateIntitialPopulation ( const bool  _arg  )  [inline, virtual]

Definition at line 133 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::ActualizeMainComponent().

template<class TIndividual>
virtual bool FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetMutateIntitialPopulation (  )  const [inline, virtual]

Definition at line 134 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetThreshold ( const ObjectiveValueType  _arg  )  [inline, virtual]

Definition at line 136 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::ActualizeMainComponent().

template<class TIndividual>
virtual ObjectiveValueType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetThreshold (  )  const [inline, virtual]

Definition at line 137 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetParentSelector ( ParentSelectorType pParentSelector  )  [inline, virtual]

Definition at line 59 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelector.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetSubComponentCasted().

template<class TIndividual>
virtual const ParentSelectorType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetParentSelector (  )  const [inline, virtual]

Definition at line 140 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::GetSubComponentCasted().

template<class TIndividual>
virtual ParentSelectorType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetParentSelector (  )  [inline, virtual]

Definition at line 141 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetRecombinator ( RecombinatorType pRecombinator  )  [inline, virtual]

Definition at line 71 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Recombinator.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetSubComponentCasted().

template<class TIndividual>
virtual const RecombinatorType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetRecombinator (  )  const [inline, virtual]

Definition at line 144 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::GetSubComponentCasted().

template<class TIndividual>
virtual RecombinatorType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetRecombinator (  )  [inline, virtual]

Definition at line 145 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetMutation ( MutationType pMutation  )  [inline, virtual]

Definition at line 83 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetSubComponentCasted().

template<class TIndividual>
virtual const MutationType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetMutation (  )  const [inline, virtual]

Definition at line 148 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::GetSubComponentCasted().

template<class TIndividual>
virtual MutationType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetMutation (  )  [inline, virtual]

Definition at line 149 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetSelection ( SelectionType pSelection  )  [inline, virtual]

Definition at line 95 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Selection.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetSubComponentCasted().

template<class TIndividual>
virtual const SelectionType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetSelection (  )  const [inline, virtual]

Definition at line 152 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::GetSubComponentCasted().

template<class TIndividual>
virtual SelectionType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetSelection (  )  [inline, virtual]

Definition at line 153 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual const PopulationType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetPopulation (  )  const [inline, virtual]

Definition at line 155 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetStatisticEntryMainComponent().

template<class TIndividual>
virtual PopulationType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetPopulation (  )  [inline, virtual]

Definition at line 156 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual const IndividualType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetCurrentChild (  )  const [inline, virtual]

Definition at line 158 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
virtual IndividualType* FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetCurrentChild (  )  [inline, virtual]

Definition at line 159 of file freEvolutionaryStrategyOptimizer.h.

template<class TIndividual>
const EvolutionaryStrategyOptimizer< TIndividual >::IndividualType * FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetBestIndividualEver (  )  const [inline]

Returns the best individual ever exists in the population. At the beginning of the optimization process (so in the first generation) the return may be NULL, thus there is no best individual yet.

Definition at line 549 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetStatisticEntryMainComponent().

template<class TIndividual>
const EvolutionaryStrategyOptimizer< TIndividual >::IndividualType * FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetBestIndividual (  )  const [inline]

Returns the best individual in the current population. At the beginning of the optimization process (so in the first generation) the return may be NULL, thus there is no best individual yet.

Definition at line 561 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), and FREE::EvolutionaryStrategyOptimizerController::SetStatisticEntryMainComponent().

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize ( const PopulationType population  )  [inline, virtual]

Initializes the optimizer by using the passed population. An exception is raised if the population size doesn't match parent count of the optimizer.

Remarks:
The passed population will be copied for internal use, so use the GetPopulation() function for any changing purpose. Strategic parameters if needed will be added to any entity.
Parameters:
population The reference population, that will be copied to receive the first parental generation.

Definition at line 167 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::Population< TIndividual >::Clone(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_CurrentChild, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NewChildren, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfParents, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelector, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_PopulationIsInitialized, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Recombinator, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Selection, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_SelectionVictims, and throwExceptionMacro.

Referenced by FREE::EvolutionaryStrategyOptimizerController::ActualizeMainComponent().

Here is the call graph for this function:

FREE::ES::Population::CloneFREE::ES::Population::New

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize (  )  [inline, virtual]

Initializes the optimizer by using the initial position as objective parameters for a new entity. This entity will be cloned to establish the first parental population.

Definition at line 202 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_MutateIntitialPopulation, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfParents, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_PopulationIsInitialized, and FREE::ES::Population< TIndividual >::New().

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

Here is the call graph for this function:

FREE::ES::Population::New

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization (  )  [inline, virtual]

Start optimization. Optimization will stop when it meets either of two termination conditions, the maximum iteration limit or epsilon (minimal search radius)

Implements FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 240 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluatePopulation(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizerBase::m_CurrentIteration, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelector, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Recombinator, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Selection, FREE::ES::EvolutionaryStrategyOptimizerBase::m_Started, FREE::ES::EvolutionaryStrategyOptimizerBase::m_Stop, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetBestIndividual(), and throwExceptionMacro.

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizer::EvaluatePopulationFREE::ES::EvolutionaryStrategyOptimizer::InitializeFREE::ES::EvolutionaryStrategyOptimizer::ResumeOptimizationFREE::ES::EvolutionaryStrategyOptimizer::SetBestIndividualFREE::ES::EvolutionaryStrategyOptimizer::EvaluateIndividualFREE::ES::EvolutionaryStrategyOptimizer::ConvertIndividualToParameterFREE::ES::Population::NewFREE::ES::EvolutionaryStrategyOptimizer::GetBestIndividualFREE::ES::EvolutionaryStrategyOptimizerBase::ResumeOptimizationFREE::ES::EvolutionaryStrategyOptimizer::FindBestIndividualFREE::ES::EvolutionaryStrategyOptimizerBase::GetMinimizeFREE::ES::Population::GetBestIndividualEverFREE::ES::Population::SetBestIndividualFREE::ES::Population::SetBestIndividualEver

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization (  )  [inline, virtual]

Resumes the optimization. You have to call StartOptimization befor you can resume it. Calling this method without StartOptimizazion will cause an exception.

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 301 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluateIndividual(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetBestIndividual(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_CurrentChild, FREE::ES::EvolutionaryStrategyOptimizerBase::m_CurrentCost, FREE::ES::EvolutionaryStrategyOptimizerBase::m_CurrentIteration, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NewChildren, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfChildren, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfParents, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelections, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelector, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Recombinator, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Selection, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_SelectionVictims, FREE::ES::EvolutionaryStrategyOptimizerBase::m_Started, FREE::ES::EvolutionaryStrategyOptimizerBase::m_Stop, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Threshold, FREE::ES::Population< TIndividual >::New(), FREE::ES::EvolutionaryStrategyOptimizerBase::ResumeOptimization(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetBestIndividual().

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizer::EvaluateIndividualFREE::ES::EvolutionaryStrategyOptimizer::GetBestIndividualFREE::ES::Population::NewFREE::ES::EvolutionaryStrategyOptimizerBase::ResumeOptimizationFREE::ES::EvolutionaryStrategyOptimizer::SetBestIndividualFREE::ES::EvolutionaryStrategyOptimizer::ConvertIndividualToParameterFREE::ES::EvolutionaryStrategyOptimizer::FindBestIndividualFREE::ES::EvolutionaryStrategyOptimizerBase::GetMinimizeFREE::ES::Population::GetBestIndividualEverFREE::ES::Population::SetBestIndividualFREE::ES::Population::SetBestIndividualEver

template<class TIndividual>
const EvolutionaryStrategyOptimizer< TIndividual >::HeritageMapType & FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetRecentParentSelections (  )  const [inline]

Returns a map containing parent selection vectors. These parent selection vectors indicate which individuals (by ID) have been used to generate a child of the last population. The ID of the offspring is the key of the map.

Definition at line 525 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelections.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetStatisticEntryMainComponent().

template<class TIndividual>
const EvolutionaryStrategyOptimizer< TIndividual >::PopulationPointer & FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetRecentPopulationSelections (  )  const [inline]

Returns a pointer to a population containig all individual sorted out by the last selection.

Definition at line 533 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_SelectionVictims.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetStatisticEntryMainComponent().

template<class TIndividual>
const EvolutionaryStrategyOptimizer< TIndividual >::PopulationPointer & FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetNewChildren (  )  const [inline]

Returns a pointer to a population only containig the children of the last generation.

Definition at line 541 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NewChildren.

Referenced by FREE::EvolutionaryStrategyOptimizerController::SetStatisticEntryMainComponent().

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const [inline, protected]

Reimplemented from FREE::ES::EvolutionaryStrategyOptimizerBase.

Definition at line 107 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfChildren, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfParents, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelector, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Recombinator, FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Selection, and FREE::ES::EvolutionaryStrategyOptimizerBase::PrintSelf().

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizerBase::PrintSelf

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluatePopulation ( PopulationType pPopulation  )  const [inline, protected, virtual]

Definition at line 410 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluateIndividual().

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizer::EvaluateIndividualFREE::ES::EvolutionaryStrategyOptimizer::ConvertIndividualToParameter

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluateIndividual ( IndividualType pIndividual  )  const [inline, protected, virtual]

Definition at line 424 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ConvertIndividualToParameter().

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluatePopulation(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizer::ConvertIndividualToParameter

template<class TIndividual>
EvolutionaryStrategyOptimizer< TIndividual >::IndividualPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::FindBestIndividual ( PopulationType pPopulation  )  [inline, protected, virtual]

Definition at line 456 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizerBase::GetMinimize().

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetBestIndividual().

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizerBase::GetMinimize

template<class TIndividual>
void FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetBestIndividual ( PopulationType pPopulation  )  [inline, protected, virtual]

Definition at line 485 of file freEvolutionaryStrategyOptimizer.txx.

References FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::FindBestIndividual(), FREE::ES::Population< TIndividual >::GetBestIndividualEver(), FREE::ES::EvolutionaryStrategyOptimizerBase::GetMinimize(), FREE::ES::Population< TIndividual >::SetBestIndividual(), and FREE::ES::Population< TIndividual >::SetBestIndividualEver().

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

Here is the call graph for this function:

FREE::ES::EvolutionaryStrategyOptimizer::FindBestIndividualFREE::ES::EvolutionaryStrategyOptimizerBase::GetMinimizeFREE::ES::Population::GetBestIndividualEverFREE::ES::Population::SetBestIndividualFREE::ES::Population::SetBestIndividualEver

template<class TIndividual>
EvolutionaryStrategyOptimizer< TIndividual >::CostFunctionParametersType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ConvertIndividualToParameter ( const IndividualType pIndividual  )  const [inline, protected, virtual]

Definition at line 508 of file freEvolutionaryStrategyOptimizer.txx.

References throwExceptionMacro.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::EvaluateIndividual().


Member Data Documentation

template<class TIndividual>
ParentSelectorPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelector [private]

Definition at line 221 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetParentSelector(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

template<class TIndividual>
RecombinatorPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Recombinator [private]

Definition at line 223 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetRecombinator(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

template<class TIndividual>
MutationPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Mutation [private]

Definition at line 225 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetMutation(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

template<class TIndividual>
SelectionPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Selection [private]

Definition at line 227 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::SetSelection(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

template<class TIndividual>
PopulationPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Population [private]

Definition at line 229 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetBestIndividual(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetBestIndividualEver(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::StartOptimization().

template<class TIndividual>
bool FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_PopulationIsInitialized [private]

Definition at line 231 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize().

template<class TIndividual>
bool FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_MutateIntitialPopulation [private]

Definition at line 233 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize().

template<class TIndividual>
unsigned long FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfParents [private]

Definition at line 235 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

template<class TIndividual>
unsigned long FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NumberOfChildren [private]

Definition at line 237 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::PrintSelf(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

template<class TIndividual>
ObjectiveValueType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_Threshold [private]

Definition at line 239 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

template<class TIndividual>
HeritageMapType FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_ParentSelections [mutable, private]

Definition at line 241 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetRecentParentSelections(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

template<class TIndividual>
PopulationPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_SelectionVictims [mutable, private]

Definition at line 243 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetRecentPopulationSelections(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

template<class TIndividual>
PopulationPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_NewChildren [mutable, private]

Definition at line 245 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::GetNewChildren(), FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().

template<class TIndividual>
IndividualPointer FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::m_CurrentChild [mutable, private]

Definition at line 250 of file freEvolutionaryStrategyOptimizer.h.

Referenced by FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::Initialize(), and FREE::ES::EvolutionaryStrategyOptimizer< TIndividual >::ResumeOptimization().


The documentation for this class was generated from the following files:
Generated at Sat Oct 13 18:29:51 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000