首页 > 解决方案 > 如何在 Python 中处理无限和

问题描述

我想最小化以下函数 (16)在此处输入图像描述

注意phi函数定义如下: 在此处输入图像描述

我的问题 然后我尝试使用

from scipy.optimize import minimize

最小化函数 (16)。然而,(16) 具有来自 (15) 的无限和。如何在 Python 中实现这一点?优化函数可以最小化无限和吗?现在我刚刚定义了公式,将无限和设置为仅和直到 n = 10。

def formula(x):
    return -sum(math.log(sum(1/math.sqrt(
           2*math.pi*(x[1]**2/252+n*x[4]**2))*math.exp(
           -(y-(x[0]/252+n*x[3]))**2/(2*(x[1]**2/252
           +n*x[4]**2)))*math.exp(
           -x[2]/252)*(x[2]/252)**n/math.factorial(n) 
           for n in range(1,10))) for y in difference)

guess = np.array([0.1,0.1,0.1,0.1,1])

results = minimize(formula, guess, method = 'Nelder-Mead', options={'ftol':0.01, 'xtol':0.01})

标签: pythonoptimizationsum

解决方案


推荐阅读