Differenzierbares Programmieren wie in 'AI', das funktioniert
Wir freuen uns, die sofortige Verfügbarkeit des Lokad privaten Beta für differenzierbares Programmieren bekanntzugeben, das für die Optimierung der die Quantitative Supply Chain vorgesehen ist. Differenzierbares Programmieren ist der Nachfolger des Deep Learnings und stellt die Konvergenz zweier algorithmischer Bereiche dar: machine learning und numerische Optimierung.

Differenzierbares Programmieren erschließt eine Reihe von supply chain Szenarien, die als weitgehend unlösbar galten: die gemeinsame Optimierung von Preisen und Lagerbeständen, loyalitätsgetriebene Sortimentsoptimierung, die Prognose der Nachfrage nach nicht-standardisierten Produkten (z. B. Edelsteine, Kunstwerke), großangelegte Multi-Echelon-Flussoptimierung, Mehrkanal-Gemeinsam-Optimierung, Lageroptimierung bei teilweise fehlerhaften elektronischen Lagerwerten, großflächige Flussmaximierung unter zahlreichen Einschränkungen usw. Für viele andere Szenarien, die bereits mit alternativen Methoden angegangen werden konnten, liefert differenzierbares Programmieren überlegene numerische Ergebnisse bei nur einem Bruchteil des Aufwands, sowohl in Bezug auf den Einsatz von Data Scientists als auch auf die Rechenressourcen.
Anwendung auf Supply Chains
Im Kern bietet Differenzierbares Programmieren (DP) einen Weg, Probleme zu vereinheitlichen, die zu lange getrennt geblieben sind, und löst sie gemeinsam: Sortimentsgestaltung, Preisgestaltung, Prognose, Planung, Merchandising. Auch wenn eine solche Vereinheitlichung unrealistisch ambitioniert erscheinen mag, ist die Realität, dass Unternehmen bereits eine unglaubliche Menge Klebeband auf ihre eigenen Prozesse anwenden, um mit den endlosen Problemen umzugehen, die dadurch entstehen, dass diese Herausforderungen von Anfang an innerhalb der Organisation in Silos untergebracht wurden. Zum Beispiel beeinflusst die Preisgestaltung offensichtlich die Nachfrage, und dennoch werden Planung und Prognose nahezu immer durchgeführt, ohne die Preise zu berücksichtigen.
DP eröffnet die enorme Chance, annähernd richtige Entscheidungen aus einer ganzheitlichen Sicht auf das Unternehmen zu treffen, anstatt genau falsch zu sein und Probleme innerhalb der Organisation zu verlagern, anstatt sie zu lösen. Erfahrungsberichtlich ist das Streben nach annähernder Richtigkeit unter Berücksichtigung des gesamten Unternehmens genau das, worum es in den meist tabellenkalkulationsgetriebenen Organisationen geht; und mangels einer Technologie – wie DP –, die eine unternehmensweite Perspektive einnehmen kann, bleiben Tabellenkalkulationen die am wenigsten schlimme Option.
Ecommerce: Die Möglichkeit, 100% der verkauften Einheiten bekannten Kunden zuzuordnen, stellt eine enorme latente Informationsquelle über den Markt dar; dennoch wird in Bezug auf Preis- und Bestandsoptimierung die Kundenbindung in der Regel heutzutage gar nicht genutzt. DP bietet die Möglichkeit, von der Zeitreihen-Prognose zur temporalen Graph-Prognose überzugehen, bei der jedes einzelne beobachtete Kunden-Produkt-Paar zählt; was zu intelligenteren Entscheidungen sowohl hinsichtlich der Bestände als auch der Preise führt.
Luxury brands: Die Optimierung von Preisgestaltung und Sortimenten – bis hin zur Filialebene – wurde lange Zeit als weitgehend unlösbar angesehen, bedingt durch die spärlichen Daten, das heißt durch das sehr geringe Verkaufsvolumen pro Artikel pro Filiale – teilweise nur ein Verkauf pro Produkt pro Filiale und Jahr. DP bietet Ansätze, um Lösungsklassen zu liefern, die in solch ultradünnen Daten funktionieren, weil sie darauf ausgelegt sind, eine viel höhere Dateneffizienz zu bieten als herkömmliche Deep-Learning-Methoden.
Fashion brands: Die gemeinsame Optimierung von Beständen und Preisen ist eine klare Notwendigkeit – da die Nachfrage nach vielen Artikeln sehr preissensitiv sein kann – doch konnte die gemeinsame Optimierung von Einkauf und Preisgestaltung bisher nicht erreicht werden, weil es an einem Werkzeug fehlte, das in der Lage war, diese Kopplung zu erfassen – d. h. die Möglichkeit, bei niedrigerem Preis mehr zu kaufen, was mehr Nachfrage erzeugt (und umgekehrt). DP bietet die Ausdrucksstärke, um diese Herausforderung anzugehen.
Manufacturing: Die numerische Optimierung umfangreicher Multi-Echelon-Netzwerke scheitert, wenn man sie mit klassischen numerischen Lösungsverfahren versucht (siehe unten “Beyond branch-and-cut optimization”). Tatsächlich werden diese Lösungsverfahren bei Millionen von Variablen oder stochastischem Verhalten weitgehend unpraktikabel. Leider zeigt die Fertigung beides: viele Variablen und stochastisches Verhalten. DP bietet einen praktischen Ansatz, um mit Multi-Echelon umzugehen, ohne die Komplexität der tatsächlichen Flussmuster im Netzwerk zu verraten.
MRO (Wartung, Reparatur, Überholung): Fehlt ein Bauteil, das für die Reparatur eines Systems benötigt wird, bleibt das gesamte System – etwa ein Flugzeug – ausgefallen. Probabilistische Prognosen sind der erste Schritt, um mit solch schwankenden und intermittierenden Nachfrageverläufen umzugehen, aber die Details der gleichzeitigen Vorkommnisse der benötigten Teile zu ermitteln und diese Analyse in umsetzbare Bestandsvorschläge umzusetzen, war zu komplex, um praktisch genutzt zu werden. DP vereinfacht die Lösung solcher Probleme.
Einzelhandelsnetzwerke: Die Kannibalisierung innerhalb von Retail Networks – meist zwischen Produkten, aber manchmal auch zwischen Filialen – wird seit langem als von primärer Bedeutung erkannt. Dieses Problem wird durch Promotions verstärkt, die genau dazu gedacht sind, Kunden von einer Marke zur anderen zu lenken. DP bietet die Möglichkeit, Kannibalisierung trotz Promotions anzugehen. Anstatt lediglich “Promotions zu prognostizieren”, bietet DP die Möglichkeit, Promotions zu optimieren – als das, was sie sind: profitable Deals, die sowohl vom Vertriebskanal als auch von der Marke gemeinsam betrieben werden.
Jenseits des Hypes um Künstliche Intelligenz
Künstliche Intelligenz (KI) war zweifellos das technologische Schlagwort von 2018 und der Hype hält auch 2019 noch an. Während Lokad jedoch Techniken einsetzt, die normalerweise durchaus unter den AI-Hype fallen – z. B. Deep Learning – haben wir bisher darauf verzichtet, den „AI“-Teil der Lokad-Technologie in den Vordergrund zu stellen. Denn im Hinblick auf die Optimierung der die Quantitative Supply Chain funktioniert verpackte AI einfach nicht. Supply chains ähneln in keiner Weise, sagen wir, der Computer Vision: Daten, Metriken und Aufgaben sind alle extrem heterogen. Infolgedessen beginnen Unternehmen, die vermeintlich “schlüsselfertige” AI-Lösungen erworben haben, zu erkennen, dass diese Lösungen einfach niemals funktionieren werden – außer vielleicht in den einfachsten Fällen, in denen “dumme” regelbasierte Systeme ebenfalls einwandfrei funktioniert hätten.
Im Kern sind supply chains komplexe, von Menschen geschaffene Systeme, und es ist in der Regel unrealistisch zu erwarten, dass ein auf Daten allein basierendes AI-System eigenständig grundlegende Einsichten über das Fachgebiet wiederentdeckt, wie zum Beispiel:
- Promotionen für eine Luxusmarke durchzuführen, ist ein absolutes No-Go.
- Negative Verkaufsaufträge im ERP sind tatsächlich Retouren.
- Frische Lebensmittel müssen innerhalb vorgegebener Temperaturbereiche transportiert werden.
- Farbvarianten könnten gute Kleidungsalternativen sein, aber Größenvarianten nicht1.
- Flugzeugwartung wird durch Flugstunden und Flugzyklen bestimmt.
- Die Verkäufe im Vereinigten Königreich erfolgen tatsächlich in GBP, auch wenn im ERP EUR als Währung angezeigt wird.
- Menschen kaufen Autoteile für ihre Fahrzeuge, nicht für sich selbst.
- Jeder Diamant ist einzigartig, aber die Preise hängen größtenteils von Karat, Klarheit, Farbe und Schliff ab.
- Fehlt irgendein NOGO-Teil an einem Flugzeug, wird das Flugzeug am Boden gehalten.
- Viele Chemieanlagen benötigen Wochen, um nach einer Abschaltung wieder in Betrieb zu gehen.
In ferner Zukunft könnte es eine Zeit geben, in der Machine Learning darin gelingt, die menschliche Intelligenz zu emulieren und Ergebnisse bei der Bewältigung komplexer Probleme2 zu erzielen, doch bisher wurden Ergebnisse nur bei relativ eng gefassten Problemen erzielt. Die Machine-Learning-Technologien verschieben jedes Jahr stetig die Grenzen dessen, was ein “enges” Problem ausmacht, und nach jahrzehntelangen Bemühungen sind wichtige Probleme wie sicheres autonomes Fahren und anständige automatisierte Übersetzungen gelöst – oder stehen kurz vor der Lösung.
Nichts desto trotz, wie die obige Liste zeigt, sind supply chains immer noch verzweifelt zu heterogen für eine direkte Anwendung verpackter Machine-Learning-Algorithmen. Selbst wenn Deep Learning bislang die stärksten Generalisierungsmöglichkeiten bietet, bedarf es immer noch des Inputs eines Supply Chain Scientist, um die Herausforderung so einzugrenzen, dass Algorithmen überhaupt funktionieren.
In dieser Hinsicht war Deep Learning enorm erfolgreich, denn im Gegensatz zu vielen früheren Ansätzen im Machine Learning ist Deep Learning zutiefst kompositional: Es ist möglich, die Modell-Struktur umfassend anzupassen, um in einer spezifischen Situation besser zu lernen. Die Anpassung der Modellstruktur unterscheidet sich von der Anpassung des Modell-Inputs – eine Aufgabe, die als Feature Engineering bekannt ist – welche typischerweise die einzige verfügbare Option für die meisten nicht-deep Machine-Learning-Algorithmen, wie etwa Random Forests3, darstellte.
Jedoch sind die Deep-Learning-Frameworks aus den “Big Problems” des Machine Learning entstanden, nämlich Computer Vision, Spracherkennung, Sprachsynthese, automatisierte Übersetzung. Diese Frameworks wurden in-Depth für Szenarien entwickelt und optimiert, die buchstäblich nichts mit den Problemen zu tun haben, die supply chains betreffen. Daher war es – obwohl es möglich ist, diese Frameworks für supply chain optimization zu nutzen – weder ein einfaches noch ein leichtgewichtiges Unterfangen.
Zusammenfassend lässt sich sagen, dass mit Deep-Learning-Frameworks viel für supply chains erreicht werden kann, der Impedanzkonflikt zwischen supply chains und den bestehenden Deep-Learning-Frameworks jedoch stark ist; was die Kosten und Verzögerungen erhöht und die praktische Anwendbarkeit dieser Technologien einschränkt.

