|
Monte Carlo Integration Library 1.0
High-performance Monte Carlo methods for numerical integration and optimization
|
Genetic Algorithm optimizer. More...
#include <GA.hpp>
Classes | |
| struct | Individual |
| A single population member. More... | |
Public Member Functions | |
| GA (const GAConfig &config=GAConfig{}) | |
| Construct a GA optimizer with the given configuration. | |
| void | setObjectiveFunction (ObjectiveFunction func) override |
| Set the objective function to optimize. | |
| void | setBounds (const Coordinates &lower, const Coordinates &upper) override |
| Set lower/upper bounds of the search hyper-rectangle. | |
| void | setMode (OptimizationMode mode) override |
| Set optimization mode (minimize or maximize). | |
| void | setCallback (StepCallback cb) override |
| Register a callback invoked after each generation. | |
| Solution | optimize () override |
Run GA for max_generations. | |
| void | step () override |
| Perform one generation: selection, crossover, mutation, evaluation, and serial update of the global best. | |
| Solution | getBestSolution () const override |
| Get the best solution found so far. | |
| const std::vector< Individual > & | getPopulation () const |
| Access the current population. | |
Public Member Functions inherited from mc::optim::Optimizer | |
| virtual | ~Optimizer ()=default |
Additional Inherited Members | |
Public Types inherited from mc::optim::Optimizer | |
| using | StepCallback = std::function< void(const Solution ¤t_best, size_t iteration)> |
| Callback invoked after each step/generation. | |
Genetic Algorithm optimizer.
|
overridevirtual |
Get the best solution found so far.
Implements mc::optim::Optimizer.
|
inline |
|
overridevirtual |
Run GA for max_generations.
Implements mc::optim::Optimizer.
Definition at line 211 of file GA.cpp.
|
overridevirtual |
Set lower/upper bounds of the search hyper-rectangle.
| std::invalid_argument | if dimensions mismatch. |
Implements mc::optim::Optimizer.
|
overridevirtual |
Register a callback invoked after each generation.
| cb | Receives current global-best and generation index. |
Implements mc::optim::Optimizer.
|
overridevirtual |
Set optimization mode (minimize or maximize).
Implements mc::optim::Optimizer.
Definition at line 43 of file GA.cpp.
|
overridevirtual |
Set the objective function to optimize.
| func | Function mapping coordinates to scalar cost/fitness. |
Implements mc::optim::Optimizer.
|
overridevirtual |
Perform one generation: selection, crossover, mutation, evaluation, and serial update of the global best.
Implements mc::optim::Optimizer.