Implements the NSGA-II. More...
#include <shark/Algorithms/DirectSearch/RealCodedNSGAII.h>
Inheritance diagram for shark::IndicatorBasedRealCodedNSGAII< Indicator >:Public Member Functions | |
| IndicatorBasedRealCodedNSGAII () | |
| Default c'tor. More... | |
| std::string | name () const |
| returns the name of the object More... | |
| double | crossoverProbability () const |
| Returns the probability that crossover is applied. More... | |
| double & | crossoverProbability () |
| Returns the probability that crossover is applied. More... | |
| double | nm () const |
| double & | nm () |
| double | nc () const |
| double & | nc () |
| std::size_t | mu () const |
| std::size_t & | mu () |
| template<typename Archive > | |
| void | serialize (Archive &archive, const unsigned int version) |
| Stores/loads the algorithm's state. More... | |
| void | init (ObjectiveFunctionType &function, std::vector< SearchPointType > const &startingPoints) |
| Initializes the algorithm for the supplied objective function. More... | |
| void | step (ObjectiveFunctionType const &function) |
| Executes one iteration of the algorithm. More... | |
Public Member Functions inherited from shark::AbstractMultiObjectiveOptimizer< RealVector > | |
| virtual | ~AbstractMultiObjectiveOptimizer () |
| Virtual empty d'tor. More... | |
| virtual void | init (ObjectiveFunctionType &function) |
| Initializes the optimizer for the supplied objective function. More... | |
| const SolutionType & | solution () const |
| Accesses the current approximation of the Pareto-set and -front, respectively. More... | |
Public Member Functions inherited from shark::AbstractOptimizer< RealVector, RealVector, std::vector< ResultSet< RealVector, RealVector > > > | |
| const Features & | features () const |
| virtual void | updateFeatures () |
| bool | requiresValue () const |
| bool | requiresFirstDerivative () const |
| bool | requiresSecondDerivative () const |
| bool | canSolveConstrained () const |
| bool | requiresClosestFeasible () const |
| virtual | ~AbstractOptimizer () |
| Empty virtual d'tor. More... | |
Public Member Functions inherited from shark::INameable | |
| virtual | ~INameable () |
Public Member Functions inherited from shark::ISerializable | |
| virtual | ~ISerializable () |
| Virtual d'tor. More... | |
| virtual void | read (InArchive &archive) |
| Read the component from the supplied archive. More... | |
| virtual void | write (OutArchive &archive) const |
| Write the component to the supplied archive. More... | |
| void | load (InArchive &archive, unsigned int version) |
| Versioned loading of components, calls read(...). More... | |
| void | save (OutArchive &archive, unsigned int version) const |
| Versioned storing of components, calls write(...). More... | |
| BOOST_SERIALIZATION_SPLIT_MEMBER () | |
Implements the NSGA-II.
Please see the following papers for further reference: Deb, Agrawal, Pratap and Meyarivan. A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 6, NO. 2, APRIL 2002
Definition at line 60 of file RealCodedNSGAII.h.
|
inline |
Default c'tor.
Definition at line 82 of file RealCodedNSGAII.h.
References shark::IndicatorBasedRealCodedNSGAII< Indicator >::crossoverProbability(), shark::AbstractOptimizer< RealVector, RealVector, std::vector< ResultSet< RealVector, RealVector > > >::m_features, shark::IndicatorBasedRealCodedNSGAII< Indicator >::mu(), shark::IndicatorBasedRealCodedNSGAII< Indicator >::nc(), and shark::IndicatorBasedRealCodedNSGAII< Indicator >::nm().
|
inline |
Returns the probability that crossover is applied.
Definition at line 95 of file RealCodedNSGAII.h.
Referenced by shark::IndicatorBasedRealCodedNSGAII< Indicator >::IndicatorBasedRealCodedNSGAII().
|
inline |
Returns the probability that crossover is applied.
Definition at line 99 of file RealCodedNSGAII.h.
|
inlinevirtual |
Initializes the algorithm for the supplied objective function.
| ObjectiveFunction | The type of the objective function, needs to adhere to the concept of an AbstractObjectiveFunction. |
| [in] | function | The objective function |
| [in] | startingPoints | Starting point to initialize the algorithm for. |
Implements shark::AbstractMultiObjectiveOptimizer< RealVector >.
Definition at line 151 of file RealCodedNSGAII.h.
References shark::AbstractOptimizer< RealVector, RealVector, std::vector< ResultSet< RealVector, RealVector > > >::checkFeatures(), shark::PolynomialMutator::init(), shark::SimulatedBinaryCrossover< PointType >::init(), shark::AbstractMultiObjectiveOptimizer< RealVector >::m_best, and shark::IndicatorBasedRealCodedNSGAII< Indicator >::mu().
|
inline |
|
inline |
Definition at line 120 of file RealCodedNSGAII.h.
|
inlinevirtual |
returns the name of the object
Reimplemented from shark::INameable.
Definition at line 90 of file RealCodedNSGAII.h.
|
inline |
Definition at line 110 of file RealCodedNSGAII.h.
References shark::SimulatedBinaryCrossover< PointType >::m_nc.
Referenced by shark::IndicatorBasedRealCodedNSGAII< Indicator >::IndicatorBasedRealCodedNSGAII().
|
inline |
Definition at line 113 of file RealCodedNSGAII.h.
References shark::SimulatedBinaryCrossover< PointType >::m_nc.
|
inline |
Definition at line 103 of file RealCodedNSGAII.h.
References shark::PolynomialMutator::m_nm.
Referenced by shark::IndicatorBasedRealCodedNSGAII< Indicator >::IndicatorBasedRealCodedNSGAII().
|
inline |
Definition at line 106 of file RealCodedNSGAII.h.
References shark::PolynomialMutator::m_nm.
|
inline |
Stores/loads the algorithm's state.
| Archive | The type of the archive. |
| [in,out] | archive | The archive to use for loading/storing. |
| [in] | version | Currently unused. |
Definition at line 131 of file RealCodedNSGAII.h.
References shark::AbstractMultiObjectiveOptimizer< RealVector >::m_best.
|
inlinevirtual |
Executes one iteration of the algorithm.
| [in] | function | The function to iterate upon. |
Implements shark::AbstractOptimizer< RealVector, RealVector, std::vector< ResultSet< RealVector, RealVector > > >.
Definition at line 184 of file RealCodedNSGAII.h.
References shark::Individual< PointType, FitnessTypeT, Chromosome >::IsSelected(), shark::AbstractMultiObjectiveOptimizer< RealVector >::m_best, shark::IndicatorBasedRealCodedNSGAII< Indicator >::mu(), and shark::blas::noalias().