Simio Case Studies

Intelligente Simulation: Integration von Simio und Matlab

Geschrieben von Simio Staff | 12.03.2026 18:05:59

Die Herausforderung

von Mohammad Dehghanimohammadabadi & Thomas K. Keyser (Western New England University)

Vorgestellt auf der Winter Simulation Conference 2015

Die Simulationsmodellierung wird zunehmend eingesetzt, um eine Vielzahl von Problemen in verschiedenen Disziplinen zu lösen, unter anderem in den Bereichen Gesundheitswesen, Fertigung, Dienstleistungen und Lieferketten. Als zentrales Entscheidungsfindungsinstrument bestimmt die Simulation die attraktiven Konfigurationen und Alternativen, um Manager davon zu überzeugen, Verbesserungen vorzunehmen. Es gibt jedoch einige Aktivitäten in realen Systemen, die mit Simulationssoftwarepaketen nicht angemessen behandelt werden können. Bei dieser Art von Aktivitäten handelt es sich in erster Linie um Entscheidungsfindungs-Toolboxen, die entwickelt werden, um die Systemleistung zu verbessern. In Fertigungssystemen werden beispielsweise häufig Planungstechniken eingesetzt, um eine optimale Planung der Aktivitäten in der Fertigung zu ermöglichen. Mit dem Ziel einer langfristigen strategischen Planung des Systems mittels Simulation ist es daher von entscheidender Bedeutung, diese Entscheidungsfindungsaktivitäten in das Simulationsmodell zu integrieren. Diese Fähigkeit macht die Simulation intelligenter und genauer, da sie eine realistischere Perspektive des Systems und der tatsächlichen Vorgänge darin bietet.

Die Einbettung dieser außergewöhnlichen Logik in ein Simulationsmodell ist eine ziemliche Herausforderung; mit den Fortschritten aktueller Simulationspakete wie SIMIO ist sie jedoch machbar. Einer der vielen Vorteile von SIMIO ist seine "Application Programmers Interface"-Fähigkeit (API), die es den Benutzern ermöglicht, ihr gewünschtes Modell entsprechend anzupassen oder zu erweitern. Die Erweiterung könnte darin bestehen, neue Schritte, Elemente und Regeln hinzuzufügen, Daten zu importieren und zu exportieren, das Experimentieren mit externen Algorithmen zu verbessern oder eine Schnittstelle zu externen Programmen zu schaffen. Durch die Nutzung der API-Fähigkeit wird in dieser Studie eine neue benutzerdefinierte Schrittinstanz vorgestellt, die MATLAB als integralen Bestandteil von SIMIO einbezieht. Dieser Schritt heißt "CallMatlab" und erfordert die Adresse des Ordners, in dem sich die MATLAB-Datei befindet, sowie den Namen der MATLAB-Funktion. Ähnlich wie bei den bestehenden Schrittinstanzen in SIMIO könnte der Benutzer CallMatlab beim Erstellen von Prozessen einfach per Drag-and-Drop einfügen.

Die Lösung

Anwendung

Eine der Anwendungen des vorgeschlagenen "CallMatlab"-Schrittes ist der Aufruf zur Optimierung innerhalb des Simulationslaufs. In der Literatur wird diese Art der Simulation als Iterative Optimierungsbasierte Simulation (IOS) bezeichnet, bei der ein Optimierungsmanager in einen Simulationsagenten eingebettet ist. Dieser Schritt ist in der Lage, die Optimierung durch das Auftreten von vordefinierten Ereignissen in der Simulation auszulösen. Unabhängig von der Art der Optimierung kann MATLAB verwendet werden, um entweder benutzerdefinierte Optimierungsalgorithmen auszuführen oder kommerzielle Optimierungsprogramme wie z.B. CPLEX über MATLAB aufzurufen. Da das Ziel der Simulation darin besteht, die Aktivitäten in der realen Welt widerzuspiegeln, kann der Anwender diesen Schritt immer dann anwenden, wenn er eine Routineoptimierung in einer realen Situation durchführt. In einem Fertigungssystem beispielsweise nutzen die Planer die Optimierung, um die Aufträge entweder regelmäßig zu planen, z. B. zu Beginn jeder Schicht, oder in dringenden Fällen, z. B. bei einem Maschinenausfall, einer Reparatur oder dem Eingang eines neuen Auftrags. Je nachdem, wie häufig die Optimierung im System verwendet wird, wird der bereitgestellte Schritt während der Simulationsausführung aufgerufen, der den Optimierer in MATLAB auslöst. Einige der Anwendungen dieser Schrittinstanz in der Simulationsmodellierung werden im Folgenden vorgestellt.

