13信算3班张超第1次作业.docx
《13信算3班张超第1次作业.docx》由会员分享,可在线阅读,更多相关《13信算3班张超第1次作业.docx(24页珍藏版)》请在冰豆网上搜索。
13信算3班张超第1次作业
练习1铁路平板车装货问题(用Lingo求解)
有七种规格的包装箱要装到两节铁路平板车上去。
包装箱的宽和高是一样的,厚度(t,cm计)及重量(w,kg计)不同。
表1给出了包装箱的厚度、重量以及数量。
每节平板车有10.2m长的地方可装包装箱,载重为40t。
由于当地货运的限制,对于C5,C6,C7类包装箱的总数有一个特别限制:
箱子所占的空间(厚度)不能超过302.7cm。
试把包装箱装到平板车上,使得浪费空间最小。
种类
C1
C2
C3
C4
C5
C6
C7
t/cm
48.7
53.0
61.3
72.0
48.7
52.0
64.0
w/kg
2000
3000
1000
500
4000
2000
1000
n/件
8
7
9
6
6
4
8
决策变量:
设包装箱种类为A(i)(i=1,2,...,7),平板车为B(j)(j=1,2),设有x(i,j)个A(i)类包装箱装到平板车B(j)上。
目标函数:
z=48.7*x(1,1)+48.7*x(1,2)+53.0*x(2,1)+53.0*x(2,2)+61.3*x(3,1)+61.3*x(3,2)+72.0*x(4,1)+72.0*x(4,2)+48.7*x(5,1)+48.7*x(5,2)+52.0*x(6,1)+52.0*x(6,2)+64.0*x(7,1)+64.0*x(7,2).
约束条件:
数量约束:
各类包装箱数量有限,即
x(1,1)+x(1,2)<=8;x(2,1)+x(2,2)<=7;x(3,1)+x(3,2)<=9;x(4,1)+x(4,2)<=6;x(5,1)+x(5,2)<=6;
x(6,1)+x(6,2)<=4;x(7,1)+x(8,1)<=8;
空间约束:
每节平板车有10.2m长的地方可装包装箱,即
48.7*x(1,1)+53.0*x(2,1)+61.3*x(3,1)+72.0*x(4,1)+48.7*x(5,1)+52.0*x(6,1)+64.0*x(7,1)<=1020;
48.7*x(1,2)+53.0*x(2,2)+61.3*x(3,2)+72.0*x(4,2)+48.7*x(5,2)+52.0*x(6,2)+64.0*x(7,2)<=1020;
载重约束:
每节平板车载重为40t,即
2000*x(1,1)+3000*x(2,1)+1000*x(3,1)+500*x(4,1)+4000*x(5,1)+2000*x(6,1)+1000*x(7,1)<=40000;
2000*x(1,2)+3000*x(2,2)+1000*x(3,2)+500*x(4,2)+4000*x(5,2)+2000*x(6,2)+1000*x(7,2)<=40000;
特别约束:
箱子所占的空间(厚度)不能超过302.7cm,即
48.7*x(5,1)+52.0*x(6,1)+64.0*x(7,1)+48.7*x(5,2)+52.0*x(6,2)+64.0*x(7,2)<=302.7;
非负约束:
x(i)>=0;
综上可得
Maxz=48.7*x(1,1)+48.7*x(1,2)+53.0*x(2,1)+53.0*x(2,2)+61.3*x(3,1)+61.3*x(3,2)+72.0*x(4,1)
+72.0*x(4,2)+48.7*x(5,1)+48.7*x(5,2)+52.0*x(6,1)+52.0*x(6,2)+64.0*x(7,1)+64.0*x(7,2).
S.t.x(1,1)+x(1,2)<=8;x(2,1)+x(2,2)<=7;x(3,1)+x(3,2)<=9;x(4,1)+x(4,2)<=6;x(5,1)+x(5,2)<=6;
x(6,1)+x(6,2)<=4;x(7,1)+x(8,1)<=8;
48.7*x(1,1)+53.0*x(2,1)+61.3*x(3,1)+72.0*x(4,1)+48.7*x(5,1)+52.0*x(6,1)+64.0*x(7,1)<=1020;
48.7*x(1,2)+53.0*x(2,2)+61.3*x(3,2)+72.0*x(4,2)+48.7*x(5,2)+52.0*x(6,2)+64.0*x(7,2)<=1020;
2000*x(1,1)+3000*x(2,1)+1000*x(3,1)+500*x(4,1)+4000*x(5,1)+2000*x(6,1)+1000*x(7,1)<=40000;
2000*x(1,2)+3000*x(2,2)+1000*x(3,2)+500*x(4,2)+4000*x(5,2)+2000*x(6,2)+1000*x(7,2)<=40000;
48.7*x(5,1)+52.0*x(6,1)+64.0*x(7,1)+48.7*x(5,2)+52.0*x(6,2)+64.0*x(7,2)<=302.7;
x(i)>=0;
模型求解:
软件实现
!
T表示包装箱的厚度,W表示包装箱的重量,N表示包装箱的数量;
model:
!
铁路平板车装货问题;
sets:
A/n1..n7/:
T,W,N;!
包装箱;
B/1,2/;!
平板车;
links(A,B):
X;
endsets
!
目标函数;
max=@sum(A(i):
@sum(B(j):
X(i,j)*T(i)));
!
长度约束;
@for(B(j):
@sum(A(i):
X(i,j)*T(i))<=1020);
!
载重约束;
@sum(B(j):
@sum(A(i)|i#ge#5:
X(i,j)*T(i)))<=302.7;
!
厚度约束;
@for(B(j):
@sum(A(i):
X(i,j)*W(i))<=40000);
!
件数约束;
@for(A(i):
@sum(B(j):
X(i,j))<=N(i));
!
这里是数据;
@for(links:
@gin(X));
data:
N=8796648;
T=48.753.061.372.048.752.064.0;
W=200030001000500400020001000;
enddata
end
运行结果:
Globaloptimalsolutionfound.
Objectivevalue:
2039.800
Objectivebound:
2039.800
Infeasibilities:
0.000000
Extendedsolversteps:
50616
Totalsolveriterations:
146438
VariableValueReducedCost
T(N1)48.700000.000000
T(N2)53.000000.000000
T(N3)61.300000.000000
T(N4)72.000000.000000
T(N5)48.700000.000000
T(N6)52.000000.000000
T(N7)64.000000.000000
W(N1)2000.0000.000000
W(N2)3000.0000.000000
W(N3)1000.0000.000000
W(N4)500.00000.000000
W(N5)4000.0000.000000
W(N6)2000.0000.000000
W(N7)1000.0000.000000
N(N1)8.0000000.000000
N(N2)7.0000000.000000
N(N3)9.0000000.000000
N(N4)6.0000000.000000
N(N5)6.0000000.000000
N(N6)4.0000000.000000
N(N7)8.0000000.000000
X(N1,1)5.000000-48.70000
X(N1,2)3.000000-48.70000
X(N2,1)2.000000-53.00000
X(N2,2)5.000000-53.00000
X(N3,1)7.000000-61.30000
X(N3,2)2.000000-61.30000
X(N4,1)2.000000-72.00000
X(N4,2)4.000000-72.00000
X(N5,1)2.000000-48.70000
X(N5,2)3.000000-48.70000
X(N6,1)0.000000-52.00000
X(N6,2)1.000000-52.00000
X(N7,1)0.000000-64.00000
X(N7,2)0.000000-64.00000
RowSlackorSurplusDualPrice
12039.8001.000000
20.0000000.000000
30.20000000.000000
47.2000000.000000
58000.0000.000000
61000.0000.000000
70.0000000.000000
80.0000000.000000
90.0000000.000000
100.0000000.000000
111.0000000.000000
123.0000000.000000
138.0000000.000000
结果分析:
由运行结果可知,当第一个平板车上装5个C1种包装箱,2个C2种包装箱,7个C3种包装箱,2个C4种包装箱,2个C5种包装箱;第二个平板车上装3个C1种包装箱,5个C2种包装箱,2个C3种包装箱,4个C4种包装箱,3个C5种包装箱,1个C6种包装箱时,浪费空间最少。
练习2展厅监控问题(试求出所有可能的解—用Lingo和matlab求解)
展厅保安监控问题——海湾艺术馆考虑安装一系列摄像安全系统以减少其保安费用。
下图是海湾艺术馆用于展览的8间展厅的示意图。
各展厅之间的通道显示为⑴-⒀。
一家保安公司建议在一些通道安装双向摄像机。
每架摄象机都可以很好地监控通道两侧的展厅。
例如:
在通道⑷处安装摄象机,则展厅1和4就可以完全被监控到,等等。
管理层用最少数量的双向摄像机覆盖所有的8间展厅。
决策变量:
设在i(i=1,2,...13)处安装x(i)个摄像机。
目标函数:
z=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
约束条件:
双向摄像机要覆盖所有的8间展厅,即
x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
非负约束:
x(i)>=0;
综上可得:
minz=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
S.t.x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
模型求解:
lingo实现
Model:
!
模型1;
minz=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);@gin(x6);@gin(x7);@gin(x8);@gin(x9);@gin(x10);@gin(x11);@gin(x12);@gin(x13);
end
运行结果:
Globaloptimalsolutionfound.
Objectivevalue:
4.000000
Objectivebound:
4.000000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
0
VariableValueReducedCost
X10.0000001.000000
X20.0000001.000000
X31.0000001.000000
X40.0000001.000000
X50.0000001.000000
X61.0000001.000000
X70.0000001.000000
X80.0000001.000000
X90.0000001.000000
X101.0000001.000000
X111.0000001.000000
X120.0000001.000000
X130.0000001.000000
RowSlackorSurplusDualPrice
14.000000-1.000000
20.0000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
60.0000000.000000
70.0000000.000000
80.0000000.000000
90.0000000.000000
Model:
!
模型2;
minz=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);@gin(x6);@gin(x7);@gin(x8);@gin(x9);@gin(x10);@gin(x11);@gin(x12);@gin(x13);
x3+x6+x10+x11<=3;
end
运行结果:
Globaloptimalsolutionfound.
Objectivevalue:
4.000000
Objectivebound:
4.000000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
0
VariableValueReducedCost
X10.0000001.000000
X20.0000001.000000
X31.0000001.000000
X40.0000001.000000
X50.0000001.000000
X61.0000001.000000
X70.0000001.000000
X80.0000001.000000
X91.0000001.000000
X100.0000001.000000
X110.0000001.000000
X120.0000001.000000
X131.0000001.000000
RowSlackorSurplusDualPrice
14.000000-1.000000
20.0000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
60.0000000.000000
70.0000000.000000
80.0000000.000000
90.0000000.000000
101.0000000.000000
Model:
!
模型3;
minz=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);@gin(x6);@gin(x7);@gin(x8);@gin(x9);@gin(x10);@gin(x11);@gin(x12);@gin(x13);
x3+x6+x10+x11<=3;
x3+x6+x9+x13<=3;
end
运行结果:
Globaloptimalsolutionfound.
Objectivevalue:
4.000000
Objectivebound:
4.000000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
0
VariableValueReducedCost
X11.0000001.000000
X20.0000001.000000
X30.0000001.000000
X40.0000001.000000
X50.0000001.000000
X60.0000001.000000
X71.0000001.000000
X80.0000001.000000
X90.0000001.000000
X100.0000001.000000
X111.0000001.000000
X121.0000001.000000
X130.0000001.000000
RowSlackorSurplusDualPrice
14.000000-1.000000
20.0000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
60.0000000.000000
70.0000000.000000
80.0000000.000000
90.0000000.000000
102.0000000.000000
113.0000000.000000
Model:
!
模型4;
minz=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);@gin(x6);@gin(x7);@gin(x8);@gin(x9);@gin(x10);@gin(x11);@gin(x12);@gin(x13);
x3+x6+x10+x11<=3;
x3+x6+x9+x13<=3;
x1+x7+x11+x12<=3;
end
运行结果:
Globaloptimalsolutionfound.
Objectivevalue:
4.000000
Objectivebound:
4.000000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
0
VariableValueReducedCost
X11.0000001.000000
X20.0000001.000000
X30.0000001.000000
X40.0000001.000000
X51.0000001.000000
X60.0000001.000000
X70.0000001.000000
X81.0000001.000000
X90.0000001.000000
X100.0000001.000000
X110.0000001.000000
X120.0000001.000000
X131.0000001.000000
RowSlackorSurplusDualPrice
14.000000-1.000000
20.0000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
60.0000000.000000
70.0000000.000000
80.0000000.000000
90.0000000.000000
103.0000000.000000
112.0000000.000000
122.0000000.000000
Model:
!
模型5;
minz=x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13;
x1+x4+x6>=1;
x6+x8+x12>=1;
x1+x2+x3>=1;
x3+x4+x5+x7>=1;
x7+x8+x9+x10>=1;
x10+x12+x13>=1;
x2+x5+x9+x11>=1;
x11+x13>=1;
@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);@gin(x6);@gin(x7);@gin(x8);@gin(x9);@gin(x10);@gin(x11);@gin(x12);@gin(x13);
x3+x6+x10+x11<=3;
x3+x6+x9+x13<=3;
x1+x7+x11+x12<=3;
x1+x5+x8+x13<=3;
end
运行结果:
Globaloptimalsolutionfound.
Objective