数学建模线性规划与非线性规划
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验7:线性规划与非线性规划
班级:2015级电科班,学号:222015333210187,姓名:吴京宣,第1组
======================================================================
一、实验目的:
1. 了解线性规划的基本内容。
2. 直观了解非线性规划的基本内容。
3. 掌握用数学软件求解优化问题。
二、实验内容
1. 两个引例.
2. 用数学软件包MATLAB求解线性规划与非线性规划问题.
3. 用数学软件包LINDO、LINGO求解线性规划问题.
4. 建模案例:投资的收益与风险.
5. 非线性规划的基本理论
6. 钢管订购及运输优化模型.
三、实验步骤
对以下问题,编写M文件:
1.某厂生产甲乙两种口味的饮料,每百箱甲饮料需用原料6千克,工人10名,可获利10万元;每百箱乙饮料需用原料5千克,工人20名,可获利9万元.今工厂共有原料60千克,工人150名,又由于其他条件所限甲饮料产量不超过800箱.问如何安排生产计划,即两种饮料各生产多少使获利最大.进一步讨论:
1)若投资0.8万元可增加原料1千克,问应否作这项投资.
2)若每100箱甲饮料获利可增加1万元,问应否改变生产计划.
2.某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60
台、80台.每季度的生产费用为(单位:元), 其中x 是该季度生产的台数.若交货后有剩余,可用于下季度交货,但需支付存储费,每台每季度c元.已知工厂每季度最大生产能力为100台,第一季度开始时无存货,设a=50、b=0.2、c=4,问:工厂应如何安排生产计划,才能既满足合同又使总费用最低.讨论a、b、c变化对计划的影响,并作出合理的解释.
三、实验结果
1.设需要生产x 百箱甲饮料,y 百箱乙饮料,设最大利润为z,则对于原始问题,
目标函数:max z 10x9y, 则有约束条件6x 5y <=60 ;10 x
20y<=150 ;x<=8;x, y >=0;对于问题一,其目标函数改为max z 10x9y-0.8,约束函数为6x 5y <=61 ;10 x 20y<=150 ;x<=8;x, y >=0。对于问题二,
目标函数改为max z 11x9y,约束函数为6x 5y <=60 ;10 x
20y<=150 ;x<=8;x, y >=0。
同时保证生产的饮料是整箱的.同时
原问题
由结果可知生产甲饮料 643 箱,乙饮料 428 箱,这样利润最大为 102.857 万元。
问题一
可见实现方案一,生产甲672箱,乙414箱,可获利最高为104.428万,大于
102.857 万元,因此可以采用。
问题二
可见实现方案一,生产甲800箱,乙240箱,可获利最高为109.6万,大于102.857 万元,因此可以采用。
2.三个季度发动机的总的生产量为180台,每个季度的生产量和库存机器的数量之和要大于等于本季度的交货数量,每个月的生产数量要符合工厂的生产能力。可得目标函数如下
minf(x)=50(x1+x2+x3)+0.2(x12+x22+x32)+4(x1-40)+4(x1+x2-100)
有约束条件如下
x1+x2>=100;X1+x2+x3=180;40<=x1<=100;0<=x2<=100;0<=x3<=100;
结果如下:
该厂第一季度、第二季度、第三季度的生产量分别是50台、60台和70台时,才能既满足合同又使总费用最低,费用最低为11280元。若a变化,对计划没有影响,因为a 的变化,对于各离度的费用增长率造成相同的影响,并不会给各季度之间的生产带来差异,只会使生产的总体费用增加。若b变大,第一季生产量要增加,第二季度保持不变,第三季度生产量减少,b变小,第一季度生产量要减少,第二季度不变,第三季度生产量增加。这是因为b变大,每个季度的费用增长率都会增大,生产数量多的季度的费用增长率增长的会比其它季度更快,因此加减少生产量大的季度的生产量,以减缓费用的快速增加。而b变小的时候,情况正好相反。若c变小,第一季度的生产量增加,第二季度不变,第三季度的生产量减少。c变大,第一季度生产量减少,第二季度不变,第三季度生产量增加。这是因为c变小,存储费用会变小,相对于生产费用的快速增长,最好的方法就是在生产费用低的时候多生产,把多余的机器进行储存,储存的费用会小于费用的增长额度,这样做可以节省生产费用,而c变大,情况正好相反。
四.实验总结
1.本次实验旨在利用Matlab的操作界面和基本的数据处理指令,解决几个较为简单的线性规划与非线性规划问题问题;
2.本次实验对比线性与非线性规划,其中线性规划是所有约束条件和目标函数都是线性的,即未知数的次数均为一次,非线性规划是约束条件或目标函数中含有非线性的规划问题。因此需要在做题的过程中判断归类。学会使用linprog语句求解线性规划问题最优解。利用fmincon语句求解非线性规划最优解问题。在做最优解求解时,要注意“f,A,b,Aeq,beq,lb,ub,x0,options”表示的意义以及对应的数据和范围。