Fracht-Optimierung: Was transportieren wir - frische Luft oder wertvolle Güter?
Blog

Fracht-Optimierung: Was transportieren wir - frische Luft oder wertvolle Güter?

8 min read Apr 12, 2021

Im Supply-Chain-Geschäft sind wir bei der Optimierung der Bestände vor allem daran interessiert, die Bestände so weit wie möglich zu reduzieren und dabei Fehlbestände im Lager zu vermeiden. Um es anders zu formulieren, könnte man sagen das Ziel ist es, das richtige Produkt zur richtigen Zeit am richtigen Ort zu haben. Ein oft vergessenes Segment der Bestandsoptimierung ist der Preis für den Transport. Ohne den Transport zu optimieren, können erhebliche Mengen an Geld für den Transport leerer Behälter verschwendet werden. Mit anderen Worten: Wir geben Geld für den Transport von Luft aus.

Das Problem: Immer halb voll bedeutet, dass Sie 50% für den Transport von Luft bezahlen.

Bestellte Artikel werden als Fracht in das Lager eines Unternehmens gebracht. Dies kann per Luft, auf der Schiene, dem Wasserweg oder der Straße passieren. Oft verlangen die Lieferanten, dass die Bestellungen in Transporteinheiten wie Containern, LKWs oder Transportern untergebracht werden. Da Unternehmen in der Regel nur die benötigten Mengen jedes Artikels bestellen, sind die Transporteinheiten oft nur halb voll. Stellen Sie sich vor, Sie bestellen heute drei LKW-Ladungen mit Artikeln, von denen eine Ladung halb voll ist und im nächsten Monat wieder drei LKW-Ladungen, von denen eine wieder nur halb voll ist. Auf diese Weise würde ein ganzer LKW nichts als Luft transportieren! Eine viel bessere Lösung wäre es, jetzt drei LKWs zu bestellen, und dann nächsten Monat zwei, indem man die Bestellungen kombiniert, um die LKWs komplett zu füllen. So würde das Geld für den Transport eines ganzen LKWs innerhalb eines Monats eingespart werden. Die nächsten Fragen wären: Womit soll der halbvolle LKW gefüllt werden? Soll er mit beliebigen Artikeln gefüllt werden? Die Antwort auf die letzte Frage ist natürlich NEIN. Wir müssen diesen LKW mit Artikeln füllen, die sich am ehesten verkaufen lassen, um einen möglichen Überbestand oder toten Bestand zu vermeiden.

Um dieses Problem zu lösen, haben wir ein Frachtoptimierungsmodul als Teil der BE-terna ML-Plattform entwickelt, in dem Optimierungsalgorithmen eine intelligente Befüllung der Transporteinheiten ermöglichen. Das Modul zur Ladungsoptimierung optimiert nicht nur die Bestellung, um die Einschränkungen für die Transporteinheiten wie Platz, Masse und Volumen zu erfüllen, sondern füllt diese auch auf, indem es die wichtigsten und wertvollsten Artikel in der Bestellung priorisiert. Dadurch werden Überbestände bei allen bestellten Artikeln vermieden. Diese Frachtoptimierung arbeitet in fünf Schritten.

undefined

Die Lösung: Transport-Optimierung erweitert mit Machine Learning

Bei der Optimierung des Transports müssen zwei Dinge berücksichtigt werden. Erstens, die Transporteinheiten müssen maximal und mit den profitabelsten Artikeln befüllt werden. In dem Zusammenhang nehmen wir zweitens an, dass uns die perfekte Menge, die bestellt werden sollte, bekannt ist. Hierbei gilt es zwei Herausforderungen, in Form von Algorithmen, zu beachten, die sich "Bin Packing" und "Knapsack" [1] [2] nennen. Ziel ist es, eine minimale Anzahl von Transporteinheiten zu generieren bzw. alle Transporteinheiten vollständig zu füllen.

