Bohachevsky

Implementation of the bi-fidelity Bohachevsky function as defined in:

Dong, H., Song, B., Wang, P. et al. Multi-fidelity information fusion based on prediction of kriging. Struct Multidisc Optim 51, 1267–1280 (2015) doi:10.1007/s00158-014-1213-9

Function definitions:

\[f_h(x_1, x_2) = x_1^2 + 2x_2^2 - 0.3\cos(3\pi x_1) - 0.4\cos(4\pi x_2) + 0.7\]
\[f_l(x_1, x_2) = f_h(0.7x_1, x_2) + x_1x_2 - 12\]
bohachevsky = MultiFidelityFunction(Bohachevsky, [5. 5.], [-5. -5.], fidelity_names=['high', 'low'])

2D Bohachevsky function with fidelities ‘high’ and ‘low’

bohachevsky_hf(xx)

BOHACHEVSKY FUNCTION

INPUT: xx = [x1, x2]

bohachevsky_lf(xx)

BOHACHEVSKY FUNCTION, LOWER FIDELITY CODE Calls: bohachevsky_hf This function, from Dong et al. (2015), is used as the “low-accuracy code” version of the function bohachevsky_hf.

INPUT: xx = [x1, x2]

l_bound = [-5, -5]

Lower bound for Bohachevsky function

u_bound = [5, 5]

Upper bound for Bohachevsky function