00:00 Einführung
02:49 Nachfrage, Preis und Gewinn
09:35 Wettbewerbsfähige Preise
15:23 Wünsche vs Bedürfnisse
20:09 Der bisherige Verlauf
23:36 Ausblick für heute
25:17 Die Bedarfseinheit
31:03 Autos und Teile (Zusammenfassung)
33:41 Wettbewerbsintelligenz
36:03 Lösung der Abstimmung (1/4)
39:26 Lösung der Abstimmung (2/4)
43:07 Lösung der Abstimmung (3/4)
46:38 Lösung der Abstimmung (4/4)
56:21 Produktpaletten
59:43 Ungebundene Teile
01:02:44 Steuerung der Marge
01:06:54 Anzeigen der Ranglisten
01:08:29 Feinabstimmung der Gewichtungen
01:12:45 Feinabstimmung der Kompatibilitäten (1/2)
01:19:14 Feinabstimmung der Kompatibilitäten (2/2)
01:30:41 Gegenspionage (1/2)
01:35:25 Gegenspionage (2/2)
01:40:49 Überbestände und Fehlmengen
01:45:45 Versandbedingungen
01:47:58 Fazit
01:50:33 6.2 Preisoptimierung für den Automobil-Ersatzteilmarkt - Fragen?

Beschreibung

Das Gleichgewicht von Angebot und Nachfrage hängt in hohem Maße von den Preisen ab. Daher gehört die Preisoptimierung in erheblichem Maße zum Bereich der supply chain. Wir werden eine Reihe von Techniken vorstellen, um die Preise eines fiktiven Unternehmens im Automobil-Ersatzteilmarkt zu optimieren. An diesem Beispiel werden wir die Gefahren abstrakter Denkweisen aufzeigen, die den eigentlichen Kontext nicht berücksichtigen. Zu wissen, was optimiert werden sollte, ist wichtiger als das Kleingedruckte der Optimierung selbst.

Vollständiges Transkript

Slide 1

Willkommen zu dieser Reihe von supply chain-Vorlesungen. Ich bin Joannes Vermorel und heute werde ich die Preisoptimierung für den Automobil-Ersatzteilmarkt vorstellen. Preisgestaltung ist ein grundlegender Aspekt der supply chain. Tatsächlich kann man die Angemessenheit eines bestimmten Angebotsvolumens oder eines bestimmten Lagerbestands nicht bedenken, ohne die Frage der Preise zu berücksichtigen, da Preise die Nachfrage erheblich beeinflussen. Allerdings vernachlässigen die meisten supply chain-Bücher – und folglich auch die meiste supply chain software – die Preisgestaltung gänzlich. Selbst wenn Preisgestaltung diskutiert oder modelliert wird, geschieht dies meist auf naive Weise, die die Situation oft falsch interpretiert.

Preisgestaltung ist ein stark domänenspezifischer Prozess. Preise sind in erster Linie eine Botschaft, die ein Unternehmen an den gesamten Markt sendet – an Kunden, aber auch an Lieferanten und Wettbewerber. Das Kleingedruckte der Preisanalyse hängt stark vom betreffenden Unternehmen ab. Zwar mag es intellektuell ansprechend sein, Preisgestaltung in allgemeinen Begriffen anzugehen, wie es Mikroökonomen tun, doch kann dies auch fehlgeleitet sein. Solche Ansätze sind möglicherweise nicht präzise genug, um die Entwicklung professioneller Preisstrategien zu unterstützen.

Diese Vorlesung konzentriert sich auf die Preisoptimierung für ein Unternehmen im Automobil-Ersatzteilmarkt. Wir werden Stuttgart erneut besuchen, ein fiktives Unternehmen, das im dritten Kapitel dieser Vorlesungsreihe vorgestellt wurde. Wir konzentrieren uns ausschließlich auf den Online-Einzelhandelsbereich von Stuttgart, der Autoteile vertreibt. Ziel dieser Vorlesung ist es zu verstehen, was Preisgestaltung beinhaltet, sobald wir über die Binsenweisheiten hinausblicken, und wie man Preisgestaltung mit einer praxisorientierten Denkweise angeht. Obwohl wir eine enge Nische betrachten – Ersatzteile für den Automobil-Ersatzteilmarkt – wären die Denkweise, die Einstellung und das Vorgehen bei der Verfolgung überlegener Preisstrategien im Grunde genommen dieselben, wenn man völlig unterschiedliche Branchen in Betracht zieht.

Slide 2

Die Nachfrage sinkt, wenn der Preis steigt. Dies ist ein universelles ökonomisches Muster. Das bloße Vorhandensein von Produkten, die diesem Muster widersprechen, bleibt bestenfalls schwer fassbar. Diese Produkte werden als Veblengüter bezeichnet. Allerdings habe ich in meinen 15 Jahren bei Lokad, selbst im Umgang mit Luxusmarken, nie handfeste Beweise dafür erhalten, dass solche Produkte tatsächlich existieren. Dieses universelle Muster wird durch die Kurve auf der linken Seite des Bildschirms veranschaulicht, die allgemein als Nachfragekurve bezeichnet wird. Wenn sich ein Markt auf einen Preis festlegt, zum Beispiel den Preis für ein Ersatzteil, erzeugt dieser Markt ein bestimmtes Nachfragevolumen und hoffentlich auch ein bestimmtes Gewinnvolumen für die Akteure, die diese Nachfrage bedienen.

Was Autoteile angeht, so sind diese Teile definitiv keine Veblengüter. Die Nachfrage nimmt zwar mit steigendem Preis ab, jedoch kann erwartet werden, dass die Nachfrage relativ unelastisch ist, da Menschen wenig Auswahl beim Kauf von Autoteilen haben – zumindest, wenn sie weiterhin ihr Auto fahren wollen. Ein höherer oder niedrigerer Preis für Ihre Bremsbeläge ändert Ihre Entscheidung, neue Bremsbeläge zu kaufen, kaum. Tatsächlich würden die meisten Menschen lieber neue Bremsbeläge kaufen, selbst wenn sie dafür den doppelten üblichen Preis zahlen müssten, als ihr Fahrzeug vollständig nicht mehr zu nutzen.

Für Stuttgart ist es aus zahlreichen Gründen entscheidend, das optimale Preisschild für jedes Teil zu ermitteln. Betrachten wir die zwei offensichtlichsten Gründe. Erstens möchte Stuttgart seine Gewinne maximieren, was alles andere als trivial ist, da sich nicht nur die Nachfrage mit dem Preis ändert, sondern auch die Kosten mit dem Volumen variieren. Stuttgart muss in der Lage sein, die Nachfrage, die es in der Zukunft erzeugen wird, zu erfüllen – was noch anspruchsvoller ist, da der Lagerbestand aufgrund von Lieferzeiten Tage, wenn nicht sogar Wochen im Voraus gesichert werden muss.

Basierend auf dieser begrenzten Darstellung gehen einige Lehrbücher und sogar manche Unternehmenssoftwares von der auf der rechten Seite gezeigten Kurve aus. Diese Kurve veranschaulicht konzeptionell das erwartete Gewinnvolumen, das für jedes Preisschild antizipiert werden kann. Da die Nachfrage mit steigendem Preis abnimmt und die Stückkosten mit zunehmendem Volumen sinken, sollte diese Kurve einen optimalen Gewinnpunkt aufweisen, der den Gewinn maximiert. Sobald dieser optimale Punkt identifiziert ist, wird die Anpassung des Lagerbestands als eine einfache Orchestrierungsaufgabe präsentiert. Tatsächlich liefert der optimale Punkt nicht nur ein Preisschild, sondern auch ein Nachfragevolumen.

Slide 3

Diese Perspektive ist jedoch zutiefst fehlgeleitet. Das Problem hat nichts mit der Schwierigkeit zu tun, die Elastizität zu quantifizieren. Meine These ist nicht, dass die Kurve auf der linken Seite falsch ist; sie ist grundlegend korrekt. Meine Behauptung ist, dass der Sprung von der linken zur rechten Kurve falsch ist. Tatsächlich ist dieser Sprung so erstaunlich fehlerhaft, dass er als eine Art Lackmustest dient. Jeder Softwareanbieter oder jedes Preislehrbuch, das Preisgestaltung auf diese Weise darstellt, zeigt ein gefährliches Maß an wirtschaftlichem Analphabetismus, insbesondere wenn sie die Bewertung der Elastizität als zentrale Herausforderung dieser Perspektive präsentieren. Dies ist bei weitem nicht der Fall. Einer realen supply chain ein solches Unternehmen oder einen solchen Experten anzuvertrauen, bedeutet, Leiden und Elend in Kauf zu nehmen. Wenn es eine Sache gibt, die Ihre supply chain nicht braucht, dann ist es eine fehlerhafte Interpretation falsch verstandener Mikroökonomie im großen Stil.

In dieser Vorlesungsreihe ist dies ein weiteres Beispiel für naiven Rationalismus oder Scientism, der immer wieder als erhebliche Bedrohung für modern supply chains erwiesen hat. Abstraktes ökonomisches Denken ist mächtig, weil es eine verblüffend breite Palette von Situationen erfasst. Allerdings ist abstraktes Denken auch anfällig für grobe Fehlinterpretationen. Wesentliche intellektuelle Fehler, die nicht sofort offensichtlich sind, können auftreten, wenn man in sehr allgemeinen Begriffen denkt.

Um zu verstehen, warum der Sprung von der Kurve auf der linken Seite zur Kurve auf der rechten Seite falsch ist, müssen wir einen genaueren Blick darauf werfen, was in einer realen supply chain tatsächlich passiert. Diese Vorlesung konzentriert sich auf Autoteile. Wir werden die Preisgestaltung aus der Perspektive von Stuttgart, einem fiktiven supply chain-Unternehmen, das im dritten Kapitel dieser Vorlesungsreihe eingeführt wurde, erneut untersuchen. Wir werden nicht erneut auf die Details dieses Unternehmens eingehen. Falls Sie Vorlesung 3.4 noch nicht gesehen haben, lade ich Sie ein, diese nach der aktuellen Vorlesung anzuschauen.

Heute betrachten wir den Online-Einzelhandelsbereich von Stuttgart, einer E-Commerce-Abteilung, die Autoteile verkauft. Wir untersuchen die geeignetsten Methoden, mit denen Stuttgart seine Preise festlegen und jederzeit anpassen kann. Diese Aufgabe muss für jedes einzelne von Stuttgart verkaufte Teil durchgeführt werden.

Slide 4

Stuttgart ist in diesem Markt nicht allein. In jedem europäischen Land, in dem Stuttgart aktiv ist, gibt es ein halbes Dutzend namhafter Wettbewerber. Diese kurze Liste von Unternehmen, zu denen auch Stuttgart gehört, repräsentiert den Großteil des Online-Marktanteils für Autoteile. Während Stuttgart einige Teile exklusiv verkauft, gibt es bei den meisten verkauften Teilen mindestens einen namhaften Wettbewerber, der exakt dasselbe Teil anbietet. Diese Tatsache hat erhebliche Auswirkungen auf die Preisoptimierung von Stuttgart.

Betrachten wir, was passiert, wenn Stuttgart für ein bestimmtes Teil beschließt, das Preisschild um einen Euro unter das eines Wettbewerbers, der dasselbe Teil anbietet, anzusetzen. Vermutlich wird dies Stuttgart wettbewerbsfähiger machen und dabei helfen, Marktanteile zu gewinnen. Aber nicht so schnell: Der Wettbewerber überwacht alle von Stuttgart festgelegten Preise. Tatsächlich ist der Automobil-Ersatzteilmarkt ein äußerst wettbewerbsintensiver Markt. Jeder verfügt über Tools zur Wettbewerbsintelligenz. Stuttgart sammelt täglich alle Preise seiner namhaften Wettbewerber, und die Wettbewerber machen dasselbe. Daher ist es sicher anzunehmen, dass der Wettbewerber sein Preisschild innerhalb eines Tages oder zweier Tage als Reaktion senken wird, wenn Stuttgart den Preis für ein Teil um einen Euro unter das eines Wettbewerbers legt, wodurch Stuttgarts Preisänderung wirkungslos wird.

Obwohl Stuttgart ein fiktives Unternehmen sein mag, ist dieses hier beschriebene Wettbewerbsverhalten im Automobil-Ersatzteilmarkt keineswegs fiktiv. Wettbewerber stimmen ihre Preise aggressiv ab. Wenn Stuttgart wiederholt versucht, seine Preise zu senken, kann dies zu einem algorithmischen Preiskrieg führen, der am Ende beiden Unternehmen nur wenig oder gar keine Marge lässt.

Betrachten wir, was passiert, wenn Stuttgart für ein bestimmtes Teil beschließt, das Preisschild um einen Euro über das eines Wettbewerbers anzusetzen. Vorausgesetzt, dass alle anderen Faktoren gleich bleiben, ist Stuttgart schlichtweg nicht mehr wettbewerbsfähig. Zwar mag Stuttgarts Kundschaft nicht sofort zum Wettbewerber wechseln (da sie möglicherweise gar nicht vom Preisunterschied erfahren oder Stuttgart treu bleiben), aber mit der Zeit wird der Marktanteil von Stuttgart garantiert schwinden.

In Europa gibt es Preisvergleichsseiten für Autoteile. Obwohl Kunden nicht jedes Mal einen Vergleich anstellen, wenn sie ein neues Teil für ihr Auto benötigen, werden die meisten Kunden hin und wieder ihre Optionen überprüfen. Es ist keine tragfähige Lösung für Stuttgart, ständig als der teurere Händler entdeckt zu werden.

Somit haben wir gesehen, dass Stuttgart kein Preisschild unter dem der Konkurrenz ansetzen kann, da dies einen Preiskrieg auslöst. Umgekehrt kann Stuttgart auch kein Preisschild über dem der Konkurrenz ansetzen, da dies im Laufe der Zeit einen Schwund des Marktanteils garantiert. Die einzige verbleibende Option für Stuttgart ist die Suche nach Preisabstimmung. Dies ist keine theoretische Aussage – Preisabstimmung ist der Hauptantrieb für reale E-Commerce-Unternehmen, die Autoteile in Europa verkaufen.

Die intellektuell ansprechende Gewinnkurve, die wir zuvor vorgestellt haben, wonach Unternehmen angeblich den optimalen Gewinn auswählen könnten, ist größtenteils völlig falsch. Stuttgart hat in puncto Preisgestaltung nicht einmal die Wahl. Weitgehend, sofern nicht irgendeine Art von Geheimzutat involviert ist, ist die Preisabstimmung die einzige Option für Stuttgart.

