欢迎来到天天文库
浏览记录
ID:51904727
大小:45.00 KB
页数:4页
时间:2020-03-18
《最优化程序设计__内点法.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、北方民族大学运筹学内点法课程设计学院:信息与计算科学学院班级:08级统计(2)班姓名:吕慧兵学号:20080546指导老师:王婧设计日期:2011.6.1—2011.6.8一)内点的应用(1)惩罚函数定义于可行域内,序列迭代点在可行域内不断趋于约束边界上的最优点.(2)只适合求解具有不等式约束的优化问题例子s.t二)实验目的通过内点法的学习让我们掌握利用罚函数解决线性规划为解决相应问题的一种思路与策略。三)实验思路与步骤【实验编译程序】clcm=zeros(1,50);a=zeros(1,50);b=zeros(1,50);f0=zeros(1,50);sym
2、sx1x2e;m(1)=1;c=0.2;a(1)=2;b(1)=-3;f=x1^2+x2^2-e*(1/(2*x1+x2-2)+1/(1-x1));f0(1)=15;fx1=diff(f,'x1');fx2=diff(f,'x2');fx1x1=diff(fx1,'x1');fx1x2=diff(fx1,'x2');fx2x1=diff(fx2,'x1');fx2x2=diff(fx2,'x2');fork=1:100 x1=a(k);x2=b(k);e=m(k); forn=1:100 f1=subs(fx1); f2=sub
3、s(fx2); f11=subs(fx1x1); f12=subs(fx1x2); f21=subs(fx2x1); f22=subs(fx2x2); if(double(sqrt(f1^2+f2^2))<=0.002) a(k+1)=double(x1);b(k+1)=double(x2);f0(k+1)=double(subs(f)); break; else X=[x1x2]'-inv([f11f12;f21f22])*[f1f2]
4、'; x1=X(1,1);x2=X(2,1); end endif(double(sqrt((a(k+1)-a(k))^2+(b(k+1)-b(k))^2))<=0.001)&&(double(abs((f0(k+1)-f0(k))/f0(k)))<=0.001) a(k+1) b(k+1) k f0(k+1) break;else m(k+1)=c*m(k);endend四)【实验结论】利用Matlab作出上述结果,最优解为最优值=0.9999五)【实验小结】学会了利用Mat
5、lab来进行程序的理解,程序这条路还很长,要做的太多,很多都很模糊,还需要和老师和同学不断的学习,不断探讨,经历了这次课程设计,不仅对我的学习提供了帮助,而且在意志力方面也得到了锻炼。没有足够的耐力和信心就很难坚持对课程设计每一步的。实践是捡验真理的唯一标准。通过实践,使我们加强了对理论知道的理解。
此文档下载收益归作者所有