第三章无约束优化法ShandongUniversity.docx
《第三章无约束优化法ShandongUniversity.docx》由会员分享,可在线阅读,更多相关《第三章无约束优化法ShandongUniversity.docx(14页珍藏版)》请在冰豆网上搜索。
第三章无约束优化法ShandongUniversity
第三章无约束优化法
●概述
●梯度法
●牛顿法
●共轭梯度法
●坐标轮换法
●鲍威尔法
概述
无约束优化问题的一般形式:
求设计变量
使目标函数,对没有任何约束条件。
工程实际问题中,无约束结构优化问题很少,多数是有约束条件的。
学习无约束结构优化原因:
1)工程也有少量无约束结构优化问题,其数学模型就是无约束优化问题,除了在非常接近最小点的情况下,可以按无约束问题处理;2)为研究约束优化问题打下基础;3)约束优化问题可以通过一系列无约束方法达到。
无约束优化问题的求解,可以直接应用函数极值问题的求解方程:
的问题,即求,使其满足:
个方程组,一般为非线性的,很难用解析方法求解,一般采用数值方法。
与其用数值方法求解非线性方程组,倒不如用数值方法直接求解无约束极值问题。
数值方法最常用的就是搜索法,其基本思想:
从给定的初始点出发,按照一定原则寻找搜索方向,沿方向进行搜索,确定最佳步长,使得函数沿方向下降最快,依次形成迭代公式:
各种无约束优化方法的区别在于确定搜索方向的方法,这是无约束优化方法的关键。
根据构成搜索方向所使用的信息不同分为:
(1)间接法利用目标函数的一阶或二阶导数,如梯度法(最速下降法)、牛顿法、共轭梯度法和变尺度法;
(2)直接法直接利用目标函数,如坐标轮换法、鲍威尔法和单形替换法。
梯度法
最早由1847年柯西提出,是无约束优化的基本方法。
其基本思想:
取目标函数的负梯度方向作为迭代的搜索方向,必使函数值下降的速度最快。
设在第次迭代中取得迭代点,从该点出发,取负梯度方向:
为搜索方向,式中:
第次得到的新点:
一般步长
常采用沿负梯度方向做一维搜索:
算法特点:
初始阶段改进较快,最优解附近改进较慢。
具体迭代步骤:
1.选择初始点及迭代精度,令迭代次数;
2.计算点的梯度及梯度的模,并令
3.判断是否满足收敛精度。
一般情况下,若,则为近似最优点,为近似最优值,可以输出最优解,,否则进行4.
4.从点出发,沿负梯度方向求最优步长,及沿进行一维搜索,求得使函数下降最多的步长因子
5.确定新的近似点,此点也就是下次迭代的出发点
令,转入2步。
例题:
梯度法的特点:
1.理论明确,方法简单,概念清楚,计算量小,对初始点没有严格要求。
2.相邻两次迭代的梯度方向是相互正交的,搜索线路呈直角锯齿形,越靠近极小点,搜索密度越大,收敛越慢。
3.迭代次数与目标函数等值线的形状有关,目标函数若为椭圆族越扁,迭代次数越多,搜索到最优点的难度越大。
4.
习题一:
试用梯度法求目标函数的极小值,设初始点,。
习题二:
试用梯度法求目标函数的最优解。
初始点,迭代精度。
牛顿法
牛顿法的基本思想就是利用二次函数来代替原目标函数,以二次函数的极小点作为原目标函数的极小点的近似,并逐步逼近该点。
设一般目标函数具有一、二阶偏导数,此时,在处做泰勒展开并取值二次项,得:
其中为在的海森矩阵,是对称方阵。
求的极小问题转换为的极小值问题。
令,即:
若为正定,解得:
由于在极小点附近,作为极小点的下一个近似点
其中:
搜索方向步长恒为1。
例题:
以上例子说明,牛顿法比最速下降法收敛快
习题三:
用牛顿法求目标函数的极小点和极小值。
取初始点
习题四:
用牛顿法求的最优解,取初始点,迭代精度。
修正牛顿法
其步
牛顿法特点
如果是对称正定矩阵A的二次函数,则用牛顿法经过一次迭代,就可达到最优点,如不是二次函数,则牛顿法不能一步达到极值点,但由于这种函数在极值点附近和二次函数很近似,因此牛顿法的收敛速度还是很快的。
牛顿法的收敛速度虽然较快,但要求海森矩阵要可逆,要计算二阶导数和逆矩阵,就加大了计算机计算量和存储量。
习题五:
用阻尼牛顿法求函数的最优解,取初始点,迭代精度。
共轭方向法和共轭梯度法
共轭方向概念
共轭方向的概念是在研究二次函数
过程中引出的。
考虑二维情形,如果按最速下降法,选择负梯度方向为搜索方向,会产生锯齿现象;为避免锯齿的发生,取下一次的迭代搜索方向直接指向极小点,如果选定这样的搜索方向,对于二元二次函数只需进行两次直线搜索就可以求到极小点。
初选初始点沿某个下降方向做一维搜索,得
是沿方向搜索的最佳步长,即在点处的函数沿方向的方向导数为零。
考虑到点处方向导数与梯度之间的关系,有:
为避免锯齿现象,下一次迭代搜索方向指向极小点
其中为方向的最佳步长。
这样的满足什么条件?
对于二次函数在处取得极小点的必要条件:
即:
上式两边左乘得:
满足上式的两个量和称为的共轭向量,或称和对是共轭方向。
G是n×n对称正定矩阵,方向向量d1,d2,···,dm的m≤n.如果:
称方向向量d1,d2,···,dm关于G的共轭方向
共轭方向性质:
1),,。
。
。
关于共轭,这些向量是线性无关的;
2)在N维空间中相互共轭的向量个数不超过N个;
3)若是单位矩阵,则,,。
。
。
相互垂直正交;
共轭方向法
步骤:
1.选定初始点,下降方向和收敛精度,迭代次数;
2.沿方向进行一维搜索,得;
3.判断是否满足,若满足则打印输出;否则转4。
4.提供新的共轭方向,使,
5.,转2。
共轭梯度法
共轭梯度法是共轭方向法的一种,共轭向量有迭代点的负梯度构造出来,所以称共轭梯度法。
该法于1964年由弗里茨和里乌斯两人提出。
首先研究共轭方向与梯度之间关系:
从点出发,沿的某一共轭方向做一维搜索,到达点即:
在点,处的梯度,为
,
有:
若,对是共轭的,有:
代入上式得:
()
得出共轭方向与梯度之间的关系。
此式表明沿方向进行一维搜索,其终点和始点的梯度之差与的共轭方向正交。
如下图所示。
坐标轮换法
以上方法都要计算目标函数的偏导数,属于间接法。
大量的工程问题目标函数往往很复杂,有的没有明显的解析表达式,其导数难以获得或根本不存在,间接法无法使用,只能借助直接法。
坐标轮换法是每次搜索只允许一个变量变化,其余变量保持不变,即沿坐标方向轮流进行搜索的寻优方法。
它把多变量的优化问题轮流地转化成单变量的优化问题。
又称变量轮换法,也称降维法。
其基本原理是将一个多维的无约束最优化问题转化为一系列较低维的最优化问题来求解,简单地说,就是先将个变量固定不动,只对第一个变量进行一维搜索得到最优点,然后,又保持个变量不变,再对第二个变量进行一维搜索到等等,直到所有变量进行后完成一轮,再进行下一轮的变换,把N维优化问题转化为一系列一维优化问题。
的右上角表示迭代的轮数,右下角表示该轮中的两个迭代点。
搜索方向与步长的确定
对于第轮第次的计算:
其中第轮第次迭代起始点;
第轮第次搜索方向,它轮换取维坐标的单位向量,,其中第分量为1,其余为0.
第轮第次迭代步长因子。
步长可正可负,一般采用最优步长法,就是沿坐标轴方向搜索中,利用黄金分割法等确定沿该方向上的具有最小目标函数的步长,即:
例题:
坐标轮换法求目标函数的无约束最优解。
取初始点,迭代精度。
解:
第一轮:
沿即方向进行一维搜索,取,因为
按最优步长原则确定,极小化:
得:
以为起点,沿方向进行一维搜索,因为
得:
检测:
进行第二轮。
。
。
精确解:
,,。
习题六:
用坐标轮换法求函数的无约束最优解,取初始点,迭代精度。
坐标轮换法的问题
a)当函数的等值线其长短轴平行与坐标轴,收敛快,两次搜索即可到达;
b)当函数的等值线其长短轴与坐标轴斜交,多次搜索方可;
c)当函数的等值线其长短轴与坐标轴斜交的脊线,沿任何坐标方向都无法使函数下降,改用其他方法。
鲍威尔法
Powell法是利用共轭方向可以加速收敛的性质所形成的一种搜索算法,又称方向加速法。
共轭方向的生成
设、从不同点出发,沿同一方向进行一维搜索得到两个极小点,根据梯度与等值面垂直性质,与、两点的梯度、存在以下关系:
同时:
即:
因而有:
上式表明,若取方向,则和对共轭。
说明只要沿方向分别对函数做两次一维搜索,得到两个极小点、,这两点联系方向就是与一起对共轭的方向。
对于二维情况,的等值线为一簇椭圆,设AB为沿轴方向上的两个极小点,AB连线与轴一起对于共轭的方向,沿一维搜索可以找到的极小点。
鲍威尔基本算法
1.从任一初始点,选两个线性无关向量,如坐标轴单位向量,,做一维搜索得点、,连接和得到新方向;
2.代替,形成新的和做一维搜索,得到,与一起对共轭,从出发沿做一维搜索得点,相当于从出发,分别沿的两个共轭方向与进行两次一维搜索,即为二维问题的极小点。
由二维推广至N维,鲍威尔算法就是在每轮开始点和终止点决定新的搜索方向,把这个新方向替换原来N个方向中的1个,替换原则是,去掉原来第一个方向,把新方向放在最后,而不管它的“好坏”;在迭代中逐次生成共轭方向,而共轭方向是较好的搜索方向,该法也称为方向加速法。
但该法常常在迭代中无法生成共轭方向,可能无法求出极小点。
鲍威尔改进算法
鲍威尔基本算法中每一轮迭代点去掉原来第一个方向,把新方向放在最后,而不管它的“好坏”,这是产生向量组线性相关的原因。
在改进算法中首先判断原向量组是否需要替换,若需要替换,还要进一步判断原向量组哪个向量最坏,用新方向代替最坏的向量,保证生成共轭方向。