Freie Märkte sind ein seltsames Gebilde, wie Engels es in seiner Korrespondenz von 1819 ausdrückte: “Der Wille jedes Einzelnen wird von allen anderen behindert, und es entsteht etwas, das niemand gewollt hat.” Im Folgenden werden wir sehen, dass Stuttgart einen gewissen Spielraum zur Festlegung seiner Preise behält. Dennoch bleibt die Hauptaussage: Die Preisoptimierung für Stuttgart ist in erster Linie ein stark eingeschränktes Problem, das nichts mit einer naiven Maximierungsperspektive zu tun hat, die von einer Nachfragekurve ausgeht.

Die Preiselastizität der Nachfrage ist ein Konzept, das für einen Gesamtmarkt sinnvoll ist, jedoch in der Regel nicht für etwas so Lokales wie eine Teilenummer.

Slide 45

Die Vorstellung, dass Preisgestaltung als ein einfaches Gewinnmaximierungsproblem unter Nutzung der Nachfragekurve angegangen werden kann, ist falsch – oder zumindest im Fall von Stuttgart falsch.

Tatsächlich ließe sich argumentieren, dass Stuttgart zu einem Markt der Bedürfnisse gehört, und die Perspektive der Gewinnkurven würde trotzdem funktionieren, wenn wir einen Markt der Wünsche betrachten würden. Im Marketing ist es eine klassische Unterscheidung, Märkte der Wünsche von Märkten der Bedürfnisse zu trennen. Ein Markt der Wünsche ist typischerweise durch Angebote gekennzeichnet, bei denen Kunden auf ihren Konsum verzichten können, ohne negative Konsequenzen zu erleiden. In Märkten der Wünsche neigen erfolgreiche Angebote dazu, eng mit der Marke des Anbieters verbunden zu sein, und die Marke selbst ist der Motor, der die Nachfrage überhaupt erst generiert. Beispielsweise ist Mode das Archetypische für Märkte der Wünsche. Wenn Sie eine Tasche von Louis Vuitton wollen, kann diese Tasche nur bei Louis Vuitton erworben werden. Obwohl es Hunderte von Anbietern gibt, die funktional äquivalente Taschen verkaufen, wird es keine Tasche von Louis Vuitton sein. Wenn Sie sich dagegen entscheiden, eine Tasche von Louis Vuitton zu kaufen, wird Ihnen nichts Ernstes passieren.

Ein Markt der Bedürfnisse ist typischerweise dadurch gekennzeichnet, dass Kunden nicht ohne gravierende Konsequenzen von ihrem Konsum zurücktreten können. In Bedürfnismärkten sind Marken keine Nachfrageantriebskräfte; sie funktionieren eher als Wahlmotoren. Marken leiten die Kunden bei der Auswahl, von wem sie konsumieren, sobald der Konsumbedarf entsteht. Zum Beispiel sind Lebensmittel und Grundbedürfnisse der Urtyp von Bedürfnismärkten. Selbst wenn Autoteile nicht unbedingt überlebensnotwendig sind, sind viele Menschen auf ein Fahrzeug angewiesen, um Geld zu verdienen, und können daher realistisch betrachtet nicht darauf verzichten, ihr Fahrzeug ordnungsgemäß zu warten, da die Kosten einer unterlassenen Wartung die Wartungskosten bei weitem übersteigen würden.

Obwohl sich der Automobil-Aftermarket fest im Markt der Bedürfnisse verankert hat, gibt es Nuancen. Es gibt Komponenten wie Radkappen, die eher als Wünsche denn als Bedürfnisse zu bewerten sind. Allgemeiner sind alle Zubehörteile eher Wünsche als Bedürfnisse. Nichtsdestotrotz treibt für Stuttgart der Bedarf den Großteil der Nachfrage an.

Die Kritik, die ich hier an der Gewinnkurve für die Preisgestaltung vorbringe, lässt sich auf nahezu alle Situationen in Bedürfnismärkten übertragen. Stuttgart ist kein Ausnahmefall, wenn es darum geht, preislich stark durch seine Wettbewerber eingeschränkt zu sein; diese Situation ist in Bedürfnismärkten nahezu allgegenwärtig. Dieses Argument widerlegt nicht die Tragfähigkeit der Gewinnkurve, wenn es um Märkte der Wünsche geht.

Tatsächlich könnte entgegnet werden, dass in einem Markt der Wünsche, wenn der Anbieter ein Monopol über seine eigene Marke besitzt, dieser Anbieter frei sein sollte, den Preis zu wählen, der seinen Gewinn maximiert – was uns wieder zur Perspektive der Gewinnkurve für die Preisgestaltung führt. Noch einmal zeigt dieses Gegenargument die Gefahren abstrakter ökonomischer Überlegungen in der supply chain.

In einem Markt der Wünsche ist die Perspektive der Gewinnkurve ebenfalls fehlerhaft, wenn auch aus völlig anderen Gründen. Das Kleingedruckte dieser Darstellung liegt außerhalb des Rahmens der vorliegenden Vorlesung, da es eine eigene weitere Vorlesung erfordern würde. Als Übung für das Publikum schlage ich jedoch einfach vor, einen genaueren Blick auf die Liste der Taschen und deren Preise zu werfen, die auf der Louis Vuitton E-Commerce-Website ausgestellt sind. Der Grund, warum die Perspektive der Gewinnkurve unpassend ist, sollte sich von selbst erschließen. Falls nicht, werden wir diesen Fall höchstwahrscheinlich in einer späteren Vorlesung erneut aufgreifen.

Slide 6

Diese Vorlesungsreihe ist unter anderem als Schulungsmaterial für die Supply Chain Scientists bei Lokad gedacht. Ich hoffe aber auch, dass diese Vorlesungen für ein viel breiteres Publikum von supply chain Praktikern von Interesse sind. Ich versuche, diese Vorlesungen einigermaßen voneinander zu entkoppeln, werde jedoch einige technische Konzepte verwenden, die in den vorherigen Vorlesungen eingeführt wurden. Ich werde nicht allzu viel Zeit darauf verwenden, diese Konzepte erneut vorzustellen. Falls Sie die vorherigen Vorlesungen nicht gesehen haben, zögern Sie nicht, diese im Anschluss anzuschauen.

Im ersten Kapitel dieser Reihe haben wir untersucht, warum supply chains programmgesteuert werden müssen. Es ist höchst wünschenswert, ein numerisches Rezept in Produktion zu nehmen, angesichts der ständig wachsenden Komplexität von supply chains. Automatisierung ist dringlicher denn je und es besteht ein finanzieller Imperativ, supply chain practice zu einem kapitalistischen Unterfangen zu machen.

Im zweiten Kapitel widmeten wir uns den Methodologien. Supply chains sind wettbewerbsfähige Systeme und diese Kombination entlarvt naive Methodiken. Wir sahen, dass diese Kombination auch Modelle zunichte macht, die Mikroökonomie fehlinterpretieren oder falsch charakterisieren.

Das dritte Kapitel beleuchtete die in supply chains auftretenden Probleme, ohne dabei Lösungen in Betracht zu ziehen. Wir stellten Stuttgart als eine der supply chain Personas vor. Dieses Kapitel versuchte, die Klassen von Entscheidungsproblemen zu charakterisieren, die gelöst werden müssen, und zeigte, dass vereinfachte Perspektiven, wie zum Beispiel die Wahl der richtigen Lagerbestandsmenge, nicht den realen Gegebenheiten entsprechen. Die Entscheidungen, die getroffen werden müssen, besitzen stets eine gewisse Tiefe.

Kapitel vier untersuchte die Elemente, die erforderlich sind, um moderne supply chain practices zu verstehen, in denen Softwareelemente allgegenwärtig sind. Diese Elemente sind grundlegend, um den breiteren Kontext zu begreifen, in dem die digitale supply chain operiert.

Die Kapitel fünf und sechs sind den prädiktiven Modellierungen bzw. der Entscheidungsfindung gewidmet. Diese Kapitel fassen Techniken zusammen, die heute in den Händen von Supply Chain Scientists gut funktionieren. Das sechste Kapitel konzentriert sich auf die Preisgestaltung, eine Art von Entscheidung, die unter vielen anderen getroffen werden muss.

Abschließend ist das siebte Kapitel der Umsetzung einer die Quantitative Supply Chain Initiative gewidmet und umfasst die organisatorische Perspektive.

Slide 7

Die heutige Vorlesung wird in zwei große Segmente aufgeteilt. Zunächst werden wir erörtern, wie das wettbewerbsorientierte Angleichen der Preise für Stuttgart angegangen werden kann. Das Angleichen der Preise an die der Wettbewerber muss aus Kundensicht erfolgen, bedingt durch die einzigartige Struktur des Ersatzteilmarktes für Automobile. Obwohl das wettbewerbsorientierte Angleichen alles andere als trivial ist, profitiert es von einer relativ einfachen Lösung, die wir im Detail behandeln werden.

Zweitens – obwohl das wettbewerbsorientierte Angleichen die vorherrschende Kraft ist – ist es nicht die einzige. Stuttgart mag es erforderlich haben oder sich wünschen, in bestimmten Fällen von diesem Angleichen abzuweichen. Allerdings müssen die Vorteile solcher Abweichungen die Risiken überwiegen. Die Qualität des Angleichens hängt von der Qualität der zur Erstellung herangezogenen Daten ab, weshalb wir eine selbstüberwachte Lerntechnik einführen werden, um den Graphen der mechanischen Kompatibilitäten zu verfeinern.

Abschließend werden wir eine kurze Reihe von Anliegen behandeln, die an die Preisgestaltung angrenzen. Diese Anliegen sind möglicherweise nicht streng mit der Preisgestaltung verbunden, aber in der Praxis lassen sie sich am besten gemeinsam mit den Preisen angehen.

Slide 8

Stuttgart muss jedem einzelnen Teil, das es verkauft, ein Preisschild zuordnen, jedoch impliziert dies nicht, dass die Preisanalysen primär auf der Ebene der Teilenummern durchgeführt werden müssen. Preisgestaltung ist in erster Linie eine Methode, um mit den Kunden zu kommunizieren.

Lassen Sie uns einen Moment darüber nachdenken, wie Kunden die von Stuttgart angebotenen Preise wahrnehmen. Wie wir sehen werden, ist der scheinbar subtile Unterschied zwischen dem Preisschild und dessen Wahrnehmung in Wirklichkeit alles andere als subtil.

Wenn ein Kunde beginnt, nach einem neuen Autoteil zu suchen, üblicherweise einem Verbrauchsteil wie Bremsbelägen, ist es unwahrscheinlich, dass er die genaue Teilenummer kennt, die er benötigt. Es mag einige Autoenthusiasten geben, die in dem Thema so versiert sind, dass sie eine spezifische Teilenummer im Kopf haben, doch sie stellen eine kleine Minderheit dar. Die meisten wissen nur, dass sie ihre Bremsbeläge wechseln müssen, kennen aber nicht die exakte Teilenummer.

Diese Situation führt zu einem weiteren ernsten Anliegen: mechanische Kompatibilität. Auf dem Markt gibt es Tausende von Referenzen für Bremsbeläge, jedoch sind für ein bestimmtes Fahrzeug in der Regel nur wenige Dutzend Referenzen kompatibel. Daher kann die mechanische Kompatibilität nicht dem Zufall überlassen werden.

Stuttgart ist sich dieses Problems ebenso bewusst wie all seine Wettbewerber. Beim Besuch der E-Commerce-Website von Stuttgart wird der Nutzer aufgefordert, sein Automodell auszuwählen, woraufhin die Website sofort die Teile herausfiltert, die mit dem angegebenen Fahrzeug nicht mechanisch kompatibel sind. Die Websites der Wettbewerber folgen demselben Designmuster: Zuerst wird das Fahrzeug gewählt, dann das Teil.

Wenn ein Kunde zwei Anbieter vergleichen möchte, vergleicht er in der Regel die Angebote und nicht die Teilenummern. Ein Kunde würde die Website von Stuttgart besuchen, die Kosten der kompatiblen Bremsbeläge ermitteln und anschließend den gleichen Vorgang auf der Website eines Wettbewerbers durchführen. Zwar könnte der Kunde die Teilenummer der Bremsbeläge auf der Website von Stuttgart feststellen und dann exakt dieselbe Teilenummer auf der Website des Konkurrenten suchen, doch in der Praxis passiert dies selten.

Stuttgart und seine Wettbewerber stellen ihre Sortimente so sorgfältig zusammen, dass sie nahezu alle Fahrzeuge mit einem Bruchteil der verfügbaren Autoteilenummern bedienen können. Infolgedessen finden sich typischerweise zwischen 100.000 und 200.000 Teilenummern auf ihren Websites, während tatsächlich nur 10.000 bis 20.000 Teilenummern vorrätig sind.

Hinsichtlich unseres anfänglichen Preisproblems ist klar, dass die Preisanalysen nicht primär über die Brille der Teilenummern, sondern über die Bedarfseinheit erfolgen sollten. Im Kontext des automobilen Aftermarktes zeichnet sich eine Bedarfseinheit dadurch aus, welche Art von Teil ersetzt werden muss und welches Automodell den Ersatz benötigt.

Diese Betrachtung der Bedarfseinheit bringt jedoch eine unmittelbare technische Komplikation mit sich. Stuttgart kann nicht auf eins-zu-eins Preisvergleiche zwischen Teilenummern vertrauen, um seine Preise mit denen seiner Wettbewerber in Einklang zu bringen. Somit ist das Angleichen der Preise nicht so offensichtlich, wie es auf den ersten Blick erscheinen mag, insbesondere wenn man die Zwänge berücksichtigt, unter denen Stuttgart seitens seiner Wettbewerber operiert.

Slide 9

Wie bereits in Vorlesung 3.4 gezeigt, wird das Problem der mechanischen Kompatibilität zwischen Autos und Teilen in Europa sowie in anderen wichtigen Regionen weltweit durch spezialisierte Unternehmen angegangen. Diese Unternehmen verkaufen Datensätze zur mechanischen Kompatibilität, die aus drei Listen bestehen: einer Liste von Automodellen, einer Liste von Autoteilen und einer Liste von Kompatibilitäten zwischen Autos und Teilen. Diese Datenstruktur wird technisch als bipartiter Graph bezeichnet.

