运筹学实例分析及lingo求解
一、线性规划
北京市国有土地上房屋征收与补偿实施意见
某公司有6个仓库,库存货物总数分别为60、55、51、43、41、52,现有8个客户各要一批货,数量分别为35,37,22,32,41,32,43,38。各供货仓库到8个客户处的单位货物运输价见表 | V1 | V2 | V3 | V氯化铵合剂4 | V5 | V6 | V7 | V8 |
W1 | 6 | 2 | 6 | 7 | 4 | 2 | 5 | 8 |
W2 | 4 | 9 | 5 | 3 | 8 | 5 | 8 | 2 |
W3 | 5 | 2 | 1 | 9 | 7 | 4 | 3 | 3 |
W4 | 7 | 6 | 7 | 3 | 9 | 2 | 7 | 1 |
W5 | 2 | 3 | 9 | 5 | 7 | 2 | 6 | 5 |
W6 | 5 | 5 | 2 | 2 | 8 | 1 | 4 | 3 |
| | | | | | | | |
试确定各仓库到各客户处的货物调运数量,使总的运输费用最小。
解:设表示从第个仓库到第个客户的货物运量。表示从第个仓库到第个客户的单位货物运价,表示第个仓库的最大供货量,表示第个客户的订货量。
目标函数是使总运输费用最少,约束条件有三个:1、各仓库运出的货物总量不超过其库存数2、各客户收到的货物总量等于其订货数量3、非负约束
数学模型为:
编程如下:
model:
Sets:
什么是形而上
Wh/w1..w6/:ai;
Vd/v1..v8/:dj;
links(wh,vd):c,x;
endsets
Data:
ai=60,55,51,43,41,52;
dj=35,37,22,32,41,32,43,38;
c=6,2,6,7,4,2,5,9
4,9,5,3,8,5,8,2陆正方
5,2,1,9,7,4,3,3
7,6,7,3,9,2,7,1
2,3,9,5,7,2,6,5
5,5,2,2,8,1,4,3;
Enddata
Min=@sum(links(i,j):c(i,j)*x(i,j));
@for(wh(i):@sum(vd(j):x(i,j))<=ai(i));
@for(vd(j):@sum(wh(i):x(i,j))=dj(j));
end
Global optimal solution found.
Objective value: 664.0000
Total solver iterations: 0
Variable Value Reduced Cost
AI( W1) 60.00000 0.000000
匝道桥
AI( W2) 55.00000 0.000000
AI( W3) 51.00000 0.000000
AI( W4) 43.00000 0.000000
AI( W5) 41.00000 0.000000
AI( W6) 52.00000 0.000000偏振模散
DJ( V1) 35.00000 0.000000
DJ( V2) 37.00000 0.000000
DJ( V3) 22.00000 0.000000
DJ( V4) 32.00000 0.000000
DJ( V5) 41.00000 0.000000
DJ( V6) 32.00000 0.000000
DJ( V7) 43.00000 0.000000
DJ( V8) 38.00000 0.000000
C( W1, V1) 6.000000 0.000000
C( W1, V2) 2.000000 0.000000
C( W1, V3) 6.000000 0.000000
C( W1, V4) 7.000000 0.000000
C( W1, V5) 4.000000 0.000000
C( W1, V6) 2.000000 0.000000
C( W1, V7) 5.000000 0.000000
C( W1, V8) 9.000000 0.000000
C( W2, V1) 4.000000 0.000000
C( W2, V2) 9.000000 0.000000
C( W2, V3) 5.000000 0.000000
C( W2, V4) 3.000000 0.000000
C( W2, V5) 8.000000 0.000000
C( W2, V6) 5.000000 0.000000
C( W2, V7) 8.000000 0.000000
C( W2, V8) 2.000000 0.000000
C( W3, V1) 5.000000 0.000000
C( W3, V2) 2.000000 0.000000