最优化方法powell法求解无约束优化问题_第1页
最优化方法powell法求解无约束优化问题_第2页
最优化方法powell法求解无约束优化问题_第3页
最优化方法powell法求解无约束优化问题_第4页
最优化方法powell法求解无约束优化问题_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数学与计算科学学院实 验 报 告实验项目名称 powell法求解无约束优化问题 所属课程名称 最优化方法 实 验 类 型 算法编程 实 验 日 期 班 级 学 号 姓 名 成 绩 一、实验概述:【实验目的】(1) 掌握Matlab数值计算的基本方法;(2) 掌握powell法并利用powell法解课本第358页第五题,使用MATLAB编程实现;(3) 调整参数并对数值结果进行分析。【实验原理】Powell方法是一种有效的直接搜索法,这种方法本质上是共轭方向法。Powell方法把整个计算过程分成若干个阶段,每一阶段(一轮迭代)由n+1次一维搜索组成。在算法的每一阶段中,先依次沿着已知的n个方向搜

2、索,得一个最好点,然后沿着本阶段的初点与该最好点连线方向进行搜索,求得这一阶段的最好点。再用最后的搜索方向取代前n个方向之一,开始下一阶段的迭代。具体计算步骤如下:1.给定初始点,n个线性无关的方向,允许误差,置;2.置,从出发,依次沿方向进行搜索,得到点,再从出发,沿着方向作一维搜索,得到点;3.若,则停止计算,得点;否则,令,置,返回步骤2.改进的powell法与原来的方法主要区别在于替换方向的规则不同。【实验环境】Microsoft Windows 7Matlab二、实验内容:【实验方案】1.选定题目,解的极小点,取初始点。2.使用改进的powell算法解决问题,利用Matlab编写程序

3、解决问题。3.运行程序并调拭,得出结果。4.分析结果。【实验过程】(实验步骤、记录、数据、分析)1. 编写出powell法解无约束优化问题的主程序:clc;clear;Functiona,b=section(x1,x2,d1,d2)x11=x1;x22=x2;d11=d1;d22=d2;h0=1;h=h0;alphal=0;y1=y(x11,x22,d11,d22,alpha1); alpha2=h;y2=y(x11,x22,d11,d22,alpha2);t=0;if y2>y1 h=-h;alpha3=alpha1;y3=y1;t=1;endwhile(1) if t=1 alpha

4、1=alpha2;y1=y2; alpha2=alpha3;y2=y3; else t=1; end alpha3=alpha2+h; y3=y(x11,x22,d11,d22,alpha3); if y3<y2 h=2*h; else break; endendif alpha1>alpha3 tem=alpha1; alpha1=alpha3; alpha3=tem; a=alphal;b=alpha3;else a=alpha1;b=alpha3;endclc;clear;Function mk = armijo(fun,xk,rho,sigma,gk)assert(rho&

5、gt;0&&rho<1);assert(sigma>0&&sigma<0.5);mk=0;max_mk=100;while mk<=max_mk x=xk-rhomk*gk; if feval(fun,x)<=feval(fun,xk)-sigma*rhomk*norm(gk)2 break; end mk=mk+1;endreturn;2.编写出使用改进的powell法来求解问题的Matlab程序(详细程序见附录源程序)。3.运行程序,得出结果如图所示:从上述运行结果可以得出,最优解为,最优值为。【实验结论】(结果)改进的powe

6、ll法,当初始搜索方向线性无关时,能够保证每轮迭代中以搜索方向为列的行列式不为零,因此这些方向是线性无关的。而且随着迭代的延续,搜索方向接近共轭的程度逐渐增加。虽然改进的powell法,不再具有二次终止性,但是,它的计算效果依然非常好。【实验小结】(收获体会)通过本次实验,了解了powell法与改进后的powell法的区别,对于无约束最优化方法了解更深。经过多次Matlab编程,使得我更加熟悉Matlab编程语言。三、指导教师评语及成绩:评 语评语等级优良中及格不及格1.实验报告按时完成,字迹清楚,文字叙述流畅,逻辑性强2.实验方案设计合理3.实验过程(实验步骤详细,记录完整,数据合理,分析透

7、彻)4实验结论正确. 成 绩: 指导教师签名: 批阅日期:附录1:源 程 序clc;clear;%¸ø³öÆðʼµã×ø±êx1,x2ºÍËÑË÷·½Ïòd1,d2Functiona,b=section(x1,x2,x3,d1,d2,d3)x11=x1;x22=x2;x33=x3;d11=d1;d22=d2;d33=d3h0=1;%³õ

8、ʼ»¯h=h0;alphal=0;y1=y(x11,x22,x33,d11,d22,d33,alpha1);%´úÈëalpha1£¬Çó½ây1alpha2=h;y2=y(x11,x22,x33,d11,d22,d33,alpha2);y3=y(x11,x22,x33,d11,d22,d33,alpha3);t=0;%Èç¹ûy2>y1£¬Ôò¸Ä

9、±äËÑË÷·½Ïòif y2>y1 h=-h;alpha3=alpha1;y3=y1;t=1;endwhile(1) if t=1 alpha1=alpha2;y1=y2; alpha2=alpha3;y2=y3;%ʵÏÖ½»»» else t=1; end alpha3=alpha2+h; if y3<y2 h=2*h; %¸Ä±äËÑ&#

10、203;÷²½³¤£¬½«Æä¼Ó±¶ else break; endendif alpha1>alpha3 tem=alpha1; alpha1=alpha3; alpha3=tem;%±È½Ï´óС£¬±£Ö¤Êä³öÇø¼&#

11、228;Ϊ¡¾a,b¡¿ a=alphal;b=alpha3;else a=alpha1;b=alpha3;end附录2:实验报告填写说明 1实验项目名称:要求与实验教学大纲一致。2实验目的:目的要明确,要抓住重点,符合实验教学大纲要求。3实验原理:简要说明本实验项目所涉及的理论知识。4实验环境:实验用的软、硬件环境。5实验方案(思路、步骤和方法等):这是实验报告极其重要的内容。概括整个实验过程。对于验证性实验,要写明依据何种原理、操作方法进行实验,要写明需要经过哪几个步骤来实现其操作。对于设计性和综合性实验,在上述内容基础上还应该画出流程图、设计思路和设计方法,再配以相

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论