In Europa umfassen diese Datensätze typischerweise mehr als 100.000 Fahrzeuge, über eine Million Teile und mehr als 100 Millionen Verbindungen, die Autos mit Teilen verknüpfen. Die Pflege dieser Datensätze ist arbeitsintensiv, was erklärt, warum spezialisierte Unternehmen existieren, um diese Datensätze zu verkaufen. Stuttgart erwirbt – wie seine Wettbewerber – ein Abonnement bei einem dieser spezialisierten Unternehmen, um auf aktualisierte Versionen dieser Datensätze zugreifen zu können. Abonnements sind notwendig, da, obwohl die Automobilindustrie ausgereift ist, ständig neue Fahrzeuge und Teile eingeführt werden. Um eng am automobilen Marktgeschehen zu bleiben, müssen diese Datensätze mindestens vierteljährlich aktualisiert werden.

Stuttgart und seine Wettbewerber nutzen diesen Datensatz, um den Mechanismus zur Fahrzeugausswahl auf ihren E-Commerce-Websites zu unterstützen. Sobald ein Kunde ein Fahrzeug ausgewählt hat, werden nur jene Teile angezeigt, die anhand des Kompatibilitätsdatensatzes nachweislich mit dem gewählten Fahrzeug kompatibel sind. Dieser Kompatibilitätsdatensatz bildet auch die Grundlage für unsere Preisanalysen. Mithilfe dieses Datensatzes kann Stuttgart den angebotenen Preis für jede Bedarfseinheit ermitteln.

Slide 10

Die letzte wesentliche Zutat, um Stuttgarts wettbewerbsorientierte Angleichstrategie zu entwickeln, ist die Wettbewerbsaufklärung. In Europa – wie in allen bedeutenden Wirtschaftsregionen – gibt es Spezialisten für Wettbewerbsaufklärung, also Unternehmen, die Preisscraping-Dienste anbieten. Diese Unternehmen extrahieren täglich die Preise von Stuttgart und seinen Wettbewerbern. Während ein Unternehmen wie Stuttgart versuchen kann, die automatisierte Erfassung seiner Preise einzudämmen, erweist sich dieses Unterfangen aus mehreren Gründen als weitgehend zwecklos.

Erstens möchte Stuttgart, wie auch seine Wettbewerber, robotfreundlich sein. Die wichtigsten Bots sind die Suchmaschinen, wobei Google ab 2023 einen Marktanteil von etwas über 90 % hält. Google ist jedoch nicht die einzige Suchmaschine, und zwar mag es zwar möglich sein, Googlebot – den Hauptcrawler von Google – herauszufiltern, jedoch ist es eine Herausforderung, dies für alle anderen Crawler zu tun, die immer noch etwa 10 % des Traffics ausmachen.

Zweitens haben sich die Spezialisten der Wettbewerbsaufklärung in den letzten zehn Jahren darin geübt, sich als normaler häuslicher Internetverkehr zu tarnen. Diese Dienste behaupten, Zugang zu Millionen von privaten IP-Adressen zu haben, was sie durch Partnerschaften mit Apps, das Ausnutzen der Internetverbindungen regulärer Nutzer und die Zusammenarbeit mit ISPs (Internet Service Providers), die ihnen IP-Adressen zur Verfügung stellen, erreichen.

Daher nehmen wir an, dass Stuttgart von einer hochwertigen Preisliste seiner namhaften Wettbewerber profitiert. Diese Preise werden auf der Basis von Teilenummern extrahiert und täglich aktualisiert. Diese Annahme ist nicht spekulativ; sie entspricht dem aktuellen Stand des europäischen Marktes.

Slide 11

Wir haben nun alle Elemente zusammengetragen, die Stuttgart benötigt, um angeglichene Preise zu berechnen – Preise, die mit denen seiner Wettbewerber übereinstimmen, wenn man sie aus der Perspektive der Bedarfseinheit betrachtet.

Auf dem Bildschirm sehen wir den Pseudocode für das Constraint-Satisfaction-Problem, das wir lösen möchten. Wir listen einfach alle Bedarfseinheiten auf, d. h. alle Kombinationen aus Teiltypen und Automodellen. Für jede Bedarfseinheit legen wir fest, dass der wettbewerbsfähigste Preis, den Stuttgart anbietet, dem wettbewerbsfähigsten Preis eines Wettbewerbers entsprechen sollte.

Lassen Sie uns kurz die Anzahl der Variablen und Einschränkungen bewerten. Stuttgart kann für jede Teilenummer, die es anbietet, ein Preisschild festlegen, was bedeutet, dass wir etwa 100.000 Variablen haben. Die Anzahl der Einschränkungen ist etwas komplexer. Technisch gesehen gibt es etwa 1.000 Teiltypen und rund 100.000 Automodelle, was ungefähr 100 Millionen Einschränkungen nahelegt. Allerdings kommen nicht alle Teiltypen in jedem Automodell vor. Praktische Messungen deuten darauf hin, dass die Anzahl der Einschränkungen eher bei 10 Millionen liegt.

Trotz dieser geringeren Anzahl an Einschränkungen haben wir immer noch 100-mal mehr Einschränkungen als Variablen. Wir stehen vor einem stark überbestimmten System. Daher wissen wir, dass es unwahrscheinlich ist, eine Lösung zu finden, die alle Einschränkungen erfüllt. Das beste Ergebnis ist eine Kompromisslösung, die die meisten Einschränkungen berücksichtigt.

Zudem sind die Preise der Wettbewerber nicht durchgängig konsistent. Trotz unserer besten Bemühungen könnte Stuttgart in einen Preiskampf um eine Teilenummer geraten, weil sein Preisschild zu niedrig ist. Gleichzeitig könnte es bei derselben Teilenummer Marktanteile an einen anderen Wettbewerber verlieren, weil sein Preisschild zu hoch angesetzt ist. Dieses Szenario ist nicht theoretisch – empirische Daten deuten darauf hin, dass solche Situationen regelmäßig auftreten, wenn auch bei einem kleinen Prozentsatz der Teilenummern.

Da wir uns für eine approximative Lösung dieses Systems von Einschränkungen entschieden haben, sollten wir das Gewicht, das jeder Einschränkung beigemessen wird, klar definieren. Nicht alle Automodelle sind gleich – einige sind mit älteren Fahrzeugen verbunden, die nahezu vollständig von den Straßen verschwunden sind. Wir schlagen vor, diese Einschränkungen entsprechend dem jeweiligen Nachfragevolumen, ausgedrückt in Euro, zu gewichten.

Slide 12

Jetzt, da wir den formalen Rahmen für unsere Preissetzungslogik etabliert haben, fahren wir mit dem eigentlichen Software-Code fort. Wie wir sehen werden, ist die Lösung dieses Systems unkomplizierter als erwartet.

Auf dem Bildschirm veranschaulicht ein minimales relationales Schema die sechs in diesem System involvierten Tabellen. Die abgerundeten Rechtecke repräsentieren die sechs relevanten Tabellen, und die Pfeile stellen die Eins-zu-Viele-Beziehungen zwischen den Tabellen dar.

Werfen wir einen kurzen Blick auf diese Tabellen:

  1. Part Types: Wie der Name vermuten lässt, listet diese Tabelle die Arten von Teilen auf, zum Beispiel “vordere Bremsbeläge”. Diese Typen dienen dazu, festzustellen, welches Teil als Ersatz für ein anderes verwendet werden kann. Das Ersatzteil muss nicht nur mit dem Fahrzeug kompatibel sein, sondern auch denselben Typ besitzen. Es gibt etwa tausend Teiltypen.

  2. Car Models: Diese Tabelle listet die Automodelle auf, zum Beispiel “Peugeot 3008 Phase 2 diesel”. Jedes Fahrzeug hat ein Modell, und alle Fahrzeuge eines bestimmten Modells sollen denselben Satz mechanischer Kompatibilitäten aufweisen. Es gibt etwa hunderttausend Automodelle.

  3. Part Numbers (PNs): Diese Tabelle listet die in der Automobil-Nachrüstteilbranche vorkommenden Teilenummern auf. Jede Teilenummer gehört zu genau einem Teiltyp. In dieser Tabelle gibt es etwa 1 Million Teilenummern.

  4. Compatibility (Compat): Diese Tabelle steht für mechanische Kompatibilitäten und erfasst alle gültigen Kombinationen von Teilenummern und Automodellen. Mit etwa 100 Millionen Kompatibilitätszeilen ist diese Tabelle bei weitem die größte.

  5. Competition: Diese Tabelle enthält alle Wettbewerbsinformationen des Tages. Für jede Teilenummer gibt es etwa ein halbes Dutzend namhafter Wettbewerber, die die Teilenummer zusammen mit einem Preisschild präsentieren. Das ergibt etwa 10 Millionen Wettbewerbsangebote.

  6. Orders: Diese Tabelle enthält vergangene Kundenaufträge aus Stuttgart über einen Zeitraum von etwa einem Jahr. Jede Bestellzeile umfasst eine Teilenummer und ein Automodell. Technisch gesehen ist es möglich, ein Autoteil zu kaufen, ohne das Automodell anzugeben, obwohl dies selten vorkommt. Bestellzeilen ohne Automodell können herausgefiltert werden. Basierend auf der Größe Stuttgarts sollte es etwa 10 Millionen Bestellzeilen geben.

Slide 13

Wir werden nun den Code untersuchen, der die relationalen Daten lädt. Auf dem Bildschirm wird ein Skript angezeigt, das sechs Tabellen lädt, geschrieben in Envision – einer domänenspezifischen Programmiersprache, die von Lokad speziell für die prädiktive Optimierung von supply chains entwickelt wurde. Obwohl Envision geschaffen wurde, um die Effizienz zu steigern und Fehler in supply chain-Kontexten zu reduzieren, kann das Skript in anderen Sprachen wie Python neu geschrieben werden, wenn auch auf Kosten erhöhter Verbosität und Fehleranfälligkeit.

Im ersten Teil des Skripts werden vier flache Textdateien geladen. In den Zeilen 1 bis 5 liefert die Datei “path.csv” sowohl die Teilenummern als auch die Teiltypen, einschließlich der aktuell in Stuttgart angezeigten Preise. Das Feld “name is active” gibt an, ob eine bestimmte Teilenummer von Stuttgart bedient wird. In dieser ersten Tabelle bezieht sich die Variable “PN” auf die primäre Dimension der Tabelle, während “PN type” eine sekundäre Dimension darstellt, die durch das Schlüsselwort “expect” eingeführt wurde.

In den Zeilen 7 bis 9 liefert die Datei “compat.tsv” die Liste der Teil-Fahrzeug-Kompatibilitäten und der Automodelle. Dies ist die größte Tabelle im Skript. Die Zeilen 11 bis 14 laden die Datei “competition.tsv”, die einen Schnappschuss der Wettbewerbsinformationen des Tages liefert, d.h. die Preise pro Teilenummer und pro Wettbewerber. Die Datei “orders.tsv”, die in den Zeilen 16 bis 19 geladen wird, gibt uns die Liste der gekauften Teilenummern und der zugehörigen Automodelle, vorausgesetzt, alle Zeilen mit nicht spezifizierten Automodellen wurden herausgefiltert.

Abschließend wird in den Zeilen 21 und 22 die Tabelle “part types” als vorgelagerte Tabelle für die beiden Tabellen “compat” und “orders” festgelegt. Das bedeutet, dass für jede Zeile entweder in “compat” oder “orders” genau ein übereinstimmender Teiltyp existiert. Mit anderen Worten, “PN type” wurde als sekundäre Dimension zu den Tabellen “compat” und “orders” hinzugefügt. Dieser erste Teil des Envision-Skripts ist unkompliziert; wir laden einfach Daten aus flachen Textdateien und stellen dabei die relationale Datenstruktur wieder her.

Slide 14

Der zweite Teil des Skripts, der auf dem Bildschirm sichtbar ist, ist der Ort, an dem die eigentliche Ausrichtungslogik abläuft. Dieser Abschnitt ist eine direkte Fortsetzung des ersten Teils, und wie Sie sehen können, umfasst er nur 12 Codezeilen. Wir verwenden erneut differenzierbares Programmieren. Für diejenigen im Publikum, die mit differenzierbarem Programmieren nicht vertraut sind, ist es eine Verschmelzung von automatischer Differenzierung und stochastischem Gradientenabstieg. Es handelt sich um ein Programmierparadigma, das auch auf maschinelles Lernen und Optimierung ausgedehnt wird. Im Kontext von supply chain erweist sich differenzierbares Programmieren als unglaublich nützlich in diversen Situationen. In dieser Vortragsreihe haben wir gezeigt, wie differenzierbares Programmieren dazu verwendet werden kann, Modelle zu erlernen, probabilistische Nachfrageprognosen zu erstellen und ballistische Durchlaufzeitprognosen zu erzielen. Falls Sie mit differenzierbarem Programmieren nicht vertraut sind, empfehle ich, die vorherigen Vorträge dieser Reihe erneut anzuschauen.

In der heutigen Vorlesung werden wir sehen, wie differenzierbares Programmieren sich bestens eignet, großskalige Optimierungsprobleme mit Hunderttausenden von Variablen und Millionen von Einschränkungen zu bewältigen. Bemerkenswerterweise können diese Probleme in nur wenigen Minuten auf einer einzelnen CPU mit einigen Gigabyte RAM gelöst werden. Zudem können wir frühere Preise als Ausgangspunkt verwenden, um unsere Preise zu aktualisieren, statt sie von Grund auf neu zu berechnen.

Bitte beachten Sie eine kleine Einschränkung. Das Schlüsselwort “join” wird von Envision noch nicht unterstützt, steht jedoch auf unserer technischen Roadmap für die Zukunft. Es gibt Umgehungslösungen, aber zur besseren Veranschaulichung werde ich in dieser Vorlesung die zukünftige Syntax von Envision verwenden.

In Zeile 24 berechnen wir den kleinsten beobachteten Preis auf dem Markt für jede Teilenummer. Wird eine Teilenummer ausschließlich in Stuttgart verkauft und hat keine Wettbewerber, verwenden wir Stuttgarts eigenen Preis als Standard.

Von Zeile 26 bis 30 wird für jedes im Kundenbestellverlauf Stuttgarts aufgeführte Teil das derzeit wettbewerbsfähigste Angebot berechnet.

In Zeile 27 iterieren wir über jede Bestellzeile der Orders-Tabelle mit “each order”.

