存储论——经济订货批量的R实现

2023-10-23 23:11

本文主要是介绍存储论——经济订货批量的R实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

存储论又称库存理论,是运筹学中发展较早的分支。早在 1915 年,哈李斯(F.Harris)针对银行货币的储备问题进行了详细的研究,建立了一个确定性的存储费用模型,并求得了最佳批量公式。1934 年威尔逊(R.H.Wilson)重新得出了这个公式,后来人们称这个公式为经济订购批量公式(简称为 EOQ 公式)。这是属于存储论的早期工作。存储论真正作为一门理论发展起来还是在二十世纪 50 年代的事。1958 年威汀 (T.M.Whitin)发表了《存储管理的理论》一书,随后阿罗(K.J.Arrow) 等发表了《存储和生产的数学理论研究》,毛恩(P.A.Moran)在 1959 年写了《存储理论》。此后,存储论成了运筹学中的一个独立的分支,有关学者相继对随机或非平稳需求的存储模型进行了广泛深入的研究。

一、存储论概述

现代经济活动的生产和经营活动都离不开存储,为了使生产和经营活动有条不紊地进行,都需要一定数量的储备物资来支持。所谓存贮实质上是将供应与需求两个环节以存储中心联结起来,起到协调与缓和供需之间矛盾的作用。存储模型的基本形式如下图所示:

1.1 库存管理的基本要素

(1)需求率:单位时间内对某种物品的需求量,用 D 表示。
(2)订货批量:一次订货中,包含某种货物的数量,用Q 表示。
(3)订货间隔期:两次订货之间的时间间隔,用 T 表示。

1.2 库存管理的基本费用

(1)购置费:购置物品时花费的费用,即因购置物品而支出的货款,等于物品的单价乘以需求量。由于供应商一般会给一次订购某一数量的商品折扣价格,因此购置费可能会随着每次订购商品批量不同而改变。
(2)存储费C1C1。指为保存物品而支付的费用,如利息、折旧、损耗、财产税、保险等。现代管理把库存占用资金的机会成本(即这些资金若投资于他处所能获得的收益)也计入保管费中,而机会成本占保管费的比例在40%以上。保管费用可占到库存价值的20%~35%。保管费用往往用占库存价值的百分比来估算。
(3)订货费C3C3。指为补充而需要订购物品时支付的费用。其构成有两类,一是与订货次数有关的费用,如准备订单、洽商等。二是与订货次数无关的费用,如运费,办公管理等费用。
(4)缺货费C2C2。由于存储不能满足需求而造成的损失。为补充订货往往比正常订货要增加额外的开支,为补足短缺造成加班加点的额外支出,未按期交货引起客户索赔、撤消合同甚至丧失市场等经济损失。

1.3 库存管理策略

所谓一个管理策略,是指决定什么情况下对存贮进行补充,以及补充数量的多少。 下面是一些比较常见的库存管理策略。
(1)t 循环策略:不论实际的存贮状态如何,总是每隔一个固定的时间t ,补充 一个固定的存储量Q 。
(2)(t,S) 策略:每隔一个固定的时间 t 补充一次,补充数量以补足一个固定的最大存储量 S 为准。因此,每次补充的数量是不固定的,要视实际存储量而定。当存储(余额)为 I 时,补充数量为Q = S − I 。
(3)(s,S) 策略:当存储(余额)为 I ,若 I > s ,则不对存储进行补充;若 I ≤ s , 则对存储进行补充,补充数量Q = S − I 。补充后达到最大存储量 S。s 称为订货点(或 保险存贮量、安全存贮量、警戒点等)。
在很多情况下,实际存储量需要通过盘点才能 得知。若每隔一个固定的时间t 盘点一次,得知当时存储 I ,然后根据 I 是否超过订货点 s,决定是否订货、订货多少,这样的策略称为(t,s,S)策略。

二、确定性存储模型

存储论的数学模型一般分成两类:一类是确定性模型,它不包含任何随机因素,另一类是带有随机因素的随机存贮模型,这里主要总结确定性存储模型。

2.1 经典的EOQ订货模型
模型1模型2模型3模型4
模型假设需求是连续的、均匀的,需求速度是常数 R(单位时间的需求量);补充可以瞬间实现,补充时间 t 近似为 0;单位 C1 存储费不变;每次订货量 Q 不变,订购费 C3 不变,货物单价 K 不变;单位缺货成本 C2 为无穷大在模型1假设基础上,补货需要一定时间,不考虑拖延时间,只考虑生产(装配)时间,生产速度是连续均匀的周期的,生产速度为常数 P(P>R)与模型一相比,允许缺货!!!,补货时间极短与模型一相比,补货时间较长,容许缺货
模型状态图