Mit dem Bin-Packing-Algorithmen möchte man erreichen, dass alle bestellten Artikel in eine minimale Anzahl von Transporteinheiten gepackt werden. Nehmen wir an, wir bestellen fünf Artikel - A, B, C, D und E, wobei die Artikel A, B und C jeweils 75 % des Platzes der Transporteinheit einnehmen, während die Artikel D und E jeweils 25 % einnehmen. Die optimale Lösung wäre, die Artikel A und D in Behälter 1, die Artikel B und E in Behälter 2 und den Artikel C in Behälter 3 zu platzieren, so dass die optimale Lösung wiederum darin besteht, drei Behälter zu bestellen, wie in der nächsten Abbildung zu sehen ist.

undefined

Nun, da wir wissen, dass drei Container die optimale Lösung sind, sind wir immer noch nicht zufrieden mit der Tatsache, dass Container 3 25 % freien Platz hat, bzw. könnte man sagen, dass wir immer noch 25 % Luft transportieren. 

Hier kommen die Knapsack-Algorithmen ins Spiel. Ziel des Algorithmus ist es, den freien Raum mit zusätzlichen Elementen zu füllen. Hierbei muss darauf geachtet werden den Behälter 3 mit den profitabelsten Artikeln zu füllen, da diese ursprünglich nicht für die Bestellung vorgesehen waren. Nehmen wir also an, wir wissen, dass Artikel A für uns sehr wertvoll ist, und wir füllen Container 3 mit zusätzlichen 15 % des Artikels A und mit zusätzlichen 10 % eines neuen und ebenfalls sehr wertvollen Artikels F, der vorher nicht in der Bestellung vorgesehen war.

undefined

Wir haben jetzt eine minimale Anzahl von Transporteinheiten und alle sind komplett voll. Aus Sicht des Transportpreises haben wir die optimale Lösung erzielt. Leider ist "John", unser Leiter der Lagerverwaltung, aus logistischer Sicht nicht zufrieden mit dem Auftrag. Der Grund ist, dass wir Artikel A in getrennten Teilen in 2 Containern bestellt haben, und John möchte ihn in einem einzigen Container unterbringen. Außerdem hat John uns informiert, dass Artikel B derzeit nicht auf Lager ist und so schnell wie möglich im Lager verfügbar sein muss, da wir mit jedem Tag, der verstreicht, potenzielle Verkäufe verlieren. Daher wird die Positionierung der Artikel neu geordnet, und wir werden Artikel B zusammen mit Artikel D in Container 1 platzieren, der als erstes eintrifft. Artikel A und Artikel F werden in Container 2 transportiert und Artikel C und E in Container 3. So können wir die optimale Lösung für unser Problem sowohl aus logistischer als auch aus wirtschaftlicher Sicht zu erreichen.

undefined

Es gibt noch eine weitere Frage, der wir uns stellen sollten: Was wäre, wenn wir 90 % freien Platz statt 25 % hätten? Die Antwort ist - wir müssen immer zwei Lösungen bereitstellen - d. h. Upfill und Downfill. Upfill ist die vorgestellte Lösung, bei der Mengen hinzugefügt werden, um alle Behälter vollständig zu füllen. Die andere Lösung ist Downfill, bei der wir immer eine Transporteinheit weniger als Upfill bestellen (z. B. zwei Einheiten in unserem Beispielfall). Der Käufer kann bei der Bestellung immer wählen, ob er die Upfill- oder Downfill-Option verwenden möchte. Die Downfill-Option versucht zwei zusätzliche Dinge zu tun - die ursprünglichen Mengen, wenn möglich, zu senken und immer Artikel zu bestellen, die nicht mehr auf Lager sind oder kurz davor stehen, nicht mehr auf Lager zu sein. So kann sichergestellt werden, dass die Bestellung eines Behälters weniger, die geringsten Auswirkungen auf potenzielle Umsatzverluste hat.

Re-Optimierung: Wenn die Dinge nicht so laufen wie geplant

