无约束优化及相关算法详解
1. 无约束优化方法概述
无约束优化存在多种方法,可根据是否使用导数信息大致分类:
- 仅使用函数评估的搜索方法 :如 Nelder 和 Mead 的单纯形搜索,适用于高度非线性或有许多不连续点的问题。
- 梯度方法 :当要最小化的函数一阶导数连续时,通常更高效。
- 高阶方法 :如牛顿法,仅在二阶信息易于计算时适用,因为使用数值微分计算二阶信息计算量很大。
梯度方法利用函数的斜率信息来确定搜索方向,认为最小值位于该方向。其中最基本的是最速下降法,搜索方向为 $-\nabla f(x)$,这里 $\nabla f(x)$ 是目标函数的梯度。但对于具有狭长山谷的函数,如 Rosenbrock 函数:
[f(x) = 100(x_2 - x_1^2)^2 + (1 - x_1)^2]
该函数的最小值在 $x = [1, 1]$ 处,此时 $f(x) = 0$。最速下降法在优化此函数时效率极低,从点 $[-1.9, 2]$ 开始进行最速下降法优化,迭代 1000 次后仍离最小值有相当大的距离,算法在山谷两侧不断曲折前进。
2. 拟牛顿法
在使用梯度信息的方法中,拟牛顿法最受青睐。这些方法在每次迭代中积累曲率信息,以构建如下形式的二次模型问题:
[ \min_x \frac{1}{2}x^T H x + c^T x + b ]
其中,Hessian 矩阵 $H$ 是正定对称矩阵,$c$ 是常数向量,$b$ 是常数。当 $x$ 的偏导数为零时,该问题取得最优解
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



