Python scipy.optimize.minimize不';行不通

Python scipy.optimize.minimize不';行不通,python,scipy,mathematical-optimization,Python,Scipy,Mathematical Optimization,我正在尝试Python中的优化函数scipy.optimize.minimize。从结果来看,它不起作用。这是我代码的一部分。我只想最小化两个值的差平方和 def calibrate(x): # Real equity value and equity volatility from market data equity_val = 30.0 equity_vol = 0.556 diff_s = 10000*(geske(x)[0]-equity_

我正在尝试Python中的优化函数
scipy.optimize.minimize
。从结果来看,它不起作用。这是我代码的一部分。我只想最小化两个值的差平方和

def calibrate(x):
    # Real equity value and equity volatility from market data
    equity_val = 30.0
    equity_vol = 0.556       
    diff_s = 10000*(geske(x)[0]-equity_val)**2
    diff_vol = 10000*(geske(x)[1]-equity_vol)**2
    diff = diff_s+diff_vol
    return diff
# Here geske is a function defined before, which takes two input parameter and returns several values

bnds = ((0,None), (0,None))
opt = sco.minimize(calibrate, [100,0.3], method='SLSQP', bounds=bnds)
但是,
opt
的结果如下:


从结果来看,优化函数似乎不起作用,它只返回我给出的初始猜测值。为什么?校准功能中是否有错误?

您的猜测可能只是最小值。我想测试一些值,但您没有包括
geske
函数。在我要最小化的函数中,它是差的平方和。因此,最小值应为零。此外,我调用的最小化函数是“calibrate”,它将调用geske函数。如果没有该函数,就真的无法提供帮助。最小化函数显示了一系列奇怪的行为。@DavidMaust-好的观点?为什么雅可比长度是3?对于2D问题,我认为它应该是不同的大小和形状。我的猜测是OP试图使用
最小化
来解决离散问题。您的猜测可能只是最小值。我想测试一些值,但您没有包括
geske
函数。在我要最小化的函数中,它是差的平方和。因此,最小值应为零。此外,我调用的最小化函数是“calibrate”,它将调用geske函数。如果没有该函数,就真的无法提供帮助。最小化函数显示了一系列奇怪的行为。@DavidMaust-好的观点?为什么雅可比长度是3?对于二维问题,我认为它应该是一个不同的大小和形状。我的猜测是OP试图使用
最小化
来解决离散问题。