私たちは、量的供給チェーン最適化を目的としたLokadプライベート ベータ の微分可能プログラミングを即時に利用可能としたことを誇りに思います。差分可能プログラミングは、ディープラーニングの子孫であり、テクノロジー(機械学習)と数値最適化という二つのアルゴリズム分野の融合を表しています.

Lokad における微分可能プログラミングのタイムライン

微分可能プログラミングは、これまでほぼ解決不可能と考えられていた一連の供給網シナリオを解き放ちます:価格と在庫の同時最適化、ロイヤルティに基づく品揃え最適化、非標準製品(例:貴石、美術品など)の需要予測、大規模な多段階フローの最適化、多チャネルの同時最適化、部分的に誤った電子在庫数値に基づく在庫最適化、数多くの制約下での大規模フローの最大化などが挙げられます。また、他の手法で既にアプローチ可能なシナリオにおいても、微分可能プログラミングはデータサイエンティストの作業量と計算資源の両面でわずかなオーバーヘッドで、優れた数値結果を実現します.

供給網への応用

本質的に、微分可能プログラミング(DP)は、長らく切り離されていた問題を統合し、一括して解決する道を提供します:品揃え、価格設定、需要予測、計画、マーチャンダイジング。このような統合は現実離れしているように見えるかもしれませんが、実際には、企業は当初これらの課題が組織内で隔離されていたという事実により生じる無数の問題に対処するため、膨大な量の応急措置を自社プロセスに施しているのです。例えば、価格設定は需要に明らかに影響を及ぼすにもかかわらず、計画や需要予測はほとんどの場合、価格を全く考慮せずに行われています.

DPは、組織内で問題を転嫁するのではなく全体として解決するという観点から、ビジネス全体に対して_概ね正しい_意思決定を提供する大きな可能性をもたらします。逸話的には、ビジネス全体を考慮に入れながら概ね正しい結果を求めることこそが、多くのスプレッドシート主導の組織が行っていることであり、DPのような全社的視点を取り入れる技術が存在しないため、スプレッドシートが最も悪くない選択肢となっています.

Eコマース: 販売されたすべてのユニットを既知の顧客に紐付けることができれば、市場に関する莫大な潜在情報が得られます。しかし、価格設定や在庫最適化に関しては、ロイヤルティ情報は現代ではほとんど利用されていません。DPは、_時系列_予測から、観測されたすべての顧客と製品のペアが重要となる_時間的グラフ_予測への移行を可能にし、それにより在庫と価格の双方でより賢明な意思決定を導きます.

ラグジュアリーブランド: 店舗レベルにおける価格設定および品揃えの最適化は、データの希薄さ、すなわち店舗ごとの商品の販売数量が非常に少ない(年に1単位というケースもある)ため、長い間ほとんど解決不可能とされてきました。DPは、従来のディープラーニング手法よりもはるかに高い_データ効率_を実現するよう設計されているため、このような極度に希薄な状況に対応できる解決策を提供します.

ファッションブランド: 多くの商品が価格に非常に敏感であるため、在庫と価格の同時最適化は明確な要求事項ですが、購買と価格設定の結合を十分に捉えるツールが存在しなかったため、これまで同時最適化は達成できませんでした。すなわち、低価格で多く購入できる能力がより多くの需要を生む(その逆も然り)という点です。DPは、この課題に取り組むための表現力を提供します.

製造業: 大規模な多段階ネットワークの数値最適化は、従来の数値ソルバー(下記の「ブランチ・アンド・カット最適化を超えて」を参照)を用いると機能しません。実際、これらのソルバーは、何百万もの変数や確率的な挙動に対処する場合、実用的ではなくなります。不運にも、製造業は多数の変数と確率的な挙動の両方を示します。DPは、ネットワーク内の実際のフローパターンの複雑さを損なうことなく、多段階に対処するための実用的なアプローチを提供します.

MRO(保守、修理、オーバーホール): システムの修理に必要な部品が一つ欠けると、航空機などの全システムが停止してしまいます。確率的予測は、このような不規則かつ断続的な需要パターンに対処する第一歩ですが、必要な部品の共発生の細かな条件を把握し、その分析を実用的な在庫推奨に変換するのは非常に複雑でした。DPは、このような問題の解決を合理化します.

