最速下降法原理及其算法实现.docx
- 文档编号:29392979
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:14
- 大小:86.60KB
最速下降法原理及其算法实现.docx
《最速下降法原理及其算法实现.docx》由会员分享,可在线阅读,更多相关《最速下降法原理及其算法实现.docx(14页珍藏版)》请在冰豆网上搜索。
最速下降法原理及其算法实现
课程论文
论文题目:
最速下降法原理及其算法实现
课程名称:
现代信号处理新方法
学院:
自动化学院
专业班级:
控制科学与工程1班
学号:
2111304092
姓名:
严春景
任课教师:
鯉
2014年6月20日
最速下降法原理及其算法实现
容摘要
扌商要:
基于最速下降法在解决无约束非线性规划问题中的重要性,对其原理与算法予以讨论。
论
文主要是参阅大呈数学分析和运筹学书籍以及一些学术资料,结合自己在平时学习中掌握的知识,
并在指导老师的建议下r针对最速下降法的基本思路和原理进行硏究。
关键词:
运筹学最速下隆法无约束梯度法最优解
Thesteepestdescentmethodfprincipleandits
algorithm
Abstract
Basedonthesteepestdescentmethodinsolvingunconstrainednonlinearprogrammingproblem,theimportanceoftheprincipleandthealgorithmisdiscussed.Papermainlyrefertoamathematicalanalysisandoperationsresearchbooksandsomeacademicmaterial,usuallyinthestudyofknowledgeandmasteryinteacher'ssuggestion,thesteepestdescentmethodaccordingtothebasicideasandprincipleswerestudied.
Unconstrained
Keywords:
operationalresearchsteepestdescentmethod
gradientmethodoptimalsolution
序言
最速下降法又称为梯度法,是1847年由酋名数学家Cauchy给出的,它是解析法中最古老的一种,其他解析方法或是它的变形,或是受它的启发而得到的,因此它是最优化方法的基础。
作为一种基本的算法,他在最优化方法中占有重要地位。
其优点是工作呈少■存储变呈较少,初始点要求不高;缺点是收敛慢,效率不高,有时达不到最优解。
非线性规划硏究的又援是非线性函数的数值最优化问题。
它的理论和方法渗透到许多方面,特别是在军事、经济、管理、生产过程自动化、工程设计和产品优化设计等方面都有着重要的应用。
而最速下降是〃元函数的无约束非线性规划问题min/(x)的一种重要解析法,研究最速下降法原理及其算法实现对我们有着极其重要的意义。
—、最速下降法基本原理
(―)无约束问题的最优性条件
无约束问题的最优解所要满足的必要条件和充分条件是我们设计算法的依据,为此我们有以下几个走理。
走理1设f:
RJR'在点xeRn处可微。
若存在pwR”,使
Vf(x)Tp<0
则向星p是f在点元处的下降方向。
走理2设f:
RJR'在点%*eRn处可微。
若F是无约束问题的局部最优解,则
W)=0
由数学分析中我们已经知道,使申(羽=0的点x为函数/的驻点或平稳点。
函数/的一个驻点可以是极小点;也可以是极大点;甚至也可能既不是极小点也不是极大点,此时称它为函数f的鞍点。
以上走理告诉我们,T是无约束问题的的局部最优解的必要条件是:
x•是其目标函数/的驻点。
现给出无约束问题局部最优解的充分条件。
走理3设「R”tR'在点VeR'!
处的Hesse矩阵歹/(门存在。
若
W*)=0,并且沪/X)正定
则F是无约束问题的严格局部最优解。
—般而言,无约束问题的目标函数的驻点不一走是无约束问题的最优解。
但对于其目标函数是凸函数的无约束凸规划,下面走理证明了,它的目标函数的驻点就是它的整体最优解。
走理4设f:
RJR',xeRn,/是R”上的可微凸函数。
若有
W)=0
则X*是无约束问题的整体最优解。
(二)最速下降法的基本思想和迭代步骤
最速下降法又称为梯度法,是1847年由著名数学家Cauchy给出的。
他是解析法中最古老的—种,其他解析方法或是它的变形,或是受它的启发而得到的,因此它是最优化方法的基础。
设无约束问题中的目标函数/:
R“T疋一阶连续可微。
最速下隆法的基本思想是:
从当前点『出发,取函数/(X)在点/处下降最快的方向作为我们的搜索方向//•由/(A)的Taylor展式知
f(xk)-/(/+tpk)=-呵X)9+皿bII)
略去7的高阶无穷小项不计,可见取=-WE)时,函数值下降得最多。
于是,我们可以构造出最速下降法的迭代步骤。
解无约束问题的的最速下降法计算步骤
第1步
选取初始点屮,给定终止误差£>0,令k:
=0;
第2步
计算可(小,若II巧(")11“,停止迭代.输出".否则进行第二步;
第3步
取//=-V/(?
);
第4步
逬行一维搜索,求L,使得
f(xk+tkpk)=minf(xk+tpk)
令X1"1=xk+tkp:
k:
=k+\,转第2步。
由以上计算步骤可知,最速下降法迭代终止时,求得的是目标函数驻点的一个近似点。
确走最优步长L的方法如下:
方法一:
采用任一种一维寻优法
此时的/(*已成为步长7的一元函数,故可用任何一种一维寻优法求出4,即
/(^+,)=卅-冋的)=minf(xk-tVf(xk))
方法二:
微分法
因为
tf(xk-tVJ\xk))=(p{t)
所以,—些简单情况下,可令
0(r)=O
以解出近似最优步长L的值。
㈢最速下降法应用举例
例1min/(x)=x,-x2+2x;+2x}x2+球给走初始点X(,)=(0,0/
s、90.0JJS&+W819.0ffl、Ong、、‘OAIJ
"(9IR6)+txelJH7)UHUH
U寸ZIE」H7)J-=vhH(os+% -瞬叵芒E至咖翱a咲•J寸z—.y)=(ox)JA—Hod 3AZI.OS丄一(ox)A一一 J(寸z.寸y)H(ox)>旨J(b "(XIE): (z—_x)£X)Ju=u -旺CM亘 1+ 8282.0»=(EX)匕一一魅鰹g尿洛富爼 II」--whtsi-sh^-+K)+(I+K)aI3Z+"(IIY)e+(I+3丄i—K)==($£+$x)Jn(x)・ 8・0- iH£x)yA—H(OPG □士X亍0+2 7 -I "(ax)yA-・85 7 (7)0HK21H"K+7(KI)e+z(yl)e+KI(KI)n(WPY+Ex)JH(X)Js J二二「0 HK+ 70 $e+Hz+'. HZ+H寸+1 H(EX)yA—HU)p叵如腮塾<|>「 (x)p (x)Jg (H)O (X)J9 V/(Xi)=(0・73J・28)卩 冋*)卜1.47>£ 令》=-w(xj 再求单变臺极小化问题 minf(X'+tp}) t>0 的最优解•略去计算步骤,由表1-1给出计算结果•由表1-1可以知道,||Vf(X7)||=0.09<^,所以 X7=(2.28J.15)7为近似最优解,原问题的近似最优值为0.007・ 表 迭代欠数k X” f(xk) W(XA) ||W(X")|| tk Xk+l 0 (0.00,3.00)7 52.00 (一44,24)『 5012 0.06 (2.70J.51)7 1 (2.70J.51/ 0.34 (0.73,1.28/ 1.47 0.24 (2.52,1.20/ 2 (2.52,1.20)r 0.09 (0.80,-0.48/ 0.93 0」l (2.43,1.25/ 3 (2.43,1.25/ 0.04 (0」&0.28)7 0.33 0.31 (2.37J.16)7 4 (2.37J.16/ 0.02 (0.30,-0.20)r 0.36 0.12 (2.33,1.18f 5 (2.33,1.18)r 0.01 (0.0&0.12)7 0.14 0.36 (2.30J.14)7 6 (2.30J.14/ 0.009 (0.15,-0.08/ 0.17 0」3 (2.2&1.15)7 7 (2.2&l」5j' 0.007 (0.05,0.08)7 0.09 例3用最速下降法求解无约束问题 minf(x)=£x;+£xf——2召 取X⑴=(0,0)7,£=]0-2。 解: 计算目标函数的梯度和Hesse阵 3%|——2 取X⑴=(0,0)T,则VAX⑴)=[-2,0『,所以⑴)=[2期’f 221 因此 XQ=X⑴+诃)=[0,0丫+l[2,0]/=|,0 再计算第二轮循环,表1-2列出了各次迭代的计算结果。 共计算了9个点,⑼)|=0.025< IO-? 停止计算,所以X,9)=[0.98&0.988]'作为问题的最优解。 表1-2 k X⑹ /(汕) 可(X⑴) d{k} 1 (0.000,0.000) 0.000 (-2.000,0.000) (2.000,0.000) 0.333 2 (0.667,0.000) -0.667 (0.000,-0.667) (0.000,0.667) 1.000 3 (0.667,0.667) -0.889 (-0.667,0.000) (0.667,0.000) 0.333 4 (0.889,0.667) -0.963 (0.000,-0.222) (0.000,0.222) 1.000 5 (0.889,0.889) -0.988 (-0.222,0.000) (0.22Z0.000) 0.333 6 (0.963.0.889) -0.996 (0.000,-0.074) (0.000,0.074) 1.000 7 (0.963,0.963) -0.999 (-0.074,0.000) (0.074,0.000) 0.333 8 (0.98&0.963) -1.000 (0.000,-0.025) (0.000,0.025) 1.000 9 (0.988,0.988) -1.000 (-0.025,0.000) (四)最速下降法的缺点 由于沿负梯度方向目标函数的最速下降性,很容易使人们误认为负梯度方向是最理想的搜索方向,最速下降法是一种理想的极小化方法。 必须扌旨出的是,某点的负梯度方向,通常只是在该店附近才具有这种最速下降的性质。 在一般情况下,当用最速下降法寻找极小点时,其搜索路径呈直角锯齿状(图1-3),在开头几步,目标函数下降较快;但在接近极小点时,收敛速度长久不理想了。 特别适当目标函数的等值线为比较扁平的椭圆时,收敛就更慢了。 图「3 因此,在实用中常将最速下降法和其他方法联合应用,在前期使用最速下降法,而在接近极小点时,可改用收敛较快的其他方法。 二、最速下降法算法实现 ㈠最速下降法程序流程图 最速下降法的程序流程图,如图1-4所示 开始 给泄初始点a-°eEh,£>0 £: =0 图「4 (二)最速下降法程序清单 用C语言编写的最速下降法的程序清单如下。 其中R是梯度模,P是梯度方向的的单位向呈,h是步长,f是目标函数。 #include"math.h" #include"stdio.h" floatx[10]ry[10]rp[10]Xh; intn; vodfun() {inti; for(i=l,i f=x[l]*x[l]+x[2]*x[2]-x[l]*x[2]-10*x[l]-4*x[2]; f=f+60; return; } main() {floatg[10]/d[10]/qrr/e/hl/h2/h3/h4/t/t0/cl/c2/flrf2/f3rf4/f5/v; intirkru; printf("inputr\e\n"); scanf(〃%d%f〃3&e); X[l]=0;x[2]=0; p4: g[l]=2*x[l]-x[2]-10;g[2]=2*x[2]-x[l]-4; q=0; for(i=l;i for(i“;ivn;i++){y[i]=x[i];p[i]=g[i]/r;} if(r else {t0=l;v=0.1;hl=0;h=hl fun();fl=f; p2: u=0;t=t0;h2=hl+t;h=h2; fun();f2=f; if(fl>f2){t=t+t;u=u+l; else{t=-t;h3=hl;f3=fl; hl=h2;fl=f2;h2=h3;f2=f3; pl: h3=h2+t;h=h3; fun()f3=f; if(f2>f3){t=t+t;u=u+l; hl=h2;fl=f2;h2=h3;f2=f3;gotopl;}else{if(u>0) {h4=0.5*(h2+h3);h=h4; fun();f4=f; if(f4>f2){h3=h4;f3=f4;}else{hl=h2;fl=f2;h2=h4;f2=f4;} cl=(f3-fl)/(h3-hl); C2=((f2-fl)/(h2-hl)-cl)/(h2-h3); if(fabs(c2) else{h4=0.5*(hl+h3-(cl/c2));h=h4; fun();f4=f; if(f2 elsef5=f2; if((fabs(f4-f2)/f5) {for(i=l;i gotop4; } else {if(f4>f2){hl=h2;fl=f2;} else{hl=h4;fl=f4;} tO=v*tO;gotop2; } } } } p3: h0;fun(); printf("OBJ.FUNCF=%f\n",f); for(i=l;i {printf("X(%d"J); printf(")=%f\n",x[i]); 三、设计总结 接触最速下降法是在学习运筹学时,它是一种重要的无约束最优化方法。 是1847年由著名数学家Cauchy给出的,它是解析法中最古老的一种,具他解析方法或是它的变形,或是受它的启发而得到的。 在进行该题目的毕业设计时,以前学至啲知识是远远不够的。 我去学校图书馆查阅了大星的相关书籍,弓I用了一些比较经典的例题来呈现最速下降法。 为了用C语言实现最速下降法,重温了C语言,上网查阅了相关资料。 经过近半年的努力和辅导老师的大力帮助下,我的论文《最速下降法及其算法实现》完成了。 详细阐释了最速下降法的基本原理,迭代步骤以及算法的实现,对最速下降法做了较为深入的研究。 通过这次设计,我重新学习了以前遗忘的知识,加深了记忆和理解。 真正做到了理论和实践相结合,锻炼了自己分析,处理实际问题的能力,也认识到了自己的不足。 毕业设计过程中总结到的 经验和教训将指导我未来的工作和学习,我会更加努力,取得更大的成绩。 参考文献 [1]瑞安,吴方•非线性最优化理论和方法•: 高等教育,1900 [2]袁亚湘,文瑜•最优化理论与方法.: 科学,1997 [3]开明.非线性规划.: 复旦大学,1991 [4]周维,鹏飞.运筹学科学,2008 [5]莹,运筹学基础.: 清华大学.1994 [6]建永,运筹学算法与编程实践.: 清华大学.2004 [7]傅噸,龚助,琼茹,何中市.数学实验.: 科学.2000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 下降 原理 及其 算法 实现