The Branin test case

Introduction

The Branin function is defined in 2 dimensions based on the functions g:

g(u_1, u_2) = \frac{\left(u_2-5.1\frac{u_1^2}{4\pi^2}+5\frac{u_1}{\pi}-6\right)^2+10\left(1-\frac{1}{8 \pi}\right)  \cos(u_1)+10-54.8104}{51.9496}

and t:

t(x_1, x2) = (15 x_1 - 5, 15 x_2)^T.

Finally, the Branin function is the composition of the two previous functions:

f_{Branin}(x_1, x_2) = g \circ  t(x_1, x_2)

for any \mathbf{x} \in [0, 1]^2.

There are three global minimas:

\mathbf{x}^\star=(0.123895, 0.818329),

\mathbf{x}^\star=(0.542773, 0.151666),

and :

\mathbf{x}^\star=(0.961652, 0.165000)

where the function value is:

f_{min} = f_{Branin}(\mathbf{x}^\star) = -0.97947643837.

We assume that the output of the Branin function is noisy, with a gaussian noise. In other words, the objective function is:

f(x_1, x_2) = f_{Branin}(x_1, x_2) + \epsilon

where \epsilon is a Gaussian random variable with null mean and standard deviation \sigma_{\epsilon} = 0.1.

References

API documentation

class BraninModel

Data class for the Branin test function.

Examples

>>> from openturns.usecases import branin_function
>>> # Load the Branin model
>>> bm = branin_function.BraninModel()
Attributes:
dimThe dimension of the problem

dim=2.

modelthe Branin function
trueNoiseFunctionConstant, small noise

\epsilon=0.1.

noiseModelThe noise function
lowerboundPoint in dimension dim.

Default is 0.0 for each dimension.

upperboundPoint in dimension dim.

Default is 1.0 for each dimension.

xexact1Point

First minima location [0.123895, 0.818329].

xexact2Point

Second minima location [0.542773, 0.151666].

xexact3Point

Third minima location [0.961652, 0.165000].

xexactSample

All global minimas location gathered.

Examples based on this use case

Kriging: metamodel of the Branin-Hoo function

Kriging: metamodel of the Branin-Hoo function

EfficientGlobalOptimization examples

EfficientGlobalOptimization examples