小売ネットワーク: 小売ネットワーク内でのカニバリゼーション(通常は製品間、場合によっては店舗間)は長い間、最も重要な問題として認識されてきました。この問題は、あえて顧客を一つのブランドから別のブランドへと誘導することを目的としたプロモーションによってさらに悪化します。DPは、プロモーションが存在する状況下でのカニバリゼーションに対処する可能性を提供します。単に「プロモーションの予測」を行うのではなく、DPはプロモーションを、流通チャネルとブランド双方が共同で運用する収益性の高い取引として_最適化_する可能性を提供します.

人工知能(AI)ブームを超えて

人工知能(AI)は確かに2018年のテック・バズワードであり、2019年もその熱は依然として高いですが、Lokadは通常AIのバズワードに該当する技術―例えばディープラーニング―を広範に使用しているものの、技術の「AI」部分に重点を置くことには慎重でした。実際、_量的供給網最適化_に関しては、パッケージ化されたAIは単に機能しません。供給網はたとえばコンピュータビジョンのようなものではなく、データ、指標、タスクが非常に多様です。その結果、いわゆる「ターンキー」なAIソリューションを購入した企業は、これらのソリューションが、単純な状況(単純なルールベースのシステムでも十分に機能した状況)を除き、決して機能しないことに気づき始めています.

根本的に、供給網は複雑な人間が作り出したシステムであり、データのみに基づくAIシステムが、例えば以下のような領域の基本的な洞察を自ら再発見することは通常、非現実的です:

  • ラグジュアリーブランドでのプロモーションは絶対に避けるべきである.
  • ERPにおけるマイナスの受注は、実際には商品の返品を意味する.
  • 生鮮食品は指定された温度範囲内で輸送されなければならない.
  • 色のバリエーションは良い衣類の代替になり得るが、サイズのバリエーションはそうではない1.
  • 航空機のメンテナンスは飛行時間と飛行サイクルに基づいて行われる.
  • 英国での売上は、ERPで通貨がEURと表示されていても実際はGBPである.
  • 人々は自分自身のためでなく、自動車のために部品を購入する.
  • すべてのダイヤモンドはユニークであるが、価格は主にカラット、透明度、色、カットに依存する.
  • 航空機からNOGO部品が欠けていると、その航空機は運航停止となる.
  • 多くの化学プラントは、停止後に再起動するまでに数週間を要する.

遥か未来には、機械学習が人間の知能を模倣し、難解な問題2に直面したときに成果を上げる時が来るかもしれません。しかし、現在のところ、成果が得られているのは比較的_狭い_問題に限られています。機械学習技術は、毎年「狭い」問題の定義の境界を押し広げており、数十年の努力の末に、安全な自律走行やまともな自動翻訳などの重要な問題が解決されたか、もしくは解決に非常に近づいています.

それにもかかわらず、上記のリストが示すように、供給網はパッケージ化された機械学習アルゴリズムを直接適用するにはあまりにも異質です。たとえディープラーニングがこれまでで最も強力な一般化能力を提供したとしても、アルゴリズムが機能するほど狭い範囲で課題を定式化するには、サプライチェーン-サイエンティストの入力が必要です.

この点において、ディープラーニングは、従来の多くの機械学習アプローチとは異なり、深く_構成的_であるため非常に成功を収めました。つまり、特定の状況でより良く学習するためにモデルの_構造_を大幅にカスタマイズすることが可能なのです。モデルの構造をカスタマイズすることは、モデルの_入力_を調整する、いわゆる特徴量エンジニアリングとは異なり、これは多くの非ディープな機械学習アルゴリズム(例:ランダムフォレスト3)で通常唯一の選択肢でした.

しかし、ディープラーニングフレームワークは、機械学習の「大問題」―すなわちコンピュータビジョン、音声認識、音声合成、自動翻訳―から誕生しました。これらのフレームワークは、供給網が直面する問題とは全く異なるシナリオ向けに、綿密に設計・調整されています。したがって、これらのフレームワークを供給チェーン-管理-定義の目的で活用することは_可能_ですが、それは_容易_でも_軽量_な取り組みではありませんでした.

結論として、ディープラーニングフレームワークを用いることで供給網に多くの成果をもたらすことは可能ですが、供給網と既存のディープラーニングフレームワークとの間には大きなインピーダンス・ミスマッチが存在し、それがコストや遅延を増加させ、これらの技術の実用性を制限しています.

微分可能プログラミング

ブランチ・アンド・カット最適化を超えて

供給網におけるほとんどの問題は、未来の不完全な予測、市場の現状に対する不完全な理解、時には供給網システム自体(例:在庫の不正確さ)に対する不完全な把握という学習側面と、数多くの非線形制約(例:購買時の最小-発注-量-moqや生産時のバッチサイズ)を満たしながら経済的要因に基づいて意思決定を_最適化_する数値最適化側面の両方を持っています.

