安徽工业大学
—数学建模论文
组 员:
班 级:
指导教师:侯为根
货 物 运 送 问 题
2013-7-30
1、问题重述
一公司有二厂,分处A 、B 两市,另外还有4间具有存贮机构的库房,分别在P 、Q 、R 和S 市。公司出售产品给6家客户C 1,C 2, „,C 6,由各库房或直接由工厂向客户供货。
配送货物的费用由公司负担,单价见下表:
表一
受货者
A 市厂
P 库房 Q 库房 R 库房 S 库房 客户C 1 客户C 2 客户C 3 客户C 4 客户C 5 客户C 6
0.5 0.5 1.0 0.2 1.0 ---- 1.5 2.0 ---- 1.0
B 市厂 ---- 0.3 0.5 0.2 2.0 ---- ---- ---- ---- ----
供货者 P 库房 ---- 1.5 0.5 1.5 ---- 1.0
Q 库房 1.0 0.5 0.5 1.0 0.5 ----
R 库房 ---- 1.5 2.0 ---- 0.5 1.5
S 库房 ---- ---- 0.2 1.5 0.5 1.5
注:单位元/吨; 划“----”表示无供货关系.
某些客户表示喜欢由某厂或某库房供货. 计有: C 1-------- A市厂 C 2-------- P库房 C 5--------Q 库房 C 6--------R 库房或S 库房
A 市厂月供货量不能超过150千吨,B 市厂月供货量不能超过200千吨。各库房的月最大流通量千吨数为
表二
各客户每月所必须满足的供货量为(单位:千吨)
表三
现假设可以在T 市和V 市建新库房,和扩大Q 市的库房,而库房的个数又不能多于4个,必要时可关闭P 市和S 市的库房。
建新库房和扩建Q 市库房的费用(计入利息)摊至每月为下表所列值(万元),它们的潜在的月流通量(千吨)也列于表中
表四
库房 T V Q (扩建)
月费用 1.2 0.4 0.3
流通量 30 25 20
关闭P 市库房月省费用1万元;关闭S 市库房月省0.5万元。 涉及新库房的配送费用单价(元/吨)见下表
表五
T V C 1 C 2 C 3 C 4 C 5 C 6
2、问题分析
随着经济的发展、交通网络的不断健全以及各项科技的进步。使得各个行业竞争激烈,生产商要在满足客户要求与尽量减少生产成本之间面临更复杂决策。在整个配送问题中,所有的对象有三种,一种就是厂房,它是货物的产源地分别地处A、B两个市,它所生产的货物,可以直接运给客户,也可以放到库房里存放;第二种就是库房,用于存放来自于A、B两个厂房的生产物以及将货物配送给它的顾客,这种库房分别位于P、Q、R、S市;第三种就是客户,接收由工厂或库房提供的货物;
问题一、在配送过程中,我们需要建立一个数学模型来计算如何配货公司的运输费用最低,如何配送货物,既能满足客户的要求,又能为公司节约足够的资金。当然还要考虑到增加工厂和库房的生产能力对配送费用的影响,费用单价、客户对供应货物的最低要求以及工厂和库房生产能力各微小变化对配货方案的影响等因素来进行方案设计。设计出来的方案还要能体现出公司在什么样的改进下能获得更高的经济效益。
可以用数学模型来建立最优解,进而解决设计方案的建立。
问题二、在问题一得基础上几乎没什么变化,A ,B 俩市供货量限制和客户需求量都没发生变化;改变的是库房,在 T、V 市新建库房,扩建 Q 库房,即改变
0.6 0.4
0.4 0.3
1.2 0.6 0.5 ---- 0.3 0.8
---- 0.4 ---- 0.5 0.6 0.9
了流通量,必要时刻关闭 P 、S 库房;也就是说到底对库房做出怎样的变化, 这就引进了应否关闭 P, S 和应否新建 T,V 以及应否扩大 Q 库房,引进零、一变量解决好此问题公司与兴建新的库房,根据实际问题条件分析下应建那些新库房?Q 市库房是否扩建?P 市和S 市库房应否关闭?配运费用最小的配货方案是什么?根据实际情况为公司减少运费提高利润,设计出合理的配货方案。 3、符号说明
问题一、A 、B 为生产厂,P 、Q 、R 、S 为库房,C1、C2、C3、C4、C5、C6为客户。 工厂向各库房和客户的供货量以及库房向客户的供货量如下两表(单位:千吨) 工厂向各库房的供应量:
工厂和各库房向客户的供应量: 模型要求公司在配货时的最小运输费用, 即: min 问题二、
A 、B 给库房P 、Q 、R 、S 、T 、V 的货物量为:
X 11、X 12、X 13、X 14、X 15、X 16; X 21、X 22、X 23、X 24、X 25、X 26;
由A 、B 供给客户C1、C2、C3、C4、C5、C6的货物量为: y 11、y 12、y 13、y 14、y 15、y 16; y 21、y 22、y 23、y 24、y 25、y 26;
由库房P 、Q 、R 、S 、T 、V 供给客户C1、C2、C3、C4、C5、C6的货物量为: z 11、z 12、z 13、z 14、z 15、z 16; z 21、z 22、z 23、z 24、z 25、z 26; z 31、z 32、z 33、z 34、z 35、z 36; z 41、z 42、z 43、z 44、z 45、z 46; z 51、z 52、z 53、z 53、z 55、z 56; z 61、z 62、z 63、z 64、z 65、z 66;
由于最多只能用四个客房,故要确定选哪四个,即对P 、Q 、R 、S 、T 、V 五个库房定一个零、五变量:
a 1、a 2、a 3、a 4、a 5表示库房P 、Q 、S 、T 、V 的0-1变量: a 1为0表示关闭P 库房,为1表示未关闭P 库房; a 2为0表示未扩建Q 库房,为1表示未关闭P 库房; a 3为0表示关闭R 库房,为1表示未关闭R 库房; a 4为0表示未新建T 库房,为1表示扩建T 库房; a5为0表示 新建V 库房,为1表示扩建V 库房; 4、模型假设
(1)公司出售产品给6家客户C 1,C 2, „,C 6,由各库房或直接由工厂向客户供货。 (2)A 市厂月供货量不能超过150千吨,B 市厂月供货量不能超过200千吨。库房的月最大流通量保持不变,即在库房有货物剩余的情况下,月最大流通量不因此而加大。
(3)某些客户表示喜欢由某厂或某库房供货. 计有:
C 1-------- A市厂 C 2-------- P库房 C 5--------Q 库房 C 6--------R 库房或S 库房
假设顾客与库房之间不存在喜好关系。
(4)在问题的解决过程中,由于这个问题只提及运输费用的问题,而不考虑公司在货物卖出时的收益问题,所以我们只对运输上的经济情况进行讨论,不管运输时各个运输路线的单价如何变化,我们的模型都能将最好的方案给出来。 (5)假设可以在T 市和V 市建新库房,和扩大Q 市的库房,而库房的个数又不能多于4个,必要时可关闭P 市和S 市的库房。
5、模型建立
在配货过程中, 可以由A 市厂和B 市厂直接向客户直接供货, 也可以把两厂的货物运到P 、Q 、R 、S 四个仓库之后再向客户供货,所以在这个模型中,我们首先把A ,B 看成生产地,同时又把它们作为与P 、Q 、R 、S 一样的库房来看待,并规定产地A 、B 不向库房A 、B 运送货物,在处理的时候,如果相互之间没有配送关系,我们可以认为配送货物的费用为“无穷大”,在具体运算时,我们再对“无穷大”赋予一个比较大的具体值。 配送货物的费用由公司负担,单价见下表: 受货者
A 市厂
P 库房 Q 库房 R 库房 S 库房 客户C 1 客户C 2 客户C 3 客户C 4 客户C 5 客户C 6
0.5 0.5 1.0 0.2 1.0 ---- 1.5 2.0 ---- 1.0
B 市厂 ---- 0.3 0.5 0.2 2.0 ---- ---- ---- ---- ----
供货者 P 库房 ---- 1.5 0.5 1.5 ---- 1.0
Q 库房 1.0 0.5 0.5 1.0 0.5 ----
R 库房 ---- 1.5 2.0 ---- 0.5 1.5
S 库房 ---- ---- 0.2 1.5 0.5 1.5
注:单位元/吨; 划“----”表示无供货关系. 工厂向各库房的供应量:
可以得出以下结果:
位于A 地的厂向P 、Q 、R 、S 地库房供应货物所需运费:
0. 5⨯X 11+0. 5⨯X 12+1. 0⨯X 13+0. 5⨯X 14
位于B 地的厂向P 、Q 、R 、S 地库房供应货物所需运费:
0. 3⨯X 22+0. 5⨯X 23+0. 2⨯X 24
各库房货物的月流通量:
则得之,X 11
各客户每月所必须满足的供货量为(单位:千吨) 工厂和各库房向客户的供应量:
问题
客户C1可分别由工厂A 、B 以及库房Q 三方供应货物,且配货所需单价分别为1.0、2.0、1.0,则得为C1配货的花费为:
1. 0⨯X 011+2. 0⨯X 012+1. 0⨯X 014
C1客户的月需求为:
X
011
+X 012+X 014=50;
客户C2可分别库房P 、Q 、R 三方供应货物,且配货所需单价分别为1.5、0.5、1.5,则得为C 配货的花费为:
1. 5⨯X 023+0. 5⨯X 024+1. 5⨯X 025
C2客户的月需求量为:
X
023
+X 024+X 025=10;
客户C3可分别由工厂A 以及库房P 、Q 、R 、S 五方供应货物,且配货所需单价分别为1.5、0.5、0.5、2.0、0.2,则得为C3配货的花费为:
1. 5⨯X 031+0. 5⨯X 033+0. 5⨯X 034+2. 0⨯X 035+. 02⨯X 036
C3客户的月需求量为:
X
031
+X 033+X 034+X 035+X 036=40;
客户C4可分别由工厂A 以及库房P 、Q 、S 四方供应货物,且配货所需单价分别为2.0、1.5、1.0、1.5,则得为C4配货的花费为:
2. 0⨯X 041+1. 5⨯X 043+1. 0⨯X 044+1. 5⨯X 046
C4客户的月需求量为:
X
041
+X 043+X 044+X 046=35;
客户C5可分别由库房Q 、R 、S 三方供应货物,且配货所需单价分别为0.5、0.5、0。5,则得为C5配货的花费为:
0. 5⨯X 054+0. 5⨯X 055+0. 5⨯X 056
C5客户的月需求量为:
X
054
+X 055+X 056=60;
客户C6可分别由工厂A 以及库房P 、R 、S 四方供应货物,且配货所需单价分别为1.0、1.0、1.5、1.5,则得为C6配货的花费为:
1. 0⨯X 061+1. 0⨯X 063+1. 5⨯X 065+1. 5⨯X 066
客户C6的月需求量为:
X
061
+X 063+X 065+X 066=20;
根据上面式子中的所有变量以及题给意思可知: A 厂的每月最大供应量为:
X
11
+X 12+X 13+X 14+X 011+X 031+X 041+X 061≤150;
B 厂的每月最大供应量为:
X
22
+X 23+X 24+X 012≤200;
从问题考虑,使费用最小,即为库房的存储量供完货后为0是最好的。P 库房的货物量有A 厂,运出的货物量为客户C2、C3、C4、C6,由约束条件如下:
X
023
+X 033+X 043+X 063-X 11=0;
Q 库房的货物量有A 、B 厂,运出的货物量为客户C1、C2、C3、C4、C5,由约束条件如下:
X
014
+X 024+X 034+X 044+X 054-X 12-X 22=0;
R 库房的货物量有A 、B 厂,运出的货物量为客户C2、C3、C5、C6,由约束条件如下:
X
025
+X 035+X 055+X 065-X 13-X 23=0;
S 库房的货物量有A 、B 厂,运出的货物量为客户C3、C4、C5、C6,由约束条件如下:
X
036
+X 046+X 056+X 066-X 14-X 24=0;
总结以上的模型, 可得配货的最小运输费用问题实际上为一个线性规划模型: 目标函数:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; 约束条件: X 11
X 11+X12+X13+X14+X011+X031+X041+X061
则建立模型如下:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; X 11
X 11+X12+X13+X14+X011+X031+X041+X061
建新库房和扩建Q 市库房的费用(计入利息)摊至每月为下表所列值(万元),它们的潜在的月流通量(千吨)也列于表中
库房 T V Q (扩建)
月费用 1.2 0.4 0.3
流通量 30 25 20
关闭P 市库房月省费用1万元;关闭S 市库房月省0.5万元。 涉及新库房的配送费用单价(元/吨)见下表
T V C 1 C 2 C 3 C 4 C 5 C 6
问题二基于问题一的内容故可得出如下:
a 1、a 2、a 3、a 4、a 5表示库房P 、Q 、S 、T 、V 的0-1变量: a 1为0表示关闭P 库房,为1表示未关闭P 库房; a 2为0表示未扩建Q 库房,为1表示未关闭P 库房; a 3为0表示关闭R 库房,为1表示未关闭R 库房; a 4为0表示未新建T 库房,为1表示扩建T 库房; a 5为0表示 新建V 库房,为1表示扩建V 库房; 则对P 库房的调整费用为-1+a1; 则对Q 房的调整费用为0.3*a2; 则对R 房的调整费用为-0.5+0.5*a3; 则对T 房的调整费用为1.2*a4; 则对V 房的调整费用为0.4*a5;
由题意可知目标函数为货物配送费用与库房调整费用相加得出:
0.6 0.4
0.4 0.3
1.2 0.6 0.5 ---- 0.3 0.8
---- 0.4 ---- 0.5 0.6 0.9
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
约束条件:
有问题一可以轻松得出:
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
Q 库房的存储量约束条件为: X 12+X22
R 库房的存储量约束条件为: X 13+X23
S 库房的存储量约束条件为: X 14+X24
V 房的存储量约束条件为: X 16+X26
C1-C6客户需求量的约束条件: y 11+y2+z21+z51=50; z 12+z22+z32+z52+z62=10; y 13+z13+z23+z33+z43+z53=40; y 14+z14+z24+z44+z64=35; z 25+z35+z45+z55+z65=60; y 16+z16+z36+z46+z56+z66=20;
由问题一可知同理有要求供给平衡 z 12+z13+z14+z16-X 11=0; z 21+z22+z23+z24-X 12-X 22=0;
z 32+z33+z35+z36-X 13-X 23=0; z 43+z44+z45+z46-X 14-X 24=0; z 51+z52+z53+z55+z56-X 15-X 25=0; z 62+z64+z65+z66-X 16-X 26=0; 库房的约束条件为: a 1+a3+a4+a5
综上所述,有以下数学模型:
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
a 1+a3+a4+a5
6、模型求解: 问题一:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; X 11
X 11+X12+X13+X14+X011+X031+X041+X061
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
X 22+X23+X24+X25+X26+y21
7、结论解释{这段本来是lingo 运行的结果,现把结果给删去了,用表格体现的结果} 问题一:
该问题的最小费用为: 210.5000单位; 对应的配货方案见下表: 受货者
A 市厂 B 市厂
P 库房 40 Q 库房 50 R 库房 15 S 库房 40 客户C 1 50 客户C 2 客户C 3 客户C 4 客户C 5 供货者
P 库房 Q 库房 10 40 35 5 R 库房
15 S 库房 40 A-P :40千吨,A-S :40千吨,A-C 1:50千吨,A-C 6:20千吨; B-Q :50千吨,B-R :15千吨;
Q-C 2:10千吨,Q-C 4:35千吨,Q-C 5:5千吨; P-C 3:40千吨,R-C 5:15千吨,S-C 5:40千吨; 问题二:
该问题的最小费用为:106.4000单位; A 市厂 B 市厂 Q 库房 R 库房
Q 库房 20 R 库房 40 S 库房 V 库房 25 客户C 1 50 客户C 2 10 客户C 3 客户C 4 10 客户C 5 60
关闭S 仓库,新建V 仓库;
A-R :40千吨,运往C 1:50千吨,运往C 6:20千吨;
S 库房 40 V 库房 25
B-Q :20千吨;运往V :25千吨
Q-C 2:10千吨;运往C 4:10千吨;运往C 5:60千吨; S-C 3:40千吨; V-C 4:25千吨;
在模型一中,我们发现虽然总费用最小,但是A 、B 两厂运送到s 库房的货物数量并不确定,即配货方案并不唯一,经过分析,发现A 、B 运送到S 的单价是相同的,所以不影响最后结果;在模型二中,我们也发现了类似的情况,因为从A 厂运到C 4和从A 厂将货物运到P 库房然后再运到C 4的费用也是相同的,所以在这里的配送方案也不唯一。所以在实际中,可以结合实际情况进行调配
8、模型优缺点
模型的优点:
(1) 模型将复杂的配货过程简单和直观化,利用简单的线性规划进行建模,再结合计算机进行运算,整个过程简单而易操作。 (2) 模型具有一般性和普遍性,适合任何情况下的最优配货方案的设计。(3) 该模型的方法还可以推广大更大的经济领域中去,具有很大的可塑性。 模型的不足:
(1)模型中的变量和参数太多,在输入的时候可能比较麻烦。
(2)在模型的求解过程中,所给出的运货为零的方案在实际计算中并非真正为0,而是计算机在计算过程中采取了舍入的方法,这些对模型结果的影响并不大,因为数据足够小,而且在实际中,如果运送的货物很少的话,对资源反而是一种浪费。
9、模型推广
1. 客户满意度:
在模型二中,我们对客户喜好程度的处理是采取将近100%地满足客户的要求,而客户对某个厂房和库房的喜好也是100%,但是,在实际中并非如此。所以在处理客户的选择的时候应该引入客户对某厂房和某库房货物的满意度,即客户对该厂房或库房的喜好程度,所要求的货物在总的需求量中的比例等,来作为对货物配送中的一个主要的考虑因素。 2. 公司的收益: 在整个模型中,我们只考虑了怎么使运输费用最少的问题,却没有考虑货物卖出之后能挣多少的问题,一批货物运到这一客户和运到那一客户收益有什么不同,货物的多少对收益又有什么影响,在实际中,收益才是配货的首要考虑问题。所以,在模型中加入这一因素,就可以实现对整个公司经济活动的宏观调控。
10、附件(各种程序等) 问题一中的lingo 程序:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; X 11
X 11+X12+X13+X14+X011+X031+X041+X061
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
X 16+X26
安徽工业大学
—数学建模论文
组 员:
班 级:
指导教师:侯为根
货 物 运 送 问 题
2013-7-30
1、问题重述
一公司有二厂,分处A 、B 两市,另外还有4间具有存贮机构的库房,分别在P 、Q 、R 和S 市。公司出售产品给6家客户C 1,C 2, „,C 6,由各库房或直接由工厂向客户供货。
配送货物的费用由公司负担,单价见下表:
表一
受货者
A 市厂
P 库房 Q 库房 R 库房 S 库房 客户C 1 客户C 2 客户C 3 客户C 4 客户C 5 客户C 6
0.5 0.5 1.0 0.2 1.0 ---- 1.5 2.0 ---- 1.0
B 市厂 ---- 0.3 0.5 0.2 2.0 ---- ---- ---- ---- ----
供货者 P 库房 ---- 1.5 0.5 1.5 ---- 1.0
Q 库房 1.0 0.5 0.5 1.0 0.5 ----
R 库房 ---- 1.5 2.0 ---- 0.5 1.5
S 库房 ---- ---- 0.2 1.5 0.5 1.5
注:单位元/吨; 划“----”表示无供货关系.
某些客户表示喜欢由某厂或某库房供货. 计有: C 1-------- A市厂 C 2-------- P库房 C 5--------Q 库房 C 6--------R 库房或S 库房
A 市厂月供货量不能超过150千吨,B 市厂月供货量不能超过200千吨。各库房的月最大流通量千吨数为
表二
各客户每月所必须满足的供货量为(单位:千吨)
表三
现假设可以在T 市和V 市建新库房,和扩大Q 市的库房,而库房的个数又不能多于4个,必要时可关闭P 市和S 市的库房。
建新库房和扩建Q 市库房的费用(计入利息)摊至每月为下表所列值(万元),它们的潜在的月流通量(千吨)也列于表中
表四
库房 T V Q (扩建)
月费用 1.2 0.4 0.3
流通量 30 25 20
关闭P 市库房月省费用1万元;关闭S 市库房月省0.5万元。 涉及新库房的配送费用单价(元/吨)见下表
表五
T V C 1 C 2 C 3 C 4 C 5 C 6
2、问题分析
随着经济的发展、交通网络的不断健全以及各项科技的进步。使得各个行业竞争激烈,生产商要在满足客户要求与尽量减少生产成本之间面临更复杂决策。在整个配送问题中,所有的对象有三种,一种就是厂房,它是货物的产源地分别地处A、B两个市,它所生产的货物,可以直接运给客户,也可以放到库房里存放;第二种就是库房,用于存放来自于A、B两个厂房的生产物以及将货物配送给它的顾客,这种库房分别位于P、Q、R、S市;第三种就是客户,接收由工厂或库房提供的货物;
问题一、在配送过程中,我们需要建立一个数学模型来计算如何配货公司的运输费用最低,如何配送货物,既能满足客户的要求,又能为公司节约足够的资金。当然还要考虑到增加工厂和库房的生产能力对配送费用的影响,费用单价、客户对供应货物的最低要求以及工厂和库房生产能力各微小变化对配货方案的影响等因素来进行方案设计。设计出来的方案还要能体现出公司在什么样的改进下能获得更高的经济效益。
可以用数学模型来建立最优解,进而解决设计方案的建立。
问题二、在问题一得基础上几乎没什么变化,A ,B 俩市供货量限制和客户需求量都没发生变化;改变的是库房,在 T、V 市新建库房,扩建 Q 库房,即改变
0.6 0.4
0.4 0.3
1.2 0.6 0.5 ---- 0.3 0.8
---- 0.4 ---- 0.5 0.6 0.9
了流通量,必要时刻关闭 P 、S 库房;也就是说到底对库房做出怎样的变化, 这就引进了应否关闭 P, S 和应否新建 T,V 以及应否扩大 Q 库房,引进零、一变量解决好此问题公司与兴建新的库房,根据实际问题条件分析下应建那些新库房?Q 市库房是否扩建?P 市和S 市库房应否关闭?配运费用最小的配货方案是什么?根据实际情况为公司减少运费提高利润,设计出合理的配货方案。 3、符号说明
问题一、A 、B 为生产厂,P 、Q 、R 、S 为库房,C1、C2、C3、C4、C5、C6为客户。 工厂向各库房和客户的供货量以及库房向客户的供货量如下两表(单位:千吨) 工厂向各库房的供应量:
工厂和各库房向客户的供应量: 模型要求公司在配货时的最小运输费用, 即: min 问题二、
A 、B 给库房P 、Q 、R 、S 、T 、V 的货物量为:
X 11、X 12、X 13、X 14、X 15、X 16; X 21、X 22、X 23、X 24、X 25、X 26;
由A 、B 供给客户C1、C2、C3、C4、C5、C6的货物量为: y 11、y 12、y 13、y 14、y 15、y 16; y 21、y 22、y 23、y 24、y 25、y 26;
由库房P 、Q 、R 、S 、T 、V 供给客户C1、C2、C3、C4、C5、C6的货物量为: z 11、z 12、z 13、z 14、z 15、z 16; z 21、z 22、z 23、z 24、z 25、z 26; z 31、z 32、z 33、z 34、z 35、z 36; z 41、z 42、z 43、z 44、z 45、z 46; z 51、z 52、z 53、z 53、z 55、z 56; z 61、z 62、z 63、z 64、z 65、z 66;
由于最多只能用四个客房,故要确定选哪四个,即对P 、Q 、R 、S 、T 、V 五个库房定一个零、五变量:
a 1、a 2、a 3、a 4、a 5表示库房P 、Q 、S 、T 、V 的0-1变量: a 1为0表示关闭P 库房,为1表示未关闭P 库房; a 2为0表示未扩建Q 库房,为1表示未关闭P 库房; a 3为0表示关闭R 库房,为1表示未关闭R 库房; a 4为0表示未新建T 库房,为1表示扩建T 库房; a5为0表示 新建V 库房,为1表示扩建V 库房; 4、模型假设
(1)公司出售产品给6家客户C 1,C 2, „,C 6,由各库房或直接由工厂向客户供货。 (2)A 市厂月供货量不能超过150千吨,B 市厂月供货量不能超过200千吨。库房的月最大流通量保持不变,即在库房有货物剩余的情况下,月最大流通量不因此而加大。
(3)某些客户表示喜欢由某厂或某库房供货. 计有:
C 1-------- A市厂 C 2-------- P库房 C 5--------Q 库房 C 6--------R 库房或S 库房
假设顾客与库房之间不存在喜好关系。
(4)在问题的解决过程中,由于这个问题只提及运输费用的问题,而不考虑公司在货物卖出时的收益问题,所以我们只对运输上的经济情况进行讨论,不管运输时各个运输路线的单价如何变化,我们的模型都能将最好的方案给出来。 (5)假设可以在T 市和V 市建新库房,和扩大Q 市的库房,而库房的个数又不能多于4个,必要时可关闭P 市和S 市的库房。
5、模型建立
在配货过程中, 可以由A 市厂和B 市厂直接向客户直接供货, 也可以把两厂的货物运到P 、Q 、R 、S 四个仓库之后再向客户供货,所以在这个模型中,我们首先把A ,B 看成生产地,同时又把它们作为与P 、Q 、R 、S 一样的库房来看待,并规定产地A 、B 不向库房A 、B 运送货物,在处理的时候,如果相互之间没有配送关系,我们可以认为配送货物的费用为“无穷大”,在具体运算时,我们再对“无穷大”赋予一个比较大的具体值。 配送货物的费用由公司负担,单价见下表: 受货者
A 市厂
P 库房 Q 库房 R 库房 S 库房 客户C 1 客户C 2 客户C 3 客户C 4 客户C 5 客户C 6
0.5 0.5 1.0 0.2 1.0 ---- 1.5 2.0 ---- 1.0
B 市厂 ---- 0.3 0.5 0.2 2.0 ---- ---- ---- ---- ----
供货者 P 库房 ---- 1.5 0.5 1.5 ---- 1.0
Q 库房 1.0 0.5 0.5 1.0 0.5 ----
R 库房 ---- 1.5 2.0 ---- 0.5 1.5
S 库房 ---- ---- 0.2 1.5 0.5 1.5
注:单位元/吨; 划“----”表示无供货关系. 工厂向各库房的供应量:
可以得出以下结果:
位于A 地的厂向P 、Q 、R 、S 地库房供应货物所需运费:
0. 5⨯X 11+0. 5⨯X 12+1. 0⨯X 13+0. 5⨯X 14
位于B 地的厂向P 、Q 、R 、S 地库房供应货物所需运费:
0. 3⨯X 22+0. 5⨯X 23+0. 2⨯X 24
各库房货物的月流通量:
则得之,X 11
各客户每月所必须满足的供货量为(单位:千吨) 工厂和各库房向客户的供应量:
问题
客户C1可分别由工厂A 、B 以及库房Q 三方供应货物,且配货所需单价分别为1.0、2.0、1.0,则得为C1配货的花费为:
1. 0⨯X 011+2. 0⨯X 012+1. 0⨯X 014
C1客户的月需求为:
X
011
+X 012+X 014=50;
客户C2可分别库房P 、Q 、R 三方供应货物,且配货所需单价分别为1.5、0.5、1.5,则得为C 配货的花费为:
1. 5⨯X 023+0. 5⨯X 024+1. 5⨯X 025
C2客户的月需求量为:
X
023
+X 024+X 025=10;
客户C3可分别由工厂A 以及库房P 、Q 、R 、S 五方供应货物,且配货所需单价分别为1.5、0.5、0.5、2.0、0.2,则得为C3配货的花费为:
1. 5⨯X 031+0. 5⨯X 033+0. 5⨯X 034+2. 0⨯X 035+. 02⨯X 036
C3客户的月需求量为:
X
031
+X 033+X 034+X 035+X 036=40;
客户C4可分别由工厂A 以及库房P 、Q 、S 四方供应货物,且配货所需单价分别为2.0、1.5、1.0、1.5,则得为C4配货的花费为:
2. 0⨯X 041+1. 5⨯X 043+1. 0⨯X 044+1. 5⨯X 046
C4客户的月需求量为:
X
041
+X 043+X 044+X 046=35;
客户C5可分别由库房Q 、R 、S 三方供应货物,且配货所需单价分别为0.5、0.5、0。5,则得为C5配货的花费为:
0. 5⨯X 054+0. 5⨯X 055+0. 5⨯X 056
C5客户的月需求量为:
X
054
+X 055+X 056=60;
客户C6可分别由工厂A 以及库房P 、R 、S 四方供应货物,且配货所需单价分别为1.0、1.0、1.5、1.5,则得为C6配货的花费为:
1. 0⨯X 061+1. 0⨯X 063+1. 5⨯X 065+1. 5⨯X 066
客户C6的月需求量为:
X
061
+X 063+X 065+X 066=20;
根据上面式子中的所有变量以及题给意思可知: A 厂的每月最大供应量为:
X
11
+X 12+X 13+X 14+X 011+X 031+X 041+X 061≤150;
B 厂的每月最大供应量为:
X
22
+X 23+X 24+X 012≤200;
从问题考虑,使费用最小,即为库房的存储量供完货后为0是最好的。P 库房的货物量有A 厂,运出的货物量为客户C2、C3、C4、C6,由约束条件如下:
X
023
+X 033+X 043+X 063-X 11=0;
Q 库房的货物量有A 、B 厂,运出的货物量为客户C1、C2、C3、C4、C5,由约束条件如下:
X
014
+X 024+X 034+X 044+X 054-X 12-X 22=0;
R 库房的货物量有A 、B 厂,运出的货物量为客户C2、C3、C5、C6,由约束条件如下:
X
025
+X 035+X 055+X 065-X 13-X 23=0;
S 库房的货物量有A 、B 厂,运出的货物量为客户C3、C4、C5、C6,由约束条件如下:
X
036
+X 046+X 056+X 066-X 14-X 24=0;
总结以上的模型, 可得配货的最小运输费用问题实际上为一个线性规划模型: 目标函数:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; 约束条件: X 11
X 11+X12+X13+X14+X011+X031+X041+X061
则建立模型如下:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; X 11
X 11+X12+X13+X14+X011+X031+X041+X061
建新库房和扩建Q 市库房的费用(计入利息)摊至每月为下表所列值(万元),它们的潜在的月流通量(千吨)也列于表中
库房 T V Q (扩建)
月费用 1.2 0.4 0.3
流通量 30 25 20
关闭P 市库房月省费用1万元;关闭S 市库房月省0.5万元。 涉及新库房的配送费用单价(元/吨)见下表
T V C 1 C 2 C 3 C 4 C 5 C 6
问题二基于问题一的内容故可得出如下:
a 1、a 2、a 3、a 4、a 5表示库房P 、Q 、S 、T 、V 的0-1变量: a 1为0表示关闭P 库房,为1表示未关闭P 库房; a 2为0表示未扩建Q 库房,为1表示未关闭P 库房; a 3为0表示关闭R 库房,为1表示未关闭R 库房; a 4为0表示未新建T 库房,为1表示扩建T 库房; a 5为0表示 新建V 库房,为1表示扩建V 库房; 则对P 库房的调整费用为-1+a1; 则对Q 房的调整费用为0.3*a2; 则对R 房的调整费用为-0.5+0.5*a3; 则对T 房的调整费用为1.2*a4; 则对V 房的调整费用为0.4*a5;
由题意可知目标函数为货物配送费用与库房调整费用相加得出:
0.6 0.4
0.4 0.3
1.2 0.6 0.5 ---- 0.3 0.8
---- 0.4 ---- 0.5 0.6 0.9
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
约束条件:
有问题一可以轻松得出:
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
Q 库房的存储量约束条件为: X 12+X22
R 库房的存储量约束条件为: X 13+X23
S 库房的存储量约束条件为: X 14+X24
V 房的存储量约束条件为: X 16+X26
C1-C6客户需求量的约束条件: y 11+y2+z21+z51=50; z 12+z22+z32+z52+z62=10; y 13+z13+z23+z33+z43+z53=40; y 14+z14+z24+z44+z64=35; z 25+z35+z45+z55+z65=60; y 16+z16+z36+z46+z56+z66=20;
由问题一可知同理有要求供给平衡 z 12+z13+z14+z16-X 11=0; z 21+z22+z23+z24-X 12-X 22=0;
z 32+z33+z35+z36-X 13-X 23=0; z 43+z44+z45+z46-X 14-X 24=0; z 51+z52+z53+z55+z56-X 15-X 25=0; z 62+z64+z65+z66-X 16-X 26=0; 库房的约束条件为: a 1+a3+a4+a5
综上所述,有以下数学模型:
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
a 1+a3+a4+a5
6、模型求解: 问题一:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; X 11
X 11+X12+X13+X14+X011+X031+X041+X061
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
X 22+X23+X24+X25+X26+y21
7、结论解释{这段本来是lingo 运行的结果,现把结果给删去了,用表格体现的结果} 问题一:
该问题的最小费用为: 210.5000单位; 对应的配货方案见下表: 受货者
A 市厂 B 市厂
P 库房 40 Q 库房 50 R 库房 15 S 库房 40 客户C 1 50 客户C 2 客户C 3 客户C 4 客户C 5 供货者
P 库房 Q 库房 10 40 35 5 R 库房
15 S 库房 40 A-P :40千吨,A-S :40千吨,A-C 1:50千吨,A-C 6:20千吨; B-Q :50千吨,B-R :15千吨;
Q-C 2:10千吨,Q-C 4:35千吨,Q-C 5:5千吨; P-C 3:40千吨,R-C 5:15千吨,S-C 5:40千吨; 问题二:
该问题的最小费用为:106.4000单位; A 市厂 B 市厂 Q 库房 R 库房
Q 库房 20 R 库房 40 S 库房 V 库房 25 客户C 1 50 客户C 2 10 客户C 3 客户C 4 10 客户C 5 60
关闭S 仓库,新建V 仓库;
A-R :40千吨,运往C 1:50千吨,运往C 6:20千吨;
S 库房 40 V 库房 25
B-Q :20千吨;运往V :25千吨
Q-C 2:10千吨;运往C 4:10千吨;运往C 5:60千吨; S-C 3:40千吨; V-C 4:25千吨;
在模型一中,我们发现虽然总费用最小,但是A 、B 两厂运送到s 库房的货物数量并不确定,即配货方案并不唯一,经过分析,发现A 、B 运送到S 的单价是相同的,所以不影响最后结果;在模型二中,我们也发现了类似的情况,因为从A 厂运到C 4和从A 厂将货物运到P 库房然后再运到C 4的费用也是相同的,所以在这里的配送方案也不唯一。所以在实际中,可以结合实际情况进行调配
8、模型优缺点
模型的优点:
(1) 模型将复杂的配货过程简单和直观化,利用简单的线性规划进行建模,再结合计算机进行运算,整个过程简单而易操作。 (2) 模型具有一般性和普遍性,适合任何情况下的最优配货方案的设计。(3) 该模型的方法还可以推广大更大的经济领域中去,具有很大的可塑性。 模型的不足:
(1)模型中的变量和参数太多,在输入的时候可能比较麻烦。
(2)在模型的求解过程中,所给出的运货为零的方案在实际计算中并非真正为0,而是计算机在计算过程中采取了舍入的方法,这些对模型结果的影响并不大,因为数据足够小,而且在实际中,如果运送的货物很少的话,对资源反而是一种浪费。
9、模型推广
1. 客户满意度:
在模型二中,我们对客户喜好程度的处理是采取将近100%地满足客户的要求,而客户对某个厂房和库房的喜好也是100%,但是,在实际中并非如此。所以在处理客户的选择的时候应该引入客户对某厂房和某库房货物的满意度,即客户对该厂房或库房的喜好程度,所要求的货物在总的需求量中的比例等,来作为对货物配送中的一个主要的考虑因素。 2. 公司的收益: 在整个模型中,我们只考虑了怎么使运输费用最少的问题,却没有考虑货物卖出之后能挣多少的问题,一批货物运到这一客户和运到那一客户收益有什么不同,货物的多少对收益又有什么影响,在实际中,收益才是配货的首要考虑问题。所以,在模型中加入这一因素,就可以实现对整个公司经济活动的宏观调控。
10、附件(各种程序等) 问题一中的lingo 程序:
min=0.5*X11+0.5*X12+1.0X13+0.2*X14+0.3*X22+0.5*X23+0.2*X24+X011+2.0*X012+X014+1.5*X023+0.5*X024+1.5*X025+1.5*X031+0.5*X033+0.5*X034+2.0*X035+0.5*X036+2.0*X041+1.5*X043+X044+1.5*X046+0.5*X054+0.5*X055+0.5*X056+X061+X063+1.5*X065+1.5*X066; X 11
X 11+X12+X13+X14+X011+X031+X041+X061
Min =0.5*X11+0.5*X12+X13+0.2*X14+0.6*X15+0.4*X16+y11+1.5*y13+2*y14+y16+0.3*X22+0.5*X23+0.2*X24+0.4*X25+0.3*X26+2*y21+1.5*z12+0.5*z13+1.5*z14+z16+z21+0.5*z22+0.5*z 23+z24+0.5*z25+1.5*z32+2*z33+0.5*z35+1.5*z36+0.2*z43+1.5*z44+0.5*z45+1.5*z46+1.2*z51+0.6*z52+0.5*z53+0.3*z55+0.8*z56+0.4*z62+0.5*z64+0.6*z65+0.9*z66-1+a1+0.3*a2-0.5+0.5*a3+1.2*a4+0.4*a5
X 11+X12+X13+X14+X15+X16+y11+y13+y14+y16
X 16+X26