【发布时间】:2022-01-06 03:13:22
【问题描述】:
(SciPy 优化:Newton-CG vs BFGS vs L-BFGS)
考虑以下区域:D = [-5.10]x[0.15]。下面给出的这项任务必须在 这个域。并在 Jupyter notebook 中执行
绘制 N = 100 个均匀分布在 D 上的随机点。对于每个点,使用 scipy.optimize.minimize 运行 f 的局部最小化,方法如下: CG,BFGS,牛顿-CG,L-BFGS-B。对于此任务,您将必须编写另外两个函数,一个返回 f 的 Jacobian 矩阵,另一个返回 f 的 Hessian 矩阵。将答案存储在一个形状为 N x 6 的数组中,其中每一行包含以下数据:
(x1, y1,x2, y2,v,c),
其中 (x1, y1) 和 (x2, y2) 分别是优化的起点和终点,而 v 是 f 的最终值。 c行的最后一个元素是使用方法的代码,根据这个对应关系:CG:1, BFGS:2, Newton-CG:3, L-BFGS-B:4
【问题讨论】:
-
from scipy.optimize import Bounds bounds = Bounds ([-5, 10.0], [0, 5.0])
标签: python scipy jupyter-notebook