由于最优化理论是许多算法的基础,因此本文在这里简单梳理了一下最优化相关的重要知识点以及算法分类,以供需要时查询使用。
一、最优化理论基础
1.线性规划中的对偶理论:
典型线性规划问题
及其对偶问题
或
满足:i)若原问题与其对偶问题中有一个问题存在最优解,则另一个问题也存在最优解,且两个问题的目标函数的最优值相等(并且两个问题的目标值会以相反的方向逐渐逼近直至相等)。
ii) [互补松弛性质] 设和
分别是原问题和对偶问题的可行解,那么
和
都是最优解的充要条件是,对所有i和j,下列关系成立:
如果 ,就有
;
如果 ,就有
;
如果 ,就有
;
如果 ,就有
;
上述两个定理是线性规划对偶方法的基础,在对偶单纯形、路径跟踪法等算法中常用 i) ,通过交替求解原问题和对偶问题来从一个基础可行 or 对偶可行解出发逐步趋近最优解;而 ii) 则是原问题与对偶问题之间的相当有用的性质,以此作为引申,可以得到在有约束条件下的KKT条件,并以此求解一些非线性且带约束条件的问题,如Lagrange法等。
2.非线性规划中的最优性条件
(1)无约束问题
一阶条件:①设函数在点
可微,若
是局部极小点,则梯度∇
.
②设函数在点
处二次可微,若
是局部极小点,则梯度∇
,且
矩阵∇
半正定.
二阶充分条件:①设函数.在点
处二次可微,若梯度∇
,且
矩阵∇
正定,则
是局部极小点.
充要条件:①设是定义在
上的可微凸函数,
,则
为全局极小点的充分必要条件是梯度∇
.
(2)约束极值问题
一阶条件:①设为可行点,
为不等式相关的起作用约束集,
和
在
可微,
在
连续,
在
连续可微,且
,
,...,
线性无关。如果
是该问题的局部最优解,则在
处,有:
.
其中,
,
②设在该问题中,是凸函数,
是凸函数,
是线性函数,
是可行域,
,
,且在
处K-T条件成立,即存在
及
使得
则为全局最优解。
K-T条件: ①设,
和
在
可微,
在
连续,
∇
线性无关,若
是局部最优解,则 存在非负数
,
,使得
其中,第二、三条为互补松弛条件。
上式可以等价为:
二阶必要条件:①设是该问题的局部最优解,
,
,
二次连续可微,并存在满足K-T条件的
和
,再假设在点
向量组
,
线性无关,则对每一个向量
,都有
其中,是Lagrange函数
在点
关于
的
矩阵。
二阶充分条件:①设在该问题中,,
,
二次连续可微,
为可行点,存在乘子
和
使K-T条件成立,且对每个向量
,都有
其中:
则是严格局部最优解。
综上,对于凸规划的问题,仅需判断一阶条件就可以找到极值点(梯度 or K-T条件);否则结合二阶条件来进行判(Hesse阵 or 的Hesse阵)
二、最优化理论相关算法索引
1.线性规划问题
(1)针对一般的线性规划问题,可以采用单纯形法、对偶单纯形法以及路径跟踪法进行求解。
(2)形如
的问题,则可以采用表上作业法进行快速求解。
2.非线性规划问题
(1)对于无约束的非线性规划问题,直接采用基于导数(最速下降法、牛顿法、共轭梯度法,最小二乘法等及其变体)或仿基于导数(模式搜索法,Rosenbrock法等)的方法进行求解。其一般思路是:寻找到一个方向,使得沿该方向上行进具有使函数梯度下降的趋势,然后求解得到步长,决定一次的行进距离。按此方法反复进行迭代,直到目标参量收敛到一定值以下。
(2)对于有约束条件的非线性规划问题,一种是建立Larange方程,然后再利用无约束的方法进行求解,如外点法、内点法以及乘子法等;另一种则是利用K-T条件进行求解:Zoutendijk法将原非线性规划问题按照K-T条件等价为一个线性规划问题,然后利用单纯形法进行求解;Rosen梯度投影法则是将非线性函数的梯度投影到起作用约束的零空间上,以此作为下降方向,然后按照与导数方法类似的情况进行求解;除此之外,当约束仅存在,即等式约束时,可以利用Wolfe既约梯度法将原非线性方程消元,再按照无约束的情况进行求解。
参考书目:
1.《最优化理论与算法 第2版》 陈宝林
2.《Engineering Optimization Theoryand Practice》 SINGIRESU S. RAO
本文概述了最优化理论的基础,包括线性规划的对偶理论和非线性规划的最优性条件,以及相关算法如单纯形法、对偶单纯形法、模式搜索法等。还介绍了KKT条件在解决约束条件下的优化问题中的应用。
3622

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



