EvolvingObjects
eoSyncEasyPSO< POT > Class Template Reference

An easy-to-use synchronous particle swarm algorithm; you can use any particle, any flight, any topology... More...

#include <eoSyncEasyPSO.h>

Inheritance diagram for eoSyncEasyPSO< POT >:
eoPSO< POT > eoAlgo< POT > eoUF< eoPop< POT > &, void > eoFunctorBase unary_function

List of all members.

Classes

class  eoDummyEval
class  eoDummyFlight
class  eoDummyInitializer

Public Member Functions

 eoSyncEasyPSO (eoInitializerBase< POT > &_init, eoContinue< POT > &_continuator, eoEvalFunc< POT > &_eval, eoVelocity< POT > &_velocity, eoFlight< POT > &_flight)
 Full constructor.
 eoSyncEasyPSO (eoInitializerBase< POT > &_init, eoContinue< POT > &_continuator, eoEvalFunc< POT > &_eval, eoVelocity< POT > &_velocity)
 Constructor without eoFlight.
 eoSyncEasyPSO (eoInitializerBase< POT > &_init, eoContinue< POT > &_continuator, eoPopEvalFunc< POT > &_eval, eoVelocity< POT > &_velocity, eoFlight< POT > &_flight)
 Full constructor - Can be used in parallel.
 eoSyncEasyPSO (eoContinue< POT > &_continuator, eoEvalFunc< POT > &_eval, eoVelocity< POT > &_velocity, eoFlight< POT > &_flight)
 Another constructor without initializer.
 eoSyncEasyPSO (eoContinue< POT > &_continuator, eoEvalFunc< POT > &_eval, eoVelocity< POT > &_velocity)
 Constructor without eoFlight nor eoInitializer.
 eoSyncEasyPSO (eoContinue< POT > &_continuator, eoPopEvalFunc< POT > &_eval, eoVelocity< POT > &_velocity, eoFlight< POT > &_flight)
 Full constructor - Can be used in parallel.
virtual void operator() (eoPop< POT > &_pop)
 Apply a few iteration of flight to the population (=swarm).

Private Attributes

eoInitializerBase< POT > & init
eoContinue< POT > & continuator
eoEvalFunc< POT > & eval
eoPopLoopEval< POT > loopEval
eoPopEvalFunc< POT > & popEval
eoVelocity< POT > & velocity
eoFlight< POT > & flight
eoSyncEasyPSO::eoDummyEval dummyEval
eoSyncEasyPSO::eoDummyFlight dummyFlight
eoSyncEasyPSO::eoDummyInitializer dummyInit

Detailed Description

template<class POT>
class eoSyncEasyPSO< POT >

An easy-to-use synchronous particle swarm algorithm; you can use any particle, any flight, any topology...

The main steps are :

  • perform a first evaluation of the population
  • for each generation
  • evaluate ALL the velocities -- perform the fligth of ALL the particles -- evaluate ALL the particles -- update the neighborhoods
Examples:
t-eoSyncEasyPSO.cpp.

Definition at line 49 of file eoSyncEasyPSO.h.


Constructor & Destructor Documentation

template<class POT>
eoSyncEasyPSO< POT >::eoSyncEasyPSO ( eoInitializerBase< POT > &  _init,
eoContinue< POT > &  _continuator,
eoEvalFunc< POT > &  _eval,
eoVelocity< POT > &  _velocity,
eoFlight< POT > &  _flight 
) [inline]

Full constructor.

Parameters:
_init- An eoInitializerBase that initializes the topology, velocity, best particle(s)
_continuator- An eoContinue that manages the stopping criterion and the checkpointing system
_eval- An eoEvalFunc: the evaluation performer
_velocity- An eoVelocity that defines how to compute the velocities
_flight- An eoFlight that defines how to make the particle flying: that means how to modify the positions according to the velocities

Definition at line 61 of file eoSyncEasyPSO.h.

template<class POT>
eoSyncEasyPSO< POT >::eoSyncEasyPSO ( eoInitializerBase< POT > &  _init,
eoContinue< POT > &  _continuator,
eoEvalFunc< POT > &  _eval,
eoVelocity< POT > &  _velocity 
) [inline]

Constructor without eoFlight.

For special cases when the flight is performed withing the velocity.

Parameters:
_init- An eoInitializerBase that initializes the topology, velocity, best particle(s)
_continuator- An eoContinue that manages the stopping criterion and the checkpointing system
_eval- An eoEvalFunc: the evaluation performer
_velocity- An eoVelocity that defines how to compute the velocities

Definition at line 83 of file eoSyncEasyPSO.h.

template<class POT>
eoSyncEasyPSO< POT >::eoSyncEasyPSO ( eoInitializerBase< POT > &  _init,
eoContinue< POT > &  _continuator,
eoPopEvalFunc< POT > &  _eval,
eoVelocity< POT > &  _velocity,
eoFlight< POT > &  _flight 
) [inline]

Full constructor - Can be used in parallel.

Parameters:
_init- An eoInitializerBase that initializes the topology, velocity, best particle(s)
_continuator- An eoContinue that manages the stopping criterion and the checkpointing system
_eval- An eoPopEvalFunc
_velocity- An eoVelocity that defines how to compute the velocities
_flight- An eoFlight

Definition at line 104 of file eoSyncEasyPSO.h.

template<class POT>
eoSyncEasyPSO< POT >::eoSyncEasyPSO ( eoContinue< POT > &  _continuator,
eoEvalFunc< POT > &  _eval,
eoVelocity< POT > &  _velocity,
eoFlight< POT > &  _flight 
) [inline]

Another constructor without initializer.

Parameters:
_continuator- An eoContinue that manages the stopping criterion and the checkpointing system
_eval- An eoEvalFunc: the evaluation performer
_velocity- An eoVelocity that defines how to compute the velocities
_flight- An eoFlight that defines how to make the particle flying: that means how to modify the positions according to the velocities

Definition at line 127 of file eoSyncEasyPSO.h.

template<class POT>
eoSyncEasyPSO< POT >::eoSyncEasyPSO ( eoContinue< POT > &  _continuator,
eoEvalFunc< POT > &  _eval,
eoVelocity< POT > &  _velocity 
) [inline]

Constructor without eoFlight nor eoInitializer.

For special cases when the flight is performed withing the velocity.

Parameters:
_continuator- An eoContinue that manages the stopping criterion and the checkpointing system
_eval- An eoEvalFunc: the evaluation performer
_velocity- An eoVelocity that defines how to compute the velocities

Definition at line 147 of file eoSyncEasyPSO.h.

template<class POT>
eoSyncEasyPSO< POT >::eoSyncEasyPSO ( eoContinue< POT > &  _continuator,
eoPopEvalFunc< POT > &  _eval,
eoVelocity< POT > &  _velocity,
eoFlight< POT > &  _flight 
) [inline]

Full constructor - Can be used in parallel.

Parameters:
_continuator- An eoContinue that manages the stopping criterion and the checkpointing system
_eval- An eoPopEvalFunc
_velocity- An eoVelocity that defines how to compute the velocities
_flight- An eoFlight

Definition at line 166 of file eoSyncEasyPSO.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Friends