小编Kim*_*Kim的帖子

scipy.optimize 被困在局部最小值中。我能做什么?

 from numpy import *; from scipy.optimize import *; from math import *
def f(X):
    x=X[0];    y=X[1]
    return x**4-3.5*x**3-2*x**2+12*x+y**2-2*y

bnds = ((1,5), (0, 2))
min_test = minimize(f,[1,0.1], bounds = bnds); 
print(min_test.x)
Run Code Online (Sandbox Code Playgroud)

我的函数f(X)有一个x=2.557, y=1我应该能够找到的局部最小值。

上面显示的代码只会给出结果 where x=1。我尝试了不同的公差和所有三种方法:L-BFGS-B、TNC 和 SLSQP。这是到目前为止我一直在看的线程: Scipy.optimize:如何限制参数值

我怎样才能解决这个问题?

我正在使用 Spyder(Python 3.6)。

在此处输入图片说明

python minimization scipy spyder

2
推荐指数
2
解决办法
3681
查看次数

标签 统计

minimization ×1

python ×1

scipy ×1

spyder ×1