运筹学实验报告讲诉

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

运筹学
实验报告
姓名:
学号:
班级:
指导老师:
实验内容
1、线性规划问题:
⎪⎪⎩⎪⎪

⎧≥≤+≤+≤++=0
,13119241171289..68max 2121212121x x x x x x x x t s x x z (1) 给出原始代码;(2) 计算结果(包括灵敏度分析,求解结果粘贴);
(3) 回答下列问题(手写):a ) 最优解及最优目标函数值是多少;
b ) 资源的对偶价格各为多少,并说明对偶价格的含义;
c ) 为了使目标函数值增加最多,让你选择一个约束条件,将它的常数项增加一个单位,你将选择哪一个约束条件?这时目标函数值将是多少?
d ) 对x 2的目标函数系数进行灵敏度分析;
e ) 对第2个约束的约束右端项进行灵敏度分析;
f ) 结合本题的结果解释“Reduced Cost ”的含义。

解:(1) max =8*x1+6*x2;
9*x1+8*x2<=12; 7*x1+11*x2<=24; 9*x1+11*x2<=13;
(2)计算结果: Objective value: 10.66667
Total solver iterations: 2 Variable Value Reduced Cost X1 1.333333 0.000000 X2 0.000000 1.111111 Row Slack or Surplus Dual Price 1 10.66667 1.000000 2 0.000000 0.8888889 3 14.66667 0.000000 4 1.000000 0.000000
灵敏度分析: Objective Coefficient Ranges
Current Allowable Allowable Variable Coefficient Increase Decrease X1 8.000000 INFINITY 1.250000 X2 6.000000 1.111111 INFINITY Righthand Side Ranges
Row Current Allowable Allowable RHS Increase Decrease 2 12.00000 1.000000 12.00000 3 24.00000 INFINITY 14.66667 4 13.00000 INFINITY 1.000000
(3)a)该LP问题的最优解x={x1,x2}={1.333333,0.000000} 目标函数值
z=10.66667
b)第2行资源的对偶价格为0.8888889,3、4行的对偶价格为0、0.
对偶价格的含义:表示当对应约束有微小变动时, 目标函数的变化率。

例如
此题中将第一个约束条件变为9*x1+8*x2<=13,目标函数值将变为
10.66667+0.8888889=11.66667。

c)为了使目标函数值增加最多,选择第一个约束条件,目标函数值变为11.66667
d)x2原来为6,当它在[6-∞,6+1.111111] = [-∞,7.111111]范围变化时,
最优基保持不变。

e)第2行约束中右端项原来为24,当它在[24-14.66667,24+∞] = [9.33333,
∞]范围变化时,最优基保持不变。

f)“Reduced Cost”代表的值表示当变量有微小变动时, 目标函数的变化率。

