Supply-Chain-Optimierung mit Python
Bei der Optimierung der Lieferkette werden Datenanalysen optimal genutzt, um eine optimale Kombination von Fabriken und Vertriebszentren zu finden, die Angebot und Nachfrage in Einklang bringt .
Aufgrund des aktuellen Anstiegs der Versandkosten beginnen Unternehmen, ihre derzeitige Präsenz in Frage zu stellen, um sich an die „Neue Normalität“ nach der Corona-Krise anzupassen .
In diesem Artikel stellen wir eine einfache Methodik vor, die lineare Programmierung zur Optimierung der Lieferkette verwendet
- Fixe Produktionskosten Ihrer Anlagen ($/Monat)
- Variable Produktionskosten pro produzierter Einheit ($/Einheit)
- Versandkosten ($)
- Kundennachfrage (Einheiten)
Neue Artikel kostenlos direkt in Ihrem Posteingang: Newsletter
Wenn Sie lieber zuschauen möchten, können Sie sich die Videoversion dieses Artikels ansehen
I. Wie entwerfe ich ein Supply-Chain-Netzwerk mit Python?
Problemstellung
Als Leiter des Supply Chain Managements eines internationalen Fertigungsunternehmens möchten Sie das Supply Chain Netzwerk für die nächsten 5 Jahre unter Berücksichtigung des jüngsten Anstiegs der Versandkosten und der Prognosen der zukünftigen Nachfrage neu definieren.
Ihr Supply-Chain-Netzwerk
- 5 Märkte in Brasilien, USA, Indien, Japan, Deutschland
- Es gibt zwei Arten von Produktionsanlagen : Standorte mit geringer Kapazität und Standorte mit hoher Kapazität
- Versandkosten ($/Container)
- Kundennachfrage (Einheiten/Jahr)
- Investitionsausgaben für die Ausrüstung (Maschinen, Lagerung, ...)
- Versorgungsunternehmen (Strom, Wasser, ..)
- Fabrikleitung, Verwaltungspersonal
- Raumvermietung
Variable Produktionskosten
- Betreiber von Produktionslinien
- Rohes Material
Variable Versandkosten
- Kosten pro Container ($/Container)
- Annahme: 1 Container kann 1000 Einheiten enthalten
Produktionskapazität nach Standort
Beispielsweise kann eine Fabrik mit hoher Kapazität in Brasilien 1.500.000 (Einheiten/Monat) produzieren.
Kundennachfrage pro Markt
Den vollständigen Code finden Sie in diesem Github-Repository: Mein Portfolio mit anderen Projekten verknüpfen : Samir Saci
II. Ergebnisse
Probieren wir drei Szenarien aus
- Szenario 1: Anfangsparameter
- Szenario 2: Wir erhöhen die Produktionskapazität Indiens (x2)
- Szenario 3: Steigende Versandkosten aufgrund von Containermangel
- Das brasilianische Werk produziert für den lokalen Markt und die USA
Facilities: 1 high capacity plant
('Brazil','Brazil') = 145,000 (Units/Month)
('Brazil','USA') = 1,250,000 (Units/Month)
Facilities: 1 high capacity plant and 1 low capacity plant
('India','Germany') = 90,000 (Units/Month)
('India','India') = 160,000 (Units/Month)
('India','Japan') = 200,000 (Units/Month)
('India','USA') = 1,550,000 (Units/Month)
Facilities: 1 high capacity plant
('Japan','Japan') = 1,500,000 (Units/Month)
Total Costs = 62,038,000 ($/Month)
Versuchen wir, die Größe des India High Capacity-Werks zu verdoppeln, unter der Annahme, dass sich dadurch die Fixkosten verdoppeln.
- Das Werk in Brasilien produziert weiterhin für den lokalen Markt und die USA
Facilities: 1 high capacity plant
('Brazil','Brazil') = 145,000 (Units/Month)
('Brazil','USA') = 1,250,000 (Units/Month)
Facilities: 2 high capacity and 1 low capacity plants
('India','Germany') = 90,000 (Units/Month)
('India','India') = 160,000 (Units/Month)
('India','Japan') = 1,700,000 (Units/Month)
('India','USA') = 1,550,000 (Units/Month)
-19.4(%) vs. Scenario 1
Total Costs = 51,352,000 ($/Month)
Was wäre, wenn wir die Containerkosten mit 5 multiplizieren würden?
- Brasilien produziert ausschließlich für den lokalen Markt
Facilities: 1 low capacity plant
('Brazil','Brazil') = 145,000 (Units/Month)
Facilities: 1 high capacity plant
('USA','Japan') = 200,000 (Units/Month)
('USA','USA') = 1,300,000 (Units/Month)
Facilities: 1 high capacity plant
('India','Germany') = 90,000 (Units/Month)
('India','India') = 160,000 (Units/Month)
('India','USA') = 1,500,000 (Units/Month)
Facilities: 1 high capacity plant
('Japan','Japan') = 1,500,000 (Units/Month)
Total Costs = 92,981,000 ($/Month)
Folgen Sie mir auf Medium, um weitere Einblicke in die Datenwissenschaft für die Lieferkette zu erhalten.
Wir werden die PuLP-Bibliothek von Python verwenden. PuLP ist ein Modellierungsframework für lineare (LP) und ganzzahlige Programmierprobleme (IP), das in Python geschrieben und von der COIN-OR Foundation (Computational Infrastructure for Operations Research) verwaltet wird.
1. Deklarieren Sie Ihre Variablen, Parameter und Ihr Modell
- LpMinimize : Ihr Ziel ist es, Ihre Kosten zu minimieren
- lowBound =0: Es können keine negativen Einheitenwerte erzeugt werden
3. Lösen Sie Ihr Modell und analysieren Sie die Ergebnisse
III. Fazit und nächste Schritte
Folgen Sie mir gerne auf Medium, um weitere Artikel zum Thema Datenanalyse und Supply Chain Management zu erhalten
Abschluss
Mit diesem Modell können Sie mehrere Szenarien simulieren, die betriebliche und kommerzielle Parameter beeinflussen.
- Was passiert, wenn die Nachfrage in Indien explodiert?
- Was wäre, wenn wir unser Werk in Brasilien schließen müssten?
- Was wäre, wenn wir die Produktionskapazität in Japan verdreifachen würden?
Nachhaltige Beschaffung
Ein ähnlicher Ansatz kann zur Auswahl Ihrer Lieferanten unter Berücksichtigung einer objektiven Funktion verwendet werden, die den CO2-Fußabdruck minimiert .
Unter nachhaltiger Beschaffung versteht man den Prozess der Einbeziehung sozialer, ethischer und ökologischer Leistungsfaktoren bei der Lieferantenauswahl.
Dabei geht es um die Beurteilung und Bewertung von Lieferanten anhand einer Reihe von Nachhaltigkeitskriterien wie Arbeitsrechte, Gesundheit und Sicherheit, Umweltauswirkungen, Menschenrechte und mehr.
Nutzen Sie Datenanalysen, um automatisch den besten Lieferanten unter Berücksichtigung wirtschaftlicher und ökologischer Einschränkungen auszuwählen
In diesem Artikel erfahren Sie, wie Sie mithilfe von Datenanalysen ein optimales Lieferkettennetzwerk entwerfen können, um Kosten und Umweltauswirkungen zu minimieren.
Verbessern Sie Ihr Modell
Dieses einfache Modell kann Ihnen dabei helfen, das Potenzial der linearen Optimierung für die Supply-Chain-Netzwerkoptimierung auszuschöpfen. Wir können dieses Modell schnell verbessern, indem wir Einschränkungen hinzufügen
- Lagerungskosten
- Begrenzung der CO2-Emissionen (CO2 = f(Entfernung, Gewicht))
- Lieferzeit
- Kundenabfertigungsgebühren
- Währungswechsel
Über mich
Lassen Sie uns auf LinkedIn und Twitter in Kontakt treten . Ich bin ein Supply-Chain-Ingenieur, der Datenanalysen nutzt, um Logistikabläufe zu verbessern und Kosten zu senken.
Wenn Sie sich für Data Analytics und Supply Chain interessieren, schauen Sie sich meine Website an
Verweise
[1] Computational Infrastructure for Operations Research, Optimierung mit PuLP (Dokumentation), Link

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































