
3.3(变量轮换法)无约束条件多变量函数的选优方法.ppt
18页3.3.1 无约束条件下多变量的优化方法,3.3 多变量的优化方法,3.3.2 等式约束条件下多变量的优化方法,3.3.3 不等式约束条件下多变量的优化方法,一、数学模型,3.3.1 无约束条件下多变量的优化方法,二、优化方法,变量轮换法、单纯形加速法、一阶梯度法、共轭梯度法等3.3.1.1 变量轮换法,一、基本思想,把多变量的优化问题转化为一系列单变量的优化问题方法二、基本原理,沿着坐标轴的方向轮流进行搜索,直至最优点又称坐标轮换法三、计算方法(两种计算方法),(一)第一种计算方法,1 以 二元函数情况为例,设二元函数f(X)=f(x1,x2) ,区间a1≤ x1≤b1, a2≤ x2≤b2,初始点X(0)=(x1(0) ,x2(0)) , f(X(0)) 1) 令x1=x1(0) 不动,变动x2,求以x2为单变量的函数最优值X(1)=(x1(0) ,x2(1)),得f(X (1));,(2)再令x2=x2(1)不动,变动x1,求以x1为单变量的函数最优值X(2)=(x1(1),x2(1)),得f(X (2)) ;,(3) 重复搜索再令x1=x1(1)不动,求以x2为单变量的函数最优值X(3)=(x1(1),x2(2)),得f(X(3)),如此反复搜索,直到满足精度为止。
例:用变量轮换法求函数f(x)=60-10x1-4x2+x12+ x22-x1x2的极小点,初始点X(0)=(0,0)T,要求f(X(k))-f(X(k-1))< 0.05解:,2 多元函数情况,设函数f(X)=f(x1,x2 ,…, xn) ,区间ai≤ xi≤bi, 初始点X0(0)=(x1(0) ,x2(0) , …, xn (0) ) , f(X0(0)) 1) 令xi=xi(0)(i2) 不动,变动x1, f(X)= f(x1) ,求以x1为单变量的函数最优值X0(1)=(x1(1) ,x2(0) , …, xn(0)),得f(X0(1));,(2)再令x1=x1(1),xi=xi(0)(i3)不动 , f(X)= f(x2) ,求以x2为单变量的函数最优值X0(2)=(x1(1),x2(1) ,x3(0) , …, xn (0)),得f(X0(2)) ,每次固定n-1个变量,只对一个变量寻优,对n个变量寻优后,才完成第一轮;,(3)若f(X(k))-f(X(k-1))<成立, 则停止搜索,否则进入下一轮寻优,直至满足精度为止3 程序框图,(二)第二种计算方法,(1) 给定初始点X(1)=(x1(1),x2(1) ,…,xn(1)) ;,(2) 从X(1)出发,先沿着第一坐标轴由e1进行搜索,求出新点X(2)及最优步长1,即X(2)=X(1)+1e1,f(X(2))=f(X(1)+1e1)=min[f(X(1)+e1)],将其代入f(X)= f(x1,x2,x3,…,xn) 中只有一个变量,只有当取最小,f(X)才能取到最小,也就是说1为沿第一坐标轴方向上的最优步长,X(2)为沿第一坐标轴方向上的最优点。
3) 类似地,从X(2)出发,先沿着第二坐标轴由e2进行搜索,求出新点X(3)及最优步长2,即X(3)=X(2)+2e2,f(X(3))=f(X(2)+2e2)=min[f(X(2)+e2)],…, X(n+1)=X(n)+nen,f(X(n+1))=f(X(n)+nen)=min[f(X(n)+en)]这样,从初始点X(1)经n次搜索得到新点X(n+1),完成一轮迭代4)若f(X(k))-f(X(k-1))<成立, 则停止搜索,否则进入下一轮寻优(令X(1) = X(n+1) ),直至满足精度为止程序框图,例:用变量轮换法求函数f(x)=x12+ x22 +x32的极小点,初始点X(1)=(1,2,3)T解:令e1=(1,0,0)T,e2=(0,1,0)T,e3=(0,0,1)T,(1)从x(1)=(1,2,3)T出发,沿着e1方向搜索2)从x(2)=(0,2,3)T出发,沿着e2方向搜索3)从x(3)=(0,0,3)T出发,沿着e3方向搜索四、变量轮换法讨论,1、变量轮换法搜索速度的快慢,取决于目标函数的性质1)若目标函数的等高线为圆形(二维)、球形(三维)或长短轴都平行于坐标轴的椭圆形(椭球形),这种方法搜索最快。
这种情况下,变量之间无交互作用2)若目标函数的等高线类似于椭圆形(椭球形),且长短轴不平行于坐标轴,这种方法必须经过多次迭代才能到达极值点这种情况下,变量之间存在弱交互作用3)若目标函数的等高线出现山脊时,这种方法完全无效这种情况下,变量之间存在强交互作用因为这种方法的搜索方向总是平行于一坐标轴,不能斜向搜索,因此遇到山脊时,不能继续搜索2、变量轮换法的基本思想认为坐标轴方向为有利的搜索方向,因此,在搜索时总是沿着互相垂直的坐标轴方向,并变换多次,才能达到极值点搜索效率低,且越接近极值点,搜索速度越慢。
