本期我们进行运筹学之存储论算法的讲解,我们将对常见的商品存储模型进行介绍,并求解不同供需条件下的最优存储策略,通过MATLAB和Python工具帮助大家快速求解最优存储策略,做到事半功倍。由于篇幅有限,小编接下来只展示部分代码,小伙伴们可以关注“运筹说”公众号→后台回复“存储论相关模型代码实现”获取完整代码。话不多说,我们一起来看看吧!
第一部分 需求确定的存储模型
1.问题描述
在供应链管理中,存储模型的选择对企业运营效率和成本控制至关重要。针对不同的市场需求和产品生命周期,企业通常会采用不同的存储策略,以优化库存管理,确保供应链的顺畅运作。下面将会介绍四种常见的存储模型,分别适用于需求确定的不同情境。
模型一:不允许缺货,补充时间极短
在这种模型下,企业面临着对产品持续高需求且补充时间极短的挑战。为了确保市场需求得到及时满足,企业必须保持充足的库存,以避免缺货情况的发生。该模型通常用于新产品引入期,确保随时可供销售。
该模型的前提假设为:需求速度R是常数;补充速度近似为零;单位存储费为C1;不允许缺货,故单位缺货费C2为无穷大;订货费为C3;货物单价为K。
模型二:允许缺货,补充时间较长
在此模型中,企业在面对需求较低或需求波动较大的产品时,可能允许出现一定的缺货现象。由于补充时间较长,企业通常会减少库存持有量,以降低过剩库存和相关成本。该模型适用于产品生命周期的后期阶段,尤其是市场需求逐渐减少的情境。
该模型的前提假设为:需求速度R是常数;补充需要一定时间,不考虑拖后时间,只考虑生产时间,生产连续均匀,生产速度P为常数,且P>R;单位存储费为C1;单位缺货费为C2;订购费为C3。
模型三:不允许缺货,补充时间较长
该模型适用于需求较为稳定且缺货可能对企业造成较大影响的产品。尽管补充时间较长,企业仍会通过适当的库存策略来确保不断货。这种模型常见于市场成熟期的产品管理中,企业需通过精准的需求预测和生产计划,维持库存水平,以确保市场份额的稳定。
在模型二的假设条件中,取消允许缺货条件(即设C2→∞,t2=0)就成为模型三。
模型四:允许缺货,补充时间极短
在此模型中,企业对需求有较强的预测能力,并且供应链反应速度快。虽然企业允许短时间的缺货,但由于补充时间极短,能够迅速恢复库存水平。该模型通常用于市场增长期,企业通过灵活的库存管理来降低持有成本,同时迅速响应市场需求的变化。
在模型二的假设条件中,取消补充需要一定时间的条件(即设P→∞),就成为模型四。
在下述例子中,阐述了产品在整个生命周期管理的过程中的用户需求和供应链响应情况。
2.例题介绍
①某公司推出某新品,在产品新推出时期,根据市场情况,消费者对该产品的需求较高,公司要求不允许缺货且采用快速响应的供应链,确保补货时间极短。该产品在现阶段的需求量为7件/天(R),每次订购该产品花费80元,每天的存储费为每件0.13元/天,假设该商品进货可随时实现,求进货策略。
②随着产品逐渐被市场接受,且供应链已经优化,补货时间仍然很短,企业可以接受偶尔的缺货情况,以减少过剩库存的风险。求允许缺货(缺货费每件0.5元/天)条件下的最优存储策略。
③产品进入成熟期,市场需求趋于稳定,为稳定的销售对维持市场份额,公司规定不允许产品缺货且可以适当延长补货时间,已知产品的生产速度为10件/天,求最优存储策略。
④产品最终进入了衰退期,市场需求开始下降。在这个阶段,企业接受更长的补货时间,以减少过剩库存的风险。同时,由于需求减少,企业可能允许缺货,以清理库存并为新产品让路。此时,产品的需求量为5件/天,缺货费仍是每件0.5元/天,求最优存储策略。
3.代码实现
我们以上述例题为例,借助Python介绍实现求解的相关代码。
代码运行及最终结果展示如下。
第二部分 价格与订货批量有关的存储模型
1.问题描述
为了鼓励大批量订货,供方常对需方实行价格优惠。订货批量越大,货物价格就越便宜。所谓经济订购批量折扣模型是经济订购批量存贮模型的一种发展,即商品的价格是不固定的,是随着订货量的多少而改变的。就一般情况而论,物品订购的越多,物品的单价也就越低,因此折扣模型就是讨论这种情况下物品的订购数量。模型五除含有这样的价格刺激机制外,其他假设条件和模型一相同。
Ct为关于t的分段函数。为了了解它的性质,以n=3为例,画出其图像,见下图。
2.例题介绍
某公司计划订购一种商品用于销售。该商品的年销售量为40000件,每次订货费为9000元,商品的价格与订货量的大小有关,为
存贮费是商品价格的20%。问如何安排订购量与订货时间。
3.代码实现
我们以上述例题为例,借助MATLAB和Python介绍实现模型五的相关代码。
(1)MATLAB代码展示
我们以上述例题为例,借助MATLAB介绍实现求解的相关代码。
求得最优订货量为10211 件,最优存贮费用为145151510 元,最优订货周期是平均0.255 年一次。
(2)Python代码展示
我们以上述例题为例,借助Python介绍实现求解的相关代码。
求得最优订货量为10211 件,最优存贮费用为145151510 元,最优订货周期是平均0.255 年一次。
第三部分 需求是离散随机变量的存储模型
1.问题描述
单周期的存储模型中周期内只能提出一次订货,发生短缺时也不允许再提出订货,周期结束后,剩余货可以处理。单周期库存模型又称为单订货模型。模型假定周期末库存对下一个周期没有任何价值。这个问题也称为报童问题,因为报童手中的报纸若卖不完,明天就没有用了。该模型研究的是仅有一次机会的存贮与供需关系的产品。
模型六的最佳订购量Q可由下面关系式来确定:
2.例题介绍
(报童问题)在街中有一报亭,平均每天出售报纸500份,出售报纸的数量,与来往的人流有关,假设服从Poisson分布,每卖出一份报纸能盈利0.15元。如果卖不出去,只能作为废纸处理,每份报纸亏损0.40元,问:报亭应如何安排报纸的订购量,使得报亭的利润最大?
3.平台实现
我们以上述例题为例,借助MATLAB和Python介绍实现模型六的相关代码。
(1)MATLAB代码展示
我们以上述例题为例,借助MATLAB介绍实现求解的相关代码。
求得最优订购量为493件,获利80.05元。
(2)Python代码展示
我们以上述例题为例,借助Python介绍实现求解的相关代码。
求得最优订购量为496件,获利79.9元。
第四部分 需求是连续的随机变量的存储模型
1.算法描述
设单位货物进价为k,售价为p,存储费为C。又设货物需求r是连续型随机变量,其密度函数为Φ(r),分布函数为
当货物的订购量(或生产量)为
时,能使盈利期望值最大。
2.例题介绍
设在某食品店内,每天对面包的需求服从μ=300,σ=50的正态分布。已知每个面包的售价为1.50元,成本0.90元,对当天未售出的其处理价为每个0.60元,问该商店每天应生产多少面包,使预期的利润为最大?
3.平台实现
我们以上述例题为例,借助MATLAB和Python介绍实现模型七的相关代码。
(1)MATLAB代码展示
我们以上述例题为例,借助MATLAB介绍实现求解的相关代码。
(2)Python代码展示
我们以上述例题为例,借助Python介绍实现求解的相关代码。
以上就是本期存储论的一些实际应用的全部内容啦,通过对这一期的学习,相信大家一定能够加深对存储论的理解,进而在生活实践中学会应用!
作者 | 齐涵 王凡
责编 | 唐京茹
审核 | 徐小峰