グローバル・サプライチェーンを俯瞰する計画対話環境のご紹介(デモ版あり)
【2025年1月10日追記】
本記事でご紹介した計画ツールのデモ版をgithubの下記URLにuploadしています。
zipファイル(300MB)をダウンロード・解凍して、実行モジュールexeファイルを起動します。
※実行モジュールはPythonコードからexeファイル変換しており、関連dllファイルを含めると解凍後に生成されるディレクトリ・サイズが800MBと大きく要注意です。
pythonのソースコードは、コードを整理(refactoring)して、後日githubにuploadしたいと思います。
【2024年11月28日追記】
サプライチェーン・ネットワークの最適化機能を追加しました。
「図1-2. サプライチェーンのネットワーク図と各拠点の在庫推移」では、最小コストのサプライチェーン・ルート(赤線)を特定してPSI計画を行います。
以下の機能を追加しました。
1. 供給量配分の問題の最適化
2. PSIの需要変動を吸収するバッファ在庫の設置と評価
3. 生産拠点での先行生産・平準化生産をPSI表示
本記事は、過去にご紹介したグローバル・サプライチェーン計画ツールに関連する記事の続きです。
前回までご紹介してきたpythonで開発した実証実験(Proof of Concept)のコードをベースに、GUI対話環境として、サプライチェーン全体を俯瞰する表示機能(Supply Chain Network view)と計画立案機能(Demand planning / Supply plannng / Demand leveling)を整備しました。
グローバル・サプライチェーン計画の対話機能について、ご紹介していきたいと思います。
「図1-1. 図1-2.サプライチェーンのネットワーク図と各拠点の在庫推移」のとおり、画面左側にサプライチェーン・ネットワーク・グラフを、画面右側に各事業拠点のPSIグラフ、購入・販売・在庫の時系列推移を示します。
図1-2では、需要サイド、アウトバウンド・サプライチェーン(完成品の出荷~最終消費地の販売チャネル)における供給配分を最適化して、以下の問題を解いています。
●供給を優先すべき販売チャネルはどこか?
●サプライチェーンの各事業拠点(node)間の発注量・在庫量・販売量(PSI)はどのように変化するか?
つまり、供給拠点となるマザープラントの供給量を変化させた時に、最小コスト(最大利益)となる販売チャネルを特定して、供給配分量を最適化しています。
この最適化されたサプライチェーン・ルートと供給配分量をもとにPSI計画を再立案しています。(サプライチェーンの数量編の計算)
さらに、この結果をPSI計画に渡して、製品ロット別のPSI(販売・在庫・出荷)の数量を算定することで、各事業拠点の売上・利益・利益率を算定しています。(サプライチェーンの金額編の計算)
ここで、サプライチェーン全体の利益を最大化する供給ルートは、ネットワーク図中の赤線で示されます。
図1-2では、販売コストの大きいLAX_D(ロサンゼルスの直販チャネル)とLAX_I(ロサンゼルスの間接販売チャネル)への供給が絞られて、PSI計画がブランクとなっているのが分かります。
一方、LAX_N(ロサンゼルスのネット通販チャネル)は、優先供給されるとともに、需要変動を吸収するバッファ在庫拠点として機能していることが、PSI図中の在庫(赤い部分)が積み上がっている様子から分かります。
【補足: 関税シミュレーション】
同様の考え方で、X国からY国への関税率を変化させたシミュレーションを行うこともできます。コスト・テーブルの関税率を上げると販売チャネルのコストが上がり(=供給優先度が落ちて)、他の販売チャネルへ優先供給されてしまいます。
【サプライチェーン計画の画面構成と機能】
図1-1の画面構成の左側、サプライチェーン・ネットワーク図は、「図2. サプライチェーン・ネットワークのモデル構成」に示すとおり、
左側のインバウンド・サプライチェーン(素原料~中間部材~半製品~完成品)は生産供給サイドを、
右側のアウトバウンド・サプライチェーン(完成品の出荷プール~域内流通倉庫~各国販売会社~販売チャネル)は流通需要サイドを表します。
また、本社のグローバル統括本部として、販売統括・生産統括・購買統括の各統括機能をモデル定義しています。
図1-1の右側の部分、「図3-1. サプライチェーン上のPSI時系列グラフ(販売~生産~素材まで)」は、一般的なPSI(購買・販売・在庫)の時系列グラフで、サプライチェーンを構成する各事業拠点毎に、最終消費地の販売チャネルからマザープラントを経由して、素原料生産まで、取り扱う製品の週単位の購買・販売・在庫の動きを、サプライチェーン全体の整合性を確保しながら表示しています。
図3-1のピンク色の在庫はバッファで、流通サイドの需要変動を吸収する在庫バッファdecoupling pointを設定した結果、積み上がった在庫を表しています。
「図3-2. サプライチェーン在庫バッファ位置の利益シミュレーション」では、在庫バッファ設定の組合せをすべて洗い出した後、サプライチェーン上の在庫バッファ位置毎の利益シミュレーションを行い、どこに在庫バッファを構えるのが良いか利益評価します。
最下段のPSIが示す生産拠点、マザープラント側の平準化生産(PUSH方式)の様子を確認することができます。
ここで、最終消費地の販売チャネルの実需に対応したJust In Timeオペレーション(PULL方式)との整合性を保つために在庫バッファが機能しています。
図1のメニュー部分は、「図4. サプライチェーン計画の機能メニュー」に示す以下の機能があります。
●Load Data Directory
入力ファイルのディレクトリ指定によるデータ読込み、需要の要求ポジションをセット
Load Data Directory処理では、計画の初期処理として、入力ファイルを指定して、データを読み込むと「図5. 最終消費地の需要情報(実需)をサプライチェーン全体に展開する」のとおり、最終消費地の需要情報を起点に、サプライチェーン上のすべての事業拠点ノード上に要求需要が置かれます。
製品ロット番号の単位で、需要ポジションがセットされます。
●Demand Planning
最終消費地を起点とするデマンド計画
最終消費地から時間をバックワード処理することで、各事業拠点の需要ポジションを確定するリードタイム・オフセット処理
安全在庫のみを考慮したPSI処理
●Demand Leveling
製品出荷ポジション上の要求需要を先行生産の期間を指定して平準化する処理
●Supply Planning
供給サイド、マザープラント側から最終消費地までのサプライ計画
生産平準化された製品出荷の確定計画にもとづいて、各製品ロットID毎にフォワード操作で、製品ロットを出荷・輸送・着荷・在庫するPSI処理とリードタイム・オフセット処理
●Evaluate Buffer Stock
在庫バッファの位置・組合せを洗い出して、サプライチェーン上の在庫バッファの組合せ毎にコスト利益を評価する
「図6. 在庫バッファの位置と組合せ毎に利益評価」を参照
計画処理は、在庫バッファ・ポイントを指定して、市場からの実需でPULL方式で出荷
●Optimize Supply Allocation
生産拠点から最終消費地の販売チャネルに対する供給配分の供給優先度(利益優先、優先顧客指定など)による最適化
関税率と価格弾力性のコスト・パラメータによる優先供給先シミュレーション
「図7. 関税率と価格弾力性のコスト・パラメータ」を参照
以上、簡単ですが、「グローバル・サプライチェーンを俯瞰する計画対話環境」の概要をご紹介させていただきました。
なお、サプライチェーン全体の課題解決のためには、今回ご紹介したネットワーク構成を見直して、
●需給バランスを調整する機能
●優先供給する市場の特定
●緊急時の供給ルートの変更
●関税コストを考慮したサプライチェーンのコスト最適化
●循環経済におけるCO2排出を考慮した輸送ルート
●素材へのリサイクル率
などの様々な課題を盛り込んで考慮していく必要があります。
また大前提として、地政学的なリスク・シナリオから、各事業拠点の設置の可否は慎重に検討する必要があります。
このように積み残された課題が様々ありますが、サプライチェーン・ネットワークの再構成の自由度を上げて、可変ネットワークのモデルに変更するとともに、利益シミュレーション機能を拡張することで、経営判断をサポートするツールとして有用性が高まると思います。
さらに、もう一つのモデル化の案として、最終消費地の販売チャネルにおける「消費スピード」という考え方を取り入れて、毎週の実需の消費量とマーケティング費用との関係をモデル化することで、前線のマーケティング活動の実態に合わせたサプライチェーン計画のシミュレーションができるようになると思います。
最終消費地におけるマーケティング活動については、一般にコトラーの4Pで定義されるProduct, Price, Place, Promotion がありますが、これを「消費スピード」と「マーケティング・コスト」という考え方でモデル化し、今回ご紹介してきた計画ツールに組み込んでいくことで、最終消費市場の動きをシミュレーションすることができるのではないかと考えています。
2025年1月
大杉 泰司