Es ist jetzt mehr als fünf Jahre her, dass ich mein Studium abgeschlossen habe und in die Unternehmenswelt eingetreten bin. Seitdem widme ich den Großteil meiner Zeit der Produktions- und Lieferkettenplanung. Neben ERP-basierten Modellimplementierungen, wie zB Losgrößenoptimierung oder Produktionsnivellierung in SAP, habe ich mich schon immer intensiv mit ereignisdiskreter Simulationsmodellierung beschäftigt. Ich habe mit mehreren Tools gearbeitet und in diesem Artikel werde ich ein durchgängiges simulationsbasiertes Tool zur Analyse der Geflügellieferkette zusammenfassen , das ich in Python implementiert habe.
Die Simulation fördert ein besseres Verständnis der Steuerungslogik
Das von mir in diesem Artikel beschriebene Simulationstool hat dem Benutzer in mehrfacher Hinsicht geholfen:
- Besseres Verständnis bestehender Prozesse und Abhängigkeiten in der gesamten Lieferkette
- Gemeinsame Referenz für Diskussionen zwischen den verschiedenen internen Interessengruppen
- Prognostizieren Sie die Auswirkungen bestimmter Richtlinien- und Kontrollflussanpassungen
- Durchgängige Kostentransparenz in der Lieferkette
- Tool zur Schulung neuer Supply Chain Manager
Das Tool optimierte ein vertikal integriertes Geflügelfleischverarbeitungsunternehmen im Mittelmeerraum. Der regulatorische Rahmen für die Geflügelfleischzucht ist umfassend, und obwohl die Regulierungsbehörden nicht an der Entwicklung und dem Einsatz dieses Simulationstools beteiligt waren, könnte es den Regulierungsbehörden sehr wohl auf ähnliche Weise dienen. Regulatorische Randbedingungen, wie zB All-In-All-Out-Regeln (auch bekannt zB aus der Schweineproduktion), wurden jedoch selbstverständlich vom Modell berücksichtigt und entsprechend umgesetzt.
Beschreibung des konzeptionellen Geflügel-Lieferkettenmodells
Die Geflügellieferkette umfasst viele Stufen. Die folgende Abbildung gibt einen Überblick.
Die relevanten Entitäten, die ich für einen konzeptionellen Überblick hervorheben möchte, sind die folgenden:
- Eierbauer. Produziert und liefert Eier an die Brüterei.
- Brüterei. Brütet Eier in einer Reihe von Prozessen aus, nämlich Inkubation, Schlüpfen und Brüten.
- Bauer. Erhält die Hühner vom Brutkasten und züchtet sie in landwirtschaftlichen Ställen.
- Schlachthof. Erhält oder sammelt Hähnchen aus landwirtschaftlichen Ställen, sobald sie das schlachtfertige Gewicht erreicht haben.
- Fleischverarbeiter. Zieht die Schlachtkörpernachfrage für die Fleischverarbeitung aus dem Lager für fertige Produkte im Schlachthof.
- Verteiler. Bestellt fertige Produkte beim Fleischverarbeiter, lagert verarbeitetes Fleisch vorübergehend und verteilt es an Märkte.
- Markt. Bestellt beim Händler und verkauft verarbeitetes Fleisch auf dem Markt an den Endverbraucher.
Die folgende konzeptionelle Modellzeichnung bietet einen weiteren Überblick über die Prozesse, die vom Geflügellieferketten-Simulationstool berücksichtigt werden.
Die Geflügellieferkette ist eine stark regulierte Lieferkette. Wie bereits erwähnt, sind regulatorische Einschränkungen Teil des Modells. Solche Vorschriften zielen beispielsweise darauf ab, das Risiko der Ausbreitung von Krankheiten zu verringern, und sie sind für die Fleischerzeugung über die Geflügelfleischerzeugung hinaus üblich (z. B. Schweinefleischerzeugung).
Steuerungslogiken, Vorschriften und Informationsflussmodelle
Das Simulationsmodell umfasst vielfältige Steuerungslogiken, Regeln und auftragsbezogene Informationsflüsse. Die folgende Tabelle gibt einen Überblick.
BÜHNE, KATEGORIE | BEZEICHNUNG | IMPLEMENTIERUNG |
Eierlieferant, Kundenauftragslogik | Der Eierlieferant versendet basierend auf dem Bestellprotokoll | In einem festgelegten Intervall prüft der Eierlieferant das Auftragsbuch und versendet die angeforderte Menge |
Eierlieferant, Bestellversandlogik | Vollständige Bestellmenge versandt | Die volle Menge wird noch am selben Tag versandt, kommt aber nach einer bestimmten Transportvorlaufzeit an |
Brüterei, Bestandsverwaltungslogik | Inventar für eingehende Eier vor dem Inkubator | Bestellpunktrichtlinien steuern den Eierbestand. Wenn die Nachfrage unter ein bestimmtes Niveau fällt, wird beim Eierlieferanten eine Bestellung aufgegeben, die auf einen festen höheren Lagerbestand abzielt |
Brüterei, Inkubation und Brutprozess | Inkubations- und Hatching-Black-Box-Prozesse | Inkubation und Schlüpfen haben eine bestimmte Dauer und eine bestimmte Produktionskapazität. Es gibt auch eine bestimmte Schlupferfolgsquote und eine bestimmte Sterblichkeit |
Brüterei, Brüten bei Brüter | Der Aufbrüterprozess folgt der Inkubation und dem erfolgreichen Schlüpfen | Bevor Küken in einen landwirtschaftlichen Stall geschickt werden, bleiben sie für eine bestimmte Zeit im Brutkasten. Auch für diesen Prozess werden Sterblichkeitsraten definiert |
Brüterei, Herdenzuordnung zu Brütereiställen | Nachdem die Küken eine festgelegte Mindestzeit im Brutapparat verbracht haben, werden sie an einen Farmstall weitergeleitet | Farmställe müssen für eine neue Herde bereit sein, und Kater und Hühner dürfen nicht gemischt werden. Farm Coops haben unterschiedliche Kapazitäten, da sie sich auf verschiedenen Farmen befinden. Hühner sollten den Ställen mit der geringsten Überkapazität zugeordnet werden |
Farm Coops, Hühnerzucht | Das Hühnerwachstum im landwirtschaftlichen Betrieb unterscheidet sich von der Hühnerart und dem Geschlecht | Hühner bleiben je nach Geschlecht und Art für eine bestimmte Zeit im Hofstall. Diese Zeitdauer modelliert das Hühnerwachstum bis zum schlachtfertigen Gewicht |
Bauernhöfe, Weiterleitung von Putenhähnchen zum Schlachten | Hähnchen, die reif zum Schlachthof weitergeleitet werden | Wenn die Hühner das Schlachtgewicht erreicht haben, werden sie weitergeleitet, wenn der Schlachthof Kapazitäten hat. Ansonsten warten sie im Hofstall. Danach wird der Hofstall desinfiziert. In dieser Phase werden relevante Regulierungsvorschriften berücksichtigt und in das Simulationsmodell eingebettet |
Schlachthof, Schlachtprozess | Täglicher Schlachtprozess | Der Schlachthof schlachtet Hähnchen bis zu einer bestimmten maximalen Tagesproduktionskapazität |
Schlachthof, Kadaverinventar | Produktion auf Lager, aber bedarfsgesteuerter Bestand | Der Fleischverarbeiter bezieht seinen Schlachtkörperbedarf aus dem Schlachthofinventar |
Schlachthof, Auftragsbestand | Der Fleischverarbeiter meldet Rückstände beim Schlachthof, wenn der Schlachtkörperbestand nicht ausreicht | Der Rückstand wird im bevorstehenden Produktionszyklus erfüllt und die Karkasse wird nur dann auf Lager produziert, wenn keine Auftragsrückstände offen sind |
Schlachthof, externer Hühnereinkauf | Externe Hähnchen werden zugekauft, wenn der Schlachthofbestand und das aktuelle Schlachtprozessvolumen zu gering sind | Wenn die Nachfrage nach Geflügelschlachtkörpern höher ist als der Schlachtkörperbestand und der Schlachtkörper derzeit in Produktion ist, wird externes Geflügel gekauft und geschlachtet, wodurch die Produktionskapazität entsprechend belegt wird. Zugekauftes Geflügel wird immer zuerst geschlachtet |
Fleischverarbeiter, Schlachtkörpernachfrage | Schlachtkörpernachfrageverteilung, die aus dem Schlachtkörperinventar entnommen werden soll | Es können verschiedene Nachfragemodelle implementiert werden. Beispielsweise kann ein deterministischer oder stochastischer Bedarfsplan mit spezifiziertem Bedarf nach Periode implementiert werden |
Die gesamte in der obigen Tabelle zusammengefasste Logik wurde parametrisiert. Zugehörige Werte sind in einer Konfigurationsdatei einstellbar. Dies ermöglicht es Benutzern, verschiedene Szenarien durchzuspielen und dadurch ein besseres Verständnis der Lieferkette zu erlangen.
Simulationsmodellimplementierung in Python mit SimPy
In den letzten 5 Jahren der Modellentwicklung habe ich mit verschiedenen Tools und Software für die Modellierung diskreter Ereignisse gearbeitet. Einige beliebte Tools sind FlexSim, simio, AnyLogic, SIEMENS Plant Simulation, VisualComponents, Simul8 und viele mehr. Es gibt viele kommerzielle Simulationswerkzeuge , und alle gerade erwähnten sind kommerzielle Software. Dieses Modell habe ich jedoch in SimPy entwickelt , einem Framework für diskrete Ereignissimulationen in Python. Dieses Framework ist kostenlos – aber das war nicht der Grund, warum ich es gewählt habe.
SimPy ist reiner Code. Es hat keine grafische Benutzeroberfläche (GUI). Dh der Modellentwickler kann kein GUI zur Modellimplementierung verwenden. Außerdem hat SimPy keine eingebaute Modellvisualisierung. Mit anderen Worten, das Erstellen und Verifizieren eines Modells in SimPy ist sehr abstrakt – aber da es sich um reinen Python-Code handelt, ist es auch sehr flexibel. Für die Modellierung von Lieferketten mit vielen verschiedenen Entitäten und einer breiten Palette möglicher Steuerungslogiken ist SimPy daher eine gute Wahl. In Kombination mit objektorientierter Programmierung also. Eine objektorientierte Programmierung ist hier Voraussetzung, um die sehr komplexe Aufgabe der Modellierung einer Supply Chain mit all ihren Prozessen und Entitäten Frameworks zu entwickeln und entsprechend zu strukturieren. Benutzer des Modells müssen jedoch ein gewisses Verständnis von Python haben.
Exemplarische Modellausgabe und -ergebnisse
In diesem Abschnitt zeige ich einige beispielhafte Modellausgaben, die vom Geflügellieferkettensimulator ausgegeben wurden. Die Daten werden in Hühnereinheiten gesammelt und angezeigt, dh einheitenneutral. Dies liefert obendrein eine solide Grundlage für die Berechnung relevanter KPIs. Relevante KPIs können Kosten und Gewichte (z. B. von Huhn oder Schlachtkörper) sein. Solche KPIs können für Benutzer bei Bedarf implementiert werden, indem einige wenige Codezeilen zum Lieferkettensimulator hinzugefügt werden – oder indem einige vorhandene Codezeilen angepasst (dh ersetzt) werden.
Die folgende Grafik zeigt die Bestandsentwicklung im Schlachthof, dh den Schlachtkörperbestand. Ein zu hoher Lagerbestand würde zu hohen Lagerkosten führen und letztendlich dazu führen, dass Schlachtkörper aufgrund von Verfallsdaten und damit verbundenen Richtlinien entsorgt werden müssten.
Die obige Grafik zeigt die Bestandsentwicklung im Schlachthof über ein simuliertes Jahr mit 52 Wochen (Simulationszeiträume). In diesem Lauf war jede Woche eine Iteration des Simulationslaufs. Die Bestandsentwicklung im Schlachthof ist direkt mit der Rückstandsentwicklung verbunden. Diese Entwicklung ist in der folgenden Grafik zu sehen.
Wie aus der obigen Grafik deutlich wird, wurde im Schlachthof kein Schlachtkörperbestand aufgebaut. Dies liegt daran, dass der Schlachthof immer hinter der Nachfrage des Fleischverarbeiters zurückblieb, was zu einem erheblichen Rückstand führte.
Aufgrund der bestehenden rückstandsbedingten Bestellpolitik beim Schlachthof führt ein hoher Rückstand zu großvolumigen Einkaufsaufträgen bei externen Geflügelbetrieben. Da extern zugekauftes Geflügel immer zuerst geschlachtet wird, führt dies zu einem erheblichen Lagerbestand beim Aufzuchtbetrieb. Der Brutapparat wartet auf die Räumung der Stallungen und hat in diesem Simulationslauf diesbezüglich keine Kapazitätsbeschränkungen.
Da der Brutapparat selbst keine Kapazitätsgrenze hat, war die Brüterei somit nicht von dem nachgelagerten Produktionsengpass betroffen. Dies wird aus der unten stehenden Grafik deutlich, die den Eierbestand in der Brüterei visualisiert.
Die Entwicklung des Eierbestands in der Brüterei war während des gesamten Simulationslaufs stabil.
Abschließende Bemerkungen zur Simulation der Geflügellieferkette
In diesem Artikel habe ich gezeigt, wie die diskrete Ereignissimulation ein leistungsstarkes Werkzeug zur Modellierung und Analyse von Lieferketten für Geflügel ist. Die Vorteile des Einsatzes eines Supply-Chain-Simulators sind vielfältig, wobei alle Vorteile letztendlich auf die Reduzierung der Supply-Chain-Kosten und die Verbesserung der Verfügbarkeit (dh der Kundenzufriedenheit) abzielen. Dies ist besonders wichtig in einer Geflügellieferkette, da hohe Lagerbestände beispielsweise zum Verfall und zur Entsorgung von Schlachtkörpern führen. Die Bereitstellung eines Supply-Chain-Simulators half meinen Benutzern, ein besseres Verständnis der bestehenden Supply-Chain-Kontrolllogiken und -richtlinien zu erlangen, und stattete das Supply-Chain-Management-Team mit einem effektiven Kommunikations-, Schulungs- und Analysetool aus.
Wenn Sie an diskreter Ereignissimulation interessiert sind, könnten Sie auch an einigen der folgenden verwandten Veröffentlichungen interessiert sein:
- Link: Verfahrensmodell für die diskrete Ereignissimulation
- Link: Maschinelles Lernen und diskrete Ereignissimulation
- Link: Simmer in R für diskrete Ereignissimulation
- Link: Kranhofsimulation in AnyLogic
- Link: AGV-Simulation von Teile-Routings in AnyLogic
Wirtschaftsingenieur mit Interesse an Optimierung, Simulation und mathematischer Modellierung in R, SQL, VBA und Python
Leave a Reply