最优化实例和matlab源程序

最优化实例和matlab源程序

ID:10939478

大小:96.00 KB

页数:10页

时间:2018-07-09

最优化实例和matlab源程序_第1页
最优化实例和matlab源程序_第2页
最优化实例和matlab源程序_第3页
最优化实例和matlab源程序_第4页
最优化实例和matlab源程序_第5页
资源描述:

《最优化实例和matlab源程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、最优化平时作业一、目标规划1、题目:见书中例题P110例42、解题方法:利用Lingo求解3、具体步骤(1).对应于第一优先等级,建立线性规划问题:model:min=-d1;5*x1+10*x2<=60;x1-2*x2+d1_-d1=0;end运行结果:-d1=0(2)对应于第二优先等级,将-d1=0作为约束条件,建立线性规划问题:min=d2_;5*x1+10*x2<=60;x1-2*x2+d1_-d1=0;4*x1+4*x2+d2_-d2=36;-d1=0;end运行结果:d2=0;(3).对应于第三优先等级,将-d1=0,-

2、d1=0作为约束条件,建立线性规划问题:min=d3_;5*x1+10*x2<=60;x1-2*x2+d1_-d1=0;4*x1+4*x2+d2_-d2=36;6x1+8*x2+d3_-d3=48;-d1=0;d2=0;end运行结果:d3=0;X14.800000X22.400000二、动态规划之0-1背包问题1、题目:给定n种物品和一背包。物品i的重量是Wi,其价值为Vi,背包的容量是c,问应如何选择装入背包中的物品,使得装入背包中物品的总价值最大。2、解题方法与思路:利用java求解,.思想方法是回溯思想3、需求分析对于给定n

3、种物品和一背包。在容量最大值固定的情况下,要求装入的物品价值最大化4、java源程序及运行结果BackTrace.java*Tochangethistemplate,chooseTools

4、TemplateManager*andopenthetemplateintheeditor.*/packagesunfa;importjava.util.Date;publicclassBackTrace{/***@paramargs*/publicstaticvoidmain(String[]args){doublew[]={2,2,6,5,4

5、};doublev[]={6,3,5,4,6};intn=5;doublec=10;knapsack(v,w,c);System.out.println(bestp);}//比较两个元素大小的类privatestaticclassElementimplementsComparable{intid;doubled;privateElement(intidd,doubledd){id=idd;d=dd;}publicintcompareTo(Objectx){doublexd=((Element)x).d;if(d

6、1;if(d==xd)return0;return1;}publicbooleanequals(Objectx){returnd==((Element)x).d;}}staticdoublec;//背包容量staticintn;//物品数staticdouble[]w;//物品重量数组staticdouble[]p;//物品价值数组staticdoublecw;//当前重量staticdoublecp;//当前价值staticdoublebestp;//当前最优值staticint[]x;//解staticint[]sortX;//

7、排好序之后的解staticint[]bestX;//最有解staticDatedate=null;//@jve:decl-index=0:publicstaticdoubleknapsack(double[]pp,double[]ww,doublecc){c=cc;n=pp.length-1;cw=0.0;cp=0.0;bestp=0.0;Element[]q=newElement[n];//q为单位重量价值数组for(inti=1;i<=n;i++)q[i-1]=newElement(i,pp[i]/ww[i]);MergeSor

8、t.mergeSort(q);p=newdouble[n+1];w=newdouble[n+1];x=newint[n+1];sortX=newint[n+1];bestX=newint[n+1];for(inti=1;i<=n;i++){p[i]=pp[q[n-i].id];w[i]=ww[q[n-i].id];sortX[i]=q[n-i].id;}backtrack(1);//回溯搜索returnbestp;}privatestaticvoidbacktrack(inti){if(i>=n){if(cp>bestp){best

9、p=cp;for(intj=1;j<=n;j++){bestX[j]=x[j];}}return;}//搜索子树if(cw+w[i]<=c){//进入左子树x[sortX[i]]=1;cw+=w[i];cp+=p[i];backtra

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。