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. zepto.js 自定义打包集成其他模块构建流程

    1.首先在自己的电脑上要安装Node.js和npm包管理工具: 2.从github上下载zepto.js的源文件包到本地磁盘(例如:E:\Learning\JS): 地址:https://github ...

  2. R语言绘制相对性关系图

    准备 第一步就是安装R语言环境以及RStudio 图绘制准备 首先安装库文件,敲入指令,回车 install.packages('corrplot') 然后安装excel导入的插件,点击右上角impo ...

  3. ZOJ18th省赛 Lucky 7

    [线上网址](http://acm.zju.edu.cn/onlinejudge/showContestProblems.do?contestId=378) BaoBao has just found ...

  4. 51nod 1086 背包问题 V2 【二进制/多重背包】

    1086 背包问题 V2  基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放 ...

  5. SpringCloud集群(三)

    一.构造步骤 1.进行其他的服务中心的域名映射 127.0.0.1 eureka7001.com 127.0.0.1 eureka7002.com 127.0.0.1 eureka7003.com 2 ...

  6. stl set求交集 并集 差集

    #include <iostream>#include <set> using namespace std; typedef struct tagStudentInfo{  i ...

  7. 求int最大值以及int二进制

    求int最大值:(((unsigned int)(~0))>>1) 求int的2进制串 string str = ""; int iNum = 100; for(int ...

  8. Spiral Matrix -- LeetCode

    Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral or ...

  9. Find intersection of two sorted arrays

    共有三种思路. 哈希表. 将较小的那个数组中的所有元素存在哈希表中.然后依次验证另一个数组中的数字是否有出现过.时间复杂度O(m + n),空间复杂度O(min(m, n)) 二分搜索法 将较小的那个 ...

  10. ThinkPHP的自动验证常用的正则

    ThinkPHP的自动验证常用的正则   ThinkPHP的自动验证机制是为了进行表单数据验证,验证可以支持function. callback.confirm.equal.unique和regex, ...