ddmrp
DDMRP 特点
- 在供应链加入 mts 缓冲,解耦 lead time,
缩小 bullwhip 效应,最小化库存 - buffer动态调整
- buffer 分3个颜色共 4个区域【zone】,为 green, yellow, red base, red safety
分为 5个组件

在合适的环节加入buffer 减少 牛鞭效应

选择放置 buffer 的位置, 考虑 6个因素

相关计算
buffer profile
用来指定buffer的特征,使用此特征计算buffer,即各区域的取数,包含以下属性
- 补给方法;
- Replenishment
- Replenishment Override
- min-max
- 类型 【用来取得不同类型的lead time】
- 制造
- 采购
- 配送
- lead time 类别
- 短期, 60% - 100%
- 中期, 40% - 60%
- 长期, 20% - 40%
- 变动 类别
- 低, 20% - 40%
- 中, 40% - 60%
- 高,60%- 100%
建议增加 批量限制属性
ADU【average daily usage】日均用量,
ADU 的计算方法
分为 3种
- 固定
数量 - 按
过去天数的
用量
计算出平均值 - 未来天数的
用量
计算出平均值
备注:
用量,
依据计算方法设置
取量方法
取值:
- 使用
估算量 - 使用
实际库存移动
DLT【decoupled Lead Time】
解耦后的lead time,
也就是 BOM 产品
的最长 lead Time,
依据最长lead time 的原材料的lead time计算;
也称为 ASRLT【ASR lead time】即 ASR [Actively Synchronized Replenishment] lead time is defined as the longest unprotected or unbuffered sequence in the BOM for a particular parent
Net Flow 等式
DDMRP Net Flow Equation (Finished Items) =
On-hand + On-order (open supply)
– Sales Order Demand (due in the past, due today and qualified spikes)
DDMRP Net Flow Equation (Intermediates and Purchased) =
On-hand + On-order (open supply)
– Work Order Demand Allocations (due in the past, due today and qualified spikes)
buffer 划分

green zone
在下面3个 中取 最大值
- ADU * 订货周期
- ADU * DLT * buffer特征 lead time 因子
- 最小订货数量
或者 取 green override【replenish override】
yellow zone
= ADU * DLT
或者取 yellow override 【replenish override】
或者取 零 【min-max】
red zone
= base + safety
base 取值 ADU * DLT * buffer特征 lead time 因子
safety 取值 base * buffer特征 变动因子
或者取 red override 【replenish override】
top of green 绿顶数量
= green zone + yellow zone + red zone
top of yellow 黄顶部数量
= yellow zone + red zone
top of red 红顶部分
= red zone
spike horizon 尖峰视界,通常为 1 个DLT
spike threshold 尖峰阈值,在视界内超过此阈值的需求 被认定为 qualified demand,被计入 net flow position 等式
= red zone * 0.5 默认设置
on hand
扣除预留数量之后的在数数量,通过stock.quant计算
on hand percent
= on hand / top of red
on order
= spike horizon * 安全系数 时间窗口内 buffer所在库位及下级库位已确认未完成的入库库存移动数量
qualified demand
= spike horizon 视界内 buffer所在库位及下级库位已确认未完成,并且 数量大于或等于 spike threshold 的出库库存移动数量
net flow position
即 可用库存【available stock position】,与 odoo预测库存类似
= on-hand [非预留] + on-order (also referred to as open
supply) – unfulfilled qualified actual demand
net flow position percent
= net flow position / top of green
补货库位的确认
因为buffer本身就设置了库位,所以补货时,就是在此库位进行补货
建议数量计算
如果 net flow position < top of yellow
建议数量= top of green - net flow positon - quantity in progress
如果设置了 数量倍数,将 建议数量转换为 数量倍数的最接近的整数倍
建议日期计算
根据 DLT 计算, 如果仓库设置了工作日历, 则扣除非工作天数
计划优先级计算
- green : net flow position >= top of yellow
- yellow: net flow position >= top of red
- red: default
执行优先级计算
- green: on hand >= top of red
- yellow: on hand >= top of red * 0.5
- red: default
备注
颜色的意义


绿色 表示 OK
黄色 表示 需要 补给
红色 表示 用到了安全库存,警报
跌破红色,表示库存用尽
超出绿色,表示库存太多
合格demand 标准

虚线为 尖峰值
填充区域为 考虑尖峰的时间窗
建议数量和状态

空心箭头 为 net flow position [available stock]
黑色填充 箭头为 on hand
各箭头所处的区域,就是该指标的颜色
建议数量为 回到绿顶 所需的数量
buffer设置截图

使用 ddmrp 时, 取消 jit设置,自动停用 op 规则运行逻辑, 改用手工op 规则运行逻辑
ddmrp的更多相关文章
随机推荐
- It运维项目整理
String.prototype.toWeek=function(){ var date = new Date(this); var week = ""; switch (date ...
- 小Z爱图论(NOIP信(sang)心(bin)赛)From FallDream
题目: 小Z最近喜欢上了图论,于是他研究了一下图的连通性问题.但是他遇到了一个难题. 给定一个n个点的有向图,求有多少点对(i,j)满足从i点出发能到达点j ? 小Z仅会简单的朴素算法,所以他想问问你 ...
- MFC 实现打印机打印功能
Visual C++6.0是开发Windows应用程序的强大工具,但是要通过它实现程序的打印功能,一直是初学者的一个难点,经常有朋友询问如何在VC中实现打印功能,他们往往感到在MFC提供的框架内实现这 ...
- c# 防止重复运行 弹出已运行窗口并传递消息
最近在写一款软件 软件是用来接收其他程序传递过来的命令行,并形成列表 大概的最终效果就像下图一样 原本为了程序美观是打算用listbox自绘列表,字和图片都绘制好了发现自己不会绘制按钮 所以最终采用了 ...
- django使用mysql的设置与迁移
1.创建数据库 create database django_lianxi charset=utf8; 2.django项目文件夹的setting.py设置 Django项目默认 sqlite3 数据 ...
- Django简单设置cookies和session
一.Cookie cookie及特点 Cookie是由服务器(网站)生成的,存储在浏览器端的 键值对数据(通常经过加密) 在响应请求时,服务器会把生成 Cookie数据 发给浏览器,浏览器会自动保存( ...
- Spring集成JavaMail并利用线程池发送邮件
我们系统存在大量发送邮件的需求,项目使用的是Spring框架而JavaMail也能很好的跟Spring进行集成,由于发送邮件最好还是使用异步进行发送,所以这里就采用线程池+JavaMail进行邮件发送 ...
- Selenium2+python自动化29-js处理多窗口【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/js/ 前言 在打开页面上链接的时候,经常会弹出另外一个窗口(多窗口情况前面这篇有讲解: ...
- 中控考勤机WEB主动上报接收SERVER程序
using System; using System.IO; using System.Net; using System.Text.RegularExpressions; namespace Con ...
- POJ 2528.Mayor's posters-线段树(成段替换、离散数据、简单hash)
POJ2528.Mayor's posters 这道题真的是线段数的经典的题目,因为数据很大,直接建树的话肯定不可以,所以需要将数据处理一下,没有接触离散化的时候感觉离散化这个东西相当高级,其实在不知 ...