Jenseits der Branch-and-Cut-Optimierung
Die meisten Probleme in supply chains haben sowohl einen Lernaspekt – bedingt durch unvollständiges Wissen über die Zukunft, den aktuellen Zustand des Marktes und manchmal sogar über das supply chain System selbst (z. B. Ungenauigkeiten bei den Beständen) – als auch einen numerischen Optimierungsaspekt. Entscheidungen müssen unter wirtschaftlichen Gesichtspunkten optimiert werden, während gleichzeitig viele nichtlineare Nebenbedingungen erfüllt werden (z. B. Mindestbestellmengen beim Einkauf oder Losgrößen bei der Produktion).
Im Bereich der numerischen Optimierung dominieren die ganzzahlige Programmierung und ihre verwandten Techniken wie Branch-and-Cut seit Jahrzehnten das Feld. Allerdings haben diese Branch-and-Cut-Algorithmen und ihre zugehörigen Softwarelösungen meist nicht die Flexibilität und Skalierbarkeit geboten, die erforderlich ist, um operative Lösungen für viele – wenn nicht die meisten – Herausforderungen in supply chains bereitzustellen. Die ganzzahlige Programmierung ist ein außergewöhnlich fähiges Werkzeug, wenn es darum geht, enge Probleme mit wenigen Variablen zu lösen (z. B. die Bauteilanordnung in einem Unterhaltungselektronikgerät), zeigt jedoch drastische Einschränkungen bei groß angelegten Problemen, bei denen Zufälligkeit eine Rolle spielt (z. B. die Neuausrichtung von Beständen zwischen 10 Millionen SKUs angesichts sowohl probabilistischer Nachfrage als auch probabilistischer Transportzeiten).
Einer der am wenigsten geschätzten Aspekte von Deep Learning ist, dass sein Erfolg ebenso sehr auf Durchbrüchen im Lernbereich wie auf Durchbrüchen im Optimierungsbereich beruht. Die wissenschaftliche Gemeinschaft hat nämlich entdeckt, dass enorm effiziente Algorithmen großangelegte Optimierungen durchführen.
Diese “Deep Learning”-Optimierungsalgorithmen – die alle auf dem stochastischen Gradientenabstieg basieren – sind nicht nur weitaus effizienter als ihre Branch-and-Cut-Pendants, sondern passen auch wesentlich besser zur vorhandenen Rechenhardware, nämlich SIMD-CPUs und (GP)GPUs, was in der Praxis zu zwei- bis dreistelligen Geschwindigkeitsvorteilen führt.
Diese Durchbrüche in der reinen numerischen Optimierung sind für supply chains von hoher Relevanz, um Entscheidungen zu optimieren. Wenn die Deep-Learning-Frameworks jedoch bereits in gewissem Maße unzureichend waren, um Lern-Probleme in supply chains anzugehen, sind sie noch weniger geeignet, die Optimierungs-Probleme in supply chains zu bewältigen. Tatsächlich hängen diese Optimierungsprobleme noch stärker von der Ausdrucksfähigkeit des Frameworks ab, damit die Supply Chain Scientists die einzuhaltenden und zu optimierenden Nebenbedingungen und Metriken implementieren können.
Auf dem Weg zum differenzierbaren Programmieren
Theorie und Praxis unterscheiden sich in der Theorie nicht. In der Praxis aber schon. Walter J. Savitch, Pascal: An Introduction to the Art and Science of Programming (1984)
Differenzierbares Programmieren (DP) ist die Antwort, um supply chains das Beste dessen zu bieten, was Deep Learning sowohl im Bereich des Lernens als auch der numerischen Optimierung zu bieten hat. Durch DP können Supply Chain Scientists ihre menschlichen Einsichten optimal nutzen, um numerische Rezepte zu entwickeln, die – in ihrer Tiefe – mit den Geschäftszielen in Einklang stehen.
Es gibt keine absolute Abgrenzung zwischen Deep Learning und differenzierbarem Programmieren: Vielmehr handelt es sich um ein Kontinuum von den skalierbarsten Systemen (Deep Learning) bis zu den ausdrucksstärksten Systemen (differenzierbares Programmieren), bei denen immer mehr Programmierkonstrukte verfügbar werden – zulasten der rohen Skalierbarkeit – wenn man sich dem differenzierbaren Programmieren nähert.
Doch unsere Erfahrung bei Lokad zeigt, dass der Übergang von vornehmlich für Computer Vision entwickelten Werkzeugen zu solchen, die für supply chain Herausforderungen konzipiert sind, genau den Unterschied ausmacht zwischen einem “interessanten” Prototyp, der niemals in die Produktion gelangt, und einem Industrie-System, das in großem Maßstab eingesetzt wird.
Deep Learning | Differenzierbares Programmieren | |
---|---|---|
Hauptzweck | Lernen | Lernen+Optimierung |
Typische Nutzung | Einmal lernen, mehrfach auswerten | Einmal lernen, einmal auswerten |
Input granularity | Fette Objekte (Bilder, Sprachsequenzen, Lidar-Scans, vollständige Textseiten) | Dünne Objekte (Produkte, Kunden, SKUs, Preise) |
Eingangsvielfalt | Homogene Objekte (z.B. Bilder, die alle dasselbe Höhen-/Breitenverhältnis haben) | Heterogene Objekte (relationale Tabellen, Graphen, Zeitreihen) |
Eingangsvolumen | Von Megabytes bis Petabytes | Von Kilobytes bis zu Dutzenden Gigabytes |
Hardware-Beschleunigung | Außergewöhnlich gut | Gut |
Ausdrucksstärke | Statische Graphen von Tensoroperationen | (Fast) beliebige Programme |
Stochastische numerische Rezepte | Integriert | Ebenfalls |
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.
Die Erwartungen an die Dateneingaben – sowohl in Granularität, Vielfalt als auch im Volumen – sind ebenfalls stark verschieden. Typischerweise betont die “Big AI”-Perspektive nahezu unendliche Mengen an Trainingsdaten (z.B. alle Textseiten des Webs), wobei die größte Herausforderung darin besteht, enorm skalierbare Methoden zu finden, die effektiv auf diese massiven Datensätze zugreifen können. Im Gegensatz dazu müssen supply chain-Probleme mit einer begrenzten Menge an hoch strukturierten, aber vielfältigen Daten angegangen werden.
Dies lenkt das Deep Learning in Richtung tensorbasierter Frameworks, die durch dedizierte Rechenhardware – zunächst GPUs und mittlerweile zunehmend TPUs – massiv beschleunigt werden können. Differentiable Programming, das auf stochastischem Gradientenabstieg basiert, weist ebenfalls viele gute Eigenschaften für die Hardwarebeschleunigung auf, wenn auch in geringerem Maße im Vergleich zu statischen Graphen von Tensoroperationen.
Die Bedeutung der stochastischen numerischen Rezepte ist zweifach. Erstens spielen diese Rezepte aus der Lern-Perspektive eine wichtige Rolle. Variationale Autoencoder oder Dropouts sind Beispiele für solche numerischen Rezepte. Zweitens tragen sie aus einer Modellierungsperspektive dazu bei, probabilistisches Verhalten innerhalb der supply chain-Systeme (z.B. variable Lieferzeiten) angemessen zu berücksichtigen.
Demgegenüber besteht eine enorme Kluft zwischen Differentiable Programming und Mixed Integer Programming – der in den letzten Jahrzehnten vorherrschende Ansatz war, komplexe numerische Optimierungen durchzuführen.
Mixed integer Programming | Differentiable Programming | |
---|---|---|
Primary purpose | Optimierung | Lernen+Optimierung |
Eingangsgranularität und -vielfalt | Dünne Objekte, heterogen | Ebenfalls |
Eingangsvolumen | Von Bytes bis zu mehreren Megabytes | Von Kilobytes bis zu Dutzenden Gigabytes |
Hardware acceleration | Schlecht | Gut |
Ausdrucksstärke | Ungleichungen über lineare und quadratische Formen | (Fast) beliebige Programme |
Stochastische numerische Rezepte | Keine | Integriert |
Zur Verteidigung von Mixed Integer Programming-Tools können diese – wenn sie ein Problem erfolgreich angehen – manchmal beweisen (im mathematischen Sinne), dass sie die optimale Lösung erzielt haben. Weder Deep Learning noch Differentiable Programming liefern in dieser Hinsicht einen formalen Beweis.
Schlussfolgerungen
Differentiable Programming ist ein bedeutender Durchbruch für supply chains. Es baut auf deep learning auf, das sich bei der Lösung zahlreicher “Big AI”-Probleme wie der Computer Vision als außerordentlich erfolgreich erwiesen hat, aber im Kern neu entwickelt wurde, um den realen Herausforderungen von supply chains gerecht zu werden.
Lokad hat auf seiner deep learning forecasting technology aufgebaut, um den Übergang zu Differentiable Programming zu vollziehen – der nächsten Generation unserer prädiktiven Technologie. Allerdings ist DP mehr als nur prädiktiv; es vereint Optimierung und Lernen und eröffnet Lösungen für eine Vielzahl von Problemen, für die es bisher keine brauchbaren Ansätze gab.
Interested in taking part in our private beta? Drop us an email at contact@lokad.com
-
Anektodisch gibt es ein Segment, in dem Kleidergrößen nicht so wichtig sind und dennoch als gute Ersatzgrößen dienen – es handelt sich um Kinder-Kleidung. Tatsächlich kaufen Eltern mit begrenztem Budget häufig mehrere Größen im Voraus für ihre Kinder, in Erwartung ihres Wachstums, wenn ihnen ein starker Preisnachlass angeboten wird. ↩︎
-
Viele, wenn nicht die meisten, supply chain-Probleme sind “wicked”, also Probleme, deren soziale Komplexität bedeutet, dass es keinen klar abgrenzbaren Endpunkt gibt. Siehe wicked problem auf Wikipedia. ↩︎
-
Random Forests bieten einige, kleine Optionen zur Meta-Parametrisierung des Modells selbst – etwa die maximale Baumtiefe oder das Stichprobenverhältnis. Das bedeutet, dass Muster, die der Random Forest nicht erfasst, aufgrund fehlender besserer Alternativen durch Feature Engineering kompensiert werden müssen. Siehe auch Columnar Random Forests. ↩︎