运 筹 学 实 验 报 告
姓 名: 学 号: 班 级:
相关问题说明:
一、 实验性质和教学目的
本实验是运筹学课内安排的上机操作实验。
目的在于了解、熟悉计算机Lingo软件在运筹学模型求解中的作用,激发学习兴趣,提高学习效果,增强自身的动手能力,提高实际应用能力。
二、 实验基本要求
要求学生:
1. 实验前认真做好理论准备,仔细阅读实验指导书;
2. 遵从教师指导,认真完成实验任务,按时按质提交实验报告。
三、 主要参考资料
1.LINGO软件
2. LINGO8.0及其在环境系统优化中的应用,天津大学出版社,2005 3. 优化建模与LINDO/LINGO软件,清华大学出版社,2005 4.运筹学编写组主编,运筹学(修订版),清华大学出版社,1990 5.蓝伯雄主编,管理数学(下)—运筹学,清华大学出版社,1997 6.胡运权主编,运筹学习题集(修订版),清华大学出版社,1995 7.胡运权主编,运筹学教程(第二版),清华大学出版社,2003
实验内容
1、线性规划问题:
maxz?8x1?6x2?9x1?8x2?12??7x1?11x2?24 s.t.??9x1?11x2?13??x1,x2?0(1) 给出原始代码;(2) 计算结果(包括灵敏度分析,求解结果粘贴);
(3) 回答下列问题(手写):
a) 最优解及最优目标函数值是多少;
b) 资源的对偶价格各为多少,并说明对偶价格的含义; c) 为了使目标函数值增加最多,让你选择一个约束条件,将它的常数项增加一个单位,你将选择哪一个约束条件?这时目标函数值将是多少? d) 对x2的目标函数系数进行灵敏度分析;
e) 对第2个约束的约束右端项进行灵敏度分析; f ) 结合本题的结果解释“Reduced Cost”的含义。 对偶价格就是说 约束方程右端变量增加1对目标函数值的影响 答案: (1)代码
max =8*x1+6*x2; 9*x1+8*x2<=12; 7*x1+11*x2<=24; 9*x1+11*x2<=13; x1>=0; x2>=0;
(2)计算结果
Global optimal solution found.
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 5 1.333333 0.000000 6 0.000000 0.000000
— —1
Ranges in which the basis is unchanged:
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 5 0.0 1.333333 INFINITY 6 0.0 0.0 INFINITY
(3)a) b) c) d) e) f)
2、运输问题:
已知6个发点8个收点的最小费用运输问题。产销量及单位运价如下表。 销地 cij 产地 B1 6 4 5 7 2 5 60 B2 2 5 2 6 3 9 55 B3 9 5 1 7 6 2 51 B4 7 3 3 9 5 2 43 B5 4 8 7 9 7 8 41 B6 2 5 4 2 2 1 52 B7 5 3 8 7 6 4 43 B8 9 2 3 1 5 3 38 产量 55 47 42 52 41 32 A1 A2 A3 A4 A5 A6 销量 (1) 给出原始代码;(2) 计算结果(决策变量求解结果粘贴)
68Min Z = Cij Xij
??j?16??i?1j?1Xij <=bj (j=1...8) 销量约束
i?18Xij = ai (i=1...6) 产量约束
— —2
Xij ≥ 0(i=1...6;j=1...8)
代码:
model:
!6发点8 model:
!6发点8收点运输问题; 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
答案
Global optimal solution found.
Objective value: 473.0000 Infeasibilities: 0.000000 Total solver iterations: 9
Model Class: LP
Total variables: 48 Nonlinear variables: 0 Integer variables: 0
Total constraints: 15 Nonlinear constraints: 0
— —3