In Zeile 28 verwenden wir “join pns”, um für jede Bestellzeile die vollständige Teilenummerntabelle einzubinden.

In Zeile 29 führen wir einen Join mit “others” durch, allerdings ist dieser Join auf zwei sekundäre Dimensionen – Modell und Teiltyp – beschränkt. Das bedeutet, dass wir für jede Zeile in der Orders-Tabelle die Teilenummern auswählen, die einer Kombination aus Automodell und Teiltyp entsprechen und somit die Teile abbilden, die zur Bedarfseinheit passen, die mit der Kundenbestellung übereinstimmt.

Von Zeile 32 bis 37 lösen wir die Ausrichtung mithilfe von differenzierbarem Programmieren, was durch das Schlüsselwort “Auto diff” angezeigt wird. Der “Auto diff”-Block wird in Zeile 32 deklariert, wobei die Orders-Tabelle als Beobachtungstabelle dient. Das bedeutet, dass wir die Einschränkungen implizit gemäß dem eigenen Verkaufsvolumen Stuttgarts gewichten. Die Zeilen 33 und 44 erfüllen denselben Zweck wie die Zeilen 28 und 29; sie iterieren über die Orders-Tabelle und ermöglichen den vollständigen Zugriff auf die Teilenummerntabelle (“PN”) sowie auf einen Ausschnitt der kompatiblen Einträge.

In Zeile 35 deklarieren wir “pns.price” als die Parameter, die durch den stochastischen Gradientenabstieg optimiert werden sollen. Es ist nicht notwendig, diese Parameter zu initialisieren, da wir von den bisherigen Preisen Stuttgarts ausgehen und somit die Ausrichtung effektiv aktualisieren.

In Zeile 36 berechnen wir “my price”, also Stuttgarts wettbewerbsfähigstes Angebot für die Bedarfseinheit, die mit der Bestellzeile verknüpft ist. Diese Berechnung folgt einem Mechanismus, der dem Ermitteln des niedrigsten beobachteten Preises in Zeile 24 sehr ähnlich ist, wobei erneut die Liste der mechanischen Kompatibilitäten zugrunde gelegt wird. Allerdings sind die Kompatibilitäten auf Teilenummern beschränkt, die von Stuttgart bedient werden. Historisch gesehen haben Kunden möglicherweise nicht immer das wirtschaftlich günstigste Teil für ihr Fahrzeug ausgewählt. Ungeachtet dessen besteht der Zweck der Verwendung von Kundenaufträgen in diesem Kontext darin, den Bedarfseinheiten Gewichte zuzuweisen.

In Zeile 37 nutzen wir die absolute Differenz zwischen dem besten von Stuttgart angebotenen Preis und dem besten Preis eines Wettbewerbers, um die Ausrichtung zu steuern. Innerhalb dieses alternativen Blocks werden Gradienten rückwirkend auf die Parameter angewendet. Die am Ende ermittelte Differenz bildet die Verlustfunktion. Aus dieser Verlustfunktion fließen die Gradienten zurück zum einzigen Parametervektor, den wir hier haben: “pns.price”. Durch inkrementelle Anpassung der Parameter (der Preise) in jeder Iteration (wobei eine Iteration hier einer Bestellzeile entspricht) nähert sich das Skript einer geeigneten Approximation der gewünschten Preisausrichtung an.

In Bezug auf die algorithmische Komplexität dominiert Zeile 36. Da jedoch die Anzahl der Kompatibilitäten für ein gegebenes Automodell und einen Teiltyp begrenzt ist (in der Regel nicht mehr als einige Dutzend), wird jede “Auto diff”-Iteration in konstanter Zeit ausgeführt. Diese konstante Zeit ist zwar nicht winzig, etwa 10 CPU-Zyklen, aber auch keine Million CPU-Zyklen. Ungefähr tausend CPU-Zyklen erscheinen für 20 kompatible Teile als vernünftig.

Wenn wir von einer einzelnen CPU ausgehen, die mit zwei Gigahertz läuft und 100 Epochen durchführt (wobei eine Epoche einen vollständigen Durchlauf der gesamten Beobachtungstabelle darstellt), würden wir eine Zielausführungszeit von etwa 10 Minuten erwarten. Ein Problem mit 100.000 Variablen und 10 Millionen Einschränkungen in 10 Minuten auf einer einzelnen CPU zu lösen, ist ziemlich beeindruckend. Tatsächlich erreicht Lokad eine Leistung, die in etwa dieser Erwartung entspricht. In der Praxis besteht bei solchen Problemen jedoch häufiger der Flaschenhals in der I/O-Durchsatzrate statt in der CPU.

Noch einmal zeigt dieses Beispiel die Stärke des Einsatzes geeigneter Programmierparadigmen für supply chain-Anwendungen. Wir begannen mit einem nicht trivialen Problem, da nicht sofort ersichtlich war, wie man diesen Datensatz mechanischer Kompatibilitäten aus einer Preissetzungsperspektive nutzen könnte. Dennoch ist die eigentliche Implementierung unkompliziert.

Auch wenn dieses Skript nicht alle Aspekte abdeckt, die in einer realen Umgebung vorhanden wären, erfordert die Kernlogik lediglich sechs Codezeilen, was ausreichend Raum lässt, um zusätzliche Komplexitäten zu berücksichtigen, die in realen Szenarien auftreten können.

Slide 15

Der bereits vorgestellte Ausrichtungsalgorithmus setzt auf Einfachheit und Klarheit statt auf Umfänglichkeit. In einer realen Umgebung wären zusätzliche Faktoren zu erwarten. Diese Faktoren werde ich in Kürze beleuchten, aber lassen Sie uns zunächst anerkennen, dass sie durch eine Erweiterung dieses Ausrichtungsalgorithmus adressiert werden können.

Verluste zu verkaufen ist nicht nur unklug, sondern in vielen Ländern, wie Frankreich, auch illegal, wenngleich es unter besonderen Umständen Ausnahmen gibt. Um den Verkauf mit Verlust zu verhindern, kann dem Ausrichtungsalgorithmus eine Einschränkung hinzugefügt werden, die vorschreibt, dass der Verkaufspreis den Einkaufspreis übersteigen muss. Es ist jedoch auch nützlich, den Algorithmus ohne diese “no loss”-Einschränkung auszuführen, um potenzielle Beschaffungsprobleme zu identifizieren. Wenn es einem Wettbewerber tatsächlich möglich ist, ein Teil unter Stuttgarts Einkaufspreis anzubieten, muss Stuttgart das zugrunde liegende Problem angehen. Höchstwahrscheinlich handelt es sich dabei um ein Beschaffungs- oder Einkaufsproblem.

Alle Teilenummern einfach zusammenzufassen, ist naiv. Kunden haben nicht die gleiche Zahlungsbereitschaft für alle Original Equipment Manufacturers (OEMs). So schätzen Kunden beispielsweise eine bekannte Marke wie Bosch eher als einen weniger bekannten chinesischen OEM in Europa. Um dieses Problem zu adressieren, kategorisiert Stuttgart, wie auch seine Mitbewerber, die OEMs in eine kurze Liste von Produktreihen – von der teuersten bis zur günstigsten. Wir können zum Beispiel die Motorsportreihe, die Haushaltsreihe, die Vertriebmarkenreihe und die Budgetreihe haben.

Die Ausrichtung wird dann so gestaltet, dass jede Teilenummer innerhalb ihrer eigenen Produktreihe angeordnet ist. Außerdem sollte der Ausrichtungsalgorithmus vorschreiben, dass die Preise streng abnehmen, wenn man von der Motorsportreihe bis zur Budgetreihe geht, da jede Umkehrung die Kunden verwirren würde. Theoretisch würden solche Umkehrungen nicht auftreten, wenn die Wettbewerber ihre Angebote exakt preislich gestalten würden. In der Praxis kommt es jedoch vor, dass Kunden ihre eigenen Teile falsch bepreisen, und manchmal haben sie Gründe, ihre Teile mit einem anderen Preisschild zu versehen.

Es gibt nur wenige hundert OEMs, und die Klassifizierung dieser OEMs in ihre jeweiligen Produktreihen kann manuell durchgeführt werden, möglicherweise mit Unterstützung von Kundenumfragen, falls Unklarheiten bestehen, die von den Marktexperten in Stuttgart nicht direkt gelöst werden können.

Slide 16

Trotz der Einführung von Produktreihen werden viele Teilenummernpreise nicht aktiv durch die Ausrichtungslogik bestimmt. Tatsächlich werden nur die Teilenummern, die aktiv dazu beitragen, innerhalb einer Bedarfseinheit den besten Preis zu erzielen, durch den Gradientenabstieg effektiv angepasst, um die gesuchte ungefähre Ausrichtung innerhalb derselben Produktreihe zu erreichen.

Bei zwei Teilenummern, die über identische mechanische Kompatibilitäten verfügen, wird nur bei einer der Preise durch den Ausrichtungs-Löser Anpassungen vorgenommen. Die andere Teilenummer erhält stets null Gradienten, sodass ihr ursprünglicher Preis unberührt bleibt. Zusammenfassend lässt sich sagen, dass, obwohl das System eine Vielzahl von Einschränkungen hat, viele Variablen überhaupt nicht eingeschränkt sind. Abhängig von der Granularität der Produktreihen und dem Umfang der Wettbewerbsinformationen können diese uneingeschränkten Teilenummern einen beträchtlichen Anteil des Katalogs ausmachen, möglicherweise die Hälfte der Teilenummern. Zwar ist der Anteil, ausgedrückt im Verkaufsvolumen, wesentlich niedriger.

Für diese Teilenummern erfordert Stuttgart eine alternative Preisstrategie. Obwohl ich keinen strikten algorithmischen Prozess vorschlagen kann, schlage ich zwei Leitprinzipien vor.

Erstens sollte zwischen dem wettbewerbsfähigsten Teil innerhalb der Produktreihe und dem nächstfolgenden Teil eine nicht triviale Preislücke bestehen, beispielsweise 10%. Mit etwas Glück sind einige Wettbewerber möglicherweise nicht so geschickt wie Stuttgart bei der Rekonstruktion der Bedarfseinheiten. Folglich könnten diese Wettbewerber das eine Preisschild, das die Ausrichtung tatsächlich bestimmt, übersehen und ihren Preis nach oben korrigieren, was für Stuttgart wünschenswert ist.

Zweitens könnte es sein, dass einige Teile einen wesentlich höheren Preis haben, sagen wir 30 % teurer, solange diese Teile nicht mit anderen Produktreihen überlappen. Diese Teile dienen als Köder für ihre günstiger bepreisten Gegenstücke, eine Strategie, die technisch als Lockvogelpreisstrategie bekannt ist. Der Köder ist absichtlich so gestaltet, dass er eine weniger attraktive Option als die Zieloption darstellt, wodurch letztere wertvoller erscheint und dazu führt, dass der Kunde sie häufiger wählt. Diese beiden Prinzipien genügen, um die ungebundenen Preise behutsam über ihre Wettbewerbsschwellen hinaus auszudehnen.

Slide 17

Die wettbewerbliche Angleichung in Verbindung mit einer Portion Lockvogelpreisgestaltung reicht aus, um jeder auf dem Display in Stuttgart gezeigten Teilenummer ein Preisschild zuzuordnen. Allerdings ist die daraus resultierende Bruttomarge voraussichtlich zu niedrig für Stuttgart. Tatsächlich erzeugt die Angleichung Stuttgarts an all seine namhaften Wettbewerber einen enormen Druck auf seine Marge.

Einerseits ist die Angleichung der Preise eine Notwendigkeit, da sonst Stuttgart im Laufe der Zeit komplett aus dem Markt gedrängt wird. Andererseits kann sich Stuttgart nicht in den Ruin treiben, während es versucht, seinen Marktanteil zu sichern. Es ist entscheidend, sich daran zu erinnern, dass die zukünftige Bruttomarge, die mit einer bestimmten Preisstrategie verbunden ist, nur geschätzt oder prognostiziert werden kann. Es gibt keine exakte Methode, die zukünftige Wachstumsrate aus einer Reihe von Preisen abzuleiten, da sich sowohl Kunden als auch Wettbewerber anpassen.

Angenommen, wir verfügen über eine einigermaßen genaue Schätzung der Bruttomargenrate, die Stuttgart in der nächsten Woche erwarten sollte, so ist es wichtig darauf hinzuweisen, dass der Aspekt der “Genauigkeit” dieser Annahme nicht so unvernünftig ist, wie es klingen mag. Stuttgart operiert wie seine Wettbewerber unter strengen Einschränkungen. Sofern die Preisstrategie von Stuttgart nicht grundlegend geändert wird, wird sich die unternehmensweite Bruttomarge von einer Woche zur nächsten kaum verändern. Wir können sogar die in der letzten Woche beobachtete Bruttomargenrate als einen vernünftigen Anhaltspunkt dafür heranziehen, was Stuttgart in der nächsten Woche erwarten sollte – natürlich unter der Annahme, dass die Preisstrategie unverändert bleibt.

Angenommen, die Bruttomargenrate von Stuttgart wird mit 13 % prognostiziert, aber Stuttgart benötigt eine Marge von 15 %, um sich zu tragen. Was sollte Stuttgart in einer solchen Situation tun? Eine Möglichkeit besteht darin, eine zufällige Auswahl von Bedarfs-Einheiten zu treffen und deren Preise um etwa 20 % nach oben anzupassen. Von dieser Auswahl sollten Teilarten, die bei Erstkunden beliebt sind, wie zum Beispiel Scheibenwischer, ausgeschlossen werden. Diese Erstkunden zu gewinnen, ist kostspielig und schwierig, und Stuttgart sollte das Risiko von Erstkäufen nicht eingehen. Ebenso neigen Kunden bei sehr teuren Teilarten, wie Injektoren, dazu, vermehrt umzuschauen. Daher sollte Stuttgart vermutlich nicht riskieren, bei solchen größeren Anschaffungen unkonkurrenzfähig zu erscheinen.

