Experimentrahmen

AnyLogic bietet einen weiten Experimentrahmen, der Ihnen ermöglicht die Simulationsausführungen effizient zu verwalten, Ausgabeergebnisse zu erfassen, darzustellen und vergleichen, Ihre Modelle zu kalibrieren und zu optimieren. Für ein Modell können mehrfache Experimente definiert werden; ein Experiment kann als unabhängiges Java Applet oder Anwendung verpackt und ausgefürt werden. Sie können für die Experimente mit Hilfe des graphischen AnyLogic – Editorprogramms fortgeschrittene interaktive UI gestalten. Außerdem hat jedes Experiment eine Vielzahl von „Erweiterungspunkten“(„extension points“) wo Sie zusätzliche Handlungen bestimmen können, die vor und nach jeder Replikation, Iteration oder jedem Experimentstart usw. ausgeführt werden müssen. Die Ergebnisse der Simulation können als .cvs Datei gespeichert und jederzeit in der UI neu geladen oder in z.B. Excel geöffnet werden (Funktionalität von AnyLogic Professional). Die unterstützten Experimenttypen sind:

Simulation

Dieser ist der einfachste Experimenttyp, der Ihnen die Möglichkeit gibt das Modell mit bestimmten Parameterwerte auszuführen, die Simulationsanimation in virtueller oder reeller Zeitskala zu besichtigen, die Ausführung des Modells zu stoppen, pausieren und fortzusetzen, das Modell Schritt für Schritt auszuführen.

Während der Ausführung des Experiments können Sie jedwelches Objekt auf jedwelcher Ebene der Modellhierarchie besichtigen, den Status der Ereignisse, der Zustandsdiagramme, der dyanamischen und einfachen Variablen prüfen.

Das Simulationsexperiment ist für die Fehlerbehebung bei Modellen und für die visuelle Vorführung dynamischer Simulation geeignet. Alle anderen Experimenttypen behandeln das Modell als einen schwarzen Kasten, führen es in der schnellstmöglichen Weise aus und zeigen die Animation des Modells nicht an.

Parametervariation

Bei diesem Experiment wird das Modell mehrfach mit einem oder abwechselnd mit mehreren Parametern ausgeführt. Sie können die Spannweite und Schritte für einen Parameter bestimmen und AnyLogic überlassen alle möglichen Kombinationen auszuproben, oder Sie können programmatisch regeln inwieweit der Parameterwert auf dem Index der Ausführung der Simulation beruht.

Das Experiment dient außerdem auch zum Einschließen Ihrer eigenen Optimierungsalgorithmen, falls der installierte Optimierer aus irgend einem Grund nicht geeignet sein sollte: sie können festlegen welche Code nach jeder Iteration abgerufen werden sollte um das nächste Parameterset zu bestimmen.

paramvariation.jpg

Optimierung

AnyLogic verwendet den eingebauten OptQuest Optimierer um die beste Lösung zu finden, da Objektfunktionen, Einschränkunge, Bedingungen und Parameter (Entscheidungsvariablen) variiert werden können. Optimierung bei Unverlässlichkeit wird durch dem Einsatz von Paralleversuchen unterstützt: ein stochastisches Modell wird mit den selben Parameterwerten mehrfach ausgeführt (diese Ausführungen werden Parallelversuche genannt) und die Entscheidung der nächsten Handlung im Parameterraum (nächeste Iteration) basiert in diesem Fall auf ihrer aggregierten Ausgabe.

AnyLogic generiert automatisch die UI für das Optimierungsexperiment, die die aktuellen und besten Lösungen und das dynamische Diagramm des Optimierungssprozesses umfasst.

optimization.jpg

Vergleich der Ausführungen

[verfügbar in AnyLogic Professional]

Dies ist ein interaktives Experiment das Ihnen ermöglicht die Modellparameter einzugeben, die Simulation auszuführen und die Simulationsausgaben zu den Diagrammen hinzuzufügen, wo sie mit den Ergebnissen anderer Ausführungen verglichen werden können.

Die Standard – UI dieses Experiments umfasst die Eingabefelder und die Ausgabediagramme. Sie können ein bestimmtes Ausgabeergebniss auswählen, auf sein Diagramm klicken und die entsprechenden Parameterwerte anzeigen.

compareruns.jpg

Empfindlichkeitsanalyse

[verfügbar in AnyLogic Professional]

Dieses Experiment verhilft Sie die Empfindlichkeit der Simulationsergebnisse gegenüber Veränderungen der Modellparameter zu untersuchen. Der Experiment-Wizard bittet Sie das zu variierende Parameter und die Ausgaben, an denen Sie interessiert sind, auszuwählen.

Für einen einzigen Ausgabentyp wird das „Output vs. Parameter“ Diagramm angezeigt. Wenn die Simulationsausgabe ein Dateiset ist (z.B. die Dynamik eines bestimmten Prozesses im Zeitablauf) wird zum Vergleich eine Reihe von Linien auf dem Diagramm angezeigt.

sensitivityanalysis.jpg

Monte Carlo

[verfügbar in AnyLogic Professional]

Das Monte Carlo Experiment ermöglicht Ihnen eine (stochastische) Simulation mehrfach auszuführen, die Reihe der Ausgaben zu erhalten und sie als Balkendiagramm zu besichtigen. Falls das Modell an sich stochastisch ist, ergibt jede Ausführung eine verschiedene Ausgabe, selbst wenn Sie das Eingabeparameter nicht verändern. Alternativ können Sie für jede Simulation einen Zufallsparameterwert generieren.

Der Monte Carlo Experiment - Wizard bitte Sie zu bestimmen wie viele Parallelversuche Sie ausführen möchten, ob Sie Parameter variieren möchten und welche Werte oder Dateisets gesammelt und als Balkendiagramme angezeigt werden sollten. Sowohl regelmäßige als auch 2D – Balkendiagramme können angewendet werden.

montecarlo.jpg

Kalibrierung

[verfügbar in AnyLogic Professional]

Nachdem Sie Ihre Modellstruktur erstellt haben, mögen Sie einige Parameter des Modells einstellen zu wollen, so dass sein Verhalten in bestimmten Umständen einer bekannten (beobachteten) Vorlage entspricht. Falls mehrere Parameter eingestellt werden sollen ist es für die bestmögliche Kombination sinnvoll den eingebauten Optimierer zu verwenden. Der Zweck dabei ist die Abweichungen zwischen der Simulationausgabe und der beobachteten Datei zu reduzieren.

Der Experiment - Wizard wird Sie bitten die Parameter, die Sie kalibrieren möchten und die Kriterien, die angewandt werden sollen, zu bestimmen. Bei mehrfachen Kriterien können Sie Koeffiziente anwenden. Der Kalibrierungsprozess und der Einbau jedes Kriteriums wird in der vorgegebenen UI angezeigt.

calibration.jpg

Benutzerdefiniert

[verfügbar in AnyLogic Professional]

Das benutzerdefinierte Experiment bietet Ihnen maximale Flexibilität bei der Bestimmung der Parameter, Verwaltung der Simulationsausführungen, Entscheidungsfindung. Es stellt Ihnen einfach ein Code – Umfeld zur Verfügung in dem Sie all dies ausführen können (und noch vieles mehr) durch den Einsatz einer reichhaltigen Java API des AnyLogic Antriebssystems (Methoden wie run(), stop() usw.).