Überblick
Eine ereignisgesteuerte Simulation wird reproduzierbar genannt, wenn aus Sicht eines externen Beobachters bei jeder Wiederholung desselben Simulationsexperiments alle Ereignisse in der gleichen Reihenfolge ausgeführt werden. Nichtreproduzierbares Verhalten kann vor allem dann entstehen, wenn durch die Modellspezifikation für einige Ereignisse die Ausführungsreihenfolge nicht eindeutig vorgegeben ist. Werden etwa die Eintrittszeiten der Ereignisse über Zufallszahlengeneratoren berechnet, so kann der Modellierer i.a. nicht vermeiden, daß möglicherweise zwei Ereignisse die gleiche Eintrittszeit zugeordnet bekommen. Die Ausführungsreihenfolge solcher gleichzeitiger Ereignisse hängt dann allein von dem verwendeten Simulationssystem ab. Trifft dieses jedoch keine besonderen Vorkehrungen, so könnte aufgrund der inhärent asynchronen Ausführung des Modells bei einer Wiederholung eine andere Serialisierung gleichzeitiger Ereignisse gewählt werden. Die Simulationsergebnisse würden sich so möglicherweise nicht reproduzieren lassen. Dennoch wird ein Benutzer erwarten, daß sich das Simulationssystem deterministisch verhält. Dies gilt um so mehr, als die heute in der Praxis eingesetzten sequentiellen Simulationssysteme bereits seit langem die Reproduzierbarkeit gewährleisten. Über die Reproduzierbarkeit der Simulationsergebnisse hinaus (wie etwa Statistiken am Ende einer Simulation) fordert die obige Definition der Reproduzierbarkeit jedoch weiter, daß der für den Benutzer sichtbare Verlauf der Simulation identisch bleibt. Beispielsweise vereinfacht dies das Debuggen eines Simulationsmodells, weil die Reihenfolge der benutzersichtbaren Ereignisse bei jeder Wiederholung gleich bleibt. Darüber hinaus ist diese Anforderung auch für solche Fälle wichtig, in denen durch ein Simulationsexperiment der zeitliche Verlauf eines in der Realität zu langsam oder zu schnell ablaufenden Vorgangs beobachtet werden soll: Durch eine mehrfache Wiederholung desselben reproduzierbaren Simulationsexperiments kann der Benutzer jedesmal andere Aspekte der gleichen simulierten Realität verfolgen. Ohne die Reproduzierbarkeit würde u.U. bei jeder Wiederholung des Simulationsexperiments ein anderer — ebenfalls in der Realität möglicher — Verlauf sichtbar. Tatsächlich wurde der Aspekt der Reproduzierbarkeit verteilter und paralleler Simulation erst spät erkannt. Lediglich ein einziges Verfahren [RWH90a] wurde vorgeschlagen, um die Reproduzierbarkeit in verteilter Simulation sicherzustellen. Wie weiter unten jedoch vom Autor gezeigt wird, ist dieses Verfahren inkorrekt: In bestimmten Fällen gerät die Simulation in eine systeminterne Endlosschleife, so daß die Simulationszeit nicht mehr voranschreitet
In diesem Kapitel wird zunächst nach den Ursachen gesucht, die das Sicherstellen reproduzierbaren Verhaltens in verteilter Simulation erschweren. Daraus werden wünschenswerte Eigenschaften von Reproduzierbarkeitsverfahren abgeleitet, und schließlich wird ein konkretes Verfahren angegeben, welches erstmalig die Reproduzierbarkeit verteilter Simulation gewährleistet. In dem vorgeschlagenen Reproduzierbarkeitsverfahren werden in jedem logischen Prozeß Ereignisse durch lexikographischen Vergleich von Tripel (Zeitstempel, Alternd) linear angeordnet. Die Tripel lassen sich einfach berechnen und jedem Ereignis bei seiner Erzeugung zuordnen. Dadurch kann die Reproduzierbarkeit für sequentielle, konservative und die meisten optimistischen Simulationsverfahren sichergestellt werden. Für Time-warp mit Lazy-cancellation kann das gleiche Schema verwendet werden, wobei jedoch unter bestimmten Bedingungen zusätzlich „Korrekturnachrichten“ versendet werden müssen. Der Platz- und Zeitaufwand für das Schema ist vernachlässigbar. Lediglich für Time-warp mit Lazy-cancellation ist eine leichte Performanzverschlechterung möglich. Eine solche tritt vor allem dann auf, wenn der Anteil der Korrekturnachrichten hoch ist, die einen Rollback auslösen. Dies ist jedoch ein eher seltener Fall, weil dazu sehr häufig jeweils mehrere Ereignisse mit dem gleichen Zeitstempel in der „falschen“ Reihenfolge ausgeführt werden müßten. Das Kapitel wird beschlossen mit einer Diskussion weiterer Ideen zur Sicherstellung des in der Praxis wichtigen Problems der Reproduzierbarkeit verteilter Simulation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Rights and permissions
Copyright information
© 1994 Friedr. Vieweg & Sohn Verlagsgesellschaft mbH, Braunschweig/Wiesbaden
About this chapter
Cite this chapter
Mehl, H. (1994). Reproduzierbarkeit verteilter Simulation. In: Methoden verteilter Simulation. Programm Angewandte Informatik. Vieweg+Teubner Verlag, Wiesbaden. https://doi.org/10.1007/978-3-322-90609-0_5
Download citation
DOI: https://doi.org/10.1007/978-3-322-90609-0_5
Publisher Name: Vieweg+Teubner Verlag, Wiesbaden
Print ISBN: 978-3-528-05439-7
Online ISBN: 978-3-322-90609-0
eBook Packages: Springer Book Archive