Simulation

Grundlagen und Einordnung in die komplexe Welt der Simulation

Simulation ist ein sehr weiter Begriff und wurde bereits 1975 von Shannon treffend definiert als:

«The process of designing a Model of a concrete System and conducting Experiments with this model in order to understand the behaviour of a concrete system and/or to evaluate various strategies for the operation of the system.»

(Robert E. Shannon, Forscher an der Texas A&M University, 1975)

Bei dieser allgemeinen Definition stechen drei Begriffe besonders hervor: ModelSystem und Experiment.

Das Modell stellt eine Abstraktion des realen Systems dar und fasst eine Menge von Annahmen und Näherungen über das statische und dynamische Systemverhalten zusammen, sofern sie den relevanten Fragenbereich betreffen.

Grundlegende Informationen über Modellierung und Simulation

Modellbildung und Simulation als auch Validierung und Verifikation werden oft in einem Zug genannt. Dabei sind Modellbildung und Simulation bzw. Validierung und Verifikation eigene, komplementäre Prozesse. Ferner werden die Begriffe Simulation, Emulation, Validierung und Verifikation oft falsch verstanden.

Modellbildung

Erstellen eines Modells als eine Abbildung von etwas für etwas. Diese Aussage ist zunächst einmal allgemein und kann auf alle Modellierungsaktivitäten angewendet werden, z.B. Gesellschaft, Wirtschaft, Technik oder Kunst.

In unserer technischen Sicht der Welt ist es in der Regel die Abbildung eines Wirklichkeitsausschnitts in ein Modell zur Beschreibung, Untersuchung oder Optimierung eines bestimmten Systemverhaltens (die eigentliche Fragestellung). Das könnte das Schwingungsverhalten einer Radaufhängung, das Verformungsverhalten von Werkstoffen oder der Materialfluss in einem Produktionsprozess sein. Neben den physikalischen Modellen, z.B. der verkleinerten Nachbildung eines Schiffsrumpfes haben besonders Computermodelle an Bedeutung gewonnen. Bedingt durch die unterschiedlichen Anforderungen, haben sich verschiedene Beschreibungstechniken herausgebildet, z.B. Gleichungssysteme, Ablaufdiagranne, automatenbasierte Beischreibungstechniken und Kombinationen daraus. Das Ergebnis der Modellierung, ist also die Spezifikation des Modells, in einer geeigneten Sprache. Ein grundlegender Unterschied der Modelle besteht darin, wie sich der Systemzustand über der Zeit ändert, kontinuierlich oder nur zu bestimmten Ereigniszeitpunkten.

Banks[1] et al definieren Simulation wie folgt: “A simulation is the imitation of the operation of a real-world process or system over time.” Simulationen greifen dabei auf geeignete Modelle zurück, die sich bezüglich der Fragestellung wie das Original verhalten, dabei gilt, das Modell wird nicht so genau wie möglich, sondern nur so genau wie notwendig beschrieben. Man beschreibt diesen Prozess der Modellierung auch als Isolation

Die Simulation ermöglicht es nun Systeme und ihre Modifikationen nicht am Original, sondern am Modell zu studieren. Risikoreiche, teure oder langfristige Experimente am realen System können so vermieden werden. Die damit verbundene Variabelmachung bezeichnet man auch als Generalisierung.

 

[1] J. Banks; J. Carson; B. Nelson; D. Nicol (2001). Discrete-Event System Simulation. Prentice Hall. p. 3. ISBN 978-0-13-088702-3.

Im Gegensatz zur Simulation wird ein System bzw. eine Systemkomponente an ihren Schnittstellen genau nachgebildet, quasi ein digitaler Zwilling erzeugt. Dieser kann dann anstatt der realen Komponente ohne Einschränkung der Funktionalität eingesetzt werden. Kombiniert mit einer Simulation kann es dann werden, wenn andere Aspekte (Inputs) simulativ erzeugt werden und das Verhalten des Zwillings untersucht werden sollen. Dieser Ansatz kann insbesondere in der Vorentwicklung von Systemkomponenten eingesetzt werden. 

