在无约束问题的导数解法中,我们借助梯度方向构造了“两头牛的轭”,我们称其为共轭梯度法。(详情见工程优化设计与Matlab实现——无约束问题的导数解法(四))
在这里,我们不再依赖梯度方向,而从其他角度来入手,构造共轭方向。
共轭方向法
Point 1 共轭方向与函数极值的关系
由于目标函数可以使用在任一点
二次泰勒展开式
来近似,
从而转换为求
这一n元二次函数极值点的问题。
所以我们可以先以二元二次函数为例进行说明:
对于具有正定矩阵
的二元二次函数
有两个性质:
一个是:其等值线为同心椭圆族,中心为极值点;
另一个是:过椭圆族中心的直线与椭圆交点处诸切线相互平行
根据这两个性质有如下推论:按任意搜索方向
,作同心椭圆族的两平行切线,则连接两个切点的直线通过椭圆族中心
所以,如果由
沿
再沿
作一维优化,即可得到极小值点
推广到n元二次函数
对于具有
正定矩阵
的n元二次函数
,
其性质如下:
是关于
的
个非零共轭矢量,若从某一个初始点
出发沿任一
(
)方向进行一维优化搜索,得到等值线的切点,即最优点
;再从另一初始点
沿同一
进行一维搜索得到另一最优点
,则矢量
与矢量组
中的每一向量,关于
共轭。
如果n元二次函数有n个共轭方向