2つの式と、記号の意味

n期移動平均は、直近n期の実績の単純平均を次期の予測にします。

F(t+1) = ( y(t) + y(t−1) + … + y(t−n+1) ) ÷ n

単純指数平滑は、前回の予測に、前回の誤差のα倍を足して更新します。

F(t+1) = α × y(t) + (1 − α) × F(t) (0 < α ≤ 1)

  • y(t):t期の実績(個/月など、在庫と同じ単位)
  • F(t):t期に対する予測値
  • n:移動平均の期間数、α:平滑化定数

指数平滑は、過去の実績に α、α(1−α)、α(1−α)²… と指数的に小さくなる重みをかけた加重平均と同じです。使うデータの「平均年齢」は、移動平均が (n+1)/2 期、指数平滑が 1/α 期です。したがって α = 2/(n+1) のとき、両者は同じ程度の遅れになります。3か月移動平均に対応するのは α=0.5、α=0.1 は19か月移動平均に相当します。

どちらも季節性やトレンドを扱わない手法です。季節性のある系列には季節つきの手法が必要で、その判断は製造業の需要予測手法:統計手法と機械学習の使い分けで扱います。

段差のある12か月で計算する

ある購買部品の月次使用量が、6か月目まで100前後で推移し、7か月目に新機種の立ち上げで130前後に増えたとします。初期値は F(1)=100 とし、各月の予測はその月の実績を見る前に計算した値です。

月実績3か月移動平均指数平滑 α=0.1α=0.3α=0.5
4102100.0100.099.699.0
598100.7100.2100.3100.5
610098.799.999.699.2
7130100.0100.099.899.6
8126109.3103.0108.8114.8
9134118.7105.3114.0120.4
10128130.0108.1120.0127.2
11132129.3110.1122.4127.6
12130131.3112.3125.3129.8
13(予測)−130.0114.1126.7129.9

1〜3か月目の実績は 100/104/96 です。この表を期間別の誤差にまとめると、トレードオフがはっきりします。

安定期(4〜6月)のMAE:α=0.1
1.42
当サイト計算。α=0.3は1.69、3か月移動平均は2.00、α=0.5は2.08
増加後(7〜12月)の予測不足の累計:α=0.1
141個
当サイト計算。α=0.3は90個、3か月移動平均は61個、α=0.5は61個
段差の90%に追いつくまで:α=0.1
22か月
(1−α)^k ≤ 0.1 を満たす最小のk。α=0.3は7か月、α=0.5は4か月

安定期には、αが小さいほど偶然のぶれに振り回されず、誤差が小さくなります。ところが需要の水準が変わると、αが小さい予測はいつまでも古い水準を引きずります。α=0.1 の予測で部品を手配していたら、7〜12月の6か月で累計141個(月平均約24個)の不足が出て、安全在庫を食いつぶし、欠品か緊急手配になります。

トレンドがあると、どちらも一定量遅れる

需要が毎月b個ずつ増え続ける場合、移動平均も単純指数平滑も、定常状態で実績より一定量低い予測を出し続けます。その遅れは、移動平均で b×(n+1)/2、指数平滑で b/α です。毎月5個ずつ増える系列では、3か月移動平均でも α=0.5 の指数平滑でも、予測は実績より常に10個低くなります(数値計算で確認済み)。

この遅れはランダムな誤差ではなく一方向の偏り(バイアス)なので、安全在庫では吸収しきれません。標準偏差から安全在庫を計算すると、偏りの分だけ在庫が足りなくなります。トレンドがある品目は、トレンド項を持つホルト法を使うか、偏りをトラッキングシグナルで監視して水準を補正します。

実務での選び方

使い分けの目安は次のとおりです。

  • 計算の透明性を優先する(現場が手で検算する、ExcelやERPの標準機能で回す)なら移動平均。期間nは「何か月前の異常値まで引きずってよいか」で決めます
  • 品目数が多く、毎月自動で回すなら指数平滑。保持する値が前回予測1つで済み、ERPやSCPのほとんどに標準で入っています
  • 水準変化が頻繁な品目(新機種の立ち上げ、設計変更)は、αを高めにするか、変化点で初期値を手動で置き直します。置き直した日と理由を記録しておかないと、後で予測精度を評価できません

よくある質問

加重移動平均と指数平滑法はどちらが良いですか。

加重移動平均は重みを自由に決められますが、期間ごとに重みを決める根拠を説明しにくく、品目数が多いと保守が大変です。指数平滑はαひとつで重みが決まり、過去データで最適化もできるため、多品目の自動予測には指数平滑が扱いやすい手法です。

指数平滑の初期値はどう決めますか。

最初の数期間の実績の平均を使うのが一般的です。初期値の影響は (1−α) の累乗で薄れるため、αが小さいほど長く残ります。α=0.1 では初期値の影響が10%未満になるまで22期かかるので、履歴が短い品目では初期値の決め方が予測を左右します。

安全在庫の計算に使う誤差はどの期間のものですか。

予測手法とαを確定した後、その条件で過去を予測し直した誤差(バックテストの誤差)を使います。手順は予測誤差から安全在庫を計算する方法で説明しています。

この記事に出てくる用語

用語集(日・英・中)をすべて見る

この記事を書いた人

株式会社サオス

株式会社サオス 製造DX部

DELMIA Apriso を中核とした MES / 製造DX の導入・運用・人材育成と、製造業のデータ活用・AI の調査・開発・教育を手がけるITコンサルティング企業。ISO 9001:2015 / ISO 27001:2022 認証取得。 日本・中国・米国で製造業のMES・在庫・データ基盤を手がけた実務者が、計算式を検算し、欧米・中国の一次情報にあたって書いています。

週刊 在庫KPI

業種別の在庫KPIベンチマークの更新と、その週の新着記事5本を毎週月曜にお届けします。無料・いつでも解除できます。

登録によりプライバシーポリシーに同意したものとします。配信は株式会社サオスが行います。