计算Python中多变量函数的局部和全局最小值

时间:2020-02-12 03:08:54

标签: python scipy scipy-optimize scipy-optimize-minimize minima

我想以起点(2,20)计算以下函数的所有最小值(局部和全局):

我尝试使用以下代码,但不确定是否计算正确,是否有可能在Python中找到所有局部最小值。

import numpy as np
from scipy.optimize import fmin
import math

def f(x):
#     return x[0]**2/2 + 5*x[1]**2 + x[0]**3/3
    return (1/2)*np.power((x[0]), 2) + 5*np.power((x[1]), 2) + (1/3)*np.power((x[0]), 3)

fmin(f, np.array([2, 20]))

输出:

Optimization terminated successfully.
         Current function value: 0.000000
         Iterations: 58
         Function evaluations: 112
array([-1.7438898e-05,  2.0049784e-06])

请帮助我,谢谢。

0 个答案:

没有答案