Implemented mechanisms

This page lists the implemented primitive functions, transforms, value transforms, and composition modes. YAML/spec parsers normalize case, spaces, hyphens, and underscores before matching names.

Base functions

Primitive functions are exposed through BasicFunctionId. Numeric IDs and names can both be used in YAML.

ID

Name

Notes

1

Sphere

Unimodal, smooth, separable.

2

Ellipsoidal

Unimodal, high-conditioned.

3

SumDifferentPowers

Unimodal, variable powers.

4

BuecheRastrigin

Multimodal Rastrigin-family landscape.

5

LinearSlope

Unimodal sloped landscape.

6

AttractiveSector

Unimodal, asymmetric sector structure.

7

StepEllipsoidal

Unimodal stepped high-conditioned landscape.

8

StepRastrigin

Multimodal stepped Rastrigin-family landscape.

9

Rosenbrock

Unimodal valley, nonseparable.

10

Ackley

Multimodal.

11

Rastrigin

Multimodal, separable in primitive coordinates.

12

Griewank

Multimodal.

13

Schwefel

Multimodal.

14

SharpRidge

Unimodal ridge.

15

Weierstrass

Multimodal, rugged.

16

SchafferF7

Multimodal.

17

SchafferF7Cond1000

Multimodal, conditioned Schaffer variant.

18

GriewankRosenbrock

Multimodal hybrid.

19

Gallagher21

Multimodal peaks.

20

Katsuura

Multimodal.

21

LunacekBiRastrigin

Multimodal double-funnel Rastrigin-family landscape.

22

Zakharov

Unimodal.

23

Levy

Multimodal.

24

Michalewicz

Multimodal.

25

DixonPrice

Unimodal.

26

BentCigar

Unimodal, high-conditioned.

27

HappyCat

Multimodal/nonconvex BBOB-style function.

28

HGBat

Unimodal/nonconvex BBOB-style function.

29

HCF

Unimodal composition-style primitive.

30

SchafferF6

Multimodal.

31

Step

Unimodal stepped function.

32

Quartic

Unimodal quartic function.

33

Exponential

Unimodal exponential landscape.

34

StyblinskiTang

Multimodal.

Coordinate transforms

Let \(x\) be the parent point, \(a\) be the assigned component optimum stored in assigned_xopt, and \(t\) be the internally resolved child optimum. The transform maps parent coordinates into child coordinates.

none

Full-dimensional shift:

\[T(x) = t + (x-a).\]
rotation

Full-dimensional shifted rotation with orthogonal matrix \(R\):

\[T(x) = t + R(x-a).\]
affine

Full-dimensional shifted affine transform with matrix \(A\):

\[T(x) = t + A(x-a).\]
block-rotation

Subspace transform. If selected_indices defines projection \(P\), then \(x_{\mathrm{sub}} = Px\) and

\[T(x) = t + R(x_{\mathrm{sub}} - a).\]

The child function sees only output_dimension variables.

Value transforms

Let \(u \ge 0\) be the shifted component value before the value transform.

none
\[\phi(u) = u.\]
power

Parameters are [alpha, p]:

\[\phi(u) = \alpha u^p.\]
oscillatory

Parameters are [epsilon, alpha]:

\[\phi(u) = u\left(1 + \epsilon\sin(\alpha u)\right).\]
cosine-zero

Parameter is [alpha]:

\[\phi(u) = 1 - \cos(\alpha u).\]

Trigonometric value transforms reduce the phase modulo \(2\pi\) internally for more stable cross-platform numerical behavior.

Composition modes

Let \(z_i\) be transformed component values.

none

Single-component identity:

\[\psi(z_1) = z_1.\]
cpm-wsum

Common-point weighted sum:

\[\psi(z) = \sum_i w_i z_i.\]
cpm-power-mean

Parameter is [p]:

\[\psi(z) = \left(\sum_i w_i z_i^p\right)^{1/p}.\]
cpm-level-well

Parameters are [epsilon, alpha]. Let \(s = \sum_i w_i z_i\):

\[\psi(z) = s\left(1 + \epsilon\sin(\alpha s)\right).\]
dpm-softmax

Parameter is [sharpness]. Let \(c_i\) be full-dimensional DPM centers, \(b_i\) be DPM biases, and \(\gamma\) be sharpness:

\[q_i(x) = \exp(-\gamma\|x-c_i\|^2 - M), \qquad M = \max_j -\gamma\|x-c_j\|^2.\]

Non-global centers are masked near the global center:

\[m_0(x)=1,\qquad m_i(x)=1-\exp(-\|x-c_0\|^2),\quad i>0.\]

Then

\[\psi(x,z) = \frac{\sum_i q_i(x)m_i(x)(z_i+b_i)} {\sum_i q_i(x)m_i(x)}.\]
dpm-bgsoftmax

Parameters are [sharpness, background_strength, background_sharpness]. It adds a smooth background term

\[\beta(x) = \rho\left(1-\exp(-\eta \min_i\|x-c_i\|)\right)\]

and computes

\[\psi(x,z) = \frac{\sum_i (q_i(x)m_i(x)+\beta(x))(z_i+b_i)} {\sum_i (q_i(x)m_i(x)+\beta(x))}.\]

DPM center 0 is the assigned global optimum. Other centers are deceptive locations. DPM biases are composition parameters, not component value transforms.

Name aliases

Examples of accepted aliases:

Canonical name

Common aliases

none

identity

rotation

rot

affine

aff

block-rotation

blockrotation, blockrot, brot

cpm-wsum

cpmsum, weighted_sum

cpm-power-mean

cpmpmean, power_mean

cpm-level-well

cpmlwell, level_well

dpm-softmax

dpmsoftmax, dpm

dpm-bgsoftmax

dpmbgsoftmax, DPM BG Softmax