本题中变量x2的reduced cost的值为 1.111111,表示当非基变量x2的值
从0变为 1时最优的目标函数值z=10.66667-1.111111=9.555559.
2、运输问题:
(1) 给出原始代码;(2) 计算结果(决策变量求解结果粘贴)
解:(1)原始代码为
model:
sets:
warehouses/wh1..wh6/: capacity;
vendors/v1..v8/: demand;
links(warehouses,vendors): cost, volume;
endsets
min=@sum(links: cost*volume);
@for(vendors(J):
@sum(warehouses(I): volume(I,J))<=demand(J));
@for(warehouses(I):
@sum(vendors(J): volume(I,J)) =capacity(I));
data:
capacity=55 47 42 52 41 32;
demand=60 55 51 43 41 52 43 38;
cost=6 2 9 7 4 2 5 9
4 5 5 3 8 5 3 2
5 2 1 3 7 4 8 3
7 6 7 9 9 2 7 1
2 3 6 5 7 2 6 5
5 9 2 2 8 1 4 3;
enddata
end
(2)计算结果: Objective value: 473.0000 Total solver iterations: 9 Variable Value Reduced Cost
VOLUME( WH1, V1) 0.000000 4.000000
VOLUME( WH1, V2) 55.00000 0.000000
VOLUME( WH1, V3) 0.000000 7.000000
VOLUME( WH1, V4) 0.000000 5.000000
VOLUME( WH1, V5) 0.000000 2.000000
VOLUME( WH1, V6) 0.000000 0.000000
VOLUME( WH1, V7) 0.000000 3.000000
VOLUME( WH1, V8) 0.000000 8.000000
VOLUME( WH2, V1) 0.000000 1.000000
VOLUME( WH2, V2) 0.000000 2.000000
VOLUME( WH2, V3) 0.000000 2.000000
VOLUME( WH2, V4) 43.00000 0.000000
VOLUME( WH2, V5) 0.000000 5.000000
VOLUME( WH2, V6) 0.000000 2.000000
VOLUME( WH2, V7) 4.000000 0.000000
VOLUME( WH2, V8) 0.000000 0.000000
VOLUME( WH3, V1) 0.000000 4.000000
VOLUME( WH3, V2) 0.000000 1.000000
VOLUME( WH3, V3) 42.00000 0.000000
VOLUME( WH3, V4) 0.000000 2.000000
VOLUME( WH3, V5) 0.000000 6.000000
VOLUME( WH3, V6) 0.000000 3.000000
VOLUME( WH3, V7) 0.000000 7.000000
VOLUME( WH3, V8) 0.000000 3.000000
VOLUME( WH4, V1) 0.000000 5.000000
VOLUME( WH4, V2) 0.000000 4.000000
VOLUME( WH4, V3) 0.000000 5.000000
VOLUME( WH4, V4) 0.000000 7.000000
VOLUME( WH4, V5) 0.000000 7.000000
VOLUME( WH4, V6) 14.00000 0.000000
VOLUME( WH4, V7) 0.000000 5.000000
VOLUME( WH4, V8) 38.00000 0.000000
VOLUME( WH5, V1) 41.00000 0.000000
VOLUME( WH5, V2) 0.000000 1.000000
VOLUME( WH5, V3) 0.000000 4.000000
VOLUME( WH5, V4) 0.000000 3.000000
VOLUME( WH5, V5) 0.000000 5.000000
VOLUME( WH5, V6) 0.000000 0.000000
VOLUME( WH5, V7) 0.000000 4.000000
VOLUME( WH5, V8) 0.000000 4.000000
VOLUME( WH6, V1) 0.000000 4.000000
VOLUME( WH6, V2) 0.000000 8.000000
VOLUME( WH6, V3) 0.000000 1.000000
VOLUME( WH6, V4) 0.000000 1.000000
VOLUME( WH6, V5) 0.000000 7.000000
VOLUME( WH6, V6) 32.00000 0.000000
VOLUME( WH6, V7) 0.000000 3.000000
VOLUME( WH6, V8) 0.000000 3.000000
故该运输问题所需的最小运输费用为473。

A1运往B2,A2运往B4,B7,A3运往B3,A4运往
B6,B8,A5运往B1,A6运往B6 .
3、一般整数规划问题:
某服务部门各时段(每2h为一时段)需要的服务员人数见下表。

按规定,服务员连续工作8h(即四个时段)为一班。

现要求安排服务员的工作时间,使服务部门服
(1) 给出原始代码;(2) 计算结果(决策变量求解结果粘贴)
解:(1)原始代码为:
model:
sets:
time/1..8/: required,start;
endsets
data:
required = 10 8 9 11 13 8 5 3;
enddata
min=@sum(time: start);
@for(time(J):
@sum(time(I) | I #le# 4:
start(@wrap(J+I+2,8))) >= required(J));
end
(2):计算结果为:Objective value: 23.00000
Total solver iterations: 3
Variable Value Reduced Cost
START( 1) 13.00000 0.000000
START( 4) 2.000000 0.000000
START( 5) 8.000000 0.000000
故该整数规划问题的结果为:最少服务员总数为23。

4、指派问题:
(1) 给出原始代码;(2) 计算结果(决策变量求解结果粘贴)
解:(1)原始代码为:
model:
sets:
workers/A1..A5/;
jobs/B1..B5/;
links(workers,jobs): cost,volume;
endsets
max=@sum(links: cost*volume);
@for(workers(I):
@sum(jobs(J): volume(I,J))=1;
);
@for(jobs(J):
@sum(workers(I): volume(I,J))=1;
);
data:
cost= 4 8 7 15 12
7 9 17 14 10
6 9 12 8 7
6 7 14 6 10
6 9 12 10 6;
enddata
(2):计算结果:Objective value: 57.00000
Total solver iterations: 10
Variable Value Reduced Cost
VOLUME( A1, B4) 1.000000 0.000000
VOLUME( A2, B3) 1.000000 0.000000
VOLUME( A3, B1) 1.000000 0.000000
VOLUME( A4, B5) 1.000000 0.000000
VOLUME( A5, B2) 1.000000 0.000000
故指派问题结果为:A1做B4工作,A2做B3工作,A3做B1工作,A4做B5工作,A5做
B2工作。

