如何使用scipy.optimize.basinhopping和scipy.optimize.minimum?

时间:2018-11-29 07:01:05

标签: python optimization scipy minimize

我已经阅读了两者的文档,但是我仍然对如何使用它们感到困惑(我正在为Python学习CS入门课程,所以我对编程不是很熟悉)。谁能提供一些非常基本的代码示例示例?

例如,我将如何使用盆地跳跃来找到具有两个变量(例如f(x,y)= x ^ 2 * y ^ 2 + cos(x)* sin(y)和x的方程的最小值和y在-5 范围内

为了最小化,我如何找到f(x)= x ^ 3-cos(2 * pi * x)之类的最小值?

请尽量简化示例! (我真的根本不了解文档中的代码,我认为我们没有像这样深入学习scipy)

以下是到目前为止我尝试过的一些示例:

跳台舞

import numpy as np
import scipy.optimize as spo

def f(xy): #(I don't know what to do for x and y here)  
    return x**2*y**2+np.cos(x)*np.sin(y)

guess = np.array(-5,5)
result = spo.basinhopping(f, guess)
print(result)

最小化:

def g(x):
    return x**2 - np.cos(2*np.pi*x)

result2 = spo.minimize(g)  
print(result2)  

0 个答案:

没有答案