bbob¶
Namespaces¶
Classes¶
AttractiveSector¶
-
template<typename P = BBOB>
class AttractiveSector : public ioh::problem::BBOB¶ Attractive Sector problem id = 6.
Public Functions
-
inline AttractiveSector(const int instance, const int n_variables)¶
Construct a new Attractive Sector object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
-
inline AttractiveSector(const int instance, const int n_variables)¶
BentCigar¶
BuecheRastrigin¶
-
template<typename P = BBOB>
class BuecheRastrigin : public ioh::problem::bbob::RastriginBase<BBOB>¶ BuecheRastrigin problem id 4.
Public Functions
Public Static Attributes
-
static constexpr int registry_id = 4¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "BuecheRastrigin"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline std::vector<double> transform_variables(std::vector<double> x) override¶
Variables transformation method.
-
static constexpr int registry_id = 4¶
DifferentPowers¶
-
template<typename P = BBOB>
class DifferentPowers : public ioh::problem::BBOB¶ Different powers problem id 14.
Public Functions
-
inline DifferentPowers(const int instance, const int n_variables)¶
Construct a new Different Powers object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
-
inline DifferentPowers(const int instance, const int n_variables)¶
Discus¶
Ellipsoid¶
-
template<typename P = BBOB>
class Ellipsoid : public ioh::problem::bbob::EllipsoidBase<BBOB>¶ Ellipsiod problem id 2.
Public Functions
EllipsoidBase¶
-
template<typename P = BBOB>
class EllipsoidBase : public ioh::problem::BBOB¶ CTRP base class for ellipsiod class variants.
- Template Parameters:
T – type of the ellipsiod problem
Subclassed by ioh::problem::bbob::Ellipsoid< P >, ioh::problem::bbob::EllipsoidRotated< P >
Public Functions
EllipsoidRotated¶
-
template<typename P = BBOB>
class EllipsoidRotated : public ioh::problem::bbob::EllipsoidBase<BBOB>¶ Rotated ellipsoid problem id 10.
Public Functions
Public Static Attributes
-
static constexpr int registry_id = 10¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "EllipsoidRotated"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline std::vector<double> transform_variables(std::vector<double> x) override¶
Transoform variables method.
-
static constexpr int registry_id = 10¶
Gallagher¶
-
template<typename P>
class Gallagher : public P¶ Gallagher Base.
Subclassed by ioh::problem::bbob::Gallagher101< P >, ioh::problem::bbob::Gallagher21< P >
Public Functions
-
inline Gallagher(const int problem_id, const int instance, const int n_variables, const std::string &name, const int number_of_peaks, const double b = 10., const double c = 5.0, double max_condition = sqrt(1000.))¶
Construct a new Gallagher object.
- Parameters:
problem_id – the id of the problem
instance – the instance of the problem
n_variables – the dimension of the problem
name – the name of the problem
number_of_peaks – the number of peaks of the problem
b – gallagher variables
c – gallagher variables
max_condition – the maximum conditioning of the problem
Protected Functions
-
inline double evaluate(const std::vector<double> &x) override¶
Evaluation method.
-
inline Gallagher(const int problem_id, const int instance, const int n_variables, const std::string &name, const int number_of_peaks, const double b = 10., const double c = 5.0, double max_condition = sqrt(1000.))¶
Gallagher101¶
Gallagher21¶
GriewankRosenbrock¶
-
template<typename P = BBOB>
class GriewankRosenbrock : public ioh::problem::BBOB¶ GriewankRosenbrock problem id 19.
Public Functions
-
inline GriewankRosenbrock(const int instance, const int n_variables)¶
Construct a new Griewank Rosen Brock object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
Public Static Attributes
-
static constexpr int registry_id = 19¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "GriewankRosenbrock"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline double evaluate(const std::vector<double> &x) override¶
Evaluation method.
-
inline std::vector<double> transform_variables(std::vector<double> x) override¶
Variables transformation method.
Private Members
-
std::vector<double> x_shift_¶
-
inline GriewankRosenbrock(const int instance, const int n_variables)¶
Katsuura¶
-
template<typename P = BBOB>
class Katsuura : public ioh::problem::BBOB¶ Katsuura problem id 23.
Public Functions
Public Static Attributes
-
static constexpr int registry_id = 23¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "Katsuura"¶
The name in the registry, also used by the constructor.
-
static constexpr int registry_id = 23¶
LinearSlope¶
-
template<typename P = BBOB>
class LinearSlope : public ioh::problem::BBOB¶ Linear Slope problem id 5.
Public Functions
-
inline LinearSlope(const int instance, const int n_variables)¶
Construct a new Linear Slope object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
Public Static Attributes
-
static constexpr int registry_id = 5¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "LinearSlope"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline double evaluate(const std::vector<double> &x) override¶
Evaluation method.
-
inline LinearSlope(const int instance, const int n_variables)¶
LunacekBiRastrigin¶
-
template<typename P = BBOB>
class LunacekBiRastrigin : public ioh::problem::BBOB¶ LunacekBiRastrigin problem id 24.
Public Functions
Public Static Attributes
-
static constexpr int registry_id = 24¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "LunacekBiRastrigin"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline double evaluate(const std::vector<double> &x) override¶
Evaluation method.
-
static constexpr int registry_id = 24¶
ManyAffine¶
-
class ManyAffine : public ioh::problem::SingleObjectiveProblem<double>¶
Public Functions
-
inline ManyAffine(const std::vector<double> &xopt, const std::array<double, 24> &weights, const std::array<int, 24> &instances, const int n_variables, const std::array<double, 24> &scale_factors)¶
Construct a new Many Affine object, requires weights and instances to be specified.
- Parameters:
xopt – the location of the optimum
weights – weight vector which specifies the contribution of each of the 24 bbob to the final objective value
instances – the vector of instances used
n_variables – the dimension of the problem
scale_factors – the relative scale factors for each problem
-
inline ManyAffine(const int instance, const int n_variables)¶
Construct a new Many Affine object with default weights and a single instance for all sub functions.
A random location of the optimum and a weight vector are generated using the bbob2009 uniform random number generator, using the instance as seed offset.
- Parameters:
instance – the instance
n_variables – the dimension used
-
inline std::array<double, 24> get_weights() const¶
-
inline std::array<int, 24> get_instances() const¶
-
inline std::array<double, 24> get_scale_factors() const¶
-
inline std::array<double, 24> get_function_values() const¶
Public Static Attributes
-
static constexpr std::array<double, 24> default_scales{11., 17.5, 12.3, 12.6, 11.5, 15.3, 12.1, 15.3, 15.2, 17.4, 13.4, 20.4, 12.9, 10.4, 12.3, 10.3, 9.8, 10.6, 10., 14.7, 10.7, 10.8, 9., 12.1}¶
Protected Functions
-
inline double evaluate(const std::vector<double> &x) override¶
-
inline ManyAffine(const std::vector<double> &xopt, const std::array<double, 24> &weights, const std::array<int, 24> &instances, const int n_variables, const std::array<double, 24> &scale_factors)¶
Rastrigin¶
-
template<typename P = BBOB>
class Rastrigin : public ioh::problem::bbob::RastriginBase<BBOB>¶ Rastrigin problem id 3.
Public Functions
RastriginBase¶
-
template<typename P = BBOB>
class RastriginBase : public ioh::problem::BBOB¶ CRTP base class for Rastrigin Problem variants.
- Template Parameters:
T – type of the new rastrigin class
Subclassed by ioh::problem::bbob::BuecheRastrigin< P >, ioh::problem::bbob::Rastrigin< P >, ioh::problem::bbob::RastriginRotated< P >
Public Functions
RastriginRotated¶
-
template<typename P = BBOB>
class RastriginRotated : public ioh::problem::bbob::RastriginBase<BBOB>¶ Rotated Rastrigin problem id 15.
Public Functions
Public Static Attributes
-
static constexpr int registry_id = 15¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "RastriginRotated"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline std::vector<double> transform_variables(std::vector<double> x) override¶
Variables transformation method.
-
static constexpr int registry_id = 15¶
Rosenbrock¶
-
template<typename P = BBOB>
class Rosenbrock : public ioh::problem::bbob::RosenbrockBase<BBOB>¶ Rosenbrock problem id 8.
Public Functions
-
inline Rosenbrock(const int instance, const int n_variables)¶
Construct a new Rosenbrock object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
-
inline Rosenbrock(const int instance, const int n_variables)¶
RosenbrockBase¶
-
template<typename P = BBOB>
class RosenbrockBase : public ioh::problem::BBOB¶ CRTP base class for Rosenbrock Problem variants.
- Template Parameters:
T – type of the new Rosenbrock class
Subclassed by ioh::problem::bbob::Rosenbrock< P >, ioh::problem::bbob::RosenbrockRotated< P >
Public Functions
-
inline RosenbrockBase(const int problem_id, const int instance, const int n_variables, const std::string &name)¶
Construct a new Rosenbrock Base object.
- Parameters:
problem_id – the problem id
instance – the problem instance
n_variables – the problem dimension
name – the name of the problem
RosenbrockRotated¶
-
template<typename P = BBOB>
class RosenbrockRotated : public ioh::problem::bbob::RosenbrockBase<BBOB>¶ Rotated Rosenbrock function 9.
Public Functions
-
inline RosenbrockRotated(const int instance, const int n_variables)¶
Construct a new Rosenbrock Rotated object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
Public Static Attributes
-
static constexpr int registry_id = 9¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "RosenbrockRotated"¶
The name in the registry, also used by the constructor.
Protected Functions
-
inline std::vector<double> transform_variables(std::vector<double> x) override¶
Variables transformation method.
-
inline RosenbrockRotated(const int instance, const int n_variables)¶
Schaffers¶
-
template<typename P>
class Schaffers : public P¶ CRTP base class for Schaffers Problem variants.
Subclassed by ioh::problem::bbob::Schaffers10< P >, ioh::problem::bbob::Schaffers1000< P >
Public Functions
-
inline Schaffers(const int problem_id, const int instance, const int n_variables, const std::string &name, const double condition)¶
Construct a new Schaffers object.
- Parameters:
problem_id – the problem id
instance – the problem instance
n_variables – the problem dimension
name – the name of the problem
condition – condition of the problem
Protected Functions
-
inline double evaluate(const std::vector<double> &x) override¶
Evaluation method.
-
inline std::vector<double> transform_variables(std::vector<double> x) override¶
Variables transformation method.
Protected Attributes
-
double condition_¶
Condition of the problem.
-
inline Schaffers(const int problem_id, const int instance, const int n_variables, const std::string &name, const double condition)¶
Schaffers10¶
Schaffers1000¶
Schwefel¶
-
template<typename P = BBOB>
class Schwefel : public ioh::problem::BBOB¶ Schefel problem id 20.
Public Functions
Public Static Attributes
-
static constexpr int registry_id = 20¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "Schwefel"¶
The name in the registry, also used by the constructor.
-
static constexpr int registry_id = 20¶
Sphere¶
StepEllipsoid¶
Weierstrass¶
-
template<typename P = BBOB>
class Weierstrass : public ioh::problem::BBOB¶ Weierstrass problem id 16.
Public Functions
-
inline Weierstrass(const int instance, const int n_variables)¶
Construct a new Weierstrass object.
- Parameters:
instance – instance id
n_variables – the dimension of the problem
Public Static Attributes
-
static constexpr int registry_id = 16¶
The id in the registry, also used by the constructor.
-
static constexpr const char *registry_name = "Weierstrass"¶
The name in the registry, also used by the constructor.
-
inline Weierstrass(const int instance, const int n_variables)¶