Nun haben wir unsere optimierte Bestellung aufgegeben, aber wir haben eine Antwort vom Lieferanten erhalten, dass Artikel D derzeit nicht verfügbar ist und nicht versendet werden kann. Da Artikel D 25 % des Containers einnimmt, haben wir wieder 25 % freien Platz in unserer Bestellung. Das Tolle an unserer Frachtoptimierungslösung ist die Möglichkeit der Re-Optimierung von Transporteinheiten mit nur wenigen Klicks. Mit Hilfe der Re-Optimierung können wir nun weitere 25% des neuen und sehr wertvollen Artikels "G" zu unserem Auftrag hinzufügen. Das Ergebnis der neuen, reoptimierte Lösung lautet- Artikel B und E in Container 1, Artikel A und F in Container 2 und Artikel C und G in Container 3.

undefined

Benutzeroberfläche: Ein Weg zur schnellen Software-Anpassung

Wie bei jeder KI-basierten Projektimplementierung ist eine gute Benutzererfahrung entscheidend, damit der Benutzer Vertrauen in das System aufbauen kann. Eine gute Benutzeroberfläche muss alle Informationen über den Transport von Bestellungen bereitstellen, wie z. B. Kapazität, Einschränkungen, Mengen usw., aber sie muss dem Benutzer auch die Möglichkeit geben, zwischen Upfill- und Downfill-Optionen zu wählen. Zustätzlich muss sie dem Benutzer die Möglichkeit bieten, Bestellmengen manuell zu ändern und den Transport neu zu optimieren.

Wie bereits erwähnt, ist das Frachtoptimierungsmodul Teil der BE-terna ML-Plattform (folgende Abbildung) und die Ergebnisse werden als Teil ihrer Qlik Sense-Anwendung angezeigt. Dort kann der Benutzer alle wichtigen Informationen über den erteilten Auftrag sehen zum Beispiel wie viele Transporteinheiten bestellt werden, die Kapazität in Bezug auf Raum, Masse und Volumen und den Prozentsatz der Kapazität der Container. In unserer Qlik Sense-Anwendung kann der Benutzer jederzeit zwischen den Optionen Upfill- und Downfill- wechseln. Die Tabelle der empfohlenen Bestellungen enthält die Informationen über die empfohlenen Mengen und die Positionierung der Artikel in den Behältern. Ein großer Vorteil unserer Anwendungsschnittstelle ist die Möglichkeit, die empfohlenen Mengen innerhalb der Qlik-Anwendung zu ändern und über die Schaltfläche "Re-Optimierung" die Transporteinheiten entsprechend neu zu optimieren.

Transport Optimisation

Fazit

Das BE-terna Modul zur Ladungsoptimierung bietet 3 Hauptvorteile:

  • Weniger Geld für den Transport ausgeben
  • Sicherere Lagerbestände für wichtigere Artikel
  • Weniger Staus im Lager

Auch wenn der offensichtlichste Vorteil der Anwendung von Transportoptimierung bei disponierten Aufträgen die Reduzierung der Ausgaben ist, werden die Vorteile für die Umwelt durch weniger Transporteinheiten ebenfalls oft ignoriert. Sicherere Lagerbestände für wichtigere Artikel werden durch das Auffüllen mit profitablen Artikeln erreicht. Auf diese Weise kann man zusätzlich sicherstellen, dass es bei diesen Artikeln keine Fehlbestände gibt und keine potenziellen Umsätze verloren gehen. Der letzte Vorteil ist rein logistischer Natur. Indem wir Artikel gruppieren und wissen, wann sie in welchem Behälter eintreffen, entstehen weniger Staus im Lager und wir sind viel besser vorbereitet, wenn die Bestellungen eintreffen.

Referenzen:

[1] https://www.aaai.org/ocs/index.php/IJCAI/IJCAI13/paper/view/6851

[2] https://archive.org/details/knapsackproblems0000mart

Sie mögen, was Sie lesen?

Melden Sie sich zu unserem Newsletter an und bleiben Sie up-to-date.

Über den Autor

Nino Požar

Data Scientist