Allerdings, abgesehen von diesen beiden Fällen, würde ich argumentieren, dass die zufällige Auswahl von Bedarfs-Einheiten und deren Unwettbewerbsfähigkeit durch höhere Preise eine vernünftige Option darstellt. In der Tat muss Stuttgart einige seiner Preise erhöhen, was eine unvermeidliche Folge des Strebens nach einer höheren Wachstumsmargenrate ist. Wenn Stuttgart dabei ein erkennbares Muster annimmt, ist es wahrscheinlich, dass Online-Bewertungen diese Muster aufzeigen. Beispielsweise, wenn Stuttgart beschließt, bei Teilen von Bosch oder bei Teilen, die mit Peugeot-Fahrzeugen kompatibel sind, nicht mehr wettbewerbsfähig zu sein, besteht die reale Gefahr, dass Stuttgart als Händler bekannt wird, der kein gutes Angebot für Bosch- oder Peugeot-Fahrzeuge darstellt. Zufälligkeit macht Stuttgart ein wenig undurchschaubar, was genau der beabsichtigte Effekt ist.

Slide 18

Anzeige-Ränge sind ein weiterer entscheidender Faktor im Onlinekatalog von Stuttgart. Genauer gesagt, muss Stuttgart für jede Bedarfs-Einheit alle in Frage kommenden Teile bewerten. Die Frage, wie die Teile am besten zu sortieren sind, ist ein preisbezogenes Problem, das einen eigenen Vortrag verdient. Aus der in diesem Vortrag dargestellten Perspektive würden die Anzeige-Ränge nach der Lösung des Angleichungsproblems berechnet werden. Es wäre jedoch auch denkbar, sowohl die Preisschilder als auch die Anzeige-Ränge simultan zu optimieren. Dieses Problem würde etwa 10 Millionen Variablen anstatt der bisher behandelten 100.000 Variablen umfassen. Dennoch verändert dies nicht grundsätzlich das Ausmaß des Optimierungsproblems, da wir ohnehin mit 10 Millionen Nebenbedingungen zu arbeiten haben. Heute werde ich nicht darauf eingehen, welches Kriterium zur Steuerung dieser Optimierung der Anzeige-Ränge herangezogen werden könnte, noch wie man Gradient Descent für die diskrete Optimierung nutzen kann. Letzteres Thema ist zwar sehr interessant, wird aber in einem späteren Vortrag behandelt.

Slide 19

Die relative Bedeutung einer Bedarfs-Einheit wird fast ausschließlich durch die bestehenden Fahrzeugflotten bestimmt. Stuttgart kann nicht erwarten, 1 Million Bremsbeläge für ein Automodell zu verkaufen, von dem in Europa nur 1.000 Fahrzeuge existieren. Man könnte sogar argumentieren, dass die tatsächlichen Verbraucher der Teile die Fahrzeuge selbst und nicht deren Besitzer sind. Auch wenn die Fahrzeuge nicht für ihre Teile bezahlen (die Besitzer tun es), verdeutlicht dieser Vergleich die Bedeutung der Fahrzeugflotte.

Es ist jedoch zu erwarten, dass beim Online-Kauf von Ersatzteilen erhebliche Verzerrungen auftreten. Schließlich dient der Kauf von Teilen in erster Linie dazu, Geld zu sparen im Vergleich zum indirekten Kauf über eine Werkstatt. Daher ist es anzunehmen, dass das durchschnittliche Fahrzeugalter, wie es von Stuttgart beobachtet wird, höher ist als die allgemeinen Statistiken des Automobilmarktes vermuten lassen würden. Ebenso sind Personen, die teure Autos fahren, seltener dazu geneigt, durch Eigenreparaturen Geld zu sparen. Somit ist zu erwarten, dass die durchschnittliche Fahrzeuggröße und -klasse, wie sie von Stuttgart beobachtet wird, niedriger ist als die allgemeinen Marktstatistiken vermuten lassen.

Das sind keine bloßen Spekulationen. Diese Verzerrungen werden tatsächlich bei allen großen Online-Ersatzteilhändlern in Europa beobachtet. Dennoch nutzt der zuvor vorgestellte Angleichungsalgorithmus die Verkaufshistorie von Stuttgart als Stellvertreter für die Nachfrage. Es ist denkbar, dass diese Verzerrungen das Ergebnis des Preisangleichungsalgorithmus untergraben könnten. Ob diese Verzerrungen negative Auswirkungen auf das Ergebnis für Stuttgart haben, ist grundsätzlich ein empirisches Problem, da das Ausmaß des Problems, falls überhaupt, stark von den Daten abhängt. Die Erfahrungen von Lokad zeigen, dass der Angleichungsalgorithmus und seine Variationen gegenüber dieser Art von Verzerrungen ziemlich robust sind, selbst wenn das Gewicht einer Bedarfs-Einheit um den Faktor zwei oder drei falsch eingeschätzt wird. Der primäre Beitrag dieser Gewichtungen, preislich betrachtet, scheint darin zu bestehen, dass sie dem Angleichungsalgorithmus helfen, Konflikte zu lösen, wenn dieselbe Teilenummer zwei Bedarfs-Einheiten zugeordnet ist, die nicht gemeinsam behandelt werden können. In der Mehrheit dieser Fälle überwiegt eine Bedarfs-Einheit das Volumen der anderen bei weitem. Deshalb hat selbst eine deutliche Fehleinschätzung der jeweiligen Volumina kaum finanzielle Konsequenzen.

Die Identifizierung der größten Verzerrungen zwischen der theoretisch erwarteten Nachfrage für eine Bedarfs-Einheit und den von Stuttgart tatsächlich beobachteten Verkaufszahlen kann sehr aufschlussreich sein. Ein überraschend geringes Verkaufsvolumen für eine bestimmte Bedarfs-Einheit deutet meist auf alltägliche Probleme mit der E-Commerce-Plattform hin. Einige Teile könnten falsch etikettiert sein, andere möglicherweise mit fehlerhaften oder minderwertigen Bildern versehen, usw. In der Praxis können diese Verzerrungen identifiziert werden, indem die Verkaufsquoten für einen bestimmten Fahrzeugtyp bei den verschiedenen Teilarten verglichen werden. Zum Beispiel, wenn Stuttgart für ein bestimmtes Automodell keinerlei Bremsbeläge verkauft, während die Verkaufszahlen für andere Teilarten den üblichen Beobachtungen entsprechen, ist es unwahrscheinlich, dass dieses Automodell einen außergewöhnlich niedrigen Verbrauch an Bremsbelägen aufweist. Die eigentliche Ursache liegt fast sicher woanders.

Slide 20

Eine überlegene Liste mechanischer Kompatibilitäten ist ein Wettbewerbsvorteil. Kompatibilitäten zu kennen, die Ihren Konkurrenten nicht bekannt sind, ermöglicht es Ihnen, diese möglicherweise unterbieten zu können, ohne einen Preiskrieg auszulösen, und verschafft Ihnen so einen Vorsprung bei der Steigerung Ihres Marktanteils. Umgekehrt ist es entscheidend, fehlerhafte Kompatibilitäten zu identifizieren, um teure Rücksendungen von Kunden zu vermeiden.

In der Tat sind die Kosten, ein inkompatibles Teil zu bestellen, für eine Werkstatt gering, da es in der Regel einen etablierten Prozess gibt, um das nicht genutzte Teil an das Distributionszentrum zurückzusenden. Für normale Kunden ist der Prozess jedoch viel mühsamer, da diese möglicherweise nicht einmal in der Lage sind, das Teil ordnungsgemäß für den Rückversand zu verpacken. Daher hat jedes E-Commerce-Unternehmen einen Anreiz, eine eigene Datenanreicherungsschicht auf den gemieteten Drittanbieterdaten aufzubauen. Die meisten Akteure im E-Commerce in diesem Bereich verfügen in irgendeiner Form über eine eigene Datenanreicherungsschicht.

Es gibt wenig Anreize, dieses Wissen mit den spezialisierten Unternehmen, die diese Datensätze pflegen, zu teilen, da dieses Wissen größtenteils dem Wettbewerb zugutekäme. Es ist schwierig, die Fehlerquote in diesen Datensätzen zu beurteilen, aber bei Lokad schätzen wir, dass sie sich auf einen niedrigen einstelligen Prozentsatz auf beiden Seiten beläuft. Es gibt einige Prozent an Fehlalarmen, bei denen eine Kompatibilität deklariert wird, obwohl sie nicht existiert, und ein paar Prozent an Fehlversäumnissen, bei denen eine Kompatibilität existiert, aber nicht deklariert wird. Angesichts der Tatsache, dass die Liste der mechanischen Kompatibilitäten mehr als 100 Millionen Zeilen umfasst, gibt es unter konservativen Schätzungen höchstwahrscheinlich etwa sieben Millionen Fehler.

Deshalb liegt es im Interesse von Stuttgart, diesen Datensatz zu verbessern. Kundenrücksendungen, die mit falsch-positiver mechanischer Kompatibilität in Verbindung gebracht werden, können sicherlich zu diesem Zweck genutzt werden. Dieser Prozess ist jedoch langsam und kostspielig. Zudem, da Kunden keine professionellen Kfz-Techniker sind, könnten sie ein Teil als inkompatibel melden, obwohl sie es lediglich nicht geschafft haben, das Teil korrekt zu montieren. Stuttgart kann die Einstufung eines Teils als inkompatibel aufschieben, bis mehrere Beschwerden eingegangen sind, was den Prozess jedoch noch kostspieliger und langsamer macht.

Eine numerische Methode zur Verbesserung dieses Kompatibilitätsdatensatzes wäre daher sehr wünschenswert. Es ist nicht offensichtlich, dass es überhaupt möglich ist, diesen Datensatz ohne zusätzliche Informationen zu verbessern. Überraschenderweise stellte sich jedoch heraus, dass dieser Datensatz ohne weitere Informationen verbessert werden kann. Dieser Datensatz kann genutzt werden, um sich selbst zu einer überlegenen Version weiterzuentwickeln.

Ich bin persönlich im ersten Quartal 2017 zu dieser Erkenntnis gelangt, als ich eine Reihe von Deep-Learning Experimenten für Lokad durchführte. Ich verwendete eine Matrixfaktorisierung, eine bekannte Technik des kollaborativen Filterns. Kollaboratives Filtern ist das zentrale Problem beim Aufbau eines Empfehlungssystems, das darin besteht, das Produkt zu identifizieren, das einem Nutzer gefallen könnte, basierend auf den bekannten Vorlieben dieses Nutzers für eine kurze Liste von Produkten. Die Anpassung des kollaborativen Filterns an mechanische Kompatibilitäten ist unkompliziert: Ersetzen Sie Nutzer durch Automodelle und Produkte durch Autoteile. Voilà, das Problem ist angepasst.

Allgemeiner gilt, dass Matrixfaktorisierung in jeder Situation anwendbar ist, die einen bipartiten Graphen beinhaltet. Matrixfaktorisierung ist auch über die Graphenanalyse hinaus nützlich. Zum Beispiel beruht die Low-Rank-Anpassung großer Sprachmodelle (LLMs) – eine Technik, die zur Feinabstimmung von LLMs enorm populär geworden ist – ebenfalls auf dem Trick der Matrixfaktorisierung. Matrixfaktorisierung wird auf dem Bildschirm veranschaulicht. Auf der linken Seite sehen wir die Kompatibilitätsmatrix, in der Einsen eine Kompatibilität zwischen einem Auto und einem Teil bezeichnen und Nullen eine Inkompatibilität zwischen einem Automodell und einer Teilenummer. Wir möchten diese große und sehr spärliche Matrix durch das Produkt von zwei kleineren, dichten Matrizen ersetzen. Diese beiden Matrizen sind rechts zu sehen. Sie dienen dazu, die große Matrix zu faktorisieren. Effektiv versetzen wir jedes Automodell und jede Teilenummer in einen latenten Raum. Die Dimension dieses latenten Raums wird auf dem Bildschirm mit einem großen L angegeben. Dieser latente Raum ist so konzipiert, dass er die mechanischen Kompatibilitäten erfasst, jedoch mit deutlich weniger Dimensionen im Vergleich zur Originalmatrix. Indem wir die Dimension dieses latenten Raums relativ niedrig halten, beabsichtigen wir, die verborgenen Regeln zu erlernen, die diese mechanischen Kompatibilitäten bestimmen.

Slide 21

Obwohl Matrixfaktorisierung wie ein großes technisches Konzept klingen mag, ist dem nicht so. Es handelt sich um einen grundlegenden Kniff der linearen Algebra. Der einzige trügerische Aspekt der Matrixfaktorisierung ist, dass sie trotz ihrer Einfachheit so gut funktioniert. Auf dem Bildschirm ist eine vollständige Implementierung dieser Technik in weniger als 30 Zeilen Code zu sehen.

Von Zeile eins bis drei lesen wir die Flachdatei ein, die die mechanischen Kompatibilitäten auflistet. Diese Datei wird zur Kürze in eine Tabelle namens M geladen, die für Matrix steht. Diese Liste ist effektiv eine spärliche Darstellung der Kompatibilitätsmatrix. Beim Einlesen dieser Liste erstellen wir zudem zwei weitere Tabellen namens car_models und pns. Diese Blöcke ergeben drei Tabellen: M, car_models und pns.

Die Zeilen fünf und sechs beinhalten das zufällige Durchmischen der Spalte, die die Automodelle enthält. Der Zweck des Shuffle-Vorgangs besteht darin, zufällige Nullen, sprich zufällige Inkompatibilitäten, zu erzeugen. Tatsächlich ist die Kompatibilitätsmatrix sehr spärlich. Wenn man ein zufälliges Auto und ein zufälliges Teil auswählt, ist man sich fast sicher, dass dieses Paar inkompatibel ist. Das Vertrauen, dass diese zufällige Assoziation Null beträgt, ist tatsächlich höher als das Vertrauen in die ursprüngliche Kompatibilitätsliste. Diese zufälligen Nullen sind aufgrund der Spärlichkeit der Matrix von Haus aus zu 99,9 % korrekt, während die bekannten Kompatibilitäten vielleicht zu 97 % korrekt sind.

Zeile acht beinhaltet die Erstellung des latenten Raums mit 24 Dimensionen. Zwar mögen 24 Dimensionen für Einbettungen viel erscheinen, doch sie sind sehr klein im Vergleich zu großen Sprachmodellen, die Einbettungen mit über tausend Dimensionen besitzen. Die Zeilen neun und zehn betreffen die Erstellung der beiden kleinen Matrizen, namens pnl und car_L, die wir zur Faktorisierung der großen Matrix verwenden werden. Diese beiden Matrizen repräsentieren ungefähr 24 Millionen Parameter für pnl und 2,4 Millionen Parameter für car_L. Dies wird im Vergleich zur großen Matrix, die etwa 100 Milliarden Werte enthält, als gering angesehen.

