PaGMO  1.1.5
Public Member Functions | Protected Member Functions | Friends
pagmo::algorithm::cstrs_self_adaptive Class Reference

Self-Adaptive Fitness constraints handling meta-algorithm. More...

#include <cstrs_self_adaptive.h>

Inheritance diagram for pagmo::algorithm::cstrs_self_adaptive:
Inheritance graph
[legend]

Public Member Functions

 cstrs_self_adaptive (const base &=jde(), int gen=1, double=1e-15, double=1e-15)
 Constructor. More...
 
 cstrs_self_adaptive (const cstrs_self_adaptive &)
 Copy constructor.
 
base_ptr clone () const
 Clone method.
 
void evolve (population &) const
 Evolve implementation. More...
 
std::string get_name () const
 Algorithm name.
 
base_ptr get_algorithm () const
 Get a copy of the internal local algorithm. More...
 
void set_algorithm (const base &)
 Set algorithm. More...
 
- Public Member Functions inherited from pagmo::algorithm::base
 base ()
 Default constructor. More...
 
virtual ~base ()
 Trivial destructor. More...
 
std::string human_readable () const
 Return human readable representation of the algorithm. More...
 
void set_screen_output (const bool p)
 Setter-Getter for protected m_screen_output data. More...
 
bool get_screen_output () const
 Gets screen output. More...
 
void reset_rngs (const unsigned int) const
 Resets the seed of the internal rngs using a user-provided seed. More...
 

Protected Member Functions

std::string human_readable_extra () const
 Extra human readable algorithm info. More...
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Attributes inherited from pagmo::algorithm::base
bool m_screen_output
 Indicates to the derived class whether to print stuff on screen.
 
rng_double m_drng
 Random number generator for double-precision floating point values.
 
rng_uint32 m_urng
 Random number generator for unsigned integer values.
 
unsigned int m_fevals
 A counter for the number of function evaluations.
 

Detailed Description

Self-Adaptive Fitness constraints handling meta-algorithm.

Seld-Adaptive Fitness constraints handling is a meta-algorithm that allows to solve constrained optimization problems. The key idea of this constraint handling technique is to represent the constraint violation by a single infeasibility measure, and to adapt dynamically the penalization of infeasible solutions.

This meta-algorithm is based on the problem self-adaptive.

Note: This constraints handling technique can only be used for MINIMIZATION problems

See also
Farmani, R., & Wright, J. A. (2003). Self-adaptive fitness formulation for constrained optimization. Evolutionary Computation, IEEE Transactions on, 7(5), 445-455 for the paper introducing the method.
Author
Jeremie Labroquere (jerem.nosp@m.ie.l.nosp@m.abroq.nosp@m.uere.nosp@m.@gmai.nosp@m.l.co.nosp@m.m)

Definition at line 56 of file algorithm/cstrs_self_adaptive.h.

Constructor & Destructor Documentation

pagmo::algorithm::cstrs_self_adaptive::cstrs_self_adaptive ( const base original_algo = jde(),
int  gen = 1,
double  ftol = 1e-15,
double  xtol = 1e-15 
)

Constructor.

Constructs an self adaptive algorithm.

Parameters
[in]original_algopagmo::algorithm to use as 'original' optimization method
[in]gennumber of generations.
[in]ftolstopping criteria on the f tolerance.
[in]xtolstopping criteria on the x tolerance.
Exceptions
value_errorif gen is negative or zero

Definition at line 50 of file algorithm/cstrs_self_adaptive.cpp.

Member Function Documentation

void pagmo::algorithm::cstrs_self_adaptive::evolve ( population pop) const
virtual

Evolve implementation.

Run the Self-Adaptive algorithm

Parameters
[in,out]popinput/output pagmo::population to be evolved.

Implements pagmo::algorithm::base.

Definition at line 74 of file algorithm/cstrs_self_adaptive.cpp.

base_ptr pagmo::algorithm::cstrs_self_adaptive::get_algorithm ( ) const

Get a copy of the internal local algorithm.

Returns
algorithm::base_ptr to a copy of the internal local algorithm.

Definition at line 197 of file algorithm/cstrs_self_adaptive.cpp.

std::string pagmo::algorithm::cstrs_self_adaptive::human_readable_extra ( ) const
protectedvirtual

Extra human readable algorithm info.

Returns
a formatted string displaying the parameters of the algorithm.

Reimplemented from pagmo::algorithm::base.

Definition at line 217 of file algorithm/cstrs_self_adaptive.cpp.

void pagmo::algorithm::cstrs_self_adaptive::set_algorithm ( const base algo)

Set algorithm.

A copy of the input algorithm will be set as the internal local algorithm.

Parameters
[in]algoalgorithm to be set as local algorithm.

Definition at line 208 of file algorithm/cstrs_self_adaptive.cpp.


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