




已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章 一维搜索的最优化方法,4-1 概述,求解一元函数f()的极小点和极小值,如图4-1所示的*与f(*)问题,就是一维最优化问题,其数值迭代方法亦称为一维搜索方法。,一维最优化方法是优化方法中最简单、最基本的方法。 它不仅可以用来解决一维目标函数的最优化问题 更重要的是在多维目标函数的求优过程中,常常需要通过一系列的一维优化来实现。 由前述关于多维迭代寻优的讨论中,在任一次迭代计算中,当确定搜索方向S(k)之后,新设计点X(k+1)= X(k) +S(k),总是位于过X(k)点的S(k)方向上,而不论步长因子数值如何。,图4-2表示二维优化问题的情况,S(k)应选择使在X(k)点邻域目标函数值下降的方向,同时希望选某一特定的=(k),使产生的新点X(k+1)是在过X(k)点和S(k)方向上的目标函数的极小点。即有,这个特定的步长因子(k)称为最优步长因子。 然后,把该X(k+1)点作为下次迭代的出发点,另选新的搜索方向S(k+1),获得S(k+1)方向上的目标函数极小点,如此重复上述过程,直至把目标函数逼近理论极小值,实现多维目标函数寻优。,f(X(k) +(k)S(k)=min f(X(k) +S(k) (4-1),式(4-1)表示过X(k)点沿S(k)方向搜索寻优,显然X(k)和S(k)已确定,即可认为是固定的量,所以求解步长(k)使函数f(X(k) +S(k)值为极小的问题,也就是求解一元函数f()= f(X(k) +S(k)的极小值问题。 如图4-3所示,不论X属于几维向量,从定点X(k)出发,沿确定方向S(k)搜索,作为单变量寻优求满足式(4-1)的最优步长因子(k)的过程亦是一维搜索过程。一般来说,从X(k)点出发,沿方向S(k)求函数f()= f(X(k) +S(k)的极小点X(k+1)就构成某些多维最优化方法的一种基本过程。所以一维搜索的效率、稳定性等的索方法与之互相配合,否则将会带来占机时间长,或破坏算法稳定性等缺陷。,一维搜索最优化方法很多,有格点法、黄金分割法(0.618法)、分数法和插值法等。我们这里将介绍常用的0.618法和二次插值法。 一维搜索过程总的可分为两大步骤:(1)确定函数f()的极小点(k)所在的初始搜索区间a,b; (2)在搜索区间a,b 中搜索寻优极小点(k)。,4-2 初始搜索区间的确定,要进行一维搜索,首先要确定极小点(k)所在的初始搜索区间a,b。用f()代表单变量函数,并假定是单峰函数,考虑的极值问题都是极小值问题。,如图4-4(a)所示,在极小 点*左边,函数是严格 减小的;而在*的右边,函数是严格增大的。设 是(1) f(2) ;若(1)*(图4-4(c), 则f(1) f(2)。由图 4-4(d)所示,单蜂函数 的函数值具有高一低一 高的特征。,若找到(1)(2)(3),且f(1)f(2),f(2)f(3),则*必在区间(1),(3)之间。 确定极小点的初始搜索区间就要利用这个函数值高一低一高,亦即函数值两头大中间小的特征。 需要指出,对于预先有 把握估计的区间值,可以 直接给出。 当事先难以估计区间的 范围时初始区间可通过某 种方法予以确定。 下面介绍一种进退算法 来确定初始搜索区间。,设函数f()为定义在区间a,b上的单变量函数,初始搜索区间a,b 单变量函数,*是f() 在区间a,b上的全域极小点,若存在x1,x2a,b,并有x1 f(x2),则x1,b是f() 极小值点的一个搜索区间。,搜索区间,确定搜索区间的算法框图,某些情况下,目标函数的性态不明确,搜索区间无法人为地预先选定,因此需要采用一定的方法进行自动地寻找,以确定函数极小值点的搜索区间。下面介绍经常用的一种方法-进退法。 基本思想:进退法也称成功-失败法。 它是从事先给定的初始点(k)开始,沿搜索方向选定一步长h(k),取得一个新点(k+1)=(k)+ h(k)S(k),计算目标函数值f(k+1)。 若f(k+1) f(k),即目标函数值下降,则称搜索成功,于是再加大步长前进搜索,直到目标函数值上升为止。 如果从第一步(k)向前搜索目标函数值不下降,则称搜索失败,下一次就从初始点(k)开始,反方向以相同的步长h(k)后退,与前述方法相同,去寻找使目标函数值具有“大-小-大”特征的区间。,进退算法来确定初始搜索区间。,设给定某初始点(0)及初始步长h,求初始搜索区间的步骤 (1)给定(0)、h,(0)值可 任意选取,最好取(0)接近于 极小点,或可取(0)=0。h为 初始步长,h0,可取h=1。 (2)令(0)(1), (1)+ h (2),得两个试点(1)、 (2)。(1)(2)。计算其 函数值f(1)和f(2)。令 f(1)f1、f(2) f2。,(3)比较f1与f2。若f2f1,则作前进 运算。以第二点(2)为起始点,以 h为步长,前进搜索即可取得第三 个试点(3)= (2) + h=(0) + 2h, 并计算f(3) f3。若f2f3,如 图4-5(a)所示,则区间a,b (0),(0) + 2h为初始搜索区间, 即a =(0),b(0) + 2h; 否则,即f2f3,则以(3)为起始 点,按第二点(2)到第三点(3) 的方向将步长再加倍,重复上述 前进搜索运算,直到出现相继的 三个试点,其两端试点的函数值 大于中间试点的函数值为止。这 时左端试点坐标即为a,端试点坐 标即为b。如图4-5(b)所示,则区 间a,b(0) + 2h,(0) +8h为初始搜索区间,即a(0) + 2h,b(0) +8h。,(4)如果在步骤(3)中的两个 函数值有f3f1 ,则作后退 运算。以第一点(1)为起 始点,仍以h大小作为步长 但反方向搜索取得第三个 试点(3)= (1)h=(0) h ,并计算f(3) f3。 若f3f1如图4-6(a)所示, 则区间a,b(0)-h, (0)+h为初始搜索区间, 即a(0)-h,b(0)+h。 否则,即f3 f1,则以(3) 为起始点,按第一点(1) 到第三点(3)的方向将步 长再加倍,重复上述运算,直到出现相继的三个试点,其两端试点的函数值大于中间试点的函数值为止。这时左端试点坐标即为a,右端试点即为b。如图4-6(b)所示,则区间a,b(0)-7h,(0)-h为初始搜索区间,即a(0)-7h,b(0)-h。,上述计算步骤设计成如图4-7所示的计算程序框图,简称进退法算法框图。,例题4-1 用进退法确定函数f()= 2-7+10的一维优化初始搜索区间a,b。设初始点(0)=0,初始步长h1。 解:按图4-7所示算法框图进行计算 (1)=(0)=0 f1=f(1)=10; (2)=(1)+h =1 f2=f(2)=4 比较f2、f1,因f2f1,作前进运算 (3)=(2)+h=2 f3=f(3)=0 比较f2、f3,因f2f3,再作前进运算 h =21=2 (1)=(2)=1 f1=f(1)=4; (2)=(3)=2 f2=f(2)=0; (3)=(2)+h=4 f3=f(3)=-2 比较f2、f3,因f2f3,再作前进运算 h =22=4 (1)=(2)=2 f1=f(1)=0 (2)=(3)=4 f2=f(2)=-2 (3)=(2)+h=8 f3=f(3)=18。此时f1f2、f2f3,故a=(1)=2,b=(3)=8,亦即初始搜索区间a,b2,8。,4-3 黄金分割法,一、消去法 的基本原理 消去法的基 本思路是:逐步 缩小搜索区间, 直至最小点存在 的范围达到允许 的误差范围为止。 设一元函数 f()如图4-8所 示,起始搜索区 间为a,b,* 为所要寻求的函 数的极小点。,在搜索区间a,b内任取两点(1)与(2),且a(1)(2)b,计算函数f(1)与f(2)。当将f(1)与f(2)进行比较时,可能的猜况有下列三种: (1) f(1)f(2):如图4-8(a)、(b)所示,这种情况下。可丢掉(2),b部分。而最小点*必在区间a,(2)内。 (2) f(1)f(2):如图4-8(c)、(d)所示,这种情况下,可丢掉a,(1)部分,而最小点*必在区间(1),b内。 (3) f(1)f(2):如图4-8(e)所示,这种情况下,不论丢掉a,(1)还是丢掉(2) ,b,最小点*必在留下的部分内。 因此,只要在搜索区间内任取两点,计算它们的函数值并加以比较之后,总可以把搜索的区间缩小。这就是消去法的基本原理。,二、“0.618”的由来,如图4-9所示,设区间a,b全长为L,在其内取两个对称计算点(1)和(2),并令l/L=称为公比,无论如图(b)所示丢去(2),b,还是如图(c)所示丢去a,(1)、保留点在新区间a1,b1中相应线段比值仍为,由此得,解此方程得两个根,取其正根为,这种分割称为黄金分割、其比例系数为0.618只要第一个试点取在原始区间长的0.618处第二个试点在它的对称位置,就能保证无论经过多少次缩小区间,保留的点始终处在新区间的0.618处。再要进一步缩短区间,在其保留点的对称位置再取点作一次比较消去,这种分割每次消去时,区间的缩短率下变。均为0.618,此即0.618法名字的由来。,三、迭代过程及算法框图,0.618法的具体迭代过程如下: (1)在初始区间a,b内取两个计算点(1)与(2),其值分别为 (1)= b0.618(ba) (2)= a +0.618(ba) 计算函数值f(1)、f(2),且令f(1) f1、f(2) f2。 (2)比较函数值,缩短搜索区间 1)若f1 f2,见图4-9(b),则丢去区间(2),b,取a , (2)为新区间a1,b1,在计算中作如下置换: (2) b,(1) (2) ,f1 f2,b0.618(ba) (1),f(1) f1 2)若f1f2,见图4-9(c),则丢去区间a , (1),取(1),b 为新区间a1,b1,在计算中作如下置换: (1) a,(2) (1),f2 f1,a +0.618(ba) (2),f(2) f2 (3)判断迭代终止条件 当缩短的新区间距离小于某一个预先规定的精度,即ba,终止迭代。此时,小区间内任一点均可作为f()极小值的近似点。例如可取区间的中点,即0.5(b+a) *。否则,返回第(2)步重新作进一步缩小区间的迭代计算。,0.618法的算法框图如图4-10所示。,例题4-2 用黄金分割法求一元函数f()= 27+10的最优解。已知初始区间为2,8,取迭代精度=0.35。 解:按图4-10所示算法框图进行计算 (1)在初始区间a,b2,8中取计算点并计算函数值 (1)=b0.618(ba)=4.292 ;f1=f(1)=1.622736 (2) = a +0.618(ba)=5.70 ;f2=f(2)=2.625264 (2)比较函数值,缩短搜索区间 因有f1f2,则b =(2) =5.708,(2) =(1)=4.292 , f2=f(2) =1.622736 (1)=b0.618(ba)=3.416456,f1=f(1)=2.243020 (3)判断迭代终止条件 ba=5.7082=3.708 不满足迭代终止条件,比较函数值f1、f2继续缩短区间。 将各次缩短区间的有关计算数据列于下表。,可见区间缩短6次后,区间长度为ba=3.697053.2863288=0.310722=0.35,迭代即可终止近似最优解为 *=(a+b)/2=3.441689;f(*)=2.2466,4-4 二次插值法,一、基本原理 在求解一元函数f()的极小点时,常利用一个低次插值多项式p()来逼近原目标函数 然后求该多项式的极小点(低次多项式的极小点比较容易计算),并以此作为目标函数f()的近似极小点。 如果其近似的程度尚未达到所要求的精度时,可以反复使用此法,逐次拟合,直到满足给定的精度时为止。 常用的插值多项式p()为二次或三次多项式,分别称为二次插值法和三次插值法。 由于二次插值法计算较简单且又有一定的精度,所以应用较广。下面介绍二次插值法的计算公式。,假定目标函数在初始搜索区间a,b 中有三点, (1)、(2)和(3)(a(1) (2) (3) b),其函数值分别为f1、f2和f3 (图4-11),且满足f1f2,f2f3,即满足函数值为两头大中间小的性质。利用这三点及相应的函数值作一条二次曲线,其函数p()为一个二次多项式 p()= a0+ a1+ a22 式中,a0、a1、a2为待定 系数。 根据插值条件,插值函数 p()与原函数f()在插值 结点P1、P2、P3处函数值 相等,得,为求插值多项式p()的极小点*;,可令其 p()= a0+ a1+ a22一阶导数为零,即,求得插值函数的极小点,要确定的系数a1,a2可在方程组中利用相邻两个方程消去a0得:,便得插值函数极小值点*p的计算公式:,把*p取作区间(1),(3)内的另一个计算点,比较*p与(2)两点函数值的大小,在保持f()两头大中间小的前提下缩短搜索区间,从而构成新的三点搜索区间,再继续按上述方法进行三点二次插值运算,直到满足规定的精度要求为止,把得到的最后的*p作为f()的近似极小值点*。上述求极值点的方法称为三点二次插值法。 为便于计算,可将上式改写为,式中,二、迭代过程及算法框图,(1)确定初始插值结点 通常取初始搜索区间a,b的两端点及中点为(1)=a, (3)=b,(2)=0.5(1)+ (3)。计算函数值f1= f(1)、 f2= f(2)和f3= f(3)。构成三个初始插值结点P1、P2、P3。 (2)计算二次插值函数极小点*p 按式(4-10)计算*p,并将*p记作(4)点,计算f4= f(4)。若本步骤为对初始搜索区间的第一次插值或(2)点仍为初始给定点时,则进行下一步(3),否则转步骤(4)。 (3)缩短搜索区间 缩短搜索区间的原则是:比较函数值f2、f4取其小者所对应的点作为新的(2)点,并以此点左右两邻点分别取作新的(1)和(3),构成缩短后的新搜索区(1),(3)。,其具体方法则如图4-12所示,根据原区间中(4)和(2)的相对位置以及函数值f2和f4比较有a、b、c、d四种情况,图中阴影线部分表示丢去的区间。在对新区间三个新点的代号作依次(1)、(2) 、(3) 的一般化处理后,计算其函数值,并令f1= f(1)、f2= f(2)和f3= f(3),退回步骤(2)。,(4)判断迭代终止条件 在一般情况下,因(2)是前一次插值函数的极小值点,(4)是本次插值函数的极小值点,若(2)和(4)的距离足够小时,即满足|(4)(2)|或(4)和(2)两者原函数值已很接近,即满足| f4f2|,则停止迭代,这时,若f4f2,输出极小值点(4)*,极小值f4f(*);否则,即f2f4时,输出极小值点(2)*,极小值f2f(*)。如不满足上述迭代终止条件、则返回步骤(3),再次缩短搜索区间,直至最后满足终止条件。,二次插值法算法框图,算法框图中有几点需作些说明,1、判别框c2=0?若成立,按式(4-12)和式(4-11)则有 说明三个插值结点P1(1), f1)、P2(2), f2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- FMEA基础知识培训课件
- First-Aid-课件教学课件
- 二年级品德与生活上册 共和国的生日 3说课稿 鄂教版
- 沪粤版八年级物理下册第八章《8.1 认识压强》说课稿
- 1.1 信息技术及其应用说课稿高中信息技术人教中图版2019必修2 信息系统与社会-人教中图版2019
- Lesson 1 After School说课稿初中英语北师大版2013七年级下册-北师大版2013
- Excel公式与课件教学课件
- 活动一 向科学家致敬说课稿小学综合实践活动蒙沪版六年级上册-蒙沪版
- 2025-2026学年苏教版二年级上册数学第二单元过关试卷(1~6的表内除法)及答案(三套)
- 国外警员逻辑思维题训练及答案
- 2024-2025学年下学期高二英语外研社版期中必刷常考题之被动语态
- 中医诊所招学徒合同标准文本
- 汉语言文学毕业论文-鲁迅小说中的知识分子形象
- 长期供应商供货合同书
- 如何缓解焦虑和压力
- 垃圾分类志愿服务
- 高教版中职物理(类)电子教案402第二节 全电路欧姆定律
- ccusg重症超声培训班题库
- 冀教版八年级数学 13.4 三角形的尺规作图(学习、上课课件)
- 2024年锅炉操作工(技师)职业鉴定理论考试题库(含答案)
- 蓄水池工程施工方案全套资料
评论
0/150
提交评论