Himmelblau

Implementation of the bi-fidelity Himmelblau 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 + x_2 - 11)^2 + (x_2^2 + x_1 - 7)^2\]
\[f_l(x_1, x_2) = f_h(0.5x_1, 0.8x_2) + x_2^3 - (x_1+1)^2\]
himmelblau = MultiFidelityFunction(Himmelblau, [4. 4.], [-4. -4.], fidelity_names=['high', 'low'])

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

himmelblau_hf(xx)

HIMMELBLAU FUNCTION

INPUT: xx = [x1, x2]

himmelblau_lf(xx)

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

INPUT: xx = [x1, x2]

l_bound = [-4, -4]

Lower bound for Himmelblau function

u_bound = [4, 4]

Upper bound for Himmelblau function