#include <optimiser.hpp>
Public Member Functions | |
optimiser (const std::string &name) | |
virtual optimise_result | optimise (const pass::problem &problem)=0 |
Public Attributes | |
double | acceptable_fitness_value |
arma::uword | maximal_iterations |
arma::uword | maximal_evaluations |
std::chrono::nanoseconds | maximal_duration |
const std::string | name |
Detailed Description
Interface for algorithms that approximate a solution to a pass::problem
. Subclasses need only implement optimise
.
Constructor & Destructor Documentation
◆ optimiser()
pass::optimiser::optimiser | ( | const std::string & | name | ) |
Initialises an optimiser with its own name
Member Function Documentation
◆ optimise()
|
pure virtual |
Optimises problem
, storing the result and performance characteristics of the optimisation in the returned optimise_result
.
Implemented in pass::parallel_swarm_search, pass::particle_swarm_optimisation, and pass::random_search.
Member Data Documentation
◆ acceptable_fitness_value
double pass::optimiser::acceptable_fitness_value |
The optimiser will stop early if it finds a agent that evaluates to a value less than or equal to acceptable_fitness_value
.
Initialised to -infinity.
◆ maximal_duration
std::chrono::nanoseconds pass::optimiser::maximal_duration |
The maximal elapsed time before the optimiser stops.
Initialised maximum time std::chrono::system_clock::duration::max().
◆ maximal_evaluations
arma::uword pass::optimiser::maximal_evaluations |
The maximal number of evaluations before the optimiser stops.
Initialised to the maximum value representable with arma::uword
.
◆ maximal_iterations
arma::uword pass::optimiser::maximal_iterations |
The maximal number of iterations before the optimiser stops.
Initialised to the maximum value representable with arma::uword
.
◆ name
const std::string pass::optimiser::name |
Identify every optimiser with its own name
The documentation for this class was generated from the following files:
- /Users/romeo/Desktop/PASS/include/pass_bits/optimiser.hpp
- /Users/romeo/Desktop/PASS/src/optimiser.cpp