水资源系统分析课程设计
- 格式:pdf
- 大小:557.98 KB
- 文档页数:14
前言水资源系统分析是近几十年来发展迅速的一门学科,它利用系统科学的理论和方法分析制定水资源的合理开发、利用、保护和管理方案,以达到整体最优或最满意的综合效益。系统分析方法已在水资源系统的规划、设计、施工、运行管理中得到了广泛的应用。水资源系统分析方法包括系统建模方法、预测方法、优化方法、模拟方法、评价方法、决策方法等。水资源系统分析与应用课程设计以基本的系统分析方法(线性规划、整数规划、非线性规划、动态规划、多目标规划与决策等系统优化方法、系统模拟方法)为主。本次课程设计将采用Lingo对目标进行规划求解,LINGO是美国芝加哥(Chicago)大学的Linus Schrage(莱纳斯.施拉盖 )教授于1980年前后开发,它是一种专门用于求解数学规划问题的软件包,广泛应用LINGO主要用于求解线性规划、非线性规划、二次规划和整数规划等问题,也可以于求解一些线性和非线性方程组及代数方程求根等。Lingo的优点有:简单的模型表示、方便的数据输入和输出选择、强大的求解器、交互式模型或创建Turn-key应用程序。其特色在于内置建模语言,提供十几个内部函数,可以允许决策变量是整数。
目录一、 线性规划问题……………………………………………1 二、整数规划问题……………………………………………5 三、非线性规划问题…………………………………………7 四、动态规划问题……………………………………………8 五、多目标规划问题…………………………………………12 六、心得与体会………………………………………………16 一、 线性规划问题一个灌区耕地面积1000hm²,可用灌溉水量360万m³。在安排种植计划时考虑两种粮食作物A,B,其灌溉定额分别为3000m²/hm³、6000m²/hm³,每公顷净收入分别为4500元/、6000元。问如何安排两种作物的种植面积才能使整个灌区净收入最大? 解: 以作物A,B的种植面积x1,x2为决策变量。目标函数:总净收入(万元)最大
maxZ=0.45 x1+0.60x2
约束条件:(1) 耕地面积(hm²)
X1+X2<=1000(2) 灌溉水量(m²/hm³)
0.3X1+0.6X2<=360
(3)非负约束
X1,X2>=0用Lingo求解过程为计算列方程为:
MAX=0.45*X1+0.60*X2;X1+X2<=1000;0.3*X1+0.6*X2<=360;X1>=0;X2>=0;计算结果为:
Global optimal solution found. Objective value: 480.0000 Infeasibilities: 0.000000 Total solver iterations: 2
Variable Value Reduced Cost X1 800.0000 0.000000 X2 200.0000 0.000000
Row Slack or Surplus Dual Price 1 480.0000 1.000000 2 0.000000 0.3000000 3 0.000000 0.5000000 4 800.0000 0.0000005 200.0000 0.000000
“OBJECTIVE FUNCTION VALUE 480.000”表示最优目标值为480.000(LINGO中将目标函数自动看作第1行,从第二行开始才是真正的约束条件)。“VALUE”给出最优解中各变量(VARIABLE)的值:x1=8000.0000,x2=200.0000。“REDUCED COST”的含义是(对MAX型问题):基变量的REDUCEDCOST值为0,对于非基变量,相应的REDUCED COST值表示当非基变量增加一个单位时(其它非基变量保持不变)目标函数减少的量。本例中两个变量都是基变量。“SLACK OR SURPLUS”给出松弛(或剩余)变量的值,表示约束是否取等式约束;第2、第3行松弛变量均为0,说明对于最优解而言,两个约束均取等式约束;第4行松弛变量为800.0000,说明对于最优解而言,这个约束取不等式约束。“DUAL PRICES”给出约束的影子价格(也称为对偶价格)的值:第2、第3、第4、第5行(约束)对应的影子价格分别0.300000,0.500000,0.000000,0.000000.二、整数规划问题一运输公司利用卡车运输甲、乙两种货物,卡车的运输能力为体积12m3,重量9t,每箱货物的体积、重量、利润列于表1,如何安排运输方案,使利润最大?表1 数据货物体积(m3/箱)重量(t/箱)利润(元/箱)
甲乙2211.8100160
解:设每辆卡车装载甲货物x1箱、乙货物x2箱,则模型为maxZ=100x1+160x2 (利润最大)2x1+2x2<=12 (体积限制)X1+1.8x2<=9 (重量限制)X1,x2>=0X1,x2为整数用Lingo求解过程:列方程式:max 100x1+160x2s.t.2x1+2x2<=12x1+1.8x2<=9endgin 2求解的结果为:
Global optimal solution found. Objective value: 800.0000 Objective bound: 800.0000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0
Variable Value Reduced Cost X1 0.000000 -100.0000 X2 5.000000 -160.0000
Row Slack or Surplus Dual Price 1 800.0000 1.000000 2 2.000000 0.0000003 0.000000 0.000000
求解结果为x1=0.0000,x2=5.0000,整数规划最优解为800.00,每辆卡车装载甲货物0箱、乙货物5箱。“REDUCED COST”的含义是(对MAX型问题):基变量的REDUCEDCOST值为0,对于非基变量,相应的REDUCED COST值表示当非基变量增加一个单位时(其它非基变量保持不变)目标函数减少的量。本例中两个变量都是基变量。“SLACK OR SURPLUS”给出松弛(或剩余)变量的值,表示约束是否取等式约束;第3行松弛变量为0,说明对于最优解而言,约束取等式约束;第1行松弛变量为800.0000,说明对于最优解而言,这个约束取不等式约束。“DUAL PRICES”给出约束的影子价格(也称为对偶价格)的值:第2、第3、(约束)对应的影子价格分别0.000000,0.000000.
三、非线性问题求函数f(x)=exp(x)-5x在区间[1,2]上的极小值点。用Lingo求解过程如下:求解方程式:min=(@exp(x)-5*x);@bnd(1,x,2);求解结果:
Local optimal solution found. Objective value: -3.047190 Infeasibilities: 0.000000 Extended solver steps: 5 Total solver iterations: 78
Variable Value Reduced Cost X 1.609438 0.000000
Row Slack or Surplus Dual Price 1 -3.047190 -1.000000当x=1.609438时,求得最小值为-3.04719,四、动态规划问题从水库A输水到自来水厂E需要经过三个地区B,C,D,每个地区分别有3,3,2,种可行方案,各段线路的输水费用标于图中。求出其中总费用的最小线路。
用Lingo求解过程如下:求解过程式:model:sets:cities/A,B1,B2,B3,C1,C2,C3,D1,D2,E/:F;roads(cities,cities)/A,B1 A,B2 A,B3 B1,C1 B1,C3 B2,C1 B2,C2 B2,C3 B3, C2 B3,C3 C1,D1 C1,D2 C2,D1 C2,D2 C3,D1 C3,D2D1,E D2,E/:D, P;endsetsdata:D=20,40,30,70,40,30,20,40,10,50,10,40,60,30,30,30,30,40;enddatan=@size(cities);F(n)=0;@for(cities(i) | i#lt# n:F(i)=@min(roads(i,j): D(i,j)+F(j)););@for(roads(i,j):P(i,j)=@if(F(i) #eq# D(i,j)+F(j),1,0));end求解结果为:
Feasible solution found. Total solver iterations: 0
Variable Value N 10.00000 F( A) 110.0000