这是一个简短的问题,但谷歌每次都会指向我找不到答案的文档。
我正在使用 scipy.optimize.minimize。它运作得很好,一切都很好。 我可以定义一个要使用的方法,但即使我不指定该方法它也可以工作。
有什么方法可以得到输出吗?使用了哪种方法?我知道结果类,但那里没有提到方法。
这是一个例子:
solution = opt.minimize(functitionTOminimize,initialGuess, \
constraints=cons,options={'disp':True,'verbose':2})
print(solution)
我可以将 value 方法设置为
slsqp
或 cobyla
之类的值,但我想看看程序正在选择什么。我怎样才能得到这些信息?
根据 scipy.optimize.minimize() 文档:如果未指定方法,则默认选择将为 BFGS、L-BFGS-B、SLSQP 之一。
要了解有关如何选择方法的更多详细信息,您应该查看最小化()的第480行。方法选择如下:
if method is None:
# Select automatically
if constraints:
method = 'SLSQP'
elif bounds is not None:
method = 'L-BFGS-B'
else:
method = 'BFGS'