Anwendung in Gesundheitssystemen

Die Einteilung von Patienten, Krankenschwestern oder Ärzten ist eine sehr häufige Aufgabe in den meisten Krankenhäusern und Notaufnahmen. Der CallMatlab-Schritt kann verwendet werden, um die täglichen Planungsvorgänge in einem Krankenhaus zu modellieren, wo ungeplante Ereignisse auftreten können und eine Optimierung erforderlich ist. Beispiele für solche Ereignisse sind: zwei kranke Ärzte, die Ankündigung eines Busunfalls, der die Notaufnahme überfüllt, eine Verzögerung bei der Ankunft wichtiger Ersatzteile usw. Im Allgemeinen erfordern diese Ereignisse sofortige Ausgleichsmaßnahmen, die mit einem Simulationsmodell bewertet werden können (Espinoza et al., 2014). Ein simulationsbasiertes Entscheidungsmodell, das mit den aktuellsten Informationen über den Zustand des Systems initialisiert wird, kann bei der kurzfristigen Bewertung verschiedener alternativer Lösungen oder alternativer Betriebsstrategien nützlich sein (Espinoza et al., 2014). Für die langfristige Planung könnte der vorgeschlagene Schritt jedoch Praktikern helfen, IOS auszuführen, um ihr System zu porträtieren, während es angesichts der Herausforderungen, die im realen Gesundheitssystem bestehen können, mehrmals optimiert wird.

Anwendung in Produktionssystemen

Während eines Simulationslaufs eines Fertigungssystems wird die Optimierung immer dann aufgerufen, wenn sich der Status des Systems ändert und eine Neuplanung erforderlich ist. Der Optimierungsmanager in MATLAB löst ein analytisches Problem und sendet die Ergebnisse an die Simulation zurück, um die unbearbeiteten Aufträge auf die verfügbaren Maschinen umzuverteilen. Zu den auslösenden Ereignissen in einem Fertigungssystem können Maschinenausfälle, vorbeugende Wartungsarbeiten, Änderungen im Nachfragemuster, unerwartete Verspätungen bei den geplanten Aufträgen oder Schichtbeginn gehören. Tritt eines dieser Ereignisse ein, leitet der Simulationsmanager die Optimierung ein und plant alle unbearbeiteten Aufträge entsprechend der neuen optimalen Lösung neu ein.

Anwendung in Supply Chain Management (SCM) Systemen

Ein Simulationsmodell könnte verschiedene SCM-Modelle mit ihren nichtlinearen, komplexen Beziehungen und unter realistischeren Annahmen umfassen. Die Nachfrage der Kunden und die Kapazitäten der Lieferanten ändern sich ständig, sowohl in Bezug auf die Vielfalt als auch auf die Preisspanne. Man könnte das IOS-Modell auf ein Lieferkettenmodell anwenden, wobei jede dieser Veränderungen im System als Auslösungspunkt betrachtet werden könnte. Wenn sich beispielsweise die Nachfrage des Kunden ändert, die Kapazität des Lieferanten variiert, ein neuer Lieferant ausgewählt wird, die Anzahl der verfügbaren Transporte schwankt oder sich sogar die Preise ändern, könnte die Simulation selbst anhalten und das System entsprechend den neuen SCM-Bedingungen optimieren. Die Anwendung des vorgeschlagenen IOS-Ansatzes bietet den Unternehmen die Möglichkeit, ihre eigene Lieferkette zu gestalten, und zwar nicht nur durch die Optimierung interner Abläufe, sondern auch durch die Untersuchung und Verbesserung der Leistung der gesamten Lieferkette auf lange Sicht.

Die Auswirkungen auf das Geschäft

Schlussfolgerung

Der vorgeschlagene SIMIO-Schritt integriert eine Simulationssoftware in einen rechnergestützten Agenten, um rechenintensive Operationen wie die Optimierung durchzuführen. Es werden mehrere Anwendungen vorgestellt, um das Potenzial der vorgeschlagenen CallMatlab-Schrittinstanz für die Implementierung der IOS-Modellierung zu veranschaulichen. Dieser Schritt ist jedoch nicht auf die Durchführung von Optimierungen beschränkt, sondern kann für jede Art von Berechnung verwendet werden, die der Benutzer wünscht. Wir glauben, dass dieser Zusatz dem Simulationsmodellierungsansatz eine neue Dimension verleiht. Dies würde es Experten ermöglichen, die Modellierungssimulation zu genießen und gleichzeitig ihre eigenen Logiken und Entscheidungsfindungswerkzeuge innerhalb des Simulationslaufs zu implementieren.