产销不平衡运输问题建模
摘要 :运输问题是一类常见而且极其典型的线性规划问题,大都研究如何从某些生产地调运产品到某些销地去,且要使费用最小,因此,它的目的就是寻求最小费用的调运方案。在运输方式一定条件下,又受供应点、销售点地理位置条件限制,如何使得运输费用最低求出最优解,得出最佳运输方案,找出最佳运输路线是我们今天所要研究讨论的问题。
关键词:供销平衡;运输问题;最低费用;建模
问题:
设有三个河沙厂(A1,A2,A3)供应四个零售点(B1,B2,B3,B4)的河沙。假设等量的河沙在这些零售点使用效果相同。各河沙厂年产量、各零售点年需要量及从各河沙厂到各零售点运送单位河沙的运费如下表1-1所示。试求出总的运费最节省的河沙调拨方案。
分析:
1、产销问题:产量160,最低需求110,最高需求无限,但根据现有情况,最高总需求为210,因为B4销地最高可获得60,说明此问题为产销不平衡问题。
2、要将问题转换成产销不平衡问题则需要增加假象产地A4。
3、将需求量化为两部分,一部分满足最低需求,一部分满足差额。
4、可以利用产销不平衡数学模型:(求大于供)
Min
Zcijxij i1j1mnst.. xj1
mnijsi,i1,2,...,m
dj,j1,2,...,n x
i1ij
xij0
建模:
代码实现:
模型的lingo原始代码如下:
model:
sets:
cd/1..4/: capacity;
xd/1..6/: demand;
links(cd,xd): cost, variable;
endsets
min=@sum(links: cost* variable);
@for(xd(j):@sum(cd(i): variable(i, j))=demand(j));
@for(cd(i):@sum(xd(j): variable(i, j))=capacity(i)); data:
capacity= 50 60 50 50 ;
demand=30 20 70 30 10 50;
cost= 16 16 13 22 17 17
14 14 13 19 15 15
19 19 20 23 100000 100000
10000 0 100000 0 100000 0;
enddata
end
解答报告
Global optimal solution found.
Objective value: 2460.000
Infeasibilities: 0.000000
Total solver iterations: 10
Variable Value Reduced Cost CAPACITY( 1) 50.00000 0.000000 CAPACITY( 2) 60.00000 0.000000 CAPACITY( 3) 50.00000 0.000000 CAPACITY( 4) 50.00000 0.000000 DEMAND( 1) 30.00000 0.000000 DEMAND( 2) 20.00000 0.000000 DEMAND( 3) 70.00000 0.000000 DEMAND( 4) 30.00000 0.000000 DEMAND( 5) 10.00000 0.000000 DEMAND( 6) 50.00000 0.000000 COST( 1, 1) 16.00000 0.000000 COST( 1, 2) 16.00000 0.000000 COST( 1, 3) 13.00000 0.000000 COST( 1, 4) 22.00000 0.000000 COST( 1, 5) 17.00000 0.000000 COST( 1, 6) 17.00000 0.000000 COST( 2, 1) 14.00000 0.000000 COST( 2, 2) 14.00000 0.000000 COST( 2, 3) 13.00000 0.000000 COST( 2, 4) 19.00000 0.000000 COST( 2, 5) 15.00000 0.000000
COST( 2, 6) 15.00000 0.000000 COST( 3, 1) 19.00000 0.000000 COST( 3, 2) 19.00000 0.000000 COST( 3, 3) 20.00000 0.000000 COST( 3, 4) 23.00000 0.000000 COST( 3, 5) 100000.0 0.000000 COST( 3, 6) 100000.0 0.000000 COST( 4, 1) 10000.00 0.000000 COST( 4, 2) 0.000000 0.000000 COST( 4, 3) 100000.0 0.000000 COST( 4, 4) 0.000000 0.000000 COST( 4, 5) 100000.0 0.000000 COST( 4, 6) 0.000000 0.000000 VARIABLE( 1, 1) 0.000000 4.000000 VARIABLE( 1, 2) 0.000000 4.000000 VARIABLE( 1, 3) 50.00000 0.000000 VARIABLE( 1, 4) 0.000000 7.000000 VARIABLE( 1, 5) 0.000000 2.000000 VARIABLE( 1, 6) 0.000000 2.000000 VARIABLE( 2, 1) 0.000000 2.000000 VARIABLE( 2, 2) 0.000000 2.000000 VARIABLE( 2, 3) 20.00000 0.000000 VARIABLE( 2, 4) 0.000000 4.000000 VARIABLE( 2, 5) 10.00000 0.000000 VARIABLE( 2, 6) 30.00000 0.000000 VARIABLE( 3, 1) 30.00000 0.000000 VARIABLE( 3, 2) 20.00000 0.000000 VARIABLE( 3, 3) 0.000000 0.000000 VARIABLE( 3, 4) 0.000000 1.000000 VARIABLE( 3, 5) 0.000000 99978.00 VARIABLE( 3, 6) 0.000000 99978.00 VARIABLE( 4, 1) 0.000000 10003.00 VARIABLE( 4, 2) 0.000000 3.000000 VARIABLE( 4, 3) 0.000000 100002.0 VARIABLE( 4, 4) 30.00000 0.000000 VARIABLE( 4, 5) 0.000000 100000.0 VARIABLE( 4, 6) 20.00000 0.000000
Row Slack or Surplus Dual Price 1 2460.000 -1.000000 2 0.000000 -12.00000 3 0.000000 -12.00000 4 0.000000 -13.00000 5 0.000000 -15.00000
6 0.000000 -15.00000 7 0.000000 -15.00000 8 0.000000 0.000000 9 0.000000 0.000000 10 0.000000 -7.000000 11 0.000000 15.00000 解决方案:
A1向B2运输50万吨;A2向B2运输20万吨,向B4运输40万吨;A3向B1运输50万吨.此时运费最少为2460.000万元.
启发和启示:
虽然解决上述这样一个问题是比较复杂的,但是解决了这样一个问题就等于解决了这样类似的一系列问题,《运筹学》这门课最大的特点就是可以用同一种方法解决一系列类似的问题,也意味着,上述解题方法让我们解决了一系列类似的供销不平衡问题,这可以算是一种成就。并且对于我们物流专业的学生而言,运输问题与我们息息相关,解决运输问题对于我们而言意义重大。如何使费用最低、找出最佳的运输路线会是我们学习中甚至在以后的工作中都会常常遇到的问题,因此作为物流专业的我们更应该好好掌握这门技术,以便在学习或在以后的工作中能够得到好的运用。
问题的推广:
上述我们解决的是运输问题中常见的供销不平衡问题,此问题具有很强的代表性,可以运用以上方法解决所有运输问题中的供销不平衡问题。但是供销不平衡问题只是所有运输类问题的一类,除供销不平衡问题以外,还有供销平衡问题,而在日常生活中,供销不平衡和供销平衡问题都很常见。因此我们应该在掌握了供销不平衡问题的基础上,运用已掌握的知识来解决供销平衡问题。 参考文献:
1、《运筹学基础》(第2版)—-何坚勇 清华大学出版社
2、《运筹学解题指导》---周华任 清华大学出版社2009
3、《运筹学习题集(第4版)》---胡运权 清华大学出版社2010
产销不平衡运输问题建模
摘要 :运输问题是一类常见而且极其典型的线性规划问题,大都研究如何从某些生产地调运产品到某些销地去,且要使费用最小,因此,它的目的就是寻求最小费用的调运方案。在运输方式一定条件下,又受供应点、销售点地理位置条件限制,如何使得运输费用最低求出最优解,得出最佳运输方案,找出最佳运输路线是我们今天所要研究讨论的问题。
关键词:供销平衡;运输问题;最低费用;建模
问题:
设有三个河沙厂(A1,A2,A3)供应四个零售点(B1,B2,B3,B4)的河沙。假设等量的河沙在这些零售点使用效果相同。各河沙厂年产量、各零售点年需要量及从各河沙厂到各零售点运送单位河沙的运费如下表1-1所示。试求出总的运费最节省的河沙调拨方案。
分析:
1、产销问题:产量160,最低需求110,最高需求无限,但根据现有情况,最高总需求为210,因为B4销地最高可获得60,说明此问题为产销不平衡问题。
2、要将问题转换成产销不平衡问题则需要增加假象产地A4。
3、将需求量化为两部分,一部分满足最低需求,一部分满足差额。
4、可以利用产销不平衡数学模型:(求大于供)
Min
Zcijxij i1j1mnst.. xj1
mnijsi,i1,2,...,m
dj,j1,2,...,n x
i1ij
xij0
建模:
代码实现:
模型的lingo原始代码如下:
model:
sets:
cd/1..4/: capacity;
xd/1..6/: demand;
links(cd,xd): cost, variable;
endsets
min=@sum(links: cost* variable);
@for(xd(j):@sum(cd(i): variable(i, j))=demand(j));
@for(cd(i):@sum(xd(j): variable(i, j))=capacity(i)); data:
capacity= 50 60 50 50 ;
demand=30 20 70 30 10 50;
cost= 16 16 13 22 17 17
14 14 13 19 15 15
19 19 20 23 100000 100000
10000 0 100000 0 100000 0;
enddata
end
解答报告
Global optimal solution found.
Objective value: 2460.000
Infeasibilities: 0.000000
Total solver iterations: 10
Variable Value Reduced Cost CAPACITY( 1) 50.00000 0.000000 CAPACITY( 2) 60.00000 0.000000 CAPACITY( 3) 50.00000 0.000000 CAPACITY( 4) 50.00000 0.000000 DEMAND( 1) 30.00000 0.000000 DEMAND( 2) 20.00000 0.000000 DEMAND( 3) 70.00000 0.000000 DEMAND( 4) 30.00000 0.000000 DEMAND( 5) 10.00000 0.000000 DEMAND( 6) 50.00000 0.000000 COST( 1, 1) 16.00000 0.000000 COST( 1, 2) 16.00000 0.000000 COST( 1, 3) 13.00000 0.000000 COST( 1, 4) 22.00000 0.000000 COST( 1, 5) 17.00000 0.000000 COST( 1, 6) 17.00000 0.000000 COST( 2, 1) 14.00000 0.000000 COST( 2, 2) 14.00000 0.000000 COST( 2, 3) 13.00000 0.000000 COST( 2, 4) 19.00000 0.000000 COST( 2, 5) 15.00000 0.000000
COST( 2, 6) 15.00000 0.000000 COST( 3, 1) 19.00000 0.000000 COST( 3, 2) 19.00000 0.000000 COST( 3, 3) 20.00000 0.000000 COST( 3, 4) 23.00000 0.000000 COST( 3, 5) 100000.0 0.000000 COST( 3, 6) 100000.0 0.000000 COST( 4, 1) 10000.00 0.000000 COST( 4, 2) 0.000000 0.000000 COST( 4, 3) 100000.0 0.000000 COST( 4, 4) 0.000000 0.000000 COST( 4, 5) 100000.0 0.000000 COST( 4, 6) 0.000000 0.000000 VARIABLE( 1, 1) 0.000000 4.000000 VARIABLE( 1, 2) 0.000000 4.000000 VARIABLE( 1, 3) 50.00000 0.000000 VARIABLE( 1, 4) 0.000000 7.000000 VARIABLE( 1, 5) 0.000000 2.000000 VARIABLE( 1, 6) 0.000000 2.000000 VARIABLE( 2, 1) 0.000000 2.000000 VARIABLE( 2, 2) 0.000000 2.000000 VARIABLE( 2, 3) 20.00000 0.000000 VARIABLE( 2, 4) 0.000000 4.000000 VARIABLE( 2, 5) 10.00000 0.000000 VARIABLE( 2, 6) 30.00000 0.000000 VARIABLE( 3, 1) 30.00000 0.000000 VARIABLE( 3, 2) 20.00000 0.000000 VARIABLE( 3, 3) 0.000000 0.000000 VARIABLE( 3, 4) 0.000000 1.000000 VARIABLE( 3, 5) 0.000000 99978.00 VARIABLE( 3, 6) 0.000000 99978.00 VARIABLE( 4, 1) 0.000000 10003.00 VARIABLE( 4, 2) 0.000000 3.000000 VARIABLE( 4, 3) 0.000000 100002.0 VARIABLE( 4, 4) 30.00000 0.000000 VARIABLE( 4, 5) 0.000000 100000.0 VARIABLE( 4, 6) 20.00000 0.000000
Row Slack or Surplus Dual Price 1 2460.000 -1.000000 2 0.000000 -12.00000 3 0.000000 -12.00000 4 0.000000 -13.00000 5 0.000000 -15.00000
6 0.000000 -15.00000 7 0.000000 -15.00000 8 0.000000 0.000000 9 0.000000 0.000000 10 0.000000 -7.000000 11 0.000000 15.00000 解决方案:
A1向B2运输50万吨;A2向B2运输20万吨,向B4运输40万吨;A3向B1运输50万吨.此时运费最少为2460.000万元.
启发和启示:
虽然解决上述这样一个问题是比较复杂的,但是解决了这样一个问题就等于解决了这样类似的一系列问题,《运筹学》这门课最大的特点就是可以用同一种方法解决一系列类似的问题,也意味着,上述解题方法让我们解决了一系列类似的供销不平衡问题,这可以算是一种成就。并且对于我们物流专业的学生而言,运输问题与我们息息相关,解决运输问题对于我们而言意义重大。如何使费用最低、找出最佳的运输路线会是我们学习中甚至在以后的工作中都会常常遇到的问题,因此作为物流专业的我们更应该好好掌握这门技术,以便在学习或在以后的工作中能够得到好的运用。
问题的推广:
上述我们解决的是运输问题中常见的供销不平衡问题,此问题具有很强的代表性,可以运用以上方法解决所有运输问题中的供销不平衡问题。但是供销不平衡问题只是所有运输类问题的一类,除供销不平衡问题以外,还有供销平衡问题,而在日常生活中,供销不平衡和供销平衡问题都很常见。因此我们应该在掌握了供销不平衡问题的基础上,运用已掌握的知识来解决供销平衡问题。 参考文献:
1、《运筹学基础》(第2版)—-何坚勇 清华大学出版社
2、《运筹学解题指导》---周华任 清华大学出版社2009
3、《运筹学习题集(第4版)》---胡运权 清华大学出版社2010