当前位置: 模型材料 >> 模型材料前景 >> 无约束情况下的优化,经济订货批量EOQ的
经济订货批量(EconomicOrderQuantity,简称EOQ)是经典的经济学和供应链模型,相信大家在学习供应链的时候都接触过它。
虽然说模型已经不太适用于现在的市场环境,但是建模的思路依然值得我们学习,可以帮助我们提升数学方面的思维能力,这种方法论可以应用在其他的建模过程中,所以今天我来为大家重温一下这个经典的模型。
一
构建EOQ模型的基本思路
买东西是有成本的,其中最主要的有这二块,首先是订货的成本,要知道在多年前,发明模型的那个年代是没有电脑的,下订单全靠手工计算,然后做文件资料。
在模型设计者看来,不管买多少数量,订货成本都是一样的,买件和1万件的订货成本没有差别,这是模型的假设。
第二块成本是商品的持有成本,货物在没有卖出去之前,会产生一些费用,比如说如果你是借钱来买商品的,需要支付利息和保管费,这部分费用与商品价格和订货量有关。
就这样,我们总结出了订货相关的费用,企业的目标是要让总的成本最小,要算出订货成本和持有成本之和的最小值。
EOQ模型假设资源是无限的,也就没有资源的约束条件,当然我们知道在现实中是不可能的,总是存在着各种资源的瓶颈,比如原材料、人力资源、费用预算等,都是有上限的,不可能想要多少,就有多少。
但EOQ就是基于无约束条件下的求解,去寻找成本最小的那个值,也叫极值。好了,让我们开启这趟寻找极值之旅吧。
二
建立模型公式
我们需要建立一个场景,这样就更有代入感。假设张三在上海经营着一家精品咖啡店,需要经常采购高品质的咖啡豆。
张三的店生意不错,采购的豆子都可以消耗完,需求量就等于采购量,他平均每年需要采购包豆子,所以年需求量就是。总成本是由订货成本和持有成本组成的,我们就来分别设立公式计算。
1.订货成本
假设张三每次的订货量是Q,那么他在一年中采购次数就等于÷Q,这是反比关系,每次买的数量越多,一年中采购次数就越少。
张三每次下单都需要花费一些时间,而时间是有成本的,他在这段时间里可以打几杯咖啡,或是陪顾客聊聊天,他为了下订单,就做不了这些增值的事情了,所以下单是有成本的。
假设张三每次下单补货,不管买多少包咖啡豆,都相当于是元。每年的总订货成本就等于:
每年订货成本=/Q×=00/Q
如果把订货量定义为从1至的连续整数,套入上面的公式中,就能得到这样的一条曲线。
张三每次只订购1包豆子,全年他需要采购的次数是次,年订货成本就是00元。如果张三为了省事,每次买包,一年里只需要采购5次,那么年订货成本只需元。
这条曲线的特征是在最初阶段,随着购买次数的增加,订货成本迅速降低,接下来的降速虽然变慢了,但永远也不会为零。
2.持有成本
咖啡豆不能长期存放,时间久了,咖啡的风味会变差。如果囤积了太多的豆子,还会占用张三的流动资金,会影响他采购其他的原料,他也没有钱去支付店铺租金、工资和其他运营费用。
张三经过测算,每包咖啡豆每年会占用元的资金成本。为了和订货成本保持一致,要使用相同的单位,于是就得到了每年的持有成本,它等于:
每年持有成本=×平均库存量
这个公式想要表达的是,豆子的库存越多,张三的持有成本就越高,这点非常符合逻辑。如何来计算平均库存量呢?在EOQ模型里使用的一个非常朴素的方法。
假设张三每次都是等到库存消耗殆尽了才安排补货,而且都是立即到货,每次补货的数量也是固定的,这样他的库存最小值为零,最大值就是经济订货量Q,所以平均库存就是零加上Q除以2。年持有成本就等于了:
每年持有成本=×Q/2=×Q
张三的咖啡豆库存越多,它的持有成本就会越高,肯定是成正比关系,makesense,没毛病。
把持有成本的公式也加进去,就会得到这样的一张图。当张三每次只买一包咖啡豆时,年持有成本是元,当他一次性买包,年持有成本就高达00元。
图中订货和持有成本在某处相交了,他们的交叉点,是否可以给我们一些启示呢?
根据此前提出的要求,我们的目标是最小化订货成本和持有成本之和,现在就可以把这两项成本加在一起,得到了这样的公式:
每年总成本=每年订货成本+每年持有成本
=00/Q+(×Q)
我们把每年总成本曲线也加进来,就会发现它是一条很有意思的线,一开始随着订货数量的增加而减少,但是到达一定量之后,总成本开始回升,我们要求的就是这条曲线上的最小值,这里就是经济订货量。
三
求解模型
有两种求解方法,第一种是穷举法,我们知道订货量不可能小于等于零,而且它肯定是一个整数,比如10,20,30,只要把公式列出来,在Excel里输入1到的数字,然后很快就能计算完毕,在筛选中查找最小的总成本对应的数量就行了。
比如在下面这个公式里,当Q是22时,就能得到最小值。
每年总成本=00/Q+(×Q)
第二种方法是使用微积分来求解,我们从上面的曲线上看到有一个最小值,而微积分正好可以帮助我们找出那个极值。极值是曲线斜率是零的地方,也就是曲线的“谷底”,可以使用一阶求导来计算。
好了,数学就讲到这儿,不再深入展开求导过程了,否则读者又要跑光了。好在这里有一个公式,可以快速帮我们算出经济订货批量。
EOQ=√((2×年需求量×每次订货成本)/每单位的年度持有成本)
=√((2××)/)≈22
四舍五入后,张三每次最经济的订货数量就是22包,能够让他获得订货成本和持有成本总和的最小值。
四
模型的实用价值、给予我们的启示
经济订货量是公司在现金流计划中使用的重要工具之一,用于最小化库存成本或减少库存中的现金数量。
对于一些公司,如快速消费品公司,库存是他们最大的资产,他们需要适当的采购计划,以便有足够的库存来满足客户的需求,但同时也要控制库存,为公司节省成本。
经济订货量有助于估计库存水平,还可以评估再订货点。重新订购需要在库存耗尽之前执行,否则公司将会因为缺货,导致销售收入的损失。
现在还会使用EOQ的场景已经不太多了,主要是模型本身存在着一些缺陷,具体的内容可以参考这篇文章,但是模型的构建思路对我们还是很有启发的。
建模的思路是分三步走,首先是回答“我要什么?”是利润最高还是成本最小?先要想清楚这个问题。
第二,回答“我有什么数据?”构建模型一定要有数据,但数据信息有很多,哪些才是能帮助我求解的数据?有些数据虽然很好,但获取过于困难,恐怕也只能放弃。
最后是求解模型,对于供应链人,我们或许不擅长数学编程,但总有高手可以帮我们解决求解难题,所以不用过于担心。
我们是业务部门,每天都在运营中摸爬滚打,懂一些建模的原理,可以帮助我们找到优化供应链的路径,这就是学习EOQ的目的所在。