Es sei darauf hingewiesen, dass die große Matrix in diesem Skript niemals materialisiert wird. Sie wird nie explizit in ein Array umgewandelt, sondern stets als Liste von 100 Millionen Kompatibilitäten aufbewahrt. Eine Umwandlung in ein Array wäre in Bezug auf die Rechenressourcen äußerst ineffizient.

Zeilen 12 bis 15 führen zwei Hilfsfunktionen namens sigmoid und log_loss ein. Die sigmoid-Funktion wird verwendet, um das rohe Matrixprodukt in Wahrscheinlichkeiten, Zahlen zwischen 0 und 1, umzuwandeln. Die Funktion log_loss steht für logistischen Verlust. Der logistische Verlust wendet die logarithmische Wahrscheinlichkeit an, eine Metrik, die zur Bewertung der Richtigkeit einer probabilistischen Vorhersage eingesetzt wird. Hier wird sie zur Bewertung einer probabilistischen Vorhersage bei einem binären Klassifikationsproblem verwendet. Die logarithmische Wahrscheinlichkeit haben wir bereits in Vorlesung 5.3 kennengelernt, die der probabilistischen Vorhersage von Durchlaufzeiten gewidmet war. Dies ist eine einfachere Variation derselben Idee. Diese beiden Funktionen sind mit dem Schlüsselwort autograd markiert, was anzeigt, dass sie automatisch differenzierbar sind. Der kleine Wert von einem Millionstel ist ein Epsilon, das zur numerischen Stabilität eingeführt wurde. Andernfalls hat er keinerlei Einfluss auf die Logik. In den Zeilen 17 bis 29 befindet sich die Matrixfaktorisierung selbst. Erneut verwenden wir differentiable programming. Vor wenigen Minuten nutzten wir differentiable programming, um ein Constraint-Satisfaction-Problem näherungsweise zu lösen. Hier setzen wir differentiable programming ein, um ein selbstüberwachtes Lernproblem anzugehen.

In den Zeilen 18 und 19 deklarieren wir die zu lernenden Parameter. Diese Parameter sind den beiden kleinen Matrizen pnl und car_L zugeordnet. Das Schlüsselwort “auto” zeigt an, dass diese Parameter zufällig als Zufallsabweichungen aus einer gaußschen Verteilung initialisiert werden, die um Null zentriert ist, mit einer Standardabweichung von 0.1.

Die Zeilen 20 und 21 führen zwei spezielle Parameter ein, die die Konvergenz beschleunigen. Es handelt sich dabei insgesamt um nur 48 Zahlen, ein Tropfen auf den heißen Stein im Vergleich zu unseren kleinen Matrizen, die dennoch Millionen von Zahlen enthalten. Und dennoch habe ich festgestellt, dass die Einführung dieser Parameter die Konvergenz erheblich beschleunigt. Es ist wichtig zu betonen, dass diese Parameter dem bestehenden Modell keinerlei Freiheitsgrade hinzufügen. Sie bringen nur wenige zusätzliche Freiheitsgrade in den Lernprozess ein. Der Nettoeffekt besteht darin, dass sie die Anzahl der notwendigen Epochen um mehr als die Hälfte reduzieren.

In den Zeilen 22 bis 24 laden wir die Einbettungen. In Zeile 22 haben wir die Einbettung für ein einzelnes Teil namens px. In Zeile 23 laden wir die Einbettung für ein einzelnes Automodell namens mx. Das Paar px und mx wird unsere positive Verbindung darstellen, eine als wahr angesehene Kompatibilität. In Zeile 24 erhalten wir die Einbettung für ein weiteres Automodell namens mx2. Das Paar px und mx2 wird unsere negative Verbindung darstellen, eine als falsch angesehene Kompatibilität. Tatsächlich wurde mx2 durch das in Zeile sechs durchgeführte Mischen zufällig ausgewählt. Die drei Einbettungen px, mx und mx2 besitzen alle genau 24 Dimensionen, da sie zum latenten Raum gehören, der in diesem Skript durch die Tabelle L dargestellt wird.

In Zeile 26 drücken wir die Wahrscheinlichkeit, wie sie von unserem Modell definiert wurde, durch ein Skalarprodukt dieser positiven Verbindung aus. Wir wissen, dass diese Verbindung positiv ist, zumindest sagt uns das Kompatibilitätsdatenset. Aber hier bewerten wir, was unser probabilistisches Modell über diese Verbindung aussagt. In Zeile 27 drücken wir die Wahrscheinlichkeit, ebenfalls von unserem probabilistischen Modell definiert, durch das Skalarprodukt dieser negativen Verbindung aus. Wir vermuten, dass diese Verbindung negativ ist, da es sich um eine zufällige Verbindung handelt. Erneut bewerten wir diese Wahrscheinlichkeit, um zu sehen, was unser Modell über diese Verbindung aussagt. In Zeile 29 geben wir das Gegenteil der mit dieser Verbindung assoziierten logarithmischen Wahrscheinlichkeit zurück. Der Rückgabewert wird als Verlust genutzt, der mittels stochastischem Gradientenabstieg minimiert wird. Das bedeutet, dass wir die logarithmische Wahrscheinlichkeit maximieren, beziehungsweise das probabilistische binäre Klassifikationskriterium zwischen kompatiblen und inkompatiblen Paaren optimieren.

Anschließend kann – über das in diesem Skript Gezeigte hinaus – die große Matrix mit dem Skalarprodukt von zwei kleinen Matrizen verglichen werden. Die Abweichungen zwischen den beiden Darstellungen zeichnen sowohl die False Positives als auch die False Negatives der ursprünglichen Datensätze nach. Das Erstaunlichste ist, dass die faktorisierte Darstellung dieser großen Matrix letztlich genauer ist als die ursprüngliche Matrix.

Leider kann ich die empirischen Ergebnisse, die mit diesen Techniken verbunden sind, nicht präsentieren, da die relevanten Kompatibilitätsdatensätze alle proprietär sind. Meine Erkenntnisse, validiert durch einige Akteure in diesem Markt, deuten jedoch darauf hin, dass diese Matrixfaktorisierungstechniken dazu genutzt werden können, die Anzahl der False Positives und False Negatives um einen Größenordnungsfaktor zu reduzieren. Was die Leistung betrifft, so bin ich von etwa zwei Wochen Rechenzeit, um mit dem von mir verwendeten Deep-Learning-Toolkit CNTK – dem Deep-Learning-Toolkit von Microsoft aus dem Jahr 2017 – eine zufriedenstellende Konvergenz zu erreichen, auf etwa eine Stunde mit der heutigen Laufzeit von Envision gekommen. Die frühen Deep-Learning-Toolkits boten in gewissem Sinne differentiable programming; allerdings waren diese Lösungen stark auf große Matrixprodukte und umfangreiche Faltungen optimiert. Neuere Toolkits, wie Jax von Google, würden vermutlich eine Leistung erzielen, die mit der von Envision vergleichbar ist.

Dies wirft die Frage auf: Warum setzen spezialisierte Unternehmen, die Kompatibilitätsdatensätze pflegen, nicht bereits Matrixfaktorisierung ein, um ihre Datensätze zu bereinigen? Falls sie dies täten, würde Matrixfaktorisierung nichts Neues bringen. Matrixfaktorisierung als Machine-Learning-Technik gibt es seit fast 20 Jahren. Diese Technik wurde bereits 2006 von Simon Funk popularisiert. Es ist nicht mehr gerade die neueste Innovation. Meine Antwort auf diese ursprüngliche Frage lautet: Ich weiß es nicht. Vielleicht werden diese spezialisierten Unternehmen nach dieser Vorlesung beginnen, Matrixfaktorisierung einzusetzen, oder auch nicht.

Jedenfalls zeigt dies, dass differentiable programming und probabilistisches Modellieren sehr vielseitige Paradigmen sind. Aus der Ferne betrachtet hat die Vorhersage von Durchlaufzeiten nichts mit der Bewertung mechanischer Kompatibilitäten zu tun, und dennoch können beide mit demselben Instrument angegangen werden, nämlich differentiable programming und probabilistisches Modellieren.

Slide 22

Der Datensatz mechanischer Kompatibilitäten ist nicht der einzige, der sich als ungenau erweisen könnte. Manchmal liefern die Competitive-Intelligence-Tools auch gefälschte Daten zurück. Selbst wenn der Web-Scripting-Prozess beim Extrahieren von Millionen von Preisen aus semi-strukturierten Webseiten ziemlich zuverlässig ist, können Fehler auftreten. Die Identifizierung und Behebung dieser fehlerhaften Preise ist eine Herausforderung für sich. Dies würde allerdings ebenfalls eine eigene Vorlesung verdienen, da die Probleme tendenziell sowohl spezifisch für die Zielwebseite als auch für die verwendete Web-Scripting-Technologie sind.

Obwohl die Bedenken hinsichtlich des Web-Scrapings wichtig sind, treten diese Probleme bereits auf, bevor der Alignment-Algorithmus ausgeführt wird, und sollten daher weitgehend vom Alignment selbst entkoppelt sein. Scraping-Fehler müssen nicht dem Zufall überlassen werden. Es gibt zwei Möglichkeiten, im Competitive-Intelligence-Spiel vorzugehen: Entweder verbessert man seine eigenen Zahlen, macht sie präziser, oder man verschlechtert die Zahlen der Konkurrenz, macht sie ungenauer. Darum geht es bei der Konteraufklärung.

Wie bereits zuvor besprochen, wird das Blockieren von Robotern basierend auf ihrer IP-Adresse nicht funktionieren. Es gibt jedoch Alternativen. Die Transportebene im Netzwerk ist bei weitem nicht die interessanteste Ebene, mit der man spielen kann, wenn man gezielt Verwirrung stiften möchte. Vor etwa einem Jahrzehnt führte Lokad eine Reihe von Konteraufklärungsexperimenten durch, um zu prüfen, ob sich eine große E-Commerce-Webseite wie SugAr gegen die Konkurrenz behaupten könnte. Das Ergebnis? Ja, das kann sie.

Irgendwann konnte ich die Effektivität dieser Konteraufklärungstechniken sogar durch eine direkte Überprüfung der von dem ansonsten unverdächtigen Web-Scraping-Spezialisten gelieferten Daten bestätigen. Der Codename für diese Initiative lautete Bot Defender. Dieses Projekt wurde eingestellt, aber in unserem öffentlichen Blog-Archiv sind noch einige Spuren von Bot Defender zu finden.

Anstatt zu versuchen, den Zugang zu den HTML-Seiten zu verwehren – was ein aussichtsloses Unterfangen wäre – haben wir uns entschieden, gezielt in die Web-Scraper selbst einzugreifen. Das Lokad-Team kannte die Feinheiten des Designs dieser Web-Scraper nicht. Betrachtet man die DHTML-Struktur einer bestimmten E-Commerce-Webseite, ist es nicht allzu schwer, eine fundierte Vermutung darüber anzustellen, wie ein Unternehmen, das die Web-Scraper betreibt, vorgehen würde. Wenn beispielsweise jede HTML-Seite der StuttArt-Webseite eine überaus praktische CSS-Klasse namens “unit price” enthält, die den Preis des Produkts in der Mitte der Seite hervorhebt, liegt es nahe anzunehmen, dass so gut wie alle Roboter diese sehr praktische CSS-Klasse verwenden werden, um den Preis im HTML-Code zu isolieren. Tatsächlich, sofern die StuttArt-Webseite nicht einen noch praktischeren Weg bietet – wie etwa eine offene API, die frei abgefragt werden kann –, ist diese CSS-Klasse der offensichtliche Pfad zur Extraktion der Preise.

Da die Logik des Web-Scrapings offensichtlich ist, ist auch klar, wie man gezielt in diese Logik eingreifen kann. So kann StuttArt beispielsweise beschließen, einige ausgewählte, gezielt adressierte Produkte herauszugreifen und das HTML “zu vergiften”. Im gezeigten Beispiel auf dem Bildschirm erscheinen beide HTML-Seiten für Menschen optisch als Preisschild von 65 Euro und 50 Cent. Allerdings wird die zweite Version der HTML-Seite von Robotern als 95 Euro statt 65 Euro interpretiert. Die Ziffer “9” wird mittels CSS so gedreht, dass sie wie eine “6” aussieht. Der typische Baseline-Web-Scraper, der auf HTML-Markup angewiesen ist, wird dies nicht bemerken.

Slide 23

Zehn Jahre später wird sogar ein ausgeklügeltes Large Language Model wie GPT-4, das zu jener Zeit noch nicht existierte, von diesem einfachen CSS-Trick getäuscht. Auf dem Bildschirm sehen wir, dass GPT-4 nicht den Preis von 65 Euro extrahiert, wie es sollte, sondern stattdessen 95 Euro angibt. Es gibt übrigens Dutzende von Möglichkeiten, einen HTML-Code so zu gestalten, dass er einem Roboter ein offensichtliches Preisschild bietet, das von dem abweicht, was ein Mensch auf der Webseite lesen würde. Das Drehen einer “9” zu einer “6” ist nur einer der einfachsten Tricks unter einer Vielzahl ähnlicher Kniffe.

Ein Gegenmittel zu dieser Technik bestünde darin, die Seite zu rendern, das vollständige Bitmap zu erstellen und anschließend eine optische Zeichenerkennung (OCR) auf dieses Bitmap anzuwenden. Allerdings ist dies recht kostspielig. Competitive-Intelligence-Unternehmen müssen täglich zig Millionen Webseiten erneut überprüfen. Als Faustregel gilt, dass ein Webseitendarstellungsprozess gefolgt von OCR die Verarbeitungskosten um mindestens den Faktor 100 und eher um den Faktor 1000 erhöht.

Zum Vergleich: Ab Mai 2023 verlangt Microsoft Azure einen Dollar für tausend OCR-Operationen. Angesichts der Tatsache, dass täglich über 10 Millionen Seiten von den Competitive-Intelligence-Spezialisten in Europa überwacht werden müssen, bedeutet das allein für OCR ein Tagesbudget von 10.000 Dollar. Und Microsoft Azure ist übrigens in diesem Bereich sehr wettbewerbsfähig.

