lingo软件求如何使运输问题的花费最少
- 格式:doc
- 大小:14.50 KB
- 文档页数:3
lingo软件求如何使运输问题的花费最少
作者:朱世超
来源:《电脑迷·中旬刊》2018年第01期
摘要:某公司假期安排员工出去爬山,有甲、乙、丙、丁四家旅行社可供选择,正值黄金周各家旅行社都只剩一辆车可用,其车辆使用费1000元/车、2000/车、2500元/车、1500元/车,各车分别可坐60人、80人、100人、55人,各旅行社拥有不同程度的优惠门票,分别为每人22元、19元、17元和21元,公司现有190人,如何安排可使公司花费最少?(用lingo 软件解决该问题)
关键词:lingo软件;运输问题;花费最少
建模:
设车辆使用费为f,最多载客量为c,门票为p,每辆车实际坐a人,选择为b,b为0-1变量,b=1时表示选择,b=0时表示不选择。
设0-1变量bi,且bi,=1表示租用i家旅行社的车辆,bi,=0表示不租用i家旅行社的车辆。f,c,p分别表示第i家旅行社的车辆使用费,客车容纳量,门票价格。ai表示第i家旅行社的车辆上乘坐人数。
目标函数:min z=∑f*b+∑p*a
约束条件: ci>ai,
∑ai=190,
b*a>=b;
程序:
model:
sets:
agency/1..4/:f,p,c,a,b;
endsets
data:
f=1000 2000 2500 1500;
p=22 19 17 21;
c=60 80 100 55;
enddata
min=@sum(agency(i):f(i)*b(i))+@sum(agency(i):p(i)*a(i)); @for(agency(i):a(i)
@sum(agency(i):a(i))>190;
@for(agency(i):@bin(b(i)));
end
程序结果:
Global optimal solution found.
Objective value: 8385.000
Objective bound: 8385.000
Infeasibilities: 0.000000
Extended solver steps: 3
Total solver iterations: 12
Variable Value Reduced Cost
F( 1) 1000.000 0.000000
F( 2) 2000.000 0.000000
F( 3) 2500.000 0.000000
F( 4) 1500.000 0.000000
P( 1) 22.00000 0.000000
P( 2) 19.00000 0.000000
P( 3) 17.00000 0.000000
P( 4) 21.00000 0.000000
C( 1) 60.00000 0.000000
C( 2) 80.00000 0.000000
C( 3) 100.0000 0.000000
C( 4) 55.00000 0.000000
A( 1) 55.00000 0.000000
A( 2) 80.00000 0.000000
A( 3) 0.000000 0.000000
A( 4) 55.00000 0.000000
B( 1) 1.000000 1000.000
B( 2) 1.000000 1760.000
B( 3) 0.000000 2000.000
B( 4) 1.000000 1445.000
结果分析:
选择甲、乙、丁三家旅行社,有55人坐甲的车,有80人坐乙的车,有55人坐丁的车,这样安排使公司花费最少,最少花费为8385元。