资源描述
(完整版)应用LINGO软件求解运输问题
2012--2013学年第 一 学期
合肥学院数理系
实验报告
课程名称: 运筹学
实验项目: 应用LINGO软件求解运输问题
实验类别:综合性□ 设计性 验证性□
专业班级:
姓 名: 学 号:
实验地点:
实验时间:
指导教师: 成 绩:
一。实验目的
1、学会使用LINGO软件求解运输问题的步骤与方法。
2、掌握使用LINGO对运输问题的求解功能,并对结果进行分析.
二。实验内容
1。已知某企业有甲、乙、丙三个分厂生产一种产品,其产量分别为7、9、7个单位,需运往A、B、C、D四个门市部,各门市部需要量分别为3、5、7、8个单位。已知单位运价如下表。试确定运输计划使总运费最少。
A
B
C
D
甲
12
13
10
11
乙
10
12
14
10
丙
14
11
15
12
2。现在要在五个工人中确定四个人来分别完成四项工作中的一项工作.由于每个工人的技术特长不同,他们完成各项工作所需的工时也不同。每个工人完成各项工作所需工时如下表所示,试找出一个工作分配方案,使总工时最小。
工作工人
A
B
C
D
Ⅰ
9
4
3
7
Ⅱ
4
6
5
6
Ⅲ
5
4
7
5
Ⅳ
7
5
2
3
Ⅴ
10
6
7
4
三. 模型建立
1。由题设知,总产量为:7+9+7=23个单位,总销量为:3+5+7+8=23个单位,所以这是一个产销平衡的运输问题。
设代表从第个产地运往第个销地的数量,为总运费.表示第个产地的产量,表示第个销地的销量表示从第个产地运往第个销地的单位产品运输费用。则该问题的数学模型为:
2。 设0—1变量,
则该问题的数学模型为:
四. 模型求解(含经调试后正确的源程序)
1、编写程序1-1。m如下:
model:
sets:
warehouses/wh1。.wh3/: capacity;
vendors/v1.。v4/: demand;
links(warehouses,vendors): cost, volume;
endsets
data:
capacity=7 9 7;
demand=3 5 7 8;
cost= 12 13 10 11
10 12 14 10
14 11 15 12;
enddata
min=@sum(links(I,J): cost(I,J)*volume(I,J));
@for(vendors(J):
@sum(warehouses(I): volume(I,J))=demand(J));
@for(warehouses(I):
@sum(vendors(J): volume(I,J))〈=capacity(I));
end
2、编写程序2-1。m如下:
model:
sets:
workers/w1。。w5/;
jobs/j1.。j4/;
links(workers,jobs): cost,volume;
Endsets
data:
cost=9 4 3 7
4 6 5 6
5 4 7 5
7 5 2 3
10 6 7 4;
enddata
min=@sum(links: cost*volume);
@for(workers(I): @sum(jobs(J): volume(I,J))<=1);
@for(jobs(J): @sum(workers(I): volume(I,J))=1);
@for(links(i,j): @bin(volume(i,j)));
End
五.结果分析
1、运行结果:
Global optimal solution found。
Objective value: 239。0000
Infeasibilities: 0。000000
Total solver iterations: 6
Variable Value Reduced Cost
CAPACITY( WH1) 7.000000 0。000000
CAPACITY( WH2) 9.000000 0。000000
CAPACITY( WH3) 7。000000 0。000000
DEMAND( V1) 3。000000 0。000000
DEMAND( V2) 5.000000 0.000000
DEMAND( V3) 7。000000 0.000000
DEMAND( V4) 8.000000 0.000000
COST( WH1, V1) 12。00000 0。000000
COST( WH1, V2) 13。00000 0。000000
COST( WH1, V3) 10.00000 0.000000
COST( WH1, V4) 11。00000 0.000000
COST( WH2, V1) 10.00000 0。000000
COST( WH2, V2) 12.00000 0.000000
COST( WH2, V3) 14。00000 0。000000
COST( WH2, V4) 10.00000 0.000000
COST( WH3, V1) 14.00000 0。000000
COST( WH3, V2) 11.00000 0。000000
COST( WH3, V3) 15.00000 0。000000
COST( WH3, V4) 12。00000 0。000000
VOLUME( WH1, V1) 0.000000 1.000000
VOLUME( WH1, V2) 0.000000 3。000000
VOLUME( WH1, V3) 7。000000 0。000000
VOLUME( WH1, V4) 0.000000 0。000000
VOLUME( WH2, V1) 3。000000 0.000000
VOLUME( WH2, V2) 0。000000 3。000000
VOLUME( WH2, V3) 0.000000 5.000000
VOLUME( WH2, V4) 6。000000 0。000000
VOLUME( WH3, V1) 0。000000 2。000000
VOLUME( WH3, V2) 5.000000 0.000000
VOLUME( WH3, V3) 0.000000 4。000000
VOLUME( WH3, V4) 2。000000 0。000000
Row Slack or Surplus Dual Price
1 239。0000 —1.000000
2 0.000000 -12.00000
3 0。000000 -11.00000
4 0。000000 —11.00000
5 0.000000 —12。00000
6 0。000000 1.000000
7 0.000000 2。000000
8 0。000000 0.000000
所以,最优调运方案为:甲→C:7单位;甲→D:0单位;乙→A:3单位;
乙→D:6单位;丙→B:5单位;丙→D:2单位。
最少总运费为:239.
2、运行结果:
Global optimal solution found.
Objective value: 14.00000
Objective bound: 14。00000
Infeasibilities: 0.000000
Extended solver steps: 0
Total solver iterations: 0
Variable Value Reduced Cost
COST( W1, J1) 9。000000 0。000000
COST( W1, J2) 4。000000 0。000000
COST( W1, J3) 3。000000 0.000000
COST( W1, J4) 7.000000 0。000000
COST( W2, J1) 4。000000 0.000000
COST( W2, J2) 6。000000 0.000000
COST( W2, J3) 5。000000 0.000000
COST( W2, J4) 6.000000 0。000000
COST( W3, J1) 5.000000 0.000000
COST( W3, J2) 4.000000 0。000000
COST( W3, J3) 7.000000 0。000000
COST( W3, J4) 5.000000 0.000000
COST( W4, J1) 7。000000 0。000000
COST( W4, J2) 5.000000 0.000000
COST( W4, J3) 2.000000 0。000000
COST( W4, J4) 3。000000 0.000000
COST( W5, J1) 10。00000 0。000000
COST( W5, J2) 6.000000 0。000000
COST( W5, J3) 7。000000 0。000000
COST( W5, J4) 4.000000 0.000000
VOLUME( W1, J1) 0.000000 9。000000
VOLUME( W1, J2) 0。000000 4.000000
VOLUME( W1, J3) 1.000000 3。000000
VOLUME( W1, J4) 0.000000 7.000000
VOLUME( W2, J1) 1。000000 4.000000
VOLUME( W2, J2) 0。000000 6。000000
VOLUME( W2, J3) 0.000000 5.000000
VOLUME( W2, J4) 0。000000 6。000000
VOLUME( W3, J1) 0。000000 5.000000
VOLUME( W3, J2) 1.000000 4。000000
VOLUME( W3, J3) 0。000000 7.000000
VOLUME( W3, J4) 0.000000 5。000000
VOLUME( W4, J1) 0。000000 7。000000
VOLUME( W4, J2) 0。000000 5。000000
VOLUME( W4, J3) 0.000000 2。000000
VOLUME( W4, J4) 1.000000 3。000000
VOLUME( W5, J1) 0。000000 10.00000
VOLUME( W5, J2) 0。000000 6。000000
VOLUME( W5, J3) 0.000000 7。000000
VOLUME( W5, J4) 0。000000 4。000000
Row Slack or Surplus Dual Price
1 14。00000 -1。000000
2 0.000000 0。000000
3 0.000000 0.000000
4 0。000000 0.000000
5 0.000000 0.000000
6 1。000000 0.000000
7 0。000000 0。000000
8 0.000000 0。000000
9 0.000000 0.000000
10 0.000000 0。000000
所以,最优指派方案为:Ⅰ→C;Ⅱ→A;Ⅲ→B;Ⅳ→D.
最小总共时为:14.
六.实验总结
通过此次实验,我进一步掌握了LINGO软件的编程操作,更让我明白了运输问题数学模型的建立以及求解过程,从而让我们在掌握相关理论知识的基础上,能够充分利用数学软件去求解实际问题.这对提高我们分析问题和解决实际问题的能力有很大的帮助。
学生签名:
2012 年 12 月 6 日
6
展开阅读全文