I want to solve the following optimization problem with Python:
I have a black box function f
with multiple variables as input.
The execution of the black box function is quite time consuming, therefore I would like to avoid a brute force approach.
I would like to find the optimum input parameters for that black box function f
.
In the following, for simplicity I just write the dependency for one dimension x
.
An optimum parameter x
is defined as:
the cost function cost(x)
is maximized with the sum of
f(x)
value- a maximum standard deviation of
f(x)
.
cost(x) = A * f(x) + B * max(standardDeviation(f(x)))
The parameters A
and B
are fix.
E.g., for the picture below, the value of x at the position 'U' would be preferred over the value of x at the positon of 'V'.
My question is:
Is there any easily adaptable framework or process that I could utilize (similar to e. g. simulated annealing or bayesian optimisation)?
As mentioned, I would like to avoid a brute force approach.