简约梯度法的基本思想是通过迭代来积极约束,消去一部分的变量,降低最优化问题的文数,并且每次迭代都产生一个可行下降方向. 简约梯度法是可行方向法的算法中的一种,它的目的是达到简约问题,保持可行性.
考虑问题
(1)
其中 , , 是一个秩为 的 的矩阵, , 可行域
为 .
对 做约束非退化假设:
(1) 每一个可行点,至少有 个大于 的分量;
(2) 矩阵 的任意 列线性无关.
在每一次的迭代当前点 处,将 的 个最大正分量定义为基变量,剩下的 个分量定义为非基变量,目标函数 作为非基变量的函数,求负梯度方向,根据这个方向可从 到 迭代为可行下降搜索方向.
, ,称 为基向量,其分量为基变量,称 为非基向量,其分量为非基变量.
假如矩阵 的前 列对应基变量,则 , 为满秩方阵, 为一个 的非基变量矩阵,则
因为 的存在,所以有 .
目标函数 可表示成 ,再运用复合函数求导法则,有
(2)
其中 为 在 处对应基矩阵 的简约梯度.
(3) 其中 对基变量的偏导数组成的向量为 , 对非基变量的偏导数组成的向量 .
矩阵 分解为 ,则 在 处的简约梯度为
(4)
则搜索方向 的分解为
(5)
又有 的分量 的情况为:
(6)
的情况为
(7)
综合得搜索方向为 简约梯度法求解约束非线性优化问题的推广应用及其在Matlab中的实现 (2):http://www.youerw.com/shuxue/lunwen_7145.html