CPM Q&A

需要予測型自動発注システムCPMについての代表的な質問と回答です。
オプティマム・リサーチ公式ホームページより転載しています。

質問1: CPMでは需要予測をどのように行っているか?

各種のコーザルをもとに日別単品別の予測値(需要の平均と標準偏差)を生成している。
コーザルには、売価、種々の販促、販促ラグ、曜日、祝日祭日、イベント、ポイント、見切り数、季節指数、カニバリ、売価・祝日祭日・ポイントの交差要因など約30種類を使用。気候をコーザルに利用することもできる。
カニバリでは同じ分類の他の商品で大きな需要があったとき、その商品の需要にカニバリ(共食い)が生じる場合、その影響を考慮した予測値を生成。
気候データは、予報データの取得や予報の精度に課題があるが、他のコーザルと同様に利用可能。予報データは1週間ぐらい先までが通常なので、更に先の需要予測を行う場合は、前年同日の実績データを使用。

質問2: 統計手法として何を用いているか?

小売業の需要構造に適した多変量系列相関モデルを用いる。
コーザルを扱う統計手法としては重回帰分析が一般的だか、データの「標準的仮定」が満たされないと誤差の大きな予測値が生成されることがある。多変量系列相関モデルは、トレンド変動や循環変動があるデータで、「標準的仮定」が満たされない場合でも精度の高い予測値を生成できるという、小売業に適した特徴を持つ。
詳しくは、オプティマム・リサーチ公式ホームページ「需要予測のための統計手法」を参照。

質問3: 急激な需要増加や季節性にはどのように対応しているか?

変動に応じて基準在庫を変化させることにより対応している。
需要をトレンド変動(中期的な趨勢)と循環変動(直近の循環的な変動)に分解して予測を行っていることを利用し、種々の条件により、基準在庫を一時的に増加させ、欠品を抑制する。
急激な需要増加や欠品が発生し、循環変動(短期的な変動)がプラスに転じたときは、最低在庫日数を自動的に増加させて需要の増加に備える。
季節性のある商品が季節のピーク日に近づいていくとき、最低在庫日数を自動的に増加させて陳列数を増やし、需要の増加に備える。

質問4: PI値を使った需要予測との違いは何か?

商品需要とコーザルの関係を直接モデル化しているCPMに対し、PI値は直接的なコーザルとはならない。
PI値による需要予測は、来店客数に応じて売れ数が決まるという通常感覚に近く、長く使われて来た。来店客数の予測値さえ人が与えれば計算が簡単でシステム化も容易。しかし、少し掘り下げると、売れ数と同様に、来店客数も曜日、天候、特売ほかのコーザルによって影響されると考えられる。つまり、来店客数を人が予測するということは、種々のコーザルの影響を取り込んだ需要予測を人が行っていることになる。
PI値による需要予測には次のような課題がある。
– 人による来店客数の予測には現場での豊富な経験が必要とされ、人材が限られる
– 予測に使うPI値は、曜日別、特売パターン別ほか、様々なPI値を単品別に算出して用意する必要があり、パターンの設定と運用に大きな負荷がかかる
– コーザルを考慮して予測した来店客数(誤差あり)に、コーザルに応じて算出されたパターン別のPI値(誤差あり)を乗算して予測数を求めると、誤差も乗算されることになり、予測精度を低下させる
– 来店客数×PI値の予測では需要分布を考慮しないので、売れ筋商品の欠品が生じやすい
– 売れ筋商品の欠品を防ぐためには安全在庫の設定が必要だが、最適な安全在庫を計算するロジックがない(在庫日数のマニュアル設定など恣意的な対応になる)
– PI値に基づく自動発注は動きの少ないCランク、Dランクの商品群には適さない(数日で1個売れる商品、1か月ほとんど売れず売れるときは10個まとめて売れる商品、等々)

質問5: 在庫管理はどのように行っているか?

