libstp
Robotics library for Botball
Loading...
Searching...
No Matches
libstp::autotune::control::DifferentialEvolution Class Reference

DE/rand/1/bin optimizer. Port of DifferentialEvolution.ts. More...

#include <differential_evolution.hpp>

Public Member Functions

 DifferentialEvolution (IDifferentialEvolutionRating &rating, int numParams, bool dither=false, std::uint32_t seed=0xC0FFEEu)
std::vector< double > getBestCandidate () const
 Best (lowest-rated) parameter vector found so far.
void createCandidates (const std::vector< double > &initMinParams, const std::vector< double > &initMaxParams, const std::vector< double > &limitMinParams, const std::vector< double > &limitMaxParams)
 Seed the population uniformly in [initMin, initMax] and rate it.
void evolutionStep ()
 One generation of mutation / crossover / greedy selection.

Detailed Description

DE/rand/1/bin optimizer. Port of DifferentialEvolution.ts.

Definition at line 51 of file differential_evolution.hpp.

Constructor & Destructor Documentation

◆ DifferentialEvolution()

libstp::autotune::control::DifferentialEvolution::DifferentialEvolution ( IDifferentialEvolutionRating & rating,
int numParams,
bool dither = false,
std::uint32_t seed = 0xC0FFEEu )
Parameters
ratingcost function (minimised).
numParamsproblem dimensionality.
ditherenable per-step random weighting factor.
seedPRNG seed (defaults to a fixed value for reproducibility).

Member Function Documentation

◆ createCandidates()

void libstp::autotune::control::DifferentialEvolution::createCandidates ( const std::vector< double > & initMinParams,
const std::vector< double > & initMaxParams,
const std::vector< double > & limitMinParams,
const std::vector< double > & limitMaxParams )

Seed the population uniformly in [initMin, initMax] and rate it.

◆ evolutionStep()

void libstp::autotune::control::DifferentialEvolution::evolutionStep ( )

One generation of mutation / crossover / greedy selection.

◆ getBestCandidate()

std::vector< double > libstp::autotune::control::DifferentialEvolution::getBestCandidate ( ) const
nodiscard

Best (lowest-rated) parameter vector found so far.


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