自己写的一个LINGO程序,欢迎指教
2015-08-28 15:02
846 查看
问题
9.一架货机有三个货舱:前舱、中仓和后舱。三个货舱所能装载的货物的最大重
量和体积有限制如表5 所示。并且为了飞机的平衡,三个货舱装载的货物重量必须与其
最大的容许量成比例。
表5 货舱数据
前舱 中仓 后舱
重量限制(吨) 10 16 8
体积限制(立方米) 6800 8700 5300
现有四类货物用该货机进行装运,货物的规格以及装运后获得的利润如表6。
表6 货物规格及利润表
重量(吨) 空间(立方米/吨) 利润(元/吨)
货物1 18 480 3100
货物2 15 650 3800
货物3 23 580 3500
货物4 12 390 2850
-15-
假设:
(1)每种货物可以无限细分;
(2)每种货物可以分布在一个或者多个货舱内;
(3)不同的货物可以放在同一个货舱内,并且可以保证不留空隙。
问应如何装运,使货机飞行利润最大?
-
程序
model:
sets:
huowu/1,2,3,4/:weight,volume,lirun;
huocang/1,2,3/:wtlimit,vllimit;
link(huowu,huocang):a;
endsets
data:
weight=18,15,23,12;
volume=480,650,580,390;
lirun=3100,3800,3500,2850;
wtlimit=10,16,8;
vllimit=6800,8700,5300;
enddata
max=@sum(huowu(i):@sum(huocang(j):a(i,j))*lirun(i));
@for(huocang(j):@sum(huowu(i):a(i,j))/vllimit(j)=b);
@for(huowu(i):@sum(huocang(j):a(i,j))=weight(i));
@bnd(0,b,1);
end
另一个
sets:
hc/1..3/:e,f;
hw/1..4/:a,b,c;
link(hc,hw):x;
endsets
data:
a=18 15 23 12;
b=480 650 580 390;
c=3100 3800 3500 2850;
e=10 18 8;
f=6800 8700 5300;
enddata
max=@sum(hw(j):c(j)*@sum(hc(i):x(i,j)));
@for(hw(j):@sum(hc(i):x(i,j))<=a(j)); !货物吨数限制;
@for(hc(i):@sum(hw(j):x(i,j))<=e(i)); !货仓吨数限制;
@for(hc(i):@sum(hw(j):b(j)*x(i,j))<=f(i)); !货仓体积限制;
@sum(hw(j):x(2,j))*(5/2)/@sum(hw(j):x(3,j))=@sum(hw(j):x(1,j)); !成比例
10:16:8;
9.一架货机有三个货舱:前舱、中仓和后舱。三个货舱所能装载的货物的最大重
量和体积有限制如表5 所示。并且为了飞机的平衡,三个货舱装载的货物重量必须与其
最大的容许量成比例。
表5 货舱数据
前舱 中仓 后舱
重量限制(吨) 10 16 8
体积限制(立方米) 6800 8700 5300
现有四类货物用该货机进行装运,货物的规格以及装运后获得的利润如表6。
表6 货物规格及利润表
重量(吨) 空间(立方米/吨) 利润(元/吨)
货物1 18 480 3100
货物2 15 650 3800
货物3 23 580 3500
货物4 12 390 2850
-15-
假设:
(1)每种货物可以无限细分;
(2)每种货物可以分布在一个或者多个货舱内;
(3)不同的货物可以放在同一个货舱内,并且可以保证不留空隙。
问应如何装运,使货机飞行利润最大?
-
程序
model:
sets:
huowu/1,2,3,4/:weight,volume,lirun;
huocang/1,2,3/:wtlimit,vllimit;
link(huowu,huocang):a;
endsets
data:
weight=18,15,23,12;
volume=480,650,580,390;
lirun=3100,3800,3500,2850;
wtlimit=10,16,8;
vllimit=6800,8700,5300;
enddata
max=@sum(huowu(i):@sum(huocang(j):a(i,j))*lirun(i));
@for(huocang(j):@sum(huowu(i):a(i,j))/vllimit(j)=b);
@for(huowu(i):@sum(huocang(j):a(i,j))=weight(i));
@bnd(0,b,1);
end
另一个
sets:
hc/1..3/:e,f;
hw/1..4/:a,b,c;
link(hc,hw):x;
endsets
data:
a=18 15 23 12;
b=480 650 580 390;
c=3100 3800 3500 2850;
e=10 18 8;
f=6800 8700 5300;
enddata
max=@sum(hw(j):c(j)*@sum(hc(i):x(i,j)));
@for(hw(j):@sum(hc(i):x(i,j))<=a(j)); !货物吨数限制;
@for(hc(i):@sum(hw(j):x(i,j))<=e(i)); !货仓吨数限制;
@for(hc(i):@sum(hw(j):b(j)*x(i,j))<=f(i)); !货仓体积限制;
@sum(hw(j):x(2,j))*(5/2)/@sum(hw(j):x(3,j))=@sum(hw(j):x(1,j)); !成比例
10:16:8;
相关文章推荐
- mongo和pymongo简单配置和使用
- How Hash Algorithms Work
- 百度地图经纬度转换到腾讯地图/Google 对应的经纬度
- robomongo的使用
- [CareerCup] 7.2 Ants on Polygon 多边形上的蚂蚁
- GO语言介绍
- django-配置启动
- UVA - 11292 Dragon of Loowater
- Django 小记
- 01背包(分组) HDOJ 4341 Gold miner
- 2nd Round Google Interview
- (5)Django框架学习-Forms篇
- django form关于clean及cleaned_data的说明 以及4种初始化
- django form 深入(1)
- HDU 1533--Going Home【最小费用最大流 && 模板】
- 百度地图经纬度转换到腾讯地图/Google 对应的经纬度
- VIEWGOOD(远古)在线访谈在政府行业中的应用
- golang Unmarshal 小问题
- UVa 1623:Enter the Dragon(贪心)
- Orthogonal Anagram