单位时间的总平均费用C(t)=C3t+KR+12C1RtC(t)=C3t+KR+12C1RtC(t)=1t[12C1(P−R)Rt2P+C3]C(t)=1t[12C1(P−R)Rt2P+C3]C(t,S)=1t[C1S22R+C2(Rt−S)22R+C3]C(t,S)=1t[C1S22R+C2(Rt−S)22R+C3]C(t,t2)=12(P−R)RP[C1t−2C1t2+(C1+C2)t22t]+C3tC(t,t2)=12(P−R)RP[C1t−2C1t2+(C1+C2)t22t]+C3t
最佳定货周期t∗=2C3C1R−−−√t∗=2C3C1Rt∗=2C3C1R−−−√⋅PP−R−−−−√t∗=2C3C1R⋅PP−Rt∗=2C3C1R−−−√⋅C2C1+C2−−−−−√t∗=2C3C1R⋅C2C1+C2t∗=2C3C1R−−−√⋅C1+C2C2−−−−−√⋅PP−R−−−−√t∗=2C3C1R⋅C1+C2C2⋅PP−R
最大缺货量00

B∗=2C1C3RC2(C1+C2)−−−−−−−−−−−√B∗=2C1C3RC2(C1+C2)

B∗=2C1C3R(C1+C2)C2−−−−−−−√⋅P−RP−−−−√B∗=2C1C3R(C1+C2)C2⋅P−RP
最佳定货量Q∗=Rt∗=2C3RC1−−−−√Q∗=Rt∗=2C3RC1Q∗=2C3RC1−−−−√⋅P−RP−−−−√Q∗=2C3RC1⋅P−RPQ∗=2C3RC1−−−−√⋅C1+C2C2−−−−−√Q∗=2C3RC1⋅C1+C2C2Q∗=2C3RC1−−−−√⋅C1+C2C2−−−−−√⋅PP−R−−−−√Q∗=2C3RC1⋅C1+C2C2⋅PP−R
最大存储量Q∗=2C3RC1−−−−√Q∗=2C3RC1S∗=2C3RC1−−−−√⋅P−RP−−−−√S∗=2C3RC1⋅P−RPS∗=2C3RC1−−−−√⋅C2C1+C2−−−−−√S∗=2C3RC1⋅C2C1+C2S∗=2C3RC1−−−−√⋅C2C1+C2−−−−−√⋅P−RP−−−−√S∗=2C3RC1⋅C2C1+C2⋅P−RP
最小费用C∗=2C1C3R−−−−−−−√C∗=2C1C3RC∗=2C1C3R−−−−−−−√⋅PP−R−−−−√C∗=2C1C3R⋅PP−RC∗=2C1C3R−−−−−−−√⋅C2C1+C2−−−−−√C∗=2C1C3R⋅C2C1+C2C∗=2C1C3R−−−−−−−√⋅C2C1+C2−−−−−√⋅P−RP−−−−√C∗=2C1C3R⋅C2C1+C2⋅P−RP
2.2 经济订购批量的折扣模型

经济订购批量折扣模型是经济订购批量存贮模型的一种发展,即商品的价格 是不固定的,是随着订货量的多少而改变的。就一半情况而论,物品订购的越多,物品的单价也就越低,因此折扣模型就是讨论这种情况下物品的订购数量。 一年花费的总费用由三个方面组成:年平均存贮费、年平均订货费和商品的购买费用,即

C=12QC1++C3DQ+Dk(Q)C=12QC1++C3DQ+Dk(Q)

比如说订购量为 QQ, 其单价 K(Q)K(Q) :

