Eine meinungsstarke Bewertung von Deep Inventory Management
Ende 2022 veröffentlichte ein Team bei Amazon forschungsbezogene Arbeiten im Bereich supply chain mit dem Titel Deep Inventory Management1. Dieses Paper präsentiert eine Inventuroptimierungstechnik (im Folgenden als DIM bezeichnet), die sowohl Reinforcement Learning als auch deep learning beinhaltet. Das Paper behauptet, dass die Technik erfolgreich bei über 10.000 SKUs in realen Einsatzumgebungen angewendet wurde. Dieses Paper ist in mehrfacher Hinsicht interessant und ähnelt in gewisser Weise dem, was Lokad seit 2018 tut. Im Folgenden diskutiere ich, was ich als Vor- und Nachteile der DIM-Technik aus dem spezifischen Blickwinkel von Lokad sehe, da wir in den letzten Jahren ähnliche Ansätze verfolgt haben.

Die Zielfunktion und Nebenbedingungen (S.27, Anhang A), aus "Deep Inventory Management", Nov. 2022
Meine erste Beobachtung ist, dass dieses Paper überzeugend wirkt, und ich neige daher dazu, seine Ergebnisse zu unterstützen. Die Gesamtaufstellung entspricht in hohem Maße meinen eigenen Experimenten und Beobachtungen. Tatsächlich sind die meisten Papers, die über supply chain erscheinen, einfach nur unseriös – aus dem einen oder anderen Grund. Supply chains sehen sich mit einem gravierenden Fall epistemischer Korruption konfrontiert,2 und tiefe Skepsis sollte der Ausgangspunkt sein, wenn man mit einem vermeintlich “besseren” Ansatz zur Lösung eines supply chain problem konfrontiert wird.
Der bemerkenswerteste Beitrag der DIM-Technik besteht darin, die Prognosestufe vollständig zu umgehen und direkt zur Inventuroptimierung überzugehen. Der klassische Ansatz zur Inventuroptimierung besteht darin, das Problem in zwei Phasen zu unterteilen: Zuerst die Nachfrage prognostizieren; zweitens die Lagerentscheidung optimieren. Lokad folgt nach wie vor diesem gestuften Prozess (aus guten Gründen, siehe den action reward 3). Allerdings vereint DIM beide Phasen durch einen Ansatz, der als differentiable simulators bezeichnet wird.
Das Zusammenführen der Lern- und Optimierungsphasen ist ein vielversprechender Weg, nicht nur für supply chain, sondern für die gesamte Informatik. In den letzten zwei Jahrzehnten hat sich aus algorithmischer Sicht eine allmähliche Konvergenz zwischen Lernen und Optimierung ergeben. Tatsächlich beruht die primäre Lernmethode, die von Lokad eingesetzt wird, auf einem Optimierungsalgorithmus. Umgekehrt dreht sich ein kürzlich erzielter (unveröffentlichter) Durchbruch von Lokad im Bereich der stochastischen Optimierung um einen Lernalgorithmus.
Ich stelle mir eine Zukunft vor, in der eigenständige Prognosen als veraltete Praxis behandelt werden, die vollständig von neuen Techniken abgelöst wurde – Techniken, die die Perspektiven von Lernen und Optimierung vollständig vereinen. Lokad befindet sich diesen Weg bereits seit einiger Zeit. Tatsächlich galt es seit unserem Umstieg auf probabilistische Vorhersagen im Jahr 2015 als unpraktisch, die Rohprognosen aus Lokad zu exportieren, sodass der Prozess aus Kundensicht weitgehend auf eine einstufige Vorgehensweise reduziert wurde. Dennoch existiert der zweistufige Prozess innerhalb von Lokad weiterhin, da es einige tiefgreifende, noch ungelöste Probleme gibt, die einer Vereinheitlichung im Wege stehen.
Nun wollen wir meine Ansichten zu den Schwächen der DIM-Technik erörtern.
Meine erste Kritik ist, dass der Einsatz von deep learning durch DIM wenig beeindruckend ist.
Aus dem Abschnitt Featurization (Appendix B) wird deutlich, dass das, was das “deep” Modell in erster Linie lernt, darin besteht, die zukünftige Leitnachfrage vorherzusagen – also die schwankende Nachfrage, die über die variable Durchlaufzeit integriert wird.
Die (implizit probabilistische) Schätzung der Leitnachfrage ist kein “schwieriges” Problem, das deep learning erfordert, zumindest nicht in den von diesem Amazon-Team dargestellten Konstellationen. Tatsächlich vermute ich, dass die gesamte empirische Verbesserung die Folge einer besseren Bewertung der Leitnachfrage ist. Darüber hinaus glaube ich, dass eine vergleichbare – wenn nicht sogar bessere – Bewertung der Leitnachfrage mit einem einfachen, parametrischen probabilistischen Modell erreicht werden kann, wie es im M5-Wettbewerb4 gezeigt wurde. Dies würde deep learning vollständig aus dem Konzept entfernen und nur den “flachen” differenzierbares programmieren Teil der Lösung beibehalten.
Wenn man die Schätzung der Leitnachfrage außer Acht lässt, hat DIM wenig zu bieten. Tatsächlich werden in den in dem Paper dargestellten supply chain-Szenarien alle SKUs in quasi-isolierter Betrachtung mit allzu milden unternehmensweiten Beschränkungen verarbeitet – nämlich Begrenzungen bezüglich des Gesamtvolumens, des Gesamtkapitals und der Gesamteinheiten. Die Beachtung dieser Obergrenzen kann recht einfach erfolgen, indem die nachzubestellenden Einheiten5 nach ihren abnehmenden Dollar-on-Dollar-Renditen – oder möglicherweise ihren Dollar-on-Unit-Renditen – sortiert werden, falls die Kapazität der chaotischen Lagerung, die von Amazon verwendet wird, der eigentliche Engpass ist.
Was die Beschränkungen betrifft, so sind unternehmensweite Obergrenzen triviale Einschränkungen, die keiner ausgeklügelten Technik bedürfen. Deep learning würde wirklich glänzen, wenn es den Autoren möglich wäre, knifflige Beschränkungen anzugehen, wie sie in supply chains im Überfluss vorhanden sind. Zum Beispiel sind MOQs (Mindestbestellmengen) auf Lieferantenniveau, volle Truck Ladungen, Preisstaffelungen von Lieferanten, perishable Produkte usw. Probleme, die nicht durch naive Techniken wie die oben erwähnte Priorisierung gelöst werden können. Bei solchen kniffligen Beschränkungen würde deep learning als vielseitiger stochastischer Optimierer wirklich brillieren – vorausgesetzt, es gelingt jemandem, dies umzusetzen. DIM umgeht jedoch solche Probleme vollständig, und es ist völlig unklar, ob DIM erweitert werden könnte, um mit solchen Herausforderungen umzugehen. Meiner Meinung nach ist das nicht möglich.
Lobenswert bei den Autoren ist, dass cross-product constraints in der allerletzten Zeile ihrer Schlussfolgerung als ein exciting avenue of research erwähnt werden. Obwohl ich diesem Ansatz zustimme, ist das eine Untertreibung. Die Nichtbeachtung dieser allgegenwärtigen supply chain-Beschränkungen wäre ein sofortiger Projektstopper. Supply chain-Praktiker würden in weniger als einem Monat wieder zu ihren Tabellenkalkulationen zurückkehren. Ungefähr richtig ist besser als exakt falsch.
Außerdem haben wir ein ganzes Wespennest mit den reellwertigen Aktionen, d.h. fraktionierten Bestellmengen, wie sie von DIM produziert werden – siehe Gleichung (1) und Annahme 1 (Seite 12). Tatsächlich kann man in supply chain nicht 0,123 Einheiten nachbestellen; es ist entweder 0 oder 1. Dennoch umgehen die Autoren das gesamte Problem. Die DIM-Technik liefert fraktionierte Mengen aus und erfordert, dass die Belohnungsfunktion “well behaved” ist. In der Praxis ist klar, dass dieser Ansatz nicht gut funktionieren wird, wenn die Belohnungsfunktion hinsichtlich der bestellten Menge nicht streng monoton ist.
Damit bleiben wir mit einer wenig wünschenswerten Eigenschaft (fraktionierte Bestellungen) und einer wenig wünschenswerten Voraussetzung (Monotonie der Belohnungsfunktion) zurück, wobei die Kombination der beiden das Fundament des vorgeschlagenen differentiable simulators bildet. Dennoch wird supply chain von dem Gesetz der kleinen Zahlen beherrscht6. Moderne Inventurprobleme werden dominiert von ihren diskreten Eigenschaften. Zumindest hätte dieser Aspekt von den Autoren als eine gravierende Einschränkung von DIM hervorgehoben werden sollen – etwas, das in weiteren Forschungen untersucht werden müsste.
Die Vermischung von Gradienten und diskreten Richtlinien ist ein grundlegendes Problem der stochastischen Optimierung, und zwar nicht nur im Hinblick auf die vorgeschlagenen differentiable simulators. Tatsächlich arbeitet der stochastische Gradientenabstieg (SGD) mit reellwertigen Parametern, und dementsprechend ist es nicht offensichtlich, wie Richtlinien optimiert werden können, die grundsätzlich diskrete Entscheidungen steuern.
Die Arbeit in grundlegend diskreten Räumen mittels gradientenbasierter Verfahren ist sicherlich möglich, wie eindrucksvoll von LLMs (large language models) demonstriert wird, aber es bedarf einer ganzen Reihe von Kniffen. Bis äquivalente Techniken für die Art von Situationen, denen supply chains gegenüberstehen, gefunden werden, bleiben differentiable simulators eine vielversprechende Idee und keine Option für den Produktionseinsatz.
Meine zweite Kritik ist, dass es unzählige Randfälle gibt, die von den DIM-Autoren nicht einmal erwähnt werden.
Insbesondere bleiben die Autoren äußerst vage dahingehend, wie sie ihre 10.000 SKUs ausgewählt (bzw. cherry-picked) haben. Tatsächlich habe ich, als ich bei Lokad noch in den Jahren 2018 und 2019 Experimente durchführte, unheimlich ähnliche Featurisierungsstrategien (Appendix B) für deep learning-Modelle verwendet, die bei Lokad zum Einsatz kamen.
Aus diesen Experimenten schlage ich vor, dass:
- Neue und aktuelle Produkte werden nicht gut funktionieren, da die durch die Gleichungen (13), (30) und (31) angedeutete Neuskalierung unberechenbar reagiert, wenn historische Daten zu spärlich sind.
- Langsam drehende Produkte werden auf unzureichende Korrekturen ihres bisherigen Fehlbestands stoßen, da die Technik davon ausgeht, dass eine “vernünftige” korrigierte Nachfrage existiert (was bei langsam drehenden Produkten nicht der Fall ist).
- Intermittierende Produkte (die unpubliziert sind oder über längere Zeiträume, beispielsweise über 2 Monate, nicht verfügbar) werden ebenfalls an der angeblich korrigierten Nachfrage scheitern.
- SKUs von Konkurrenten, bei denen Kunden aggressiv den niedrigsten Preis wählen, werden unterbewertet, da das Modell die drastischen Auswirkungen nicht abbilden kann, wenn SKUs (preislich) einen Wettbewerber übertreffen.
Diese Randfälle sind in der Tat der Kern der supply chain-Herausforderung. In einem Paper ist es verlockend, SKUs auszuwählen, die gutartig sind: nicht zu aktuell, nicht zu langsam, nicht allzu unberechenbar, nicht intermittierend usw. Doch wenn man auf ausgeklügelte Techniken zurückgreifen muss, ist es ein wenig belanglos, sich auf die einfachen SKUs zu konzentrieren. Zwar können bei diesen SKUs wirtschaftliche Verbesserungen erzielt werden, aber der absolute Gewinn ist gering (höchstens bescheiden) – gerade weil diese SKUs ohnehin gutartig sind. Der Großteil der Ineffizienzen in der supply chain liegt in den Extremen, nicht in der Mitte.
Die direkte Ansprache dieser problematischen SKUs ist genau der Bereich, in dem man erwarten würde, dass deep learning aus der Patsche hilft. Leider tut DIM das Gegenteil und greift die gutartigen SKUs an, die mit weitaus weniger ausgeklügelten Techniken angegangen werden können – und das mit geringen oder keinen Nachteilen.
Meine dritte Kritik ist, dass DIM einen etwas verschachtelten technischen Aufbau aufweist.
Dies ist wahrscheinlich eines der am wenigsten geschätzten Probleme in der data science Community. Komplexität ist der Feind von Zuverlässigkeit und Effizienz. Auch wenn deep learning fantastisch ist, können sich nur wenige Unternehmen die Ingenieure leisten, die erforderlich sind, um einen Aufbau wie DIM zu betreiben. Das ist nicht wie bei ChatGPT, wo alle technischen Schwierigkeiten über die gesamte Kundenbasis des Softwareanbieters gemeinschaftlich getragen werden. Hier muss, angesichts der vielen spezifischen Details, die in DIM einfließen, jedes Kundenunternehmen die gesamten Betriebskosten für die eigene Instanz der Lösung tragen.
Auf der Hardware-Seite verfügen wir über eine EC2 p3.16xlarge7 virtuelle Maschine, die derzeit auf AWS mit 17k USD/Monat bepreist ist. Für 10.000 SKUs ist das… hoch.
Lokad hat viele Kunden, die einzeln Millionen von SKUs betreiben, und die meisten von ihnen erzielen einen Umsatz von weniger als 1 Milliarde USD. Auch wenn es möglich sein könnte, diese VM etwas herunterzustufen und sie bei Nichtnutzung abzuschalten, haben wir bei Lokad festgestellt, dass diese Optionen selten für den Produktionseinsatz in Frage kommen.
Beispielsweise haben Cloud-Computing-Plattformen oft eigene Engpässe: Manchmal dauert es Stunden, bis die VM, die on-demand verfügbar sein sollte, hochfährt. Außerdem sollte man niemals davon ausgehen, dass diese Modelle einfach “vorgetrainiert” sein können – es wird einen Tag geben – sagen wir, nächsten Dienstag – an dem das gesamte System aus zwingenden Gründen8 von Grund auf neu trainiert werden muss. Darüber hinaus erfordert ein produktionsreifer Aufbau nicht nur Redundanz, sondern auch zusätzliche Umgebungen (Testing, Pre-Production usw.).
Auf der Software-Seite ist der Bedarf an etwas wie dem Plasma Object Store das Archetypus jener zufälligen Komplikationen, die mit deep learning einhergehen. Nehmen wir an, dass der Trainingsdatensatz – mit 80.000 SKUs, wöchentlich aggregiert über lediglich 104 Wochen – weniger als 100MB wiegen sollte (wenn die Daten vernünftig dargestellt werden).
Während die DIM-Autoren kunstvoll vage bleiben und von einer “großen Menge an Daten” (Seite 32) sprechen, ist es offensichtlich, dass die Featurisierungsstrategie den ursprünglichen Daten-Footprint um 3 Größenordnungen (ca. 1000x) aufbläht. Bedenkt man, dass die EC2 p3.16xlarge nicht weniger als 488 GB RAM bietet, was ausreichen sollte, um einen 100MB-Datensatz (nach der Aufblähung ca. 100GB) zu verarbeiten… nun, ich kenne das, habe es erlebt und bin auf dasselbe Problem gestoßen.
Beispielsweise würde ein realistisch dimensionierter supply chain-Datensatz nach Aufblähung in der Regel mehr als 1 Terabyte umfassen – wie es der DIM-Ansatz erfordert. In diesem Fall kann ein typischer Data Scientist einen Fehler nicht lokal reproduzieren, da seine Workstation nur 64GB RAM besitzt. Darüber hinaus gibt es noch die Problematik der Python/Plasma-Grenze, an der Dinge schiefgehen können.
Neben den primären Kritikpunkten gibt es noch sekundäre Bedenken. Zum Beispiel ist Dynamic Programming9 – in der Einleitung und im Fazit als Basislinie und DIM-Konkurrent erwähnt – nur eine mangelhafte Basislinie. Dynamic Programming ist eine uralte Technik (seit den 1950er Jahren) und spiegelt nicht den Stand der Technik wider, was die Verschmelzung von Optimierung und Lernen betrifft.
Zugegeben, in der supply chain-Literatur fehlt es auf diesem Gebiet, aber das bedeutet, dass Autoren relevante Basislinien außerhalb ihres Forschungsfeldes finden müssen. Zum Beispiel ist AlphaGo Zero10 eine bei weitem überlegene intellektuelle Basislinie, wenn es um eine bemerkenswerte Anwendung von deep learning für Optimierungszwecke geht – insbesondere im Vergleich zu Dynamic Programming-Techniken, die fast 80 Jahre alt sind.
Abschließend, entgegen dem, was meine Kritik vermuten lassen könnte, ist es ein besseres Paper als die meisten und absolut einer Kritik würdig. Differentiable programming ist ein großartiges Instrument für supply chains. Lokad setzt es seit Jahren ein, aber wir haben noch längst nicht ausgeschöpft, was mit diesem programmatischen Paradigma möglich ist.
Es gibt noch mehr zu entdecken, wie DIM demonstriert. Differenzierbare Simulatoren sind eine coole Idee, und es fühlt sich weniger einsam an, wenn Technologiegiganten wie Amazon die zentralen Dogmen der Mainstream supply chain theory herausfordern – genau wie wir. Bei Lokad haben wir das Projekt, irgendwie montecarlo und autodiff11 so zu kombinieren, dass sie gut zu diesen differenzierbaren Simulatoren passen.
Bleibt dran!
-
Tiefes Bestandsmanagement, Dhruv Madeka, Kari Torkkola, Carson Eisenach, Anna Luo, Dean P. Foster, Sham M. Kakade, November 2022. ↩︎
-
Adversariale Marktforschung für Unternehmenssoftware, Vortrag von Joannes Vermorel, März 2021. ↩︎
-
Action-Belohnung, ein Rahmenwerk für Lageroptimierung, Gaëtan Delétoile, März 2021. ↩︎
-
Nr.1 auf SKU-Ebene im M5-Prognosewettbewerb, Vortrag von Joannes Vermorel, Januar 2022. ↩︎
-
Einzelhandelsbestandszuordnung mit probabilistischen Vorhersagen, Vortrag von Joannes Vermorel, Mai 2022. ↩︎
-
Quantitative Grundlagen für supply chains, Vortrag von Joannes Vermorel, Januar 2021. ↩︎
-
Ein leistungsstarker Server, der online von Amazon gemietet wird, ausgestattet mit 8 hochwertigen professionellen GPUs und etwa 15-mal mehr RAM als eine typische High-End-Desktop-Workstation. ↩︎
-
“SCO ist nicht dein durchschnittliches Softwareprodukt” in Produktorientierte Lieferung for supply chain, Vortrag von Joannes Vermorel, Dezember 2020. ↩︎
-
Dynamische Programmierung hätte “strukturierte Memoisierung” heißen sollen. Als eine algorithmische Technik auf niedriger Ebene ist sie nach wie vor sehr relevant, aber diese Technik gehört nicht einmal wirklich in denselben Bereich wie Reinforcement Learning. Strukturierte Memoisierung gehört als Technik in das Reich der grundlegenden algorithmischen Tricks, wie balancierte Bäume oder spärliche Matrizen. ↩︎
-
Beherrschung von Schach und Shogi durch Selbstspiel mit einem allgemeinen Reinforcement-Learning-Algorithmus, David Silver, Thomas Hubert, Julian Schrittwieser, Ioannis Antonoglou, Matthew Lai, Arthur Guez, Marc Lanctot, Laurent Sifre, Dharshan Kumaran, Thore Graepel, Timothy Lillicrap, Karen Simonyan, Demis Hassabis, Dezember 2017. ↩︎
-
Sowohl montecarlo als auch autodiff sind spezielle programmatische Bausteine in Envision, die zufallsbasierte Prozesse bzw. differenzierbare Prozesse unterstützen. Die Kombination beider ergibt im Grunde etwas, das den Bausteinen, die ein differentiable simulator benötigen würde, sehr nahekommt. ↩︎