📦 静态安全库存模型

⚡ 基于正态分布 · 需求标准差 & 提前期标准差 · 服务水平 Z 值
① 安全库存公式 & 核心逻辑
  • 安全库存 (SS) = Z × σD+L
  • σD+L = √(L × σd² + d̅² × σL²)
  • Z : 服务水平系数 (标准正态分位数)
  • σd : 需求标准差 (单位时间)
  • σL : 提前期标准差 (时间单位)
  • L : 平均提前期 / d̅ : 平均需求

✔ 当提前期固定 (σL=0) :

SS = Z × σd × √L

📐 需求标准差 & 提前期标准差

需求标准差 σd :衡量需求波动,历史需求数据的离散程度。

提前期标准差 σL :补货提前期的不确定性,如物流、生产波动。


💡 两者共同影响总不确定性,通过“均方根”合成。

⚙️ 实际业务中,σd 常从日/周需求计算,σL 从历史到货天数计算。

② 需求正态分布 & 安全库存可视化
μ (平均需求) Z·σ 安全库存 σ σ 服务水平 95%
σ 需求标准差 Z 服务水平系数 SS 安全库存
③ 服务水平系数 Z 值表 (常用)
服务水平 (SL)缺货概率Z 值 (安全系数)解释
90.0%10.0%1.28零售快消,允许一定缺货
95.0%5.0%1.65✅ 常用标准,平衡成本
97.5%2.5%1.96高可用性,关键物料
99.0%1.0%2.33医疗/备件,极高要求
99.9%0.1%3.09军工/生命支持

📌 Z值 与 服务水平 一一对应,查标准正态分布表可得。

Z = 1.65 意味着需求波动控制在均值+1.65倍标准差内,缺货概率 5%。

④ 静态安全库存决策架构
需求数据 提前期数据 σₙ 合成 √(Lσd² + d²σL²) 安全库存 SS = Z · σ Z 服务水平系数

输入需求/提前期参数 → 合成标准差 → 结合Z值输出安全库存

⑤ 计算示例 (Python)
import numpy as np
from scipy import stats

# 参数设置
mean_demand = 120       # 平均日需求
std_demand = 30         # 日需求标准差
lead_time = 5           # 平均提前期 (天)
std_lead_time = 1.2     # 提前期标准差
service_level = 0.95    # 服务水平 95%

Z = stats.norm.ppf(service_level)   # Z = 1.645

# 合成总标准差
sigma_total = np.sqrt(lead_time * std_demand**2 + mean_demand**2 * std_lead_time**2)

# 安全库存
safety_stock = Z * sigma_total
print(f"Z值: {Z:.3f}")
print(f"合成标准差: {sigma_total:.1f}")
print(f"安全库存: {safety_stock:.1f} 件")

✅ 输出: Z值: 1.645, 合成标准差: 158.7, 安全库存: 261.1 件