variables#

Functions#

affine#

inline void ioh::problem::transformation::variables::affine(std::vector<double> &x, const std::vector<std::vector<double>> &m, const std::vector<double> &b)#

Affine transformation for x using matrix M and vector B.

Parameters:
  • x – raw variables

  • m – transformation matrix

  • b – transformation vector

asymmetric#

inline void ioh::problem::transformation::variables::asymmetric(std::vector<double> &x, const double beta)#

Asymmetric transformation scaled by beta.

Parameters:
  • x – raw variables

  • beta – scale of the transformation

brs#

inline void ioh::problem::transformation::variables::brs(std::vector<double> &x)#

brs transformation on x

Parameters:

x – raw variables

conditioning#

inline void ioh::problem::transformation::variables::conditioning(std::vector<double> &x, const double alpha)#

conditioning transformation of x

Parameters:
  • x – raw variables

  • alpha – base of the transformation

oscillate#

inline void ioh::problem::transformation::variables::oscillate(std::vector<double> &x, const double alpha = 0.1)#

oscillate each variable in x

Parameters:
  • x – raw variables

  • alpha – the factor of oscillation

random_flip#

inline void ioh::problem::transformation::variables::random_flip(std::vector<int> &x, const int seed)#

randomly flips a bit

Parameters:
  • x – raw variables

  • seed – seed for the random flip

random_reorder#

inline void ioh::problem::transformation::variables::random_reorder(std::vector<int> &x, const int seed)#

randomly reorder the elements from x

Parameters:
  • x – raw variables

  • seed – seed for the random flip

random_reorder_reset#

inline std::vector<int> ioh::problem::transformation::variables::random_reorder_reset(const std::vector<int> &x_1, const int seed)#

reset x from x_1 whose elements were randomly reordered from x

Parameters:
  • x_1 – the reordered variables

  • seed – seed for the random flip

random_sign_flip#

inline void ioh::problem::transformation::variables::random_sign_flip(std::vector<double> &x, const long seed)#

randomly reverse the sign for each xi

Parameters:
  • x – raw variables

  • seed – for generating the random vector

scale#

inline void ioh::problem::transformation::variables::scale(std::vector<double> &x, const double scalar)#

scale x by a scalar

Parameters:
  • x – raw variables

  • scalar – the factor to scale x by

subtract#

inline void ioh::problem::transformation::variables::subtract(std::vector<double> &x, const std::vector<double> &offset)#

subtract an offset from each xi

Parameters:
  • x – raw variables

  • offset – a vector of offsets for each xi

z_hat#

inline void ioh::problem::transformation::variables::z_hat(std::vector<double> &x, const std::vector<double> &xopt)#

transforms the raw variables using the distance to the optimum

Parameters:
  • x – the raw variables

  • xopt – the optimum