生产与存储的动态规划模型
生产与存储的动态规划模型
陈立云
[摘要]:本文讨论了关于生产与存储的问题,这是一个多阶段决策的生产问题,就此可建立一个动态规划的数学模型.利用运筹学和计算机的数学软件等相关知识,应用动态规划方法解决了这一问题,达到生产、需求与库存之间的平衡,以及在资源限制条件下的最优化的生产方案.并建立混合整数规划模型用LINDON数学软件进行检验.
关键词:数学模型;动态规划;状态变量;最优指标函数
1 问题的提出
如表所示:
0,每单位生产成本费为1(千元).同时任何一个时期生产能力所允许的最大生产批量不超过6个单位.又设每时期的每个单位产品库存费为0.5(千元),同时规定在第一期期初及第四期期末均无产品库存.试问:该工厂如何安排各个时期的生产与库存,使所花的总成本费用最低?
2 符号说明与问题重述
生产过程划分为四个阶段,阶段变量k1,2,3,4. 即:
状态变量 sk 表示第k阶段末的库存量,由已知得 s0s40
决策变量 xk 表示第k阶段的生产量,dk 表示第 k 阶段的需求量.
状态转移方程:sk1skxkdk ,
阶段指标函数 vk(sk,xk) 表示第 k阶段的总成本,它由两部分构成,一部分是第 k阶段的生产成本 ck(xk),另一部分是第 k 阶段的存贮费 hk(sk) .最优指标函数fk(sk)
已知时段k某产品的需求量为 dk(k=1,2,……K),任一时段若生产该产品,需付出生产准备费 c0 ,且生产每单位产品的生产成本为 n,若满足本时段需求后有剩余,每时段每单位产品需付出存贮费h0.设每时段最大生产能力为 Xm ,最大存贮量为Im,且第1时段初有库存量 s0 ,试制订产品的生产计划,即每时段的产量,使 K个时段的总费用最小.
为了通过具体的计算说明解决这问题的方法,现设k4,d12,d23,d32,d34,c03千元,n=1千元/单位,h00.5千元/单位.时期.s10,Xm6单位,Im没有给出,视为存贮量不受限制.
3 模型的建立
3.1 建立模型Ⅰ
在提出生产与存贮问题时,忽略生产准备费用,首先考虑到生产、需求与库存之间存在着的平衡关系,这是一个一般的线性规划问题,可假设生产量为x1,x2,x3,x4,由于存贮费用取决于库存量,则记第一、二、三时期末的库存量为s1,s2,s3,由此可以用生产成本与存贮费之和(记作Z)作为问题为目标函数,在已知的第一期期初及第四期期末均无产品库存s0s40,得到一个简单的线性规模型:
Minzxk0.5sk
k1k144
x1s12
x2s1s23
x3s2s32
x4s34
x1.....x46
x1.....x4,s1...s30
此模型可用单纯形法求解,或用数学软件Maple求解,也可将上模型输入LINDON求解,就可得到最优解(略).注意:这是在忽略生产准备费用时的最优解.
3.2 建立模型Ⅱ
以上用混合整数规划求解过多阶段生产计划,实际上,这是一类典型的动态优化问题,与用变分法建立连续动态优化模型不同的是,多阶段生产计划属于离散动态优化问题,动态规划模型是解决这类问题的有效方法.本文先讨论确定需求下的最优生产计划,并将它转化为典型的动态优化模型——最短路问题,然后研究随机需求下如何求解最优生产计划.由上述数据、假设,可建立一个动态规划的数学模型. s.t.
......xk00,.........xk1,2,3,....6 由题可知:ck(xk)3xk,........
................xk6
hk(sk)0.5sk
所以:vk(sk,xk)ck(xk)hk(sk)
minvk(sk,xk)fk1(sk1),..(k1,2,3,4)fk(sk)0xkk基本方程为: f0(s0)0,而kminskdk,6
4 模型Ⅱ的求解
动态规划的寻优方向一般有用逆序算法(反向递归)或顺序算法(正向递归)进行求解.当问题的第一阶段初和第三阶段末的状态方程均已知时,即s0s40,可采用两种方法求解.下面用顺序算法求解:
为了简化这个多阶段生产计划问题,可以将它从前向后地分解为一个个单时段问题.
(1)首先看第一个时期,为使4个时期的总费用最小,对于第一时期期初的存贮量s00,则可由状态转移方程:sk1skxkdk,考虑到s1,在最大生产能力为 Xm6与第一时期的需求量d12出发,则可能存在的s1的5种情况:
当k1时,有f(s1)minxc1(x1)h1(s1).
11
这时状态集合为:
ss0s4为整数
11|1mindk;6d1,且s1
k2
s1|0s1min9,62,且s1为整数
0,1,2,3,4.
下面就各状态分别计算:
f1(0)minxc1(2)h1(0)3120.505, 所以x12
12
f1(1)minxc1(3)h1(1)3130.516.5, 所以x
1313
f1(2)minx4c1(4)h1(2)3140.528 , 所以x14,
1
同理可得: f1(3)9.5,所以x15,
f1(4)11,所以x16
(2)当k2时,由
f2(s2)minc2(x2)h2(s2)f1(s1)
0x22
0minxc2(x2)h2(s2)f1(s2d2x
2)
22
其中由:2mins2d2,6,
s4
s
22|0s2mindk;6d2,且s2为整数
k3
而状态集合是: s2|0s2min6,63,且s2为整数
0,1,2,3.
下面就各状态分别计算:
f2(0)0minxc2(x2)h2(0)f1(3x2)
23
c2(0)h2(0)f1(3)09.5
minc(1)h(0)f(2)
21
c2(2)h2(0)f1(1)min482
9.5
56.5
c2(3)h2(0)f1(0)
65
所以x20,
f2(1)minc2(x2)h2(1)f1(4x2)0x24
c2(0)h2(1)f1(4)0.511c(1)h(1)f(3)4.59.5221 minc2(2)h2(1)f1(2)min5.5811.5
c(3)h(1)f(1)6.56.52217.55c2(4)h2(0)f1(0)
所以x20,同理可得:
f2(2)minc2(x2)h2(2)f1(5x2)14,所以x25 0x25
f2(3)minc2(x2)h2(3)f1(6x2)15.5 ,所以x26 0x26
注意:在计算f2(2)和f2(3)时,需要用到f1(5)和f1(6),由于每个时期的最大生产批量为6单位,故f1(5)和f1(6)没有意义的,就取f1(5)f1(6),其余类推.
(3)当k3时,由:
f3(s3)minc3(x3)h3(s3)f2(s3d3x3, 0x33
其中3mins32,6,而状态集合为:
s3s3|0s3mind4,6d3,且s3为整数
0,1,2,3,4
下面就各状态分别计算:
f3(0)minc3(x3)h3(0)f2(2x3)14,所以x30; 0x32
f3(1)minc3(x3)h3(1)f2(3x3)16,所以x30或3; 0x33
f3(2)minc3(x3)h3(2)f2(4x3)17.5,所以x34 0x34
f3(3)minc3(x3)h3(3)f2(5x3)19,所以x35 0x35
f3(4)minc3(x3)h3(4)f2(6x3)20.5,所以x36 0x36
(4)当k4时,因为要求第4时期期末的库存量为0,即为s40,故有:
f4(0)minc4(x4)h4(0)f3(4x4)0x44
c4(0)f3(4)020.5c(1)f(3)41943 minc4(2)f3(2)min517.520.5
c(3)f(1)61643714c4(4)f3(0)
所以有x40.
再回代求最优策略:由x40,s40得:
s3s4d4x44,所以有x36,
s2s3d3x34260,所以有x20,
s1s2d2x23,所以x15
故最优生产策略为:
x15,x20,x30 6,x4
而相应的全个生产过程中的4个时期的最小总成本是:20.5千元.
5 模型的检验
这时我们可以建立一个混合整数规划模型来检验动态规划方法的结果正确性:
建立模型Ⅲ:与模型Ⅰ比较,除了考虑随产品数量变化的费用(生产成本和存贮费用)外,还要考虑与生产数量无关的费用,即生产准备费用Tk,只要某个时期开工生产时就需要有的这项费用,引入了01变量wk,当wk0时表示不生产,当wk1生产.
Minz(Tkwkckxkhk(sh))(Tkc03,hk0.5)
k14
k1,2,3,4) s.t. sk1xkskdk,......(
1,.....xk0wk0,....xk0
xkXm,..........(在此Xm6)
s0s40
xk,sk0,..(k1,2,3,4)
这一模型也可将数据输入LINDON求解(代码附后),就可得到:
最优目标函数为:20.5
各变量值为:
w1=1 w2=0 w3=1 w4=0 x1=5 x2=0 x3=6 x4=0
s1=3 s2=0 s3=4
由此可验证动态规划方法的正确性.
参考文献:
[1]叶其孝.大学生数学建模竞赛辅导教材.长沙:湖北教育出版社.1993
[2]刘来福、曾文艺.数学模型与数学建模.北京:北京师范大学出版社.1997
[3]姜启源等编.数学模型(第三版).北京:高等教育出版社.2003
[4]胡知能.徐玖平编著.运筹学线性系统优化.北京:科学出版社.2003
[5]卢开澄.编著.单目标、多目标与整数规划.北京:清华大学出版社.1999
[6]黄桐城、鲍祥霖编.数学规划与对策论.上海:上海交通大学出版社.2002
[7]刘满凤、傅波、聂高辉编.运筹学模型与方法教程例题分析与题解.北京:清华大学出版社.2000
[8]魏权龄、王日爽、徐兵等编.数学规划与优化设计.北京:国防工业出版社.1984
[9]张有为编.动态规划.长沙:湖南科学技术出版社.1991
[10]罗伯特.E.拉森、约翰.L.卡斯梯编(陈伟基等译).动态规划原理.北京:清华大学出版社.1984
Produce with saving of development programming model
CHEN Li-yun
00Grade,Department of Mathematics,Shaoguan University,Shaoguan 512005,Guangdong ,China Abstract: This text discussed concerning produce with the saving problem, this is mathematics model that a many production problems that the stage make policy, can establish now a development programming. make use of the strategy learn with the related knowledge in etc. in software in mathematics of the calculator, applying the development programming method resolved this problem, attaining the production, need and equilibrium of the stock, and limit the superior the production project that turn that term descend in the resources. Establishing the integral of admixture programs, examining this model use LINDON mathematics software .
Key words:Mathematics model; The development programs; the appearance changes the deal;superior index sign function
用LINDON计算混合整数规划模型Ⅲ,代码:
min 3w1+3w2+3w3+3w4+x1+x2+x3+x4+0.5s1+0.5s2+0.5s3
s.t.
x1-s1=2
x2+s1-s2=3
x3+s2-s3=2
x4+s3=4
x1-6w1
x2-6w2
x3-6w3
x4-6w4
x1>=0
x2>=0
x3>=0
x4>=0
s1>=0
s2>=0
s3>=0
end