K(Q)=⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪K1K2⋮Kj⋮Km0≤Q<Q1Q1≤Q<Q2Qj−1≤Q<QjQm−1≤QK(Q)={K10≤Q<Q1K2Q1≤Q<Q2⋮KjQj−1≤Q<Qj⋮KmQm−1≤Q

对应的平均单位货物所需费用为:

Cj(Q)=12C1QR+C3Q+Kj(j=1,2,⋯,m)Cj(Q)=12C1QR+C3Q+Kj(j=1,2,⋯,m)

对 C1(Q)C1(Q) 求得极值点为 Q0Q0, 若 Qj−1≤Q0<QjQj−1≤Q0<Qj, 求

min{Cj(Q0),Cj+1(Qj),⋯,Cm(Qm−1)}min{Cj(Q0),Cj+1(Qj),⋯,Cm(Qm−1)}

设从此式得到的最小值为 Cl(Ql−1)Cl(Ql−1), 则取 Q∗=Ql−1Q∗=Ql−1 。

三、存储策略的R计算

3.1 模型4经济订货批量

例1:对某产品的需求量为350件/年(设一年以300工作日计),已知每次订货费为50元,该产品的存贮费为13.75元/(件·年),缺货时的损失为25元/(件·年),订货提前期为5天。该种产品由于结构特殊,需用专门车辆运送,在向订货单位发货期间,每天发货量为10件。试求:(1)经济订货批量及最大缺货量;(2)年最小费用。

#输出四位数字
options(digits=4)
#初始化,时间单位为年
C1=13.75     #存储成本
C2=25        #缺货成本
C3=50        #订购费用
P=3000       #年生产量
R=350        #年需求量
#计算程序
T<-(2*C3/(C1*R))^0.5 *(P/(P-R))^0.5 *((C1+C2)/C2)^0.5 
Q=(2*C3*R/C1)^0.5 *  ((C1+C2)/C2)^0.5 *(P/(P-R))^0.5
S=(2*C3*R/C1)^0.5 * (C2/(C1+C2))^0.5 * ((P-R)/P)^0.5
C=(2*C1*C3*R)^0.5 * ((P-R)/P)^0.5* (C2/(C1+C2))^0.5
cat("最佳定货周期:",T*300,'\n')
cat("最佳定货量:",Q,'\n')
cat("最大存储量:",S,'\n')
cat("最小费用:",C,'\n')
最佳定货周期: 57.28 (天) 
最佳定货量: 66.83 
最大存储量: 38.09 
最小费用: 523.7 
3.2 折扣下的经济订货批量

例2:某公司计划订购一种商品用于销售。该商品的年销售量为 40000 件,每次订货费为 9000 元,商品的价格与订货量的大小有关,为

K(Q)=⎧⎩⎨⎪⎪⎪⎪35.22534.52534.17533.8250≤Q<1000010000≤Q<2000020000≤Q<3000030000≤QK(Q)={35.2250≤Q<1000034.52510000≤Q<2000034.17520000≤Q<3000033.82530000≤Q

每年的单位存储成本为6元,问如何安排订购量和订购时间。

#经济订货批量折扣模型
#初始化,时间单位为年
#D=96000
k=35.225       #价格折扣初始值
C1=6           #存储成本
C3=9000        #订购费用
R=40000        #年需求量l=c(0,10000,20000,30000)   #订货数量分段值
Q=(2*C3*R/C1)^0.5          #EOQ订货批量#定义数量折扣分段函数
fun1=function(x){if (x>0 & x<10000) a=35.225else if (x>=10000 & x<20000) a=34.525  else if (x>20000 & x<=30000) a=34.175  else if (x>=30000) a=33.825else  a=0return (a)
}#定义成本函数
fun2=function(x) {0.5*C1*x/R +C3/x +fun1(x)}#最佳订货批量Q1
b=fun2(Q)
for (i in 1:length(l)) {if (fun2(l[i])<=b) b=fun2(l[i])}
l[1]=Q
for (i in 1:length(l)) {if (fun2(l[i])==b) Q1=l[i]}
#订货时间T
T=Q1/R
Q1=20000(个);T=0.5(年)  #计算结果

例3:某厂每年需某种元件 30000 个,每次订购费 1000 元,保管费每件每年100元,不允许缺货。元件单价 K 随采购数量不同而有变化。

K(Q)={2001980≤Q<15001500≤QK(Q)={2000≤Q<15001981500≤Q

求最佳订货批量。

经济订货批量折扣模型
#初始化,时间单位为年k=200       #价格折扣初始值
C1=100       #存储成本
C3=1000        #订购费用
R=30000        #单位时间需求l=c(0,1500)   #数量分段值
Q=(2*C3*R/C1)^0.5          #EOQ订货批量#数量折扣分段函数
fun1=function(x){if (x>0 & x<1500) a=200else if (x>=1500) a=198else  a=0return (a)
}#成本函数
fun2=function(x) {0.5*C1*x/R +C3/x +fun1(x)}#最佳订货批量Q1
b=fun2(Q)
for (i in 1:length(l)) {if (fun2(l[i])<=b) b=fun2(l[i])}
l[1]=Q
for (i in 1:length(l)) {if (fun2(l[i])==b) Q1=l[i]}
Q1
Q1=1500(个)

四、综合思考

例4:甲公司是一家标准件分销商,主要业务是采购并向固定客户供应某种标准件产品。有关资料如下:(1)该标准件上一年订货次数为60次,全年订货成本为80万元,其中固定成本总额为26万元,其余均为变动成本。单位变动成本和固定成本总额不变;(2)该标准件仓储总费用中,每年固定租金成本为120万元,每增加一件标准价就增加1元仓储费。每件标准件的占用资金为50元,资金利息率为6%;(3)该标准件年需要量为180万件。一年按照360天计算;(4)该标准件从发出订单到货物送达需要5天。
要求:(1)计算每次订货变动成本;(2)计算单位变动储存成本;(3)根据经济订货模型,计算该标准件的经济订货批量和最佳订货周期(按天表示);(4)计算再订货点。

(1) 每次订货变动成本=(80-26)10000/60=9000(元)
【解析】订货总成本80万,其中固定成本26万,可知变动成本总额是80-26=54万元,全年订货60次,总订货变动成本54万元,则每次订货变动成本=54万元/60次=0.9万元=9000元
(2)单位变动储存成本=1+50
6%=4(元/件)
【解析】储存成本包括固定储存成本+变动储存成本。每增加一件标准价就增加1元仓储费,这不就是变动成本的定义吗?可知1元为单位变动成本。以往的客观题也练习过存货的机会成本也是变动储存成本,单位机会成本=占用资金资金利息率=506%。综上,单位变动储存成本由上述两部分构成。
(3)经济订货批量= =90000(件)
每年最佳订货次数=1800000/90000=20(次)
最佳订货周期=360/20=18(天)
【解析】经济订货批量套公式就是了,没什么好说的。
最佳订货次数=全年需要量/经济订货批量
最佳订货周期=360/最佳订货次数
(4)每日平均需用量=1800000/360=5000(件)
再订货点=55000=25000(件)
【解析】再订货点=每日需要量
送货期

总结

存储系统可以用“供-存-销”三个活动来描述,通过订货以及货后的存储与销售来满足顾客的需求,或者说由于生产或销售的需求,从存储系统中取出一定量的库存货物,这就是存储系统的输出。存储的货物由于不断的输出而减少,必须及时的补充,补充就是存储系统的输入,补充可以通过外部订货,采购等活动来进行,也可以通过内部的生产活动来进行,在这个系统中,决策者可以通过控制订货时间的间隔和订货量的多少来调节系统的运行,使得在某种准则下系统运行达到最优。因此,存储论中研究的主要问题可以概括为,何时订货(补充存贮),每次订多少货(补充多少库存)这两个问题,文中给出了数学模型化解决方案。 

这篇关于存储论——经济订货批量的R实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/271076

相关文章

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

HDFS—存储优化(纠删码)

纠删码原理 HDFS 默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。 Hadoop3.x 引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间。 此种方式节约了空间,但是会增加 cpu 的计算。 纠删码策略是给具体一个路径设置。所有往此路径下存储的文件,都会执行此策略。 默认只开启对 RS-6-3-1024k

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

让树莓派智能语音助手实现定时提醒功能

最初的时候是想直接在rasa 的chatbot上实现,因为rasa本身是带有remindschedule模块的。不过经过一番折腾后,忽然发现,chatbot上实现的定时,语音助手不一定会有响应。因为,我目前语音助手的代码设置了长时间无应答会结束对话,这样一来,chatbot定时提醒的触发就不会被语音助手获悉。那怎么让语音助手也具有定时提醒功能呢? 我最后选择的方法是用threading.Time

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略 1. 特权模式限制2. 宿主机资源隔离3. 用户和组管理4. 权限提升控制5. SELinux配置 💖The Begin💖点点关注,收藏不迷路💖 Kubernetes的PodSecurityPolicy(PSP)是一个关键的安全特性,它在Pod创建之前实施安全策略,确保P

工厂ERP管理系统实现源码(JAVA)

工厂进销存管理系统是一个集采购管理、仓库管理、生产管理和销售管理于一体的综合解决方案。该系统旨在帮助企业优化流程、提高效率、降低成本,并实时掌握各环节的运营状况。 在采购管理方面,系统能够处理采购订单、供应商管理和采购入库等流程,确保采购过程的透明和高效。仓库管理方面,实现库存的精准管理,包括入库、出库、盘点等操作,确保库存数据的准确性和实时性。 生产管理模块则涵盖了生产计划制定、物料需求计划、