《2022年matlab黄金分割法.pdf》由会员分享,可在线阅读,更多相关《2022年matlab黄金分割法.pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、matlab 黄金分割法黄金分割法东南大学机械学院 * 一黄金分割法基本思路黄金分割法适用于 a,b 区间上的任何单谷函数求极小值问题,对函数除要求“单谷”外不做其她要求, 甚至可以不连续。因此 , 这种方法的适应面非常广。黄金分割法也就是建立在区间消去法原理基础上的试探方法, 即在搜索区间 a,b 内适当插入两点a1,a2, 并计算其函数值。 a1,a2 将区间分成三段 ,应用函数的单谷性质 , 通过函数值大小的比较 , 删去其中一段 , 就是搜索区间得以缩小。然后再在保留下来的区间上作同样的处理 , 如此迭代下去 , 就是搜索区间无限缩小 , 从而得到极小点的数值近似解。二 黄金分割法的基
2、本原理一维搜索就是解函数极小值的方法之一,其解法思想为沿某一已知方向求目标函数的极小值点。一维搜索的解法很多,这里主要采用黄金分割法 (0、618 法)。该方法用不变的区间缩短率0、618 代替斐波那契法每次不同的缩短率,从而可以瞧成就是斐波那契法的近似,实现起来比较容易 ,也易于人们所接受。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 6 页 - - - - - - - - - - matlab 黄金分割法黄金分割法就是用于一元函数f(x)在给定初始区间 a,b内搜索极小点 xmin 的一
3、种方法。它就是优化计算中的经典算法,以算法简单、收敛速度均匀、效果较好而著称,就是许多优化算法的基础,但它只适用于一维区间上的凸函数,即只在单峰区间内才能进行一维寻优,其收敛效率较低。 其基本原理就是 :依照“ 去劣存优 ” 原则、对称原则、 以及等比收缩原则来逐步缩小搜索区间。具体步骤就是:在区间 a,b内取点:a1 ,a2 把a,b分为三段。如果 f(a1)f(a2),令 a=a1,a1=a2,a2=a+0 、618*(b-a); 如果 f(a1)e % 循环条件 y1=subs(f,a1); y2=subs(f,a2); if y1y2 % 比较插入点的函数值的大小 a=a1; % 进行
4、换名 a1=a2; y1=y2; a2=a+0、618*(b-a); else b=a2; a2=a1; y2=y1; a1=b-0、618*(b-a); endk=k+1; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 6 页 - - - - - - - - - - matlab 黄金分割法end% 迭代到满足条件为止就停止迭代xmin=(a+b)/2; fmin=subs(f,xmin) %输出函数的最优值fprintf(k=n); % 输出迭代次数disp(k); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 6 页 - - - - - - - - - -