DDMRP 特点

  1. 在供应链加入 mts 缓冲,解耦 lead time,
    缩小 bullwhip 效应,最小化库存
  2. buffer动态调整
  3. 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种

  1. 固定
    数量

  2. 过去天数的
    用量
    计算出平均值
  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个 中取 最大值

  1. ADU * 订货周期
  2. ADU * DLT * buffer特征 lead time 因子
  3. 最小订货数量

或者 取 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 计算, 如果仓库设置了工作日历, 则扣除非工作天数

 
 

计划优先级计算

  1. green : net flow position >= top of yellow
  2. yellow: net flow position >= top of red
  3. red: default

 
 

执行优先级计算

  1. green: on hand >= top of red
  2. yellow: on hand >= top of red * 0.5
  3. red: default

 
 

 
 

备注

颜色的意义

 
 

绿色 表示 OK

黄色 表示 需要 补给

红色 表示 用到了安全库存,警报

跌破红色,表示库存用尽

超出绿色,表示库存太多

 
 

合格demand 标准

虚线为 尖峰值

填充区域为 考虑尖峰的时间窗

 
 

建议数量和状态

 
 

 
 

空心箭头 为 net flow position [available stock]

黑色填充 箭头为 on hand

各箭头所处的区域,就是该指标的颜色

建议数量为 回到绿顶 所需的数量

 
 

buffer设置截图

 
 

 
 

使用 ddmrp 时, 取消 jit设置,自动停用 op 规则运行逻辑, 改用手工op 规则运行逻辑

ddmrp的更多相关文章

随机推荐

  1. dpdk 代码分析一 : 内存初始化

    一  前言 http://www.dpdk.org/  dpdk 是 intel 开发的x86芯片上用于高性能网络处理的基础库,业内比较常用的模式是linux-app模式,即 利用该基础库,在用户层空 ...

  2. (七)ubuntu下编译openwrt内核的环境配置

    首先安装基本开发环境: sudo apt-get install ssh vim samba tftp nfs 安装编译openwrt须要的包: 解压openwrt包编译出错: Build depen ...

  3. IBM Security AppScan Standard WEB扫描工具

    IBM Security AppScan Standard是一款著名的web漏洞扫描工具, 可以设定登录账户,录制登录 扫描完成后可以生成报告,生成的报告非常详细

  4. jQuery的动画方法

    /* animate参数: 参数一:要改变的样式属性值,写成字典的形式 参数二:动画持续的时间,单位为毫秒,一般不写单位 参数三:动画曲线,默认为‘swing’,缓冲运动,还可以设置为‘linear’ ...

  5. hdu 5145(莫队算法+逆元)

    NPY and girls Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  6. PHP获取IP的方法

    function getIP() { if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $realip = $_SERVER['HTTP_X_FORWARD ...

  7. 利用NPOI组件产Excel完整操作

    最终还是要使用NPOi了.刚开始做的是用com组件,发现如果本机不按照excel就不能使用,后来把其中一支改为了用Itextsharp产生pdf,但是还有几支批次要产生Excel,只能改用NPOI了. ...

  8. HDU 6108.小C的倍数问题 (2017"百度之星"程序设计大赛 - 初赛(A)1001)

    补完题?不存在的. 这么久了,还是一条咸鱼,看一堆乱七八糟的东西,写一堆没用的水题,一点进步都没有,还是那么菜,菜的掉渣. 这个百毒之星初赛A还会写两道最简单的水题,初赛B一点也不会,菜的难过... ...

  9. (23)C#XML操作

    APP.config是一个典型的XML文件 打开vs2008在项目上右键-添加-新建项 选择应用程序配置文件,默认名称为APP.config,新建打开后默认代码如下 <?xml version= ...

  10. 模板—字符串—后缀自动机(后缀自动机+线段树合并求right集合)

    模板—字符串—后缀自动机(后缀自动机+线段树合并求right集合) Code: #include <bits/stdc++.h> using namespace std; #define ...