How to pass some good x0 values to differential_evolution so that it does not have to start from "beginning" which is something 1.0435e+16 and then slowly decreasing ...
My simplified example. Scoring function func() returns the sum of (yestimate - y)^2 ... sum of error squares and DE is going to minimize it.
def func(parameters, *data):
k1,k2,k3,v0 = parameters
c,j,afff = data
result = 0
for i in range(len(c)):
result += ( k1*c[i] + k2*j[i] + k3*(j[i]/c[i]) + v0 - (afff[i]) )**2
return result
...
result = differential_evolution(func, bounds, args=(args), updating='immediate', workers=1, disp=True, tol=0)
...
$ python3 test.py
differential_evolution step 5: f(x)= 8.68165e+13
differential_evolution step 6: f(x)= 3.0159e+13
differential_evolution step 7: f(x)= 5.72267e+11
differential_evolution step 8: f(x)= 5.72267e+11
differential_evolution step 9: f(x)= 5.72267e+11
differential_evolution step 10: f(x)= 5.72267e+11
printing result.x
[-9.96712308e-04 1.31194421e-03 -9.99999813e+01 1.63032881e+02]
printing result.fun
229654.91015705158
How to pass these x0 values [-9.96712308e-04 1.31194421e-03 -9.99999813e+01 1.63032881e+02] to differential_evolution?
Br, MH