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

Wrapper for NLopt's Sbplx algorithm. More...

#include <nlopt_sbplx.h>

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

Public Member Functions

 nlopt_sbplx (int=100, const double &=1E-6, const double &=1E-6)
 Constructor. More...
 
base_ptr clone () const
 Clone method. More...
 
std::string get_name () const
 Algorithm name.
 
- 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...
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Member Functions inherited from pagmo::algorithm::base_nlopt
 base_nlopt (nlopt::algorithm, bool, bool, int, const double &, const double &)
 Constructor. More...
 
void evolve (population &) const
 Evolve method. More...
 
std::string human_readable_extra () const
 Extra information in human readable format. More...
 
- Protected Attributes inherited from pagmo::algorithm::base_nlopt
nlopt::opt m_opt
 NLOPT optimization method.
 
const std::size_t m_max_iter
 Maximum number of iterations.
 
const double m_ftol
 Tolerance on the fitness function variation (stopping criteria)
 
const double m_xtol
 Tolerance on the decision_vector variation function (stopping criteria)
 
- 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

Wrapper for NLopt's Sbplx algorithm.

From NLopt's documentation:

This is my re-implementation of Tom Rowan's "Subplex" algorithm. As Rowan expressed a preference that other implementations of his algorithm use a different name, I called my implementation "Sbplx" [...]. Subplex (a variant of Nelder-Mead that uses Nelder-Mead on a sequence of subspaces) is claimed to be much more efficient and robust than the original Nelder-Mead, while retaining the latter's facility with discontinuous objectives, and in my experience these claims seem to be true in many cases.

This algorithm is a derivative-free single-objective continuous minimiser that supports box constraints.

See also
T. Rowan, "Functional Stability Analysis of Numerical Algorithms", Ph.D. thesis, Department of Computer Sciences, University of Texas at Austin, 1990.
Author
Francesco Biscani (blues.nosp@m.carn.nosp@m.i@gma.nosp@m.il.c.nosp@m.om)

Definition at line 52 of file nlopt_sbplx.h.

Constructor & Destructor Documentation

pagmo::algorithm::nlopt_sbplx::nlopt_sbplx ( int  max_iter = 100,
const double &  ftol = 1E-6,
const double &  xtol = 1E-6 
)

Constructor.

See also
pagmo::algorithm::base_nlopt::base_nlopt()

Definition at line 36 of file nlopt_sbplx.cpp.

Member Function Documentation

base_ptr pagmo::algorithm::nlopt_sbplx::clone ( ) const
virtual

Clone method.

Provided that the derived algorithm implements properly the copy constructor, virtually all implementations of this method will look like this:

return base_ptr(new derived_algorithm(*this));
               @return algorithm::base_ptr to a copy of this.

Implements pagmo::algorithm::base.

Definition at line 38 of file nlopt_sbplx.cpp.


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