您好,欢迎访问三七文档
优化设计实验报告一姓名:刘志辉学号:SC11009018院系:工院9系一、运行条件:惠普,Inter酷睿双核,2.00GB二、运行结果及所花时间:实验内容:分别采用不同的方法对不同的函数求极值5000次,对时间取平均,程序及运行结果见表1。1、minf(x)=x*x*x*x-4*x*x*x-6*x*x-16x+4初值=32、minf(x)=x*x+exp(-x)初值=1003、minf(x1,x2)=x(1)^4+x(2)^4初值=[44],d=[0-1]4、minf(x1,x2)=x(1)^2+x(2)^2初值=[44],d=[-1,-1]一维实验调用程序:(求平均时间及总运行程序)sum=0;fori=1:5000ticmeth=1;no=1;a0=3;h0=0.01;e=0.000001;d=[0-1];[x,y]=ffmin(meth,no,a0,d,h0,e);[x,y]toc;t=toc;sum=sum+t;endt0=sum/5000;t0二维实验调用程序:sum=0;fori=1:5000ticmeth=1;no=2;a0=3;h0=1;e=0.000001;d=[0-1];[x,y]=ffmin(meth,no,a0,d,h0,e);[x,y]toc;t=toc;sum=sum+t;endt0=sum/5000;t0图表1实验结果及平均运行时间函数黄金分割法成功失败法极值点极值时间/sN/次数极值点极值时间/sN/次数14-1560.0050324-1560.00565820.35170.82720.0047330.35170.82720.0042483(4.0000,0.0004)2560.008233(4.0000,0.0004)2560.0075484(1.0e-007*0.4961,1.0e-007*0.4961)00.007134(1.0e-005*0.3815,1.0e-005*0.3815)00.007160函数牛顿法抛物线法极值点极值时间/sN/次数极值点极值时间/sN/次数14-1560.001254-1560.00462120.35170.82720.001040.35170.82720.0042193(4.0000,0.0363)2560.911418163(4.0000,0.0002)256.00000.00451341.0e-006*(0.5153,0.5153)00.009218(0,0)00.006021函数平分法三次插值法极值点极值时间/sN/次数极值点极值时间/sN/次数14-1560.001544-1560.0021420.35170.82720.0025180.35170.82720.002043(4.0000-0.0039)2560.00478(4.0000,0.0022)2560.0062741.0e-006*(-0.2384,-0.2384)00.0071221.0e-006*(0.2508,0.2508)00.011525三、总结:由上表可以看出,牛顿法和三次插值法迭代次数最少,其中牛顿法的运行时间最短,平均每一次运行时间为0.001s。成功失败法的迭代次数最多,其次为黄金分割法,再次之为抛物线法,这三种方法的运行时间相当。从编程的过程中,插值法相对来说要复杂一些,牛顿法编程简单,运行速度也较快,准确度也较高。(所有实验都在同样的精度条件下)对于二维求极值,如果精度较高的话,牛顿法的迭代次数最多,在同样的精度条件下,其可能比其他方法多迭代上千次。程序包说明:fmin为总程序time为求时间及运行总程序首字母名称带ff的为二维方法首字母带f或不带f的为一维方法附运行程序及结果:运行程序及结果只给出了一个,其他可以类推clc;clear;%求时间及运行结果总程序sum=0;fori=1:5000ticmeth=2;no=4;a0=[44];h0=0.01;e=0.000001;d=[-1-1];[x,y]=ffmin(meth,no,a0,d,h0,e);[x,y]toc;t=toc;sum=sum+t;endt0=sum/5000;t0黄金分割法%运行结果示意n=32ans=4.0000-156.0000Elapsedtimeis0.004000seconds.t0=0.0051
本文标题:优化设计编程作业
链接地址:https://www.777doc.com/doc-7826690 .html