Verifikation bezieht sich auf den Prozess der Überprüfung, ob die Implementierung des spezifizierten Modells der Spezifikation entspricht. Das Erstellen oder Spezifizieren des Modells (Spezifikation) stellt also den eigentlichen Modellierungsvorgang dar. Es geht darum sicherzustellen, dass das System ordnungsgemäß implementiert wurde und die spezifizierten Eigenschaften korrekt in der Implementierung erfasst wurden. Die Verifikation kann durch einen formallogischen Beweis (eher selten), Inspektion, Überprüfung des Codes und Tests erfolgen. Hieraus leiten sich Anforderungen an eine Spezifikationssprache ab:

  • An die Modellklasse angepasst
  • Möglichst formal (selten, meist semiformal)
  • Wiederspruchfrei
  • Interpretationsfrei
  • Implementierungsneutral

Validierung hingegen bezieht sich auf den Prozess der Überprüfung, ob das entwickelte System oder Modell tatsächlich die Bedürfnisse und Anforderungen des Benutzers entspricht. Es geht darum sicherzustellen, dass das Modell, das tut, was es tun soll, sich also hinsichtlich der Fragestellung genauso verhält, wie das Original. Validierung kann durch

  • Statistisches Testen (Modellvergleich), oder durch
  • Überprüfung der Anforderungen, Benutzertests und Feedback erfolgen (Face valediy) erfolgen. Hierzu sind Animationen und dash boards eine große Hilfe

Zusammenfassend ist Verifikation der Prozess der Überprüfung, ob das System ordnungsgemäß hinsichtlich seiner Spezifikation implementiert wurde, während Validierung der Prozess der Überprüfung der Gültigkeit des Modells ist, also, ob das System den Anforderungen und Bedürfnissen des Benutzers entspricht.

Durch die Verschiedenheit der Modelle und Anforderungen ergeben sich unterschiedliche Simulationsansätze, z.B.:

DES (Diskrete Ereignis Simulation)

Bildet ein System als eine Serie von Ereignissen über der Zeit ab. Der Systemzustand ändert sich dabei nur zu bestimmten Ereigniszeitpunkten. Das grundlegende, mathematische Konzept basiert auf Warteschlangen, Automation und Ablaufdiagrammen und erlaubt die Beschreibung von dynamischen, stochastischen Modellen. Das Modell kann beliebig genau ausgestaltet werden. Man unterscheidet zwischen einer mikroskopischen, mesoskopischen und makroskopischen Modellierung. Besonders ist, dass Systeme nicht nur in ihrem eingeschwungenen Zustand (der praktisch selten erreicht wird) sondern auch in Zwischenzuständen (z.B. Fehlersituationen) untersucht werden kann.  

Als Modellierungsansätze wird zwischen Ereignisorientierter, Prozessorientierter und Agentenbasierter Simulation unterschieden. Die Integration von KI-Komponenten ist möglich und wird von verschieden Werkzeugen unterstützt. Die Kombination zwischen Simulation und Emulation ist leicht zu realisieren.

Die Diskrete Ereignis Simulation deckt einen weiten Einsatzbereich von Geschäftsprozess- bis hin zur Computernetz Simulation ab, erlaubt die Integration anderer Techniken und bildet den Schwerpunkt der Simulationsaktivitäten im INS.   

Mehr erfahren:

Ist eine verbreitete Methode zur numerischen Lösung von Differentialgleichungen. Eine erste Einführung finden sie z.B. Unter Numerische Simulation – Wikipedia

Beschreibt eine breite Klasse von Algorithmen, die durch das wiederholte Anwenden zufallsbedingter Beispiele (Sample) ein nummerisches Ergebnis erbringen. Dabei wird vorausgesetzt, dass das Verfahren konvergiert.

Erlaubt, wie DES, die Untersuchung des nichtlinearen Verhaltens komplexer Systeme. Ist jedoch nicht so detailgetreu wie bei DES und eignet sich eher für prinzipieller Zusammenhänge. Ein geeigneter Ansatz zur Modellierung bilden „Bossel-Diagramme“, die Auswertung dieser Diagramme führt dann wieder auf die Lösung von Differentialgleichungssystemen.