-
摘要: 应用Matlab/Simulink构建了“啤酒游戏”的计算机模型, 并对其进行了仿真分析。研究了订货延迟时间对物流系统库存情况造成的影响, 比较了不同采购策略对“啤酒游戏”产生的作用。发现订货延迟时间的存在是造成“啤酒游戏”中“牛鞭效应”的内因; 商家过分在意当前的库存与缺货情况, 急于补充或者降低库存, 反而会造成“牛鞭效应”的加剧与物流成本的提高。结果表明, 基于计算机技术和数学运算的Matlab/Simulink仿真技术, 是对物流系统进行科学分析的有效工具。Abstract: A beer game model was developed with Matlab/Simulink software, it was simulated with computer. Through this model, the influence of order delay on logistic system inventory was analyzed, the effect of different procurement plans on beer game was researched. It is pointed out that the order delay is the main reason for bullwhip effect in beer game, if sellers pay too much attention to the inventory, the bullwhip effect will be aggravated, and the logistic cost will be in-creased. The results show that the Matlab/Simulink simulation technique is efficient for analyzing logistic system.
-
Key words:
- logistics /
- simulation /
- beer game /
- bullwhip effect
-
彼得·圣吉在其风靡全球的管理学著作《第五项修炼》中, 详尽而生动地引用了一个著名的“啤酒游戏(Beer Game)”[1], 这是20世纪60年代由麻省理工学院(MIT)的Sloan管理学院创建并发展起来的一种有关库存管理的策略游戏。直到今天, 在全球范围内, 为了帮助参与者更好地了解供应链的特性, 这一游戏及其变种在MBA的教学和各种管理训练课程中, 无数次地重复进行着。虽然在这类游戏的参与者之中, 各种年龄、国籍、行业背景的人都有, 而且其中的很多人是行业的精英, 有着运作产、配、销等物流业务的丰富经验。然而每次玩这个游戏的时候, 相同的危机还是一再发生: 如果从时间上考虑, 无论是下游零售商、中游批发商还是上游制造商, 起初是缺货, 然后是货物积压, 之后再是严重的缺货, 然后是更为严重的积压; 如果沿着供应链各个环节追溯, 从下游的零售商追溯到上游的制造商, 库存量与缺货量幅度逐渐上涨, 就像挥动的牛鞭, 从手柄到鞭梢, 波动的幅度越来越大, 因此人们将这一现象称为牛鞭效应(Bullwhip Effect)。即便出现这样变化, 但作为系统输入变量的消费者需求却是比较稳定的, 只是偶尔产生一个微小的变化而已。同样, 在现实经营环境中, 正如所看到和体会到的, 企业面对的情况更加复杂, 更加难以从系统、全局的高度思考问题, 而且各相关方面缺乏及时、有效的信息沟通, 因此供应链及分销渠道上所面临的问题与游戏中相比, 往往有过之而无不及。
几十年来, 虽然游戏的参加者成千成万, 千差万别, 但是游戏总是产生类似的结果, 因此游戏产生恶劣结果的原因必定超出个人因素。这些原因必定是藏在游戏本身的结构里[2]。
当前, 国内的物流研究相对落后, 需要积极尝试各种方法, 提高物流研究水平[3,4], 仿真法是对物流及供应链进行定性研究, 探究其内在规律的重要手段[5,6]。本文利用Matlab强大的矩阵(Matrix)运算和数组运算功能[7]对啤酒游戏的过程进行仿真, 然后通过参数的改变, 了解啤酒游戏的内在机理, 同时尝试不同的策略, 试图找到应对牛鞭效应的较好方案。
1. 模型构建与仿真
在啤酒游戏中其物流单元有3个, 包括啤酒制造商、啤酒批发商、啤酒零售商(下文简称为制造商、批发商和零售商), 而各个物流单元之间用通讯和运输相联系。当普通消费者向零售商提出自己的需求以后, 零售商会通过供给相应数量的商品(啤酒)来满足顾客的需求, 这样就会造成零售商库存水平的变化。零售商根据这个变化, 并结合自身的情况对未来市场进行预测, 从而向批发商发出一定量的定货需求, 同时, 批发商也会根据自己的库存情况以及下游零售商的订单情况, 对其上家制造商发出相应的订单, 所以批发商的订货情况会直接影响制造商的生产安排和计划[1]。这就是啤酒游戏的过程, 这个过程也简单地构成了啤酒的供应链, 见图 1。这里需要说明的是: 各个环节的订单发出之后到执行本订单, 都会产生一定的时滞, 因为在流通企业接到订单以后, 必然需要花费一段时间完成订单处理、生产组织以及运输作业等工作, 而制造商虽然不需要向上游发订单, 但是也有一个生产周期。下面利用Matlab/Simulink对上述的供应链, 进行仿真研究。
1.1 模型结构
对于上述供应链的构建基于Simulink的仿真系统模型, 要包括各个和物流相关的环节以及环节之间的关系: 在啤酒供应链中, 制造商的运作及其供给能力受到批发商订单的影响, 批发商的订单是根据批发商的库存情况以及制造商的供给参数决定; 同理批发商的库存情况是受零售商发出的订单和批发商的实际供给能力影响, 零售商的订单是由其库存情况以及批发商的供给情况共同影响; 同理零售商的库存情况是受消费者发出的订单和零售商的实际供给能力影响, 消费者对于零售商发出的订单就是市场需求, 在啤酒游戏中, 假设这个消费者需求函数是一个阶跃函数, 整个过程见图 2。
仿真所用的Matlab/Simulink软件具有面向对象的设计方法和模块化的设计思路的特点, 因此仿真模型可以方便地进行扩展和改进[8]。在仿真系统的设计中各个模块的内部构造是根据物流实际运行的流程来构建的, 物流单元之中一方面会进行企业的日常运作, 例如出库、入库、供给、订单发出、运输等作业, 这些作业使用Warehouse模块来实现; 另一方面物流单元由于这些运作会产生成本和收益, 这些财务指标是反映企业运作状况和影响企业决策的重要因素, 在模型中使用Cost_of_warehouse模块来模拟, 因此对于供应链上的每一个物流单元(例如零售商)的内部构造可参见图 3。
由图 3可以看出供应链中间环节模块主要包括Warehouse(manufactory)1模块和Cost_of_warehouse1模块。依照面向对象的概念, 这两个模块也都是由更小的的一些子模块构成。采用这样的模块化的设计方法, 可以更便捷地对系统的结构进行模拟, 也有利于理解系统的机理以及系统各个元素之间的关系。
在上述仿真模型中, 假设无论是零售商、批发商还是制造商都要遵循的原则是满足顾客需求。在这个前提下, 他们综合考虑了当前自己的库存/缺货情况和下游单位的即时需求, 再向上游发出订单。这就是说, 各个物流单元都是采用随机应变的策略, 根据实际情况不断地调整自己订单的批量大小。
1.2 模型模拟
1.2.1 参数定义
对模型的一些关键参数进行定义, 假设如下。
(1) 消费者需求前20周稳定为4 Units/Week, 20周后一直保持在8 Units/Week, 模型的模拟周期为周。
(2) 零售商对于顾客发出消费需求的反馈时间为0, 也就是说, 只要零售商有货, 消费者提出需求马上可以得到满足。
(3) 批发商对于顾客发出订货请求的反馈时间为4周, 也就是说, 当零售商订单发出4周以后, 如果批发商有足够的存货, 那么零售商订单所订货物会被运到自己手中。
(4) 制造商对于顾客发出订货请求的反馈时间为4周, 也就是说, 当批发商订单发出4周以后, 如果制造商有足够的存货, 那么批发商订单所订货物会被运到自己手中。
(5) 制造商生产周期为2周, 也就是说, 模型假设有足够的原材料, 当生产商生产计划下达2周以后, 其生产计划所制定数量的产品会被加工出来。
这些有关延迟的参数是客观存在的重要参数, 试想如果没有这些时滞的存在, 各个单元的物流需求马上可以得到满足, 就不存在库存或者缺货的问题, 因此时滞越大, 消费者需求变动引起的库存量的波动就越大。有关这个问题的讨论虽然不是本文的重点, 但是通过Matlab对其进行简单的仿真研究, 模拟结果见图 4。图 4(a)表明当其他情况不变(参见上述假设)而零售商的订货延迟为2周时, 零售商的库存波动情况, 可以看出, 当20周市场发生一个阶跃的前提下, 零售商库存会相应发生波动, 其振动在-13~60周之间波动, 而且振动迅速收敛, 在50周以后基本恢复正常; 图 4(b)表明的是订货延迟为4周的情况, 当20周市场发生一个阶跃的前提下, 零售商库存随即发生波动, 其振动在-25~65周之间, 而且振动收敛, 在75周以后基本恢复正常; 图 4(c)表明的是订货延迟为8周的情况, 当20周市场发生一个阶跃的前提下, 零售商库存随即发生波动, 其振动在-25~70周之间, 而且其振动没有明显的收敛趋势; 图 4(d)表明的是订货延迟为16周的情况, 当20周市场发生一个阶跃的前提下, 零售商库存随即发生波动, 其振动在-100~100周之间, 而且同样其振动没有明显的收敛趋势。这些库存/缺货量的变化反应了整个物流系统的运作状况, 因此通过Matlab简单的仿真分析可以看出有关时滞对于供应链影响的猜测在某种程度上的合理性。
1.2.2 模型模拟
构建模型的目的是为了进行仿真运行, 尝试使用不同的系统结构和参数, 在不同的外界条件下都可以方便地对各种方案进行比较分析, 在这些模拟与分析的基础上构造并选择较优的策略。
在以下模型中, 模型利用Cost_of_warehouse模块对物流运营成本进行简单的估算, 总的物流成本等于各个物流单元的物流成本之和, 而每个单元的物流成本的计算采用式(1)求得
式中: Cm为到第m周期物流单元的物流成本; Pti为单位商品进入物流单元的运输成本; Tij为物流单元的第j周期的入场运输量; Pto为单位商品运出物流单元的运输成本; Toj为物流单元第j周期的出场运输量; Csj为第j周期的库存/缺货成本; Ps为单位产品单位时间的库存费用; Po为单位产品单位时间的缺货损失; Sj为库存/缺货量(Sj > 0代表库存, Sj < 0代表缺货), j为周期数。
根据物流单元的不同构建订货策略模型, 对其库存和成本进行仿真研究。
(1) 订货策略A
无论是制造商、批发商还是零售商都是根据当时自己库存的情况以及当时的消费者需求进行订货, 即假设
式中: Qj为第j周期的订货量; Iej为第j周期物流单元的期望库存量, Iej=Smooth(N, te), Smooth()为平滑函数, N为下游物流单元的需求量, te为平滑时间; Ij为第j周期物流单元的当前库存量, 其中缺货情况下库存为0;Ta为物流单元的库存调整时间, 即企业力争将库存调整为期望库存的周期数; Nj为第j周期下游物流单元的需求量。
在这种策略下的供应链的各个物流环节的库存情况见图 5(a~c), 其中图 5(a)反映了制造商的库存变化情况; 图 5(b)反映了批发商的库存变化情况; 图 5(c)反映了零售商的库存变化情况。可以看出, 由于消费需求的一个阶跃, 就引起了整个供应链长时间的波动, 而且越是供应链的上游, 受这种波动的影响越大。由于制造商的生产周期为2周, 小于批发商和零售商的反应时间4周, 因此其库存量的振动幅度相对下游物流单元不是很大。图 5(d)反应了在这种订货策略情况下物流系统的成本情况, 在策略A中, 单纯考虑库存量, 并没有考虑缺货量, 200周内供应链物流运营总成本为25 459元。
(2) 订货策略B
制造商、批发商和零售商皆根据当时自己库存的情况以及当时的消费者需求进行订货, 即假设
式中: Ifj为第j周期物流单元的当前库存/缺货量, Ifj > 0为库存; Ifj < 0为缺货。
这种策略下供应链的各个物流环节的库存情况见图 6(a~c), 其分别反映了制造商、批发商和零售商的库存变化情况。可以看出, 由于消费需求的一个阶跃, 引起了整个供应链长时间的波动, 同样越是供应链的上游, 受这种波动的影响越大。而且由于制造商的生产周期为2周, 小于批发商和零售商的反应时间4周, 因此其库存量的振动幅度相对下游物流单元不是很大。图 6(d)反应了在这种订货策略情况下物流系统的成本情况, 在策略B(全面考虑库存与缺货)下, 200周内整个供应链的物流成本为29 216元。
1.3 数据分析
经过系统模拟, 在上述两种策略中, 虽然策略B全面考虑物流单元的库存与缺货情况, 但是策略A在200周内其物流运营总成本为25 459元, 低于策略B的物流成本29 216元。由此可见, 在一般市场中, 如果过分在意当前的库存与缺货情况, 急于补充或者降低库存, 反而会造成物流成本提高。上述策略A和策略B之中假设零售商和供应商对于库存/缺货量的调整时间为5个周期, 即对于缺货或是过量库存, 他们期望在5个周期的时间内恢复到期望水平。对于策略B, 如果零售商和供应商对于库存/缺货量的调整时间为9个周期, 那么供应链各个物流环节的库存情况见图 7(a~c), 而图 7(d)反映了整个供应链的物流成本情况。从图 7(d)看出, 这种情况下, 在需求突变的初期, 由于商品补充缓慢, 因此各个物流环节必然面临较大的缺货量和缺货损失, 但是对于200个周期的总的物流成本为24 199元, 其数值低于策略B, 当然也低于策略A。
2. 结语
本文利用Matlab模型对于物流系统的研究进行了初步的尝试表明: 基于数字技术的Matlab/Simulink是提高物流系统分析科学化的有效工具。本文仅仅研究的是最简单的供应链情况, 市场需求为阶跃对供应链的影响。不容置疑的是实际的物流系统远比本文之中的模型要复杂得多, 首先客户需求变化不会像Beer game模拟那样有规律, 同时在多个供应商、多种运输方式及逆向物流等复杂的境况下, 物流系统就变得更加庞大, 更加复杂; 物流系统的效果还会受供应商、客户和运营商变异及他们采购意愿的变化的影响, 还受各种采购优惠政策等不可预期的因素的影响, 而这些因素的不可预期性又增添了研究物流系统运作的难度, 需要作进一步深入研究。
-
[1] [美]彼得·圣吉. 第五项修炼[M]. 上海: 生活读书新知三联书店上海分店, 2002. [2] 王其藩. 系统动力学[M]. 北京: 清华大学出版社, 1994. [3] 郭振宇. 中国物流现状及改善建议(一)[J]. 物流技术与应用, 2001, 6(1): 57-62. https://www.cnki.com.cn/Article/CJFDTOTAL-WLJY200101018.htmGuo Zhenyu. Current status & improvement recommendation of China's logistics (1)[J]. Logistics & Material Handling, 2001, 6(1): 57-62. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-WLJY200101018.htm [4] 郭振宇. 中国物流现状及改善建议(二)[J]. 物流技术与应用, 2001, 6(2): 58-63. https://www.cnki.com.cn/Article/CJFDTOTAL-WLJY200102008.htmGuo Zhenyu. Current status & improvement recommendation of China's logistics (2)[J]. Logistics & Material Handling, 2001, 6(2): 58-63. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-WLJY200102008.htm [5] Simchitevi D. Designing and Managing the Supply Chain[M]. The MeGraw-Hill Companies, Inc., 2000. [6] 杰里米夏皮罗. 供应链建模[M]. 北京: 中信出版社, 2002. [7] 陈永春. 从Matlab/Simulink模型到代码实现[M]. 北京: 清华大学出版社, 2002. [8] 薛定宇, 陈阳泉. 系统仿真技术与应用[M]. 北京: 清华大学出版社, 2002. -