Berücksichtigt man weitere Kosten wie die Bandbreite für diese wertvollen Residential-IP-Adressen, so bewegt sich der reine Computereinsatz bei der Diskussion hier höchstwahrscheinlich im jährlichen Budgetbereich von 5 Millionen Euro, wenn wir diesen Weg gehen. Ein mehrmillioniges Jahresbudget ist zwar im Bereich des Möglichen, aber die Margen der Web-Scraper-Unternehmen sind schmal und sie werden diesen Weg nicht einschlagen. Wenn sie durch weitaus günstigere Mittel eine zu 99% genaue Competitive Intelligence erreichen können, reicht das, um ihre Kunden zufriedenzustellen.

Kommen wir zurück zu StuttArt, wäre es unklug, diese Konteraufklärungstechnik zur Vergiftung sämtlicher Preise einzusetzen, da dies den Wettkampf mit den Web-Scrapern eskalieren würde. Stattdessen sollte StuttArt klugerweise das ein Prozent der Referenzen auswählen, die einen maximalen Wettbewerbseffekt haben. Höchstwahrscheinlich werden Web-Scraper das Problem gar nicht erst bemerken. Selbst wenn sie die Gegenmaßnahmen wahrnehmen, werden sie – solange es als ein Problem von geringer Intensität empfunden wird – nicht darauf reagieren. In der Tat bringt Web-Scraping allerlei Probleme von geringer Intensität mit sich: Die Webseite, die Sie analysieren möchten, kann extrem langsam sein, sie kann nicht verfügbar sein oder es können Störungen auf der interessierenden Seite auftreten. Eine bedingte promotion könnte vorliegen, die den Preis für das betreffende Teil unklar macht.

Aus der Sicht von StuttArt bleibt es, das ein Prozent der Teilenummern auszuwählen, die im Hinblick auf Competitive Intelligence von maximalem Interesse sind. Diese Teile wären typischerweise diejenigen, die StuttArt am stärksten rabattieren möchte, ohne dabei einen Preiskrieg auszulösen. Es gibt mehrere Ansätze, dies zu bewerkstelligen. Eine Art von Teilen mit hohem Interesse sind preiswerte Verbrauchsmaterialien, wie zum Beispiel Scheibenwischer. Ein Kunde, der StuttArt bei seinem ersten Kauf ausprobieren möchte, wird wahrscheinlich nicht mit einem 600-Euro-Injektor beginnen. Ein Erstkäufer wird viel eher mit einem 20-Euro-Scheibenwischer als Testlauf starten. Allgemein verhalten sich Erstkäufer ganz anders als Stammkunden. Daher sind die ein Prozent der Teile, die StuttArt vermutlich besonders attraktiv machen will, ohne einen Preiskrieg zu entfachen, diejenigen, die am ehesten von Erstkäufern erworben werden.

Slide 24

Das Vermeiden eines Preiskriegs und der Erosion des Marktanteils sind für StuttArt beide äußerst nachteilige Ergebnisse, weshalb besondere Umstände erforderlich sind, um vom Ausrichtungsprinzip abzuweichen. Wir haben bereits einen dieser Umstände gesehen, nämlich die Notwendigkeit, die Bruttomarge zu kontrollieren. Allerdings ist das nicht der einzige. Überbestände und stockouts sind zwei weitere wichtige Kandidaten, die bei der Preisgestaltung berücksichtigt werden sollten. Überbestände sollten am besten proaktiv angegangen werden. Es wäre besser für StuttArt, Überbestände ganz zu vermeiden, aber Fehler und Marktschwankungen passieren, und trotz sorgfältiger Bestands replenishment -Richtlinien wird StuttArt routinemäßig mit lokal begrenzten Überbeständen konfrontiert werden. Preisgestaltung ist ein wertvoller Mechanismus, um diese Probleme abzumildern. StuttArt ist immer noch besser dran, wenn es die Überbestände zu einem erheblichen Rabatt verkauft, als wenn sie überhaupt nicht verkauft werden – daher müssen Überbestände in die Preisstrategie einbezogen werden.

Beschränken wir den Umfang der Überbestände auf jene Teile, die sehr wahrscheinlich zu Abschreibungen führen. In diesem Zusammenhang können Überbestände mittels einer Kosten-Ausrichtungs-Überschreibung angegangen werden, die das Preisschild auf nahezu null Bruttomarge senkt, und je nach Vorschriften und dem Ausmaß des Überbestands möglicherweise sogar geringfügig unterschreitet.

Umgekehrt sollten Lagerausfälle – oder besser gesagt Beinausfälle – dazu führen, dass die Preisschilder nach oben angepasst werden. Beispielsweise, wenn StuttArt nur noch fünf Einheiten eines Teils auf Lager hat, das üblicherweise eine Einheit pro Tag verkauft, und die nächste Nachlieferung erst in 15 Tagen eintrifft, dann steht dieses Teil nahezu sicher vor einem Lagerausfall. Es hat keinen Sinn, den Lagerausfall herbeizuführen. StuttArt könnte den Preis für dieses Teil erhöhen. Solange der Nachfragerückgang gering genug ist, um einen Lagerausfall bei StuttArt zu vermeiden, spielt es keine Rolle.

Wettbewerbsinformations-Tools sind zunehmend in der Lage, nicht nur die Preise, sondern auch die für die auf der Website eines Wettbewerbers angezeigten Teile angekündigten Lieferverzögerungen zu überwachen. Dies bietet StuttArt die Möglichkeit, nicht nur eigene Lagerausfälle zu beobachten, sondern auch jene bei Wettbewerbern, während sie sich entwickeln. Ein häufiger Grund für einen Lagerausfall bei Einzelhändlern ist ein Lagerausfall bei den Lieferanten. Wenn der OEM selbst nicht lieferfähig ist, wird StuttArt – ebenso wie alle Wettbewerber – wahrscheinlich ebenfalls leer ausgehen. Im Rahmen des Preisangleichungsalgorithmus ist es sinnvoll, diejenigen Teile aus dem Abgleich auszunehmen, die entweder bei den Lieferanten oder auf der Website des Wettbewerbers nicht vorrätig sind. Die Lieferschwierigkeiten der Wettbewerber können über Verzögerungen bei den Lieferungen überwacht werden, sofern diese Verzögerungen auf ungewöhnliche Bedingungen hinweisen. Außerdem, wenn ein Original Equipment Manufacturer (OEM) anfängt, ungewöhnliche Verzögerungen bei den Teilen anzukündigen, könnte es an der Zeit sein, die Preisniveaus für diese Teile zu erhöhen. Denn dies deutet darauf hin, dass alle Marktteilnehmer aller Wahrscheinlichkeit nach Schwierigkeiten haben werden, weitere Autoteile von genau diesem OEM zu beschaffen.

An diesem Punkt sollte deutlich werden, dass Preisoptimierung und Bestandsoptimierung stark gekoppelte Probleme sind und daher in der Praxis gemeinsam gelöst werden müssen. Tatsächlich wird innerhalb einer gegebenen Bedarfseinheit das Teil, das sowohl den niedrigsten Preis als auch den höchsten Rang in der Darstellung seines Produktsortiments genießt, den Großteil des Verkaufs absorbieren. Die Preisgestaltung steuert die Nachfrage über zahlreiche Alternativen im Angebot von StuttArt. Es macht keinen Sinn, wenn ein Inventory-Team versucht, die von der Pricing-Abteilung generierten Preise vorherzusagen. Stattdessen sollte es eine einheitliche supply chain Funktion geben, die beide Anliegen gemeinsam adressiert.

Slide 25

Versandbedingungen sind ein integraler Bestandteil des Services. Wenn es um Autoteile geht, haben die Kunden nicht nur hohe Erwartungen, dass StuttArt seine Versprechen einlöst, sondern sie sind möglicherweise sogar bereit, extra zu zahlen, wenn der Prozess beschleunigt wird. Mehrere große E-Commerce-Unternehmen, die Autoteile in Europa verkaufen, bieten bereits unterschiedliche Preise je nach Lieferzeit an. Diese unterschiedlichen Preise spiegeln nicht nur verschiedene Versandoptionen wider, sondern möglicherweise auch unterschiedliche Beschaffungsoptionen. Wenn der Kunde bereit ist, ein oder zwei Wochen zu warten, erhält StuttArt zusätzliche Beschaffungsoptionen, und StuttArt kann einen Teil der Einsparungen direkt an die Kunden weitergeben. Beispielsweise kann ein Teil von StuttArt erst beschafft werden, nachdem es vom Kunden bestellt wurde, wodurch Lagerhaltungskosten und das Bestandsrisiko vollständig entfallen.

Versandbedingungen verkomplizieren die Wettbewerbsintelligenz. Erstens müssen Wettbewerbsinformations-Tools Informationen zu Verzögerungen abrufen – nicht nur zu Preisen. Viele Spezialisten im Bereich Wettbewerbsintelligenz tun dies bereits, und StuttArt muss diesem Beispiel folgen. Zweitens muss StuttArt seinen Preisangleichungsalgorithmus an die variierenden Versandbedingungen anpassen. Differentiable programming kann genutzt werden, um eine Schätzung des Wertes in Euro zu liefern, der durch das Einsparen eines Tages erzielt wird. Dieser Wert hängt voraussichtlich vom Automodell, vom Teiltyp und von der Anzahl der Verzögerungstage ab. Beispielsweise ist der Übergang von einer dreitägigen zu einer zweitägigen Lieferzeit für den Kunden viel wertvoller als der Wechsel von einer 21-tägigen zu einer 20-tägigen Lieferzeit.

Slide 26

Abschließend wurde heute eine umfassende Preisstrategie für StuttArt, eine supply chain Persona, die dem Online-Automobil-Ersatzteilmarkt gewidmet ist, vorgestellt. Wir haben gesehen, dass sich Preisgestaltung nicht beliebig lokal optimieren lässt. Das Preisproblem ist in der Tat nicht lokal, da die mechanische Kompatibilität die Wirkung eines Preisschilds für ein bestimmtes Teil auf zahlreiche Bedarfseinheiten überträgt. Dies führte zu der Perspektive, Preisgestaltung als einen Abgleich auf der Ebene der Bedarfseinheit zu betrachten. Zwei Teilprobleme wurden mittels differentiable programming angegangen. Zuerst erfolgte die Lösung eines approximativen Constraint-Satisfaction-Problems für den eigentlichen Wettbewerbsabgleich. Zweitens behandelten wir das Problem der Selbstverbesserung der Datenbestände zur mechanischen Kompatibilität, um sowohl die Qualität des Abgleichs als auch die Kundenerfahrung zu verbessern. Diese beiden Probleme können zu unserer wachsenden Liste von supply chain Problemen hinzugefügt werden, die von einer einfachen Lösung profitieren, sobald der Ansatz über differentiable programming verfolgt wird.

Allgemeiner gesagt, wenn es eine zentrale Erkenntnis aus dieser Vorlesung gibt, dann ist es nicht, dass der Aftermarket für Autoteile ein Ausnahmefall bei Preisstrategien ist. Im Gegenteil, die Erkenntnis besteht darin, dass wir stets mit zahlreichen Besonderheiten rechnen müssen, ganz gleich, welcher Branche wir uns zuwenden. Es hätte genauso viele Besonderheiten gegeben, wenn wir uns auf irgendeine andere supply chain Persona konzentriert hätten, anstatt heute den Fokus auf StuttArt zu legen. Daher ist es sinnlos, nach einer endgültigen Antwort zu suchen. Jede geschlossene Lösung wird zwangsläufig scheitern, dem unendlichen Strom von Variationen gerecht zu werden, der im Laufe der Zeit in einer realen supply chain entsteht. Stattdessen benötigen wir Konzepte, Methoden und Instrumente, die es uns nicht nur ermöglichen, den aktuellen Zustand der supply chain zu adressieren, sondern auch programmatisch modifizierbar sind. Programmierbarkeit ist dabei entscheidend, um die numerischen Rezepturen für die Preisgestaltung zukunftssicher zu machen.

Slide 27

Bevor wir zu den Fragen übergehen, möchte ich ankündigen, dass die nächste Vorlesung in der ersten Juliwoche stattfinden wird. Sie findet wie üblich an einem Mittwoch zur gleichen Tageszeit – 15 Uhr, Pariser Zeit – statt. Ich werde Kapitel Eins erneut aufgreifen und dabei einen genaueren Blick darauf werfen, was Wirtschaft, Geschichte und Systemtheorie über supply chain und supply chain planning aussagen.

Nun schauen wir uns die Fragen an.

Frage: Beabsichtigen Sie, eine Vorlesung über die Visualisierung der Total Cost of Ownership für eine supply chain zu halten? Anders ausgedrückt, eine TCO-Analyse der gesamten supply chain mithilfe von Datenanalysen und Gesamtpreisoptimierung?

Ja, dies ist Teil der Reise dieser Vorlesungsreihe. Elemente davon wurden bereits in einigen Vorlesungen diskutiert. Aber das Entscheidende ist, dass es eigentlich kein visuelles Problem ist. Der Sinn der Total Cost of Ownership besteht nicht in der Datenvisualisierung; es ist ein Problem der Denkweise. Die meisten supply chain Praktiken ignorieren die finanzielle Perspektive völlig. Sie jagen service levels von Fehlern nach und nicht Dollar oder Euro an Fehlern. Leider verfolgen die meisten ausschließlich diese Prozentsätze. Daher ist ein Wandel der Denkweise erforderlich.

Der zweite Punkt ist, dass in der Vorlesung Elemente behandelt wurden, die Teil des ersten Kapitels waren – nämlich die produktorientierte, sprich softwareproduktorientierte Bereitstellung für die supply chain. Wir müssen nicht nur an den ersten Kreis der ökonomischen Treiber denken, sondern auch an das, was ich den zweiten Kreis der ökonomischen Treiber nenne. Dies sind schwer fassbare Kräfte; beispielsweise könnte eine naive Analyse nahelegen, dass ein Preisnachlass von einem Euro durch eine Promotion genau einen Euro Marge kostet. Die Realität ist jedoch, dass Sie damit bei Ihrer Kundschaft die Erwartung wecken, zukünftig erneut diesen einen Euro Rabatt zu erhalten. Und somit entstehen zusätzliche Kosten. Es handelt sich um Kosten zweiter Ordnung, die jedoch sehr real sind. All diese ökonomischen Treiber des zweiten Kreises sind wichtige Faktoren, die nicht in Ihrem Hauptbuch oder Ihren Finanzunterlagen erscheinen. Ja, ich werde noch weitere Elemente ansprechen, die diese Kosten beschreiben. Allerdings ist dies überwiegend kein analytisches Problem im Hinblick auf Visualisierung oder Diagramme, sondern eine Frage der Denkweise. Wir müssen akzeptieren, dass diese Dinge quantifiziert werden müssen, auch wenn das unglaublich schwierig ist.

