ʻOhana
Population structure, admixture history, and selection using learning methods.
|
A template for a class that implements the Nelder-Mead Simplex Method, which attempts to minimize an objective function in a many-dimensional space by continually refining a simplex. More...
#include <jade.simplex.hpp>
Data Structures | |
struct | execute_args |
Arguments to the execute method. More... | |
struct | exit_condition |
An indication of what caused the execute to temrinate. More... | |
struct | log_args |
Arguments passed to the logging function. More... | |
struct | operation |
An operation performed during an iteration. More... | |
struct | options |
A data structure used to initialize the Nelder-Mead algorithm. More... | |
struct | stats |
Statistics about the behavior of the algorithm. More... | |
Public Types | |
typedef TValue | value_type |
The value type. More... | |
typedef std::vector< value_type > | container_type |
The container type. More... | |
typedef exit_condition::type | exit_condition_type |
The exit condition type. More... | |
typedef operation::type | operation_type |
The operation type. More... | |
Public Member Functions | |
template<typename TObjfunc > | |
basic_simplex (const TObjfunc objfunc, const size_t n) | |
Initializes a new instance of the class based on the specified required values. More... | |
template<typename TObjfunc > | |
basic_simplex (const TObjfunc objfunc, const options &opts) | |
Initializes a new instance of the class based on the specified options. More... | |
template<typename TObjfunc > | |
exit_condition_type | execute (const TObjfunc objfunc, const execute_args &exe_args) |
Calls the iterate method until an exit condition is reached. More... | |
value_type | get_delta () const |
value_type | get_flux () const |
value_type | get_length_squared () const |
value_type | get_length () const |
const options & | get_options () const |
const stats & | get_stats () const |
const value_type & | get_objval () const |
const value_type & | get_objval (const size_t index) const |
const container_type & | get_vertex () const |
const container_type & | get_vertex (const size_t index) const |
template<typename TObjfunc > | |
operation_type | iterate (const TObjfunc objfunc) |
Performs one iteration of the Nelder-Mead algorithm. In an iteration over two-dimensional space, a point p_min is reflected to point p_r, expanded to point p_e, or contracted to point p_c. If these test points do not improve the overall score of the simplex, then it shrinks around the point p_max with the highest score. More... | |
A template for a class that implements the Nelder-Mead Simplex Method, which attempts to minimize an objective function in a many-dimensional space by continually refining a simplex.
Definition at line 20 of file jade.simplex.hpp.
typedef std::vector<value_type> jade::basic_simplex< TValue >::container_type |
The container type.
Definition at line 27 of file jade.simplex.hpp.
typedef exit_condition::type jade::basic_simplex< TValue >::exit_condition_type |
The exit condition type.
Definition at line 68 of file jade.simplex.hpp.
typedef operation::type jade::basic_simplex< TValue >::operation_type |
The operation type.
Definition at line 109 of file jade.simplex.hpp.
typedef TValue jade::basic_simplex< TValue >::value_type |
The value type.
Definition at line 24 of file jade.simplex.hpp.
|
inline |
Initializes a new instance of the class based on the specified required values.
objfunc | The objective function. |
n | The number of dimensions. |
Definition at line 498 of file jade.simplex.hpp.
|
inline |
Initializes a new instance of the class based on the specified options.
objfunc | The objective function. |
opts | The options. |
Definition at line 510 of file jade.simplex.hpp.
|
inline |
Calls the iterate method until an exit condition is reached.
objfunc | The objective function. |
exe_args | The execution arguments. |
Definition at line 567 of file jade.simplex.hpp.
|
inline |
Definition at line 624 of file jade.simplex.hpp.
|
inline |
Definition at line 635 of file jade.simplex.hpp.
|
inline |
Definition at line 690 of file jade.simplex.hpp.
|
inline |
Definition at line 659 of file jade.simplex.hpp.
|
inline |
Definition at line 714 of file jade.simplex.hpp.
|
inline |
index | The vertex index. |
Definition at line 722 of file jade.simplex.hpp.
|
inline |
Definition at line 698 of file jade.simplex.hpp.
|
inline |
Definition at line 706 of file jade.simplex.hpp.
|
inline |
Definition at line 734 of file jade.simplex.hpp.
|
inline |
index | The vertex index. |
Definition at line 743 of file jade.simplex.hpp.
|
inline |
Performs one iteration of the Nelder-Mead algorithm. In an iteration over two-dimensional space, a point p_min is reflected to point p_r, expanded to point p_e, or contracted to point p_c. If these test points do not improve the overall score of the simplex, then it shrinks around the point p_max with the highest score.
objfunc | The objective function. |
Definition at line 761 of file jade.simplex.hpp.