欢迎来到天天文库
浏览记录
ID:37299483
大小:1.08 MB
页数:41页
时间:2019-05-12
《无约束优化计算方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、本次课的主要内容:一维寻优最优化的概念极值存在区间的确定压缩区间计算原理黄金分割法的由来及其计算步骤0.618法的程序框图第四章无约束优化计算方法4.1引言一、无约束优化问题的一般形式:求其最优解和的方法,称为无约束优化计算方法分类非梯度算法随机搜索法、坐标轮换法、Powell法、单纯形法等梯度法、共轭梯度法、牛顿法、修正牛顿法、变尺度法等梯度算法二、无约束优化问题的一般步骤:1.从某一初始点开始迭代计算;2.各种方法在领域内产生新点;3.检验点是否满足最优性条件。函数构造不同迭代终止准则4.2单变量优化计算方法即,求优化步长因子使沿给定方向达到极小值。则称为一维搜索的最优步长因子。求值
2、的方法称为一维搜索优化计算方法或单变量优化计算方法。一、概念一维搜索示意图当目标函数可以精确求导时,其最优步长因子可以用解析法求得:一维搜索方法包括:分数法(Fibonacci法)、黄金分割法(0.618法)、牛顿法、二次插值法和三次插值法等。一维搜索最优化方法步骤:1、在方向上确定函数值最小点所在区间2、求出该区间内的最优步长因子二、分类及一般步骤4.2.1搜索区间的确定所谓搜索区间就是沿方向找出一个单峰区间,即在该区间内的函数变化只有一个峰值,如图所示:性质:若在区间内另取一点,即或单峰函数将初始迭代和定为搜索区间的左端点;用一试探步长沿方向移动一步并计算其点的函数值,若则继续增大
3、步长,再计算其函数值,与前一点的函数值进行比较,直到相临两点的函数值满足时为止,即形成了高-低-高的一维函数曲线;最后一点就定为搜索区间的右端点。中间点。正向搜索前进极小点在右方若,则步长值改为,即取步长,继续计算,直到为止,也可得到高-低-高的一维函数曲线。将左端点值定为终止点,而右端点定为起始点,中间点定为。反向搜索后退进退法极小点在左方外推法确定搜索区间向右移动求新点想一想:该方法的程序框图高-低-高4.2.2黄金分割法(0.618法)黄金分割法适用于区间上的任何单峰函数求极小值问题。对函数除要求单峰外不作其它要求,甚至可以不连续。因此,这种方法的适应面相当广。一、区间压缩原理目标
4、函数,所在搜索区间第一次搜索时定为,求给定方向上的最优步长因子。首先在区间内取两个值,,且满足并按一个公比(0<<1)缩小,得其坐标为:计算函数值,,并比较:消去区间原理图继续循环下去,则一般公式为:最后区间缩短为:按上述序列消去区间方法,每次都需要计算两个新点和两次函数值,为了提高效率,希望每次只计算一个新点及函数值。按上述序列消去区间方法,每次都需要计算两个新点和两次函数值,为了提高效率,希望每次只计算一个新点及函数值。由于和两点在区间内是对称的,因此只要合理确定公比,就可以达到目的,将前一次计算的三个点留下,例如当时,保留区间为。为此,二、黄金分割法取为取为取为0.618分割
5、法即,黄金分割法可使相邻两次搜索区间都具有相同的缩短率0.618在新的区间中:0.618法程序框图formatlong;ifnargin==3eps=1.0e-6;endl=a+0.382*(b-a);%试探点u=a+0.618*(b-a);%试探点k=1;tol=b-a;function[x,minf]=minHJ(f,a,b,eps)%目标函数:f;%极值区间左端点:a;%极值区间右端点:b;%精度:eps;%目标函数取最小值时的自变量值:x;%目标函数的最小值:minfwhiletol>eps&&k<100000fl=subs(f,findsym(f),l);%试探点函数值fu=s
6、ubs(f,findsym(f),u);%试探点函数值iffl>fua=l;%改变区间左端点l=u;u=a+0.382*(b-a);elseb=u;%改变区间右端点u=l;l=a+0.382*(b-a);endk=k+1;tol=abs(b-a);endifk==100000disp('找不到最小值');x=NaN;minf=NaN;return;endx=(a+b)/2;minf=subs(f,findsym(f),x);formatshort;书本的87页,习题4-1一、基本思想:利用三点的函数值来构造一个二次插值多项式,以近似的表达原目标函数,并求这个的多项式的极值点作为原函数极小
7、点的近似值。二、原理:在一维搜索中,与均为已知,因此目标函数是的一元函数现在构造一个二次多项式逼近目标函数4.2.2二次插值法(近似抛物线法)二次插值法原理图思考:压缩搜索区间时,有几种情况,书上的程序框图中是怎样解决这个问题的?二次插值程序框图课下作业用黄金分割法求函数的极小点,给定要求:1.手工按黄金分割法计算2.至少用一种计算机语言以黄金分割法编程计算4.3多变量优化计算的非梯度方法4.3.1坐标轮换法将一个多维的无约束最优化
此文档下载收益归作者所有