Wenn wir beginnen, über die Total Cost of Ownership zu sprechen, müssen wir auch klären, wie viele Personen benötigt werden, um diese supply chain Lösung zu betreiben. Das ist einer der Gründe, warum ich in dieser Vorlesungsreihe sage, dass wir programmgesteuerte Lösungen brauchen. Wir können nicht eine Armee von Sachbearbeitern haben, die Tabellenkalkulationen oder Tabellen optimieren und Dinge erledigen, die unglaublich kostenineffizient sind, wie etwa das Bearbeiten von Alarmen bei Ausnahmen in supply chain Software. Alarme und Ausnahmen bedeuten, dass Ihre gesamte Belegschaft als menschliche Co-Prozessoren des Systems agieren muss. Das ist unglaublich kostspielig.

Die Total Cost of Ownership Analyse ist überwiegend ein Problem der Denkweise, also der richtigen Perspektive. In der nächsten Vorlesung werde ich auch weitere Blickwinkel aufgreifen, insbesondere das, was die Wirtschaft über die supply chain aussagt. Es ist sehr interessant, weil wir darüber nachdenken müssen, was die Total Cost of Ownership für eine supply chain Lösung wirklich bedeutet, besonders im Hinblick auf den Wert, den sie für das Unternehmen bringt.

Frage: Bei technisch kompatiblen Referenzen zu einer Bedarfseinheit werden Unterschiede in Qualität, Aktivität, Silber, Gold usw. wahrgenommen. Wie berücksichtigen Sie dies bei einem Wettbewerber-Preisangleich?

Das ist vollkommen richtig. Deshalb besteht die Notwendigkeit, Produktsegmente einzuführen. Dieses Attraktivitätsniveau kann in der Regel in etwa ein halbes Dutzend Klassen unterteilt werden, die Qualitätsstandards für Teile repräsentieren. Beispielsweise gibt es den Motorsport-Bereich, der die luxuriösesten Teile mit ausgezeichneter mechanischer Kompatibilität umfasst. Diese Teile sehen zudem gut aus, und auch die Verpackung selbst ist von hoher Qualität.

Meine Erfahrung in diesem Markt zeigt, dass es zwar unendlich viele Variationen gibt, um die Qualität eines Teils geringfügig zu verbessern, sich der Markt jedoch weitgehend auf etwa ein halbes Dutzend Produktsegmente reduziert hat, die von sehr teuer bis weniger teuer reichen. Wenn wir die Teile von StuttArt gruppieren, müssen wir diese innerhalb von Produktsegmenten einteilen. Dasselbe gilt für die Teile der Wettbewerber, was bedeutet, dass wir wissen müssen, in welchem Qualitätssegment sich ein Teil befindet – selbst wenn es nicht von StuttArt verkauft wird.

StuttArt muss sich der gesamten Teile des Marktes bewusst sein. Das ist nicht so schwierig, wie es scheinen mag, da die meisten Hersteller Informationen über die erwartete Qualität ihrer Teile bereitstellen. Diese Aspekte sind von den Original Equipment Manufacturers (OEMs) selbst recht standardisiert. Wir profitieren davon, dass der Automarkt ein unglaublich etablierter, überaus reifer Markt ist, der seit mehr als einem Jahrhundert existiert. Die Unternehmen, die diese Kompatibilitätsdaten – Datensätze zu Fahrzeug- und Teilekompatibilitäten – verkaufen, bieten zudem eine Fülle von Attributen für Teile und Automodelle an. Es geht um Hunderte von Attributen. Diese Datensätze sind umfangreich und reichhaltig. Ursprünglich wurden sie von Mitarbeitern in Reparaturzentren genutzt, um herauszufinden, wie Reparaturen durchzuführen sind. Sie kommen sogar mit PDF-Anhängen und technischer Dokumentation. Es ist sehr umfangreich; man hat dutzende Gigabyte an Daten, einschließlich Bildern und Fotos. Ich habe gerade erst an der Oberfläche des Marktwerts dieser Datensätze gekratzt.

Frage: Wie wirken sich unterschiedliche Vorschriften in den Regionen auf die Preisoptimierung für Automobilunternehmen aus? Zum Beispiel haben Sie Peugeot erwähnt, ein französisches Unternehmen. Wie würde sich Ihr Ansatz für Peugeot von dem eines vergleichbaren Unternehmens in Skandinavien oder Asien unterscheiden?

Skandinavien ähnelt in vielerlei Hinsicht dem Automarkt. Es gibt dort einige verschiedene Marken, aber er ist zu klein, um eine eigene Automobilindustrie zu unterhalten. Was die Automobilindustrie betrifft, ist Skandinavien wie der Rest der 350 Millionen Europäer. Allerdings ist Asien wirklich anders. Indien und China sind eigenständige Märkte.

Hinsichtlich der Preisoptimierung haben Vorschriften nicht so sehr den Einstieg verhindert, sondern das Auftauchen von Online-Händlern für Autoteile verzögert. Vor 20 Jahren gab es beispielsweise in Europa einen Rechtsstreit. Pioniere wie StuttArt, die ersten Unternehmen, die Autoteile online verkauften, sahen sich rechtlichen Auseinandersetzungen gegenüber. Sie verkauften Autoteile und behaupteten auf ihrer Website, dass diese identisch seien mit denen, die von den ursprünglichen Autoherstellern angeboten werden.

Unternehmen wie StuttArt sagten: “Ich verkaufe Ihnen kein Autoteil, ich verkaufe Ihnen genau dasselbe Teil, das der Autohersteller verwenden würde.” Sie konnten diese Behauptung aufstellen, weil sie exakt dasselbe Teil aus derselben Fabrik bezogen. Wenn ein Teil beispielsweise von Valeo stammt und in einem Peugeot verbaut ist, besteht eine bekannte Verbindung. Vor etwa zwei Jahrzehnten urteilten mehrere Gerichte in Europa, dass es legal sei, auf einer Website zu behaupten, das genau gleiche Teil zu verkaufen wie jene, die als Originalteile eines Autos gelten. Diese regulatorische Unsicherheit verzögerte den Aufstieg des Online-Verkaufs von Ersatzteilen vermutlich um etwa fünf Jahre. Pioniere kämpften vor Gericht gegen Autohersteller um das Recht, Autoteile online zu verkaufen, während sie behaupteten, es handele sich um Originalteile für das Auto. Sobald dies geklärt war, konnten sie dies tun, solange sie ehrlich waren und tatsächlich exakt dasselbe Autoteil von Valeo oder Bosch bezogen – genauso wie das am Auto verbaute Teil.

Dennoch gibt es weiterhin Einschränkungen. So gibt es beispielsweise weiterhin Teile, die das äußere Erscheinungsbild eines Autos prägen, und diese dürfen als Originalteile ausschließlich vom Autohersteller verkauft werden. Beispielsweise die Motorhaube. Diese Vorschriften wirken sich dahingehend aus, dass sie den Umfang der Teile einschränken, die online frei verkauft werden können, während behauptet wird, dass das Teil exakt dem Originalteil des Herstellers entspricht. Es geht hier um Teile, die nicht nur in Bezug auf die mechanische Kompatibilität, sondern auch hinsichtlich der Sicherheit von Bedeutung sind. Einige dieser Teile sind sicherheitskritisch.

In Asien ist ein Problem, das ich hier nicht angesprochen habe, Fälschungen. Der Umgang mit Fälschungen ist in Europa ganz anders als in Asien. Fälschungen gibt es in Europa, aber der Markt ist ausgereift und katalysiert. OEMs und Autohersteller kennen sich sehr gut. Obwohl Fälschungen existieren, ist es ein sehr geringfügiges Problem. In Märkten wie Asien, speziell in Indien und China, gibt es immer noch einige Probleme mit Fälschungen. Es ist nicht wirklich ein Problem der Regulierung, da Fälschungen in China genauso illegal sind wie in Europa. Das Problem liegt in der Durchsetzung, wobei der Grad der Durchsetzung in Asien viel niedriger ist als in Europa.

Frage: Versuchen wir, einen Preis insgesamt zu optimieren oder in Relation zu den Wettbewerbern?

Die Optimierungsfunktion ist konzeptionell für jede Bedarfseinheit – eine Bedarfseinheit ist ein Automodell und ein Teiletyp. Für jede Bedarfseinheit gibt es einen Preisunterschied in Euro zwischen dem Preispunkt von StuttArt, bei dem es sich um das beste Angebot von StuttArt handelt, und dem Preispunkt des Wettbewerbers. Man nimmt die absolute Differenz dieser beiden Preise und summiert sie; das ist deine Funktion. Wir werden nicht naiv diese Summe der Preisunterschiede verwenden; wir fügen ein Gewicht hinzu, das das jährliche Verkaufsvolumen jeder Bedarfseinheit widerspiegelt.

Daher ist die Optimierungsfunktion für dein Constraint-Satisfaction-Problem eine Summe der absoluten Differenzen zwischen dem besten Preis, den StuttArt für die Bedarfseinheit anbietet, und dem besten Preis, den der Wettbewerb anbietet. Du addierst einen Gewichtungsfaktor, der die jährliche Bedeutung, ebenfalls in Euro gewichtet, für diese Bedarfseinheit widerspiegelt. Du versuchst, den Zustand des europäischen Marktes bestmöglich zu spiegeln.

Der Grund, warum du das Gewicht anhand der Bedeutung der Bedarfseinheit misst – anstatt an der Bedarfseinheit von StuttArt – ist, dass wenn StuttArt so unwettbewerbsfähig ist, dass es von dieser Bedarfseinheit gar nichts verkauft, ein Problem entsteht, bei dem es schlichtweg nicht konkurrenzfähig ist. Daher wird diese Einheit in der Ausrichtung außer Acht gelassen, was zu null Verkäufen führt. Dann entsteht ein Teufelskreis, in dem es nicht konkurrenzfähig ist, also nichts verkauft, und somit wird die Bedarfseinheit selbst als vernachlässigbar eingestuft.

Frage: Erkennst du unerwartete Konsequenzen, die entstehen könnten, wenn ein differenzierbarer, modellbasierter Machine-Learning-Ansatz Branchenstandard wird, mit dem Risiko, dass Modelle mit anderen sehr ähnlichen Modellen konkurrieren?

Diese Frage ist schwierig, denn per Definition, wenn es sich um eine unerwartete Konsequenz handelt, hat sie niemand erwartet – nicht einmal ich. Es ist sehr schwer, vorherzusehen, welche Art von Konsequenzen unerwartet sein könnten.

Allerdings, um es ernster zu nehmen, wird diese Branche seit einem Jahrzehnt von algorithmischen Techniken getrieben. Es handelt sich um eine Verfeinerung in Bezug auf die Genauigkeit der Intention. Du möchtest eine numerische Methode, die enger mit deiner Absicht übereinstimmt. Aber grundsätzlich ist es nicht so, dass wir von Grund auf neu anfangen, wo es jetzt manuell gemacht wird und in zehn Jahren alles automatisch mit numerischen Rezepten erledigt wird. Es wird bereits mit numerischen Rezepten gearbeitet. Wenn du 100.000 Preise hast, die täglich gepflegt und aktualisiert werden müssen, benötigst du irgendeine Form von Automatisierung.

Vielleicht besteht deine Automatisierung aus einer gigantischen Excel-Tabelle, in der du allerlei Schwarzmagie betreibst, aber es bleibt ein algorithmischer Prozess. Menschen passen Preise nicht manuell an, außer in seltenen Fällen bei einigen Teilen. Meistens ist es bereits ein algorithmischer Prozess, und wir haben schon zahlreiche unbeabsichtigte Konsequenzen. Zum Beispiel, während der Lockdowns in Europa verbrachten die Menschen mehr Zeit zu Hause und kauften online ein. Das mag kontraintuitiv erscheinen, aber sie nutzten ihre Autos immer noch ziemlich häufig und tätigten daher mehr Einkäufe. Trotzdem wurden viele Unternehmen, die Autoteile online verkauften, in Bezug auf Promotionen weniger aktiv, da deren Organisation komplizierter wurde, weil alle von zu Hause arbeiteten.

Folglich wurde während der Lockdowns 2020 über einige Monate hinweg viel weniger algorithmisches Rauschen durch Promotionen erzeugt. Die algorithmischen Reaktionen waren von allen viel klarer. Es gab Tage, an denen man die Art der algorithmischen Reaktionen, die bei einer täglichen Aktualisierung ausgelöst wurden, viel deutlicher erkennen konnte.

Dies ist ein ziemlich ausgereiftes Modell in einer gut etablierten Branche, da mittlerweile alles über den elektronischen Handel abgewickelt wird. Was unbeabsichtigte oder unerwartete Konsequenzen betrifft, so sind diese schwer vorherzusagen.

Lassen Sie mich einen abschließenden Gedanken zu einem potenziellen Überraschungsbereich äußern. Viele erwarten, dass Elektrofahrzeuge alles vereinfachen, weil sie im Vergleich zu Verbrennungsmotoren weniger Teile haben. Aus der Perspektive eines Unternehmens wie StuttArt werden Elektrofahrzeuge in den nächsten 10 Jahren jedoch bedeuten, dass viel mehr Teile auf dem Markt sein werden.

Bis und falls Elektrofahrzeuge dominieren, werden wir immer noch alle älteren Fahrzeuge mit Verbrennungsmotor haben. Diese Fahrzeuge werden etwa 20 Jahre halten. Denken Sie daran, dass StuttArt als Unternehmen mit Fahrzeugen arbeitet, die nicht brandneu sind. Viele dieser Fahrzeuge sind von guter Qualität und werden auch in 20 Jahren noch im Einsatz sein. In der Zwischenzeit werden jedoch zahlreiche zusätzliche Elektrofahrzeuge auf den Markt kommen, mit vielen unterschiedlichen Teilen. Dies könnte dazu führen, dass die Anzahl der verschiedenen Teile stetig ansteigt und noch mehr Herausforderungen und Komplikationen entstehen.

Ich glaube, das bringt uns zum Ende der heutigen Vorlesung. Wenn es keine weiteren Fragen gibt, freue ich mich darauf, euch zur nächsten Vorlesung zu sehen, die wie üblich in der ersten Juliwoche, mittwochs um 15 Uhr Pariser Zeit, stattfinden wird. Vielen Dank und bis dahin.