实验八线性规划Word文档格式.docx
- 文档编号:16239482
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:24
- 大小:163.33KB
实验八线性规划Word文档格式.docx
《实验八线性规划Word文档格式.docx》由会员分享,可在线阅读,更多相关《实验八线性规划Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
5.4
C
政府
1
4
5.0
D
3
4.4
E
5
4.5
(1)政府及代办机构的证券总共至少要购进400万元;
(2)所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程度越高);
(3)所购证券的平均到期年限不超过5年。
若该经理有1000万元资金,应如何投资?
如果能够以2.75%的利率借到不超过100万元资金,该经理应如何操作。
在1000万元资金情况下,若证券A的税前收益增加为4.5%,投资应否改变?
若证券C的税前收益减少为4.8%,投资应否改变?
问题分析:
这是一个典型的线性规划问题,可以直接根据题目中的约束要求列出方程求最优解。
模型建立:
根据题目中的要求,设购买证券A、B、C、D、E的数量分别为x1,x2,x3,x4,x5,则税后总收益为
(万元)
根据约束条件列出方程组:
最后求其最优解即可。
解决方案:
直接利用上述方程用lingo编写程序如下:
max=0.043*x1+0.5*(0.054*x2+0.050*x3+0.044*x4)+0.045*x5;
x1+x2+x3+x4+x5<
=1000;
x2+x3+x4>
=400;
(x1*2+x2*2+x3*1+x4*1+x5*5)/(x1+x2+x3+x4+x5)<
=1.4;
(x1*9+x2*15+x3*4+x4*3+x5*2)/(x1+x2+x3+x4+x5)<
=5;
得到报告如下:
Localoptimalsolutionfound.
Objectivevalue:
29.83636
Infeasibilities:
0.000000
Extendedsolversteps:
5
Totalsolveriterations:
81
ModelClass:
NLP
Totalvariables:
Nonlinearvariables:
Integervariables:
0
Totalconstraints:
Nonlinearconstraints:
2
Totalnonzeros:
23
Nonlinearnonzeros:
10
VariableValueReducedCost
X1218.18180.000000
X20.0000000.3018182E-01
X3736.36360.000000
X40.0000000.6363636E-03
X545.454550.000000
RowSlackorSurplusDualPrice
129.836361.000000
20.0000000.2983636E-01
3336.36360.000000
40.0000006.181818
50.0000002.363636
注意到该求解是利用了非线性模型,而非线性规划对于之后的敏感性分析是不方便的,并且模型本身实际上是线性的,可能是由于方程式的写法使得程序采用了非线性规划,故对方程进行一点修改使其为严格的线性方程组:
利用该方程组编写lingo程序求解得到报告如下:
Globaloptimalsolutionfound.
3
ModelClass:
LP
40.0000000.6181818E-02
50.0000000.2363636E-02
结果与之前一致。
即投资A项目218.1818万元,投资C项目736.3636万元,投资45.4546万元,B,D项目不投资,投资总收益为29.8364万元。
此即为第一个问题的解决方案。
对于第二个问题,可以通过改变模型得到结果,将原目标函数改为:
并且修改其中的一个约束条件为:
利用lingo求解得到分析报告如下:
30.07000
X1240.00000.000000
X3810.00000.000000
X550.000000.000000
130.070001.000000
3410.00000.000000
从这里可以看出,增加投资后,收益增长为30.07万元,投资方案变为:
240(万元)
810(万元)
50(万元)
故应该增加这笔投资。
其实从敏感性分析也可以得出该结论:
RowSlackorSurplusDualPrice
增加100万元可以增加的收益为1*29.83636/1000*100=2.98(万元)>
2.75(万元),即增加的收益要大于付出的利息,应增加投资。
对于第三个问题,可以直接通过敏感性分析得出结论:
对于最初的1000万元投资的模型得到的敏感性分析报告如下:
Rangesinwhichthebasisisunchanged:
ObjectiveCoefficientRanges:
CurrentAllowableAllowable
VariableCoefficientIncreaseDecrease
X10.4300000E-010.3500000E-020.1300000E-01
X20.2700000E-010.3018182E-01INFINITY
X30.2500000E-010.1733333E-010.5600000E-03
X40.2200000E-010.6363636E-03INFINITY
X50.4500000E-010.5200000E-010.1400000E-01
RighthandSideRanges:
RowRHSIncreaseDecrease
21000.000INFINITY456.7901
3400.0000336.3636INFINITY
40.0000001057.143200.0000
50.0000001000.0001200.000
从这份敏感性分析报告中可以看出:
当A的收益率在[0.043-0.013,0.043+0.0035]即[0.030,0.0465]这个区间内时对最优解没有影响,目标函数值可能变化。
0.46在这个区间内,故对最优解没有影响,改变条件解出最优解时的收益为30.273(万元)。
对于C的收益率,当C的收益率在2*[0.025-0.00056,0.025+0.0173]即[0.04888,0.0846]时最优解不会改变。
而实际上C的收益率变为了0.048不在该区间内,故最优解和最大收益都将改变,改变参数后进行求解得到分析报告如下:
29.42400
X1336.00000.000000
X20.0000000.3064000E-01
X30.0000000.4400000E-03
X4648.00000.000000
X516.000000.000000
129.424001.000000
20.0000000.2942400E-01
3248.00000.000000
40.0000000.6360000E-02
50.0000000.2440000E-02
即投资方案更改为:
336(万元)
648(万元)
16(万元)
最大收益为:
29.424(万元)。
项目二:
如图,有若干工厂的排污口流入某江,各口有污水处理站,处理站对面是居民点。
工厂1上游江水流量和污水浓度,国家标准规定的水的污染浓度,以及各个工厂的污水流量和污水浓度均已知道。
设污水处理费用与污水处理前后的浓度差和污水流量成正比,使每单位流量的污水下降一个浓度单位需要的处理费用(简称处理系数)为已知,处理后的污水与江水混合,流到下一个排污口之前,自然状态下的江水也会使污水浓度降低一个比例系数(称自净系数),该系数可以估计,试确定各污水处理站出口的污水浓度,使在符合国家标准规定的条件下总的处理费用最小。
先建立一般情况下的数学模型,再求解以下的具体问题:
设上游江水流量为1000(
L/min),污水浓度为0.8(mg/L),3个工厂的污水流量均为5(
L/min),污水浓度(从上游到下游排列)分别为100,60,50(mg/L),处理系数均为1(万元/((
L/min)*(mg/L))),3个工厂之间的两段江面的自净系数(从上游到下游)分别为0.9和0.6,国家标准规定水的污染浓度不能超过1(mg/L)。
(1)为了使江面上所有地段的水污染达到国家标准,最少需要花费多少费用。
(2)如果只要求3个居民点上游的水污染达到国家标准,最少需要花费多少费用。
问题分析及模型建立:
设江水流量为F,污水浓度为C,工厂污水流量分别为F1,F2,F3,污水浓度分别为C1,C2,C3,每个污水处理站的处理量分别为X1,X2,X3,处理费用均为1,三个污水处理厂中间的两段河流的河水自净系数分别设为P1,P2,则:
总费用Z=X1+X2+X3;
居民点1上游处的污水浓度为J11=C;
居民点1下游处的污水浓度为J12=(F*C+F1*C1-X1)/(F+F1);
居民点2上游处的污水浓度为J21=0.9*(F*C+F1*C1-X1)/(F+F1);
居民点2下游处的污水浓度为J22=(0.9*(F*C+F1*C1-X1)+(F2*C2-X2))/(F+F1+F2);
居民点3上游处的污水浓度为J31=0.6*((0.9*(F*C+F1*C1-X1)+(F2*C2-X2))/(F+F1+F2));
居民点3下游处的污水浓度为J32=(0.6*(0.9*(F*C+F1*C1-X1)+(F2*C2-X2))+(F3*C3-X3))/(F+F1+F2+F3);
这样就可以根据不同的约束条件进行具体问题的求解了。
对于第一个问题,只要在每个污水处理厂(居民区)的下游处污水浓度符合要求即可以满足全流段污水浓度符合要求,即:
J12,J22,J32<
=1;
由此约束条件编写lingo程序求解如下:
min=x1+x2+x3;
(1000*0.8+100*5-x1)/1005<
((1000*0.8+100*5-x1)*0.9+60*5-x2)/1010<
(((1000*0.8+100*5-x1)*0.9+60*5-x2)*0.6+50*5-x3)/1015<
求解得到报告如下:
489.5000
4
9
X1295.00000.000000
X2194.50000.000000
X30.0000001.000000
1489.5000-1.000000
20.000000100.5000
30.0000001010.000
40.15665020.000000
从报告中可以得到此时的处理方案为:
处理站1
处理站2
处理站3
总费用
295(
L/min)*(mg/L)
194.5(
0(
489.5(万元)
对于第二个问题,约束条件变为:
J11,J21,J31<
=1;
(其中J11已经满足条件,即约束条件仅有后两个)
编写lingo程序如下:
min=X1+X2+X3;
0.9*(1000*0.8+100*5-X1)/(1000+5)<
0.6*((0.9*(1000*0.8+100*5-X1)+(60*5-X2))/(1000+5+5))<
运行得到分析报告如下:
183.3333
6
X1183.33330.000000
X20.0000001.000000
1183.3333-1.000000
20.0000001116.667
30.22475250.000000
188.3(
188.3(万元)
即只需要处理站1处理即可,其后的污水通过河水的自净能力可以在到达居民点之前满足要求。
二、实验总结
本次实验总体比较简单,仅仅是线性规划问题的求解并不复杂,但对其各个参数进行敏感性分析却是非常有意义的。
同时经过这次实验,初步接触到新的优化工具lingo,虽然是第一次使用lingo,但比起之前一直使用的matlab却要好上手的多,这也是lingo的一大特色,不仅使用简单方便,而且结果也清晰完整,给优化工作带来了很大的便利。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 线性规划