坐标轮换法又称变量轮换法,是无约束最优化直接方法中的一种。坐标轮换法是每次搜索只允许一个变量变化,其余变量保持不变,即沿坐标方向轮流进行搜索的寻优方法,它把多变量的优化问题轮流地转化成单变量的优化问题。该方法在搜索过程中不需要求目标函数的导数,只需目标函数值信息,这就使得该方法相对其他优化方法变得更加简单易行。
下面先以二元函数f(x1,x2)为例说明坐标轮换法的寻优过程。
如图3-10所示,从初始点x0(0)出发,沿第一个坐标方向搜索,即S1(0)=e1得x1(0)=x0(0)+α1(0)S1(0),按照一维搜索方法确定最佳步长因子α1(0)满足:),然后从x1(0)出发沿S2(0)=e2方向搜索得x2(0)=x1(0)+α2(0)S2(0),其中步长因子α2(0)满足:minf(x1(0)+αS2(0)),x2(0)为一轮迭代(k=0)的终点。在这里x的上标表示迭代点的轮号,每做完n次变量的一维搜索,称一轮;下标表示迭代点的序号。检验始、终点间距离是否满足精度要求,即判断‖x2(0)-x0(0)‖<ε的条件是否满足。若满足则x02→x∗否则x02→x01,重新依次沿坐标方向进行下一轮(k=1)的搜索。
图3-10 坐标轮换法的搜索过程
对于n个变量的函数,若在第k轮沿第i个坐标方向Si(k)进行搜索,其迭代公式为
xi(k)=xi-1(k)+αi(k)Si(k)(k=0,1,2,…;i=1,…,n) (3-3)
其中,搜索方向取坐标方向,即Si(k)=ei(i=1,…,n)。若‖xn(k)-x0(k)‖<ε,则xn(k)→x∗;否则xn(k)→x0(k+1),进行下一轮搜索,直到满足精度要求为止。
坐标轮换法的优化性能在很大程度上取决于目标函数的形态。如果目标函数为二元二次函数,其等值线为圆或长短轴平行于坐标轴的椭圆时,此法很有效,一般经过两次搜索即可达到最优点,如图3-11a所示。如果等值线为长短轴不平行于坐标轴的椭圆,则需多次迭代才能达到最优点,如图3-11b所示。如果等值线出现脊线,本来沿脊线方向一步可达到最优点,但因坐标轮换法总是沿坐标轴方向搜索而不能沿脊线搜索,所以就终止到脊线上而不能找到最优点,如图3-11c所示。(www.xing528.com)
图3-11 搜索过程的几种情况
从上述分析可以看出,采用坐标轮换法只能轮流沿着坐标方向搜索,尽管也能使函数值步步下降,但要经过多次曲折迂回的路径才能达到极值点,尤其在极值点附近步长很小,收敛很慢,所以坐标轮换法不是一种很好的搜索方法。
根据坐标轮换法的搜索原理,鲍威尔(Powell)提出了一种具有加速收敛的更好的搜索算法——鲍威尔法。
坐标轮换法的计算框图如图3-12所示。
图3-12 坐标轮换法的计算框图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。