発注点・基準在庫方式を用いている。
経済発注サイクルを計算し、その大きさに応じて、発注点方式から定期発注方式へ連続的に変化させている。主に、販売下位商品(販売数が数個以下)には発注点方式、販売上位商品には定期発注方式を適用。販売下位商品に発注点方式が適用されることで、多頻度すぎる発注と納品の発生を防ぐことができる。
CPMは商品需要、販売期限、粗利、原価、商品サイズなどを考慮して、売場利益を最大化する基準在庫の理論値を自動算出している。

質問6: 自動発注データの生成期間は?

通常、向こう1週間分を生成する。
1週間先までの発注予定データを毎日生成することで、たとえ発注当日にシステムがダウンしても、昨日生成した発注予定データを用いて発注することができる。

質問7: 在庫回転率(または在庫日数)が一定になるよう在庫管理をするのがよいと思うのだが?

このような質問の趣旨は次のような考えに基づいていると思われる。
売れる商品は在庫を増やしてやれば、元々高かった在庫回転率は低下するが、欠品を減らすことができる。一方で、売れない商品は在庫を減らしてやれば、元々低かった在庫回転率は高まり、死に筋滞留を削減できる。つまり、売れる商品も売れない商品も、ある同一の在庫回転率に導けばうまくいくのではないか。
考え方の方向性としてはあながち間違いとは思わないが、現実はそれほど単純ではない。CPMではそのような考えを踏まえながらも、理論的により完成された「経済的基準在庫」に基づき在庫管理を行っている。

質問8: 自動発注は一般的に季節性への対応が弱いと聞いているが?

CPMは類似地域で商品カテゴリー別の季節指数を生成し、コーザルとして利用する。季節指数は、週次売上実績から異常値を取り除いてスムージングを行い、そこから年間トレンドを除去して生成する。異常値除去ロジックの効果で、安定した季節指数が生成される。(ピーク時需要の顕著な商品については、季節指数だけでは対応しきれないため、本部送り込みとの併用が必要になる)

質問9: CPMで自動発注を運用する際のパラメータは?

以下の3つのパラメータを用いて、在庫量の調整をする。
最低在庫数、最低在庫日数、販売期限(LCP)。
最低在庫数は商品の最低陳列量を確保するために使用。販売期限の長短によって商品分類別にデフォルト値をセットする。最低在庫日数は商品陳列のボリューム感を出すために使用。最低在庫数と同様に販売期限の長短によって商品分類別にデフォルト値をセットする(通常は1をセット)。販売期限(LCP)には商品の販売期限日数(賞味期限とは異なる)をセットする。例えば、日配品について2~4日、グロッサリは5~90日くらい、とすれば上手く運用できる(試験稼働で適切な値を調整)。
また、特売時は需要予測が大きくなり売れ残りのリスクが高まるため、CPMは特売終了日に向けて売り減らしをし、通常売価での在庫水準に滑らかに移行できるよう、特売時の安全在庫の自動調整を行っている。

質問10: どのようなデータが必要か?

1年間分のPOSデータ、及び商品計画データが必要。
POSデータについては、正規販売(特売も含む)と見切り販売を分ける必要がある。
賞味期限切れになりそうな商品の見切り販売は、特売などと同じく値段を下げての販売だが、売れ行きが全く異なる。そのため、正規販売と見切り販売を分けて、価格弾力性が正確に求められるようにしている。これにより、見切りロス、廃棄ロスの測定も可能になる。

質問11: 棚割りデータは必要か?

店別棚割りデータがあればそれを利用することを推奨。
自動発注は棚割りデータなしでも可能だが、 CPMと棚割りデータ(売場別商品陳列データ)を連携することで、フェース数に合わせた自動発注など、演出効果も考慮した制御が容易になり、本部での在庫管理能力が高まる。また、棚入れや棚落ちの予定日を棚割りデータから取得することで、棚入れ日に間に合う初回発注、棚落ち日に向けた基準在庫の自動抑制と発注停止、等が可能になる。

質問12: 在庫関連データは必要か?

棚卸し実績、販売、仕入、返品、移動、廃棄などのデータが必要。
CPMは上記データを取り込み、棚卸し日を起点に受払計算を毎日行って在庫を計算する。過去に遡って実績データ入替えが発生した場合も、正確な在庫に洗い替えされる。