5、一维资源分配问题:
某工业部门根据国家计划的安排,拟将某种高效率的设备五台,分配给所属的甲、乙、丙三个工厂,各工厂若获得这种设备之后,可以为国家提供的盈利如下表所示。

(1) 给出原始代码;(2) 计算结果(决策变量求解结果粘贴)
解:(1)原始代码为:
model:
sets:
factory/1 2 3/;
facility_amount/1..6/;
arcs(factory,facility_amount):benefit,selection,status;
endsets
data:;
benefit=0,5,15,40,80,90
0,5,15,40,60,70
0,4,26,40,45,50;
status=0,1,2,3,4,5
0,1,2,3,4,5
0,1,2,3,4,5;
enddata
[obj]max=@sum(arcs(i,j):benefit(i,j)*selection(i,j));
@for(arcs:@bin(selection));
@for(factory(i):@sum(arcs(i,k):selection(i,k))=1);
@sum(arcs(i,j):status(i,j)*selection(i,j))=5;
end
(2)计算结果:
Objective value: 90.00000
Extended solver steps: 0
Total solver iterations: 0
Variable Value Reduced Cost
SELECTION( 1, 6) 1.000000 -90.00000
SELECTION( 2, 1) 1.000000 0.000000
SELECTION( 3, 1) 1.000000 0.000000
故该分配问题的结果为:甲工厂需用设备6台,乙工厂需用设备1台,丙工厂需用设备1台。

此时为国家盈利总额为90. 6、最短路问题:
求从V 1至V 10的最短路。

l 1,2=6, l 1,3=5, l 2,4=3, l 2,5=6, l 2,6=9, l 3,4=7, l 3,5=5, l 3,6=11, l 4,7=9, l 4,8=1, l 5,7=8, l 5,8=7, l 5,9=5, l 6,8=4, l 6,9=10, l 7,10=5, l 8,10=7, l 9,10=9 (l i ,j 表示V i 到V j 之间的权重)
(1) 给出原始代码;(2) 计算结果(决策变量求解结果粘贴) 解:(1):
model : data : n=10; enddata sets :
cities/1..n/: F;
roads(cities,cities)/ 1,2 1,3
2,4 2,5 2,6 3,4 3,5 3,6 4,7 4,8
5,7 5,8 5,9 6,8 6,9 7,10 8,10 9,10 /: D, P; endsets data : D=6 5 3 6 9 7 5 11 9 1 8 7 5 4 10 5 7 9; enddata F(n)=0;
@for (cities(i) | i #lt# n:
V 1
V 2
V 3
V 4 V 5 V 6
V 7
V 8
V 9
V 10
F(i)=@min(roads(i,j): D(i,j)+F(j));
);
@for(roads(i,j):
P(i,j)=@if(F(i) #eq# D(i,j)+F(j),1,0)
);
end
(2):计算结果: Total solver iterations: 0
Variable Value N 10.00000 F( 1) 17.00000 F( 2) 11.00000 F( 3) 15.00000 F( 4) 8.000000 F( 5) 13.00000 F( 6) 11.00000 F( 7) 5.000000 F( 8) 7.000000 F( 9) 9.000000 F( 10) 0.000000 P( 1, 2) 1.000000 P( 1, 3) 0.000000 P( 2, 4) 1.000000 P( 2, 5) 0.000000 P( 2, 6) 0.000000 P( 3, 4) 1.000000 P( 3, 5) 0.000000 P( 3, 6) 0.000000 P( 4, 7) 0.000000 P( 4, 8) 1.000000 P( 5, 7) 1.000000 P( 5, 8) 0.000000 P( 5, 9) 0.000000 P( 6, 8) 1.000000 P( 6, 9) 0.000000 P( 7, 10) 1.000000 P( 8, 10) 1.000000 P( 9, 10) 1.000000 故此最短路问题的结果是:V1 →V2 →V4 →V8 →V10。

相关文档
最新文档