数学建模作业实验4整数规划和对策论模型.docx
《数学建模作业实验4整数规划和对策论模型.docx》由会员分享,可在线阅读,更多相关《数学建模作业实验4整数规划和对策论模型.docx(15页珍藏版)》请在冰豆网上搜索。
数学建模作业实验4整数规划和对策论模型
数学建模作业
(实验4整数规划和对策论模型)
基本实验
1.遗嘱问题
一个行为古怪的阿拉伯酋长留下了一份遗嘱,遗嘱中将他的骆驼群分给他的三个儿子:
长子至少得到驼群的1/2,次子至少得到驼群的1/3,三子至少得到驼群的1/9,剩余的捐献给慈善机构。
遗嘱中没有指出到底驼群的数目是多少,只是告诉了这个驼群的数目是奇数,并且这个指定的慈善机构恰好得到了一匹骆驼。
利用整数线性规划确定这个酋长到底留下了多少匹骆驼,并指出每个儿子各得到多少匹。
解答
解:
设长子、次子、三子得到的骆驼数分别为:
X1,X2,X3,
则目标函数为:
X1+X2+X3+1
约束条件:
X1>=(X1+X2+X3+1)/2
X2>=(X1+X2+X3+1)/3
X3>=(X1+X2+X3+1)/9
X1,X2,X3为整数,且(X1+X2+X3+1)为奇数。
要想求出本题的可行解,则目标函数取得最小。
LINGO程序
min=X1+X2+X3+1;
X1+X2+X3+1<=2*X1;
X1+X2+X3+1<=3*X2;
X1+X2+X3+1<=9*X3;
Y=(X1+X2+X3)/2;
@gin(X1);@gin(X2);@gin(X3);@gin(Y);
运行结果
Globaloptimalsolutionfound.
Objectivevalue:
27.00000
Objectivebound:
27.00000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
3
ModelClass:
PILP
Totalvariables:
4
Nonlinearvariables:
0
Integervariables:
4
Totalconstraints:
5
Nonlinearconstraints:
0
Totalnonzeros:
16
Nonlinearnonzeros:
0
VariableValueReducedCost
X114.000001.000000
X29.0000001.000000
X33.0000001.000000
Y13.000000.000000
RowSlackorSurplusDualPrice
127.00000-1.000000
21.0000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
由运行结果可得:
这个酋长的骆驼数量为27只,长子得到14只,次子得到9只,三子得到3只。
2.固定费用问题
由于工作需要张先生打算办理长途电话业务。
现有A,B和C三家电话公司,其中A公司每月固定话费16元,通话费0.25元/min;B公司每月固定话费25元,通话费0.21元/min;C公司每月固定话费18元,通话费0.22元/min。
在一般情况下,张先生每月使用的长途电话时间是200min。
请问张先生如何选择这3家电话公司,使得每月的电话费最少?
解答
解:
设Xi表示使用第i家公司的业务,i=1,2,3。
则目标函数为:
X1*(16+200*0.25)+X2*(25+200*0.21)+X3*(18+200*0.22)
约束条件:
X1+X2+X3=1
X1,X2,X3为整数。
最优解使得目标函数取得最小。
LINGO程序
min=X1*(16+200*0.25)+X2*(25+200*0.21)+X3*(18+200*0.22);
X1+X2+X3=1;
@bin(X1);@bin(X2);@bin(X3);
运行结果
Globaloptimalsolutionfound.
Objectivevalue:
62.00000
Objectivebound:
62.00000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
0
ModelClass:
PILP
Totalvariables:
3
Nonlinearvariables:
0
Integervariables:
3
Totalconstraints:
2
Nonlinearconstraints:
0
Totalnonzeros:
6
Nonlinearnonzeros:
0
VariableValueReducedCost
X10.00000066.00000
X20.00000067.00000
X31.00000062.00000
RowSlackorSurplusDualPrice
162.00000-1.000000
20.0000000.000000
由运行结果可得:
张先生应该选择C家电话公司,使得每月电话公司最少为62元。
3.串并联系统可靠性问题
有一台电器由三个部件组成,这三个部件串联,假如有一个部件发生故障,电器就不能工作。
可以通过在每个部件里安装1到2个备份元件来提高该电器的可靠性(不发生故障的概率)。
表4.1列出了可靠性和成本费用。
假设制造该电器的已有资金共10万元,那么怎样来构造这件电器呢?
解答
解:
设Xij表示使用第i个部件并联就j个元件,i=1,2,3;j=1,2,3。
则目标函数为:
(X11*0.6+X12*0.8+X13*0.9)*(X21*0.7+X22*0.8+X23*0.9)*(X31*0.5+X32*0.7+X33*0.9)
约束条件:
X11+X12+X13=1
X21+X22+X23=1
X31+X32+X33=1
1*X11+2*X12+3*X13+3*X21+5*X22+6*X23+2*X31+4*X32+5*X33<=10
Xij为整数。
最优解使得目标函数取得最大。
LINGO程序
max=(X11*0.6+X12*0.8+X13*0.9)*(X21*0.7+X22*0.8+X23*0.9)*(X31*0.5+X32*0.7+X33*0.9);
X11+X12+X13=1;
X21+X22+X23=1;
X31+X32+X33=1;
1*X11+2*X12+3*X13+3*X21+5*X22+6*X23+2*X31+4*X32+5*X33<=10;
@bin(X11);@bin(X12);@bin(X13);@bin(X21);@bin(X22);@bin(X23);@bin(X31);@bin(X32);@bin(X33);
运行结果
Localoptimalsolutionfound.
Objectivevalue:
0.5040000
Objectivebound:
0.5040000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
16
ModelClass:
PINLP
Totalvariables:
9
Nonlinearvariables:
9
Integervariables:
9
Totalconstraints:
5
Nonlinearconstraints:
1
Totalnonzeros:
27
Nonlinearnonzeros:
9
VariableValueReducedCost
X121.000000-0.1166667E-01
X211.000000-0.7733333E-01
X331.0000000.000000
RowSlackorSurplusDualPrice
20.0000000.3430000
30.0000000.2026667
40.0000000.1306667
50.0000000.7466667E-01
由运行结果可得:
部件1并联两个元件,部件2并联1个元件,部件3并联3个元件,最终的可靠性为0.504。
4.二选一约束条件
某汽车公司正在考虑生产3种类型的汽车:
微型、中型和大型。
表4.2给出了每种汽车需要的资源及产生的利润。
目前有6000吨钢材和60000小时的劳动时间。
要生产一种在经济效益上可行的汽车,这种汽车必须至少生产1000辆。
试为该公司制定一个使生产利润达到最大的方案。
解答
解:
设X1、X2、X3分别表示生产微型汽车、中型汽车、大型汽车的数量;
设Yi表示生产第i种汽车,i=1,2,3。
。
则目标函数为:
2000*X1*Y1+3000*X2*Y2+4000*X3*Y3
约束条件:
X11+X12+X13=1
X21+X22+X23=1
X31+X32+X33=1
1*X11+2*X12+3*X13+3*X21+5*X22+6*X23+2*X31+4*X32+5*X33<=10
Xij为整数。
最优解使得目标函数取得最大。
LINGO程序
max=2000*X1*Y1+3000*X2*Y2+4000*X3*Y3;
1.5*X1+3*X2+5*X3<=6000;
30*X1+25*X2+40*X3<=60000;
X1>=1000*Y1;
X1<=9999*Y1;
X2>=1000*Y2;
X2<=9999*Y2;
X3>=1000*Y3;
X3<=9999*Y3;
@bin(Y1);@bin(Y2);@bin(Y3);@gin(X1);@gin(X2);@gin(X3);
运行结果
Linearizationcomponentsadded:
Constraints:
12
Variables:
3
Globaloptimalsolutionfound.
Objectivevalue:
6000000.
Objectivebound:
6000000.
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
23
ModelClass:
MILP
Totalvariables:
9
Nonlinearvariables:
0
Integervariables:
6
Totalconstraints:
21
Nonlinearconstraints:
0
Totalnonzeros:
51
Nonlinearnonzeros:
0
VariableValueReducedCost
X10.0000000.000000
Y10.000000-0.2000000E+09
X22000.000-3000.000
Y21.0000000.3000000E+09
X30.0000000.000000
Y30.000000-0.4000000E+09
RowSlackorSurplusDualPrice
16000000.1.000000
20.0000000.000000
310000.000.000000
40.0000000.000000
50.0000000.000000
61000.0000.000000
77999.0000.000000
80.0000000.000000
90.0000000.000000
由运行结果可得:
生产中型车2000辆可以使生产利润达到最大为6000000美元。
5.最小覆盖问题
某公司拿出15百万元,最多建造7个发射台来覆盖15个相邻社区中尽可能多的人口。
表4.3给出了每个发射台可以覆盖的社区及建造这个发射台的费用,表4.4给出了各个社区的人口数目,确定出那几个发射台需要建造?
解答
解:
设Xi表示社区i被覆盖,i=1,…,15;Yj表示建造发射台i,i=1,2,3,4,5,6,7。
发射台与覆盖社区的关系如下表所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
是
是
2
是
是
是
3
是
是
是
是
4
是
是
是
是
5
是
是
是
是
6
是
是
是
是
是
7
是
是
是
是
目标函数为:
4*X1+3*X2+10*X3+14*X4+6*X5+7*X6+9*X7+10*X8+13*X9+11*X10+6*X11+12*X12+7*X13+5*X14+16*X15
约束条件:
Y1+Y3>=X1;
Y1+Y2>=X2;
Y2>=X3;
Y4>=X4;
Y2+Y6>=X5;
Y4+Y5>=X6;
Y3+Y5+Y6>=X7;
Y4>=X8;
Y3+Y4+Y5>=X9;
Y3+Y6>=X10;
Y5>=X11;
Y6+Y7>=X12;
Y7>=X13;
Y6+Y7>=X14;
Y7>=X15;
Xi,Yj为整数。
最优解使得目标函数取得最大。
LINGO程序
max=4*X1+3*X2+10*X3+14*X4+6*X5+7*X6+9*X7+10*X8+13*X9+11*X10+6*X11+12*X12+7*X13+5*X14+16*X15;
3.6*Y1+2.3*Y2+4.1*Y3+3.15*Y4+2.8*Y5+2.65*Y6+3.1*Y7<=15;
Y1+Y3>=X1;
Y1+Y2>=X2;
Y2>=X3;
Y4>=X4;
Y2+Y6>=X5;
Y4+Y5>=X6;
Y3+Y5+Y6>=X7;
Y4>=X8;
Y3+Y4+Y5>=X9;
Y3+Y6>=X10;
Y5>=X11;
Y6+Y7>=X12;
Y7>=X13;
Y6+Y7>=X14;
Y7>=X15;
@bin(X1);@bin(X2);@bin(X3);@bin(X4);@bin(X5);@bin(X6);@bin(X7);
@bin(X8);@bin(X9);@bin(X10);@bin(X11);@bin(X12);@bin(X13);@bin(X14);@bin(X15);
@bin(Y1);@bin(Y2);@bin(Y3);@bin(Y4);@bin(Y5);@bin(Y6);@bin(Y7);
运行结果
Globaloptimalsolutionfound.
Objectivevalue:
129.0000
Objectivebound:
129.0000
Infeasibilities:
0.000000
Extendedsolversteps:
0
Totalsolveriterations:
0
ModelClass:
PILP
Totalvariables:
22
Nonlinearvariables:
0
Integervariables:
22
Totalconstraints:
17
Nonlinearconstraints:
0
Totalnonzeros:
63
Nonlinearnonzeros:
0
VariableValueReducedCost
X10.000000-4.000000
X21.000000-3.000000
X31.000000-10.00000
X41.000000-14.00000
X51.000000-6.000000
X61.000000-7.000000
X71.000000-9.000000
X81.000000-10.00000
X91.000000-13.00000
X101.000000-11.00000
X111.000000-6.000000
X121.000000-12.00000
X131.000000-7.000000
X141.000000-5.000000
X151.000000-16.00000
Y10.0000000.000000
Y21.0000000.000000
Y30.0000000.000000
Y41.0000000.000000
Y51.0000000.000000
Y61.0000000.000000
Y71.0000000.000000
RowSlackorSurplusDualPrice
1129.00001.000000
21.0000000.000000
30.0000000.000000
40.0000000.000000
50.0000000.000000
60.0000000.000000
71.0000000.000000
81.0000000.000000
91.0000000.000000
100.0000000.000000
111.0000000.000000
120.0000000.000000
130.0000000.000000
141.0000000.000000
150.0000000.000000
161.0000000.000000
170.0000000.000000
由运行结果可得:
需要建造的发射塔为2,4,5,6,7,只有1社区无法覆盖,覆盖最多人口为129千人。