
在庫最適化分析の実践
まず測る:在庫の現状を数字で掴む
在庫は「足りないと機会損失、余ると資金拘束と廃棄」という二面性があります。感覚ではなく、まずは基準指標で現状を定量化します。最低限、SKU×拠点×日次で以下をトラッキングします。
- 在庫回転率(年間売上原価÷平均在庫)と在庫カバー日数(在庫÷直近需要)
- 欠品率(販売機会に対する在庫ゼロの割合)と充足率(Fill Rate)
- 廃棄・値引き率、滞留日数分布(90日超滞留のSKU割合)
- リードタイムの平均・分散、納入遅延頻度
加えて、プロモーションや価格改定、季節性のイベントカレンダーを日次でひもづけます。データはPOS、WMS、受発注、サプライヤのASN、カレンダーの5系統が基本です。品質は「埋まり(欠損率)」「一意性(SKUコードの正規化)」「整合性(発注=入荷の突合)」で評価して欠損補完と正規化を先に片付けます。
需要予測と補充ポリシーを設計する
在庫最適化の意思決定は「いつ・いくつ発注するか」に収れんします。ベースはSKUをセグメントし、需要予測をあて、ポリシーを当てはめる流れです。
SKUセグメント:ABC×XYZで方針を切る
売上寄与でABC(A=上位20%で80%売上)を、需要変動でXYZ(X=安定、Z=不規則)を付けます。A×Xは高いサービスレベル(例:98%)で頻繁に補充、C×Zは受注生産やバルク仕入れ・在庫プールでコスト最小化など、意思決定の粒度を変えます。賞味期限やサイズバリエーションは別軸でタグ付けして滞留・廃棄の閾値を厳しめにします。
需要予測:単純を基準に、外れ値と季節性を明示
まず移動平均や指数平滑でベースラインを作り、プロモや天候、価格を特徴量に加えた週次モデルで上書きします。ARIMAやGradient Boostingでもよいですが、目的は「誤差構造と不確実性の帯を出すこと」。RMSEだけでなく、P50/P90レンジを算出し、在庫カバーレベルの意思決定に直結させます。ゼロ多発SKUは階層ベイズやCroston手法が安定します。
安全在庫と再発注点:式が運用を変える
再発注点=(リードタイム中の予測需要)+安全在庫、が基本です。安全在庫は目標サービスレベルに対応する係数zと、リードタイム中の需要標準偏差σLで z×σL と置きます。リードタイム自体のブレが大きい場合は需要とリードタイムの分散を合成します。A×Xはzを高く、C×Zは低く。最小発注量やケース単位、輸送ロットは制約として丸め込み、発注周期(B政策)と数量(Q政策)をSKUごとに切り替えます。
マルチ拠点:在庫プールと横持ちの閾値
店舗間の需要相関が低いならプーリング効果が働きます。センター在庫比率を上げ、店舗は薄く早く回す。欠品コストと横持ちコストの交点で移送トリガーを設計し、例外検知(急伸・死に筋・納入遅延)だけをオペレーターに上げる仕組みにします。
身近な企業活用例:地方ドラッグストアの失敗と逆転
プロモ偏重で発注が属人化し、春の花粉商材は欠品、夏の飲料は山積みで秋に値引き。回転率4.2、欠品率8%、廃棄・値引き率6%が出発点でした。
まずPOSとWMSを日次で統合し、ABC×XYZでSKUを色分け。A×Xの上位2,000SKUにP90帯付きの週次予測を適用、再発注点と最小ロットを自動計算。C×Zはセンター厚め・店舗薄めに切替え、横持ちのコスト閾値を1配送2,500円で固定しました。サプライヤ別にリードタイム分散を見直し、遅延常習の2社は契約条件を見直し。
運用では、朝9時の例外リスト(欠品リスク上位100、滞留上位100)だけをSVが確認。プロモはカレンダーを連携し、販促1週前にzを+0.3上げて安全在庫を自動加算。結果、3カ月で欠品率は3.1%に低下、回転率は6.8に改善、廃棄・値引き率は3.2%まで縮小。現場工数は発注作業で週8時間削減され、売上は前年同月比で+5.6%でした。失敗要因は「均一な在庫基準」と「予測の不確実性を在庫に翻訳しない」点で、改善は「セグメント別ポリシー」と「z×σLの運用定着」に尽きます。
運用と改善:例外管理とプラットフォーム化
最適化は一度のチューニングで終わりません。需要の偏り、価格・販促、流通遅延は常に動きます。ダッシュボードは「平均」ではなく「逸脱」を起点にし、トリガーを明確にします。
- 日次:欠品予測上位、滞留上位、納入遅延、負のマージン候補
- 週次:SKUセグメントの移動、P50-P90幅の広がり、回転率の偏差
- 月次:GMROI、在庫資金の機会原価、サービスレベル対コスト曲線
データ基盤は、原価・需要・リードタイムを同じキーでジョインできるモデルを用意し、再計算は日次バッチ、例外はストリームで即時通知が理想です。バージョン管理で「発注はどの予測とパラメータで決まったか」を追えるようにし、需要ドリフトは統計検定で検知。A/Bで一部店舗だけzやポリシーを変え、充足率と粗利で効果検証します。
現場の作業効率には生成AIも使いどころがあります。例えば、CopilotでSQLや可視化の雛形を素早く作り、ChatGPTで「欠品が集中する曜日と要因の仮説」を生成し、仮説検証の観点を漏れなく洗い出す。Geminiでカレンダーと天候の相関を探索し、運用手順書はClaudeで平易に整備する。最終判断は人が行いながら、分析とドキュメントの初稿は機械に任せるとスピードが出ます。
在庫は会社のキャッシュフローと直結します。数式はシンプルでも、データ粒度、制約条件、例外運用が精度を決めます。事業の成長段階に合わせ、データ解析プラットフォーム事業の視点で「データ統合→予測→最適化→意思決定ログ→継続学習」を一つのループとして設計すると、現場の判断と経営のKPIが同じダッシュボードでつながります。これが回り始めたとき、在庫はコストではなく速度の源泉になります。