数値最適化の面では、整数計画法およびブランチ・アンド・カットなどの関連技術が数十年にわたりこの分野を支配してきました。しかし、これらのブランチ・アンド・カットアルゴリズムとそれに伴うソフトウェアソリューションは、多くの(場合によってはほとんどすべての)供給網課題に対する運用的解決策を提供するために必要な柔軟性とスケーラビリティをほとんど実現できなかった4のです。整数計画法は、変数が少ない厳密な問題(例:家電製品内の部品配置)を解く際には非常に優れたツールですが、確率的な需要と確率的な輸送時間の両方に直面して、1,000万以上のSKU間の在庫再調整のような大規模問題になると、劇的な限界を示します.

ディープラーニングの最も過小評価されがちな側面の一つは、その成功が_学習_側面でのブレークスルーだけでなく、_最適化_側面でのブレークスルーの結果でもあるという点です。科学コミュニティは、非常に効率的なアルゴリズムが大規模な最適化を実行していることを明らかにしています5.

これらの「ディープラーニング」最適化アルゴリズムは、すべて確率的勾配降下法を中心に回っているだけでなく、ブランチ・アンド・カットの対応アルゴリズムと比べて遥かに効率的であり、我々が使用しているSIMD CPUや(GP)GPUといった計算ハードウェアに非常に適合しているため、実際には2~3桁の追加的な高速化を実現します.

純粋な_数値最適化_におけるこれらのブレークスルーは、_意思決定_の最適化のために供給網にとって非常に重要です。しかし、もしディープラーニングフレームワークが供給網における_学習_問題に対処するにはやや不向きであったとすれば、供給網における_最適化_問題に対してはさらに適していません。実際、これらの最適化問題は、供給網サイエンティストが強制すべき制約および最適化すべき指標を_実装_するため、フレームワークの表現力にさらに依存しています.

微分可能プログラミングへの道

理論と実践の違いは理論上は存在しない。しかし、実践では違いがある. Walter J. Savitch, 「Pascal: An Introduction to the Art and Science of Programming」(1984)

微分可能プログラミング(DP)は、学習面と数値最適化面の両方においてディープラーニングが提供する最高の成果を供給網にもたらす答えです。DPを通じて、供給網サイエンティストは人間の洞察を最大限に活かし、ビジネス目標と深く整合した決定-駆動-最適化の数値レシピを作成することが可能となります.

ディープラーニングと微分可能プログラミングの間に絶対的な境界はなく、むしろ、最もスケーラブルなシステム(ディープラーニング)から最も表現力豊かなシステム(微分可能プログラミング)への連続体であり、微分可能プログラミングに進むにつれて、粗いスケーラビリティを犠牲にして、数多くのプログラミング構造が徐々に利用可能になっていきます.

しかし、Lokadでの経験は、主にコンピュータビジョン向けに設計されたツールから、供給網の課題に対応するために設計されたツールへと移行することが、生産に至らない「興味深い」プロトタイプと、スケールで展開される産業グレードのシステムとの決定的な差を生むことを示しています.

ディープラーニング 微分可能プログラミング
Primary purpose 学習 学習+最適化
Typical usage 一度学習、複数評価 一度学習、一度評価
Input granularity 分厚いオブジェクト(画像、音声シーケンス、ライダー・スキャン、全文ページ) 薄いオブジェクト(製品、顧客、SKU、価格)
Input variety 均質なオブジェクト(例:すべて同じ縦横比を持つ画像) 異種のオブジェクト(リレーショナルテーブル、グラフ、時系列)
Input volume メガバイトからペタバイトまで キロバイトから数十ギガバイトまで
ハードウェアアクセラレーション 非常に良い 良い
表現力 テンソル演算の静的グラフ (ほぼ) 任意のプログラム
確率的数値レシピ 組み込み 同上

The typical usage is a subtle but important point. From the “Big AI” perspective, training time can be (almost) arbitrarily long: it’s OK to have a computational network being trained for weeks if not months. Later, the resulting computational network usually needs to be evaluated in real-time (e.g. pattern recognition for autonomous driving). This angle is completely unlike supply chains, where the best results are obtained by re-training the network every time. Moreover, from a DP perspective, the trained parameters are frequently the very results that we seek to obtain; making the whole real-time evaluation constraint moot.

データ入力の粒度、多様性、量に関する期待もまた大きく異なります。典型的には、「ビッグAI」の視点では、トレーニングデータ(例:ウェブ上のすべてのテキストページ)のほぼ無限の量が強調され、その主たる課題は、これらの巨大なデータセットを効果的に活用できる非常にスケーラブルな手法を見つけることにあります。対照的に、サプライチェーンの問題は、高度に構造化された多様な限られたデータを用いて対処しなければなりません。

これにより、ディープラーニングはテンソルベースのフレームワークへと導かれ、最初はGPU、現在はますますTPUといった専用計算ハードウェアによって大幅に高速化されるようになりました。確率的勾配降下法に基づく微分可能プログラミングもハードウェアアクセラレーションに関して多くの良い特性を示しますが、テンソル演算の静的グラフと比較するとその度合いは低いです。

確率的数値レシピの重要性は2つあります。第一に、こうしたレシピは 学習 の観点から重要な役割を果たします。変分オートエンコーダやドロップアウトはそのような数値レシピの例です。第二に、サプライチェーンシステム内の確率的な挙動(例:変動するリードタイム)を適切に考慮するため、モデリングの観点からも重要な役割を果たします。

逆に、微分可能プログラミングと混合整数計画法との間には大きな隔たりがあります。ここ数十年にわたり主流であった手法は、複雑な数値最適化を行うものでした。

混合整数計画法 微分可能プログラミング
主要目的 最適化 学習+最適化
入力の粒度と多様性 薄いオブジェクト、異種 同上
入力量 バイトから数十メガバイトまで キロバイトから数十ギガバイトまで
ハードウェアアクセラレーション 劣る 良い
表現力 線形・二次形式における不等式 (ほぼ) 任意のプログラム
確率的数値レシピ なし 組み込み

混合整数計画法ツールを擁護する立場から言えば、これらのツールは問題に取り組むことに成功した場合、数学的な意味で最適解を 証明 できることがあります。しかし、ディープラーニングも微分可能プログラミングも、この点において正式な証明を提供しません。

結論

微分可能プログラミングはサプライチェーンにおける大きなブレークスルーです。これは、コンピュータビジョンなど多くの「ビッグAI」問題の解決に非常に成功した ディープラーニング の上に構築されていますが、実世界のサプライチェーンが直面する現実的な課題に適合するよう、コア部分が再設計されています。

Lokadはその ディープラーニング予測技術 を基盤に、次世代の予測技術である微分可能プログラミングへの移行を進めています。しかし、DPは単に 予測 するだけでなく、最適化学習 を統合し、これまで実現不可能だった膨大な問題に解決策をもたらします。

プライベートベータに参加してみませんか? contact@lokad.com までメールをお送りください。


  1. 逸話的に、衣服のサイズがそれほど重要でなく、代替品として十分機能するセグメントがあり、それが 子供 の服です。実際、予算に制約のある親は、強い値引きを提示された場合に、子供の成長を見越して複数のサイズを前もって購入することがよくあります。 ↩︎

  2. 多くの、あるいはほとんどすべてのサプライチェーンの問題は、“wicked”、すなわち その社会的複雑性のために明確な終了点が定められない問題 です。Wikipediaのwicked problemも参照してください。 ↩︎

  3. ランダムフォレストは、ツリーの最大深度やサンプリング比率など、モデル自体のメタパラメータ化に対して、いくつかの小さな選択肢を提供します。つまり、ランダムフォレストが捉えきれなかったパターンは、他により良い選択肢がないため、特徴量エンジニアリングで補う必要があります。詳しくはカラム・ランダム・フォレストも参照してください。 ↩︎

  4. CPLEX、Gurobi、そして現在のオープンソースの同等品などの最適化ソフトウェアは、3年以上にわたり利用可能でした。理論的には、MOQ(最小発注数量)や値段割引に直面するあらゆる購買状況は、同様の機能を提供するソフトウェアによって対応されるべきでした。しかし、過去10年間で多くの分野の100社以上と連絡を取る機会があったにもかかわらず、どの購買部門でもこれらのツールを使用しているのを見たことがありません。私自身のこれらのツールの経験から、実際に線形および二次形式のみを含む静的な不等式のセットに適合する問題はごくわずかであることが示唆されます。 ↩︎

  5. アルゴリズムAdam (2015)は、シンプルでありながら非常に効率的な最適化アルゴリズムの代表例であり、機械学習分野全体を飛躍的に前進させたものです。 ↩︎