Vertrauen in Simulationen?

23.09.1977

Fast alle Anwendungen von Datenverarbeitungssystemen bilden irgendwelche Sachverhalte der Wirklichkeit durch gespeicherte Daten und deren Veränderungen nach, sind also Simulationen in einem

allgemeinen Sinne.

Wir betrachten die Simulation von Systemen, in denen verschiedene Bestandteile aufeinander einwirken, so daß mit der Zeit bestimmte Abläufe entstehen. So wie das System verschiedene Zustände durchläuft, durchlaufen die entsprechenden Daten eines Simulationsprogramms in derselben Reihenfolge entsprechende Werte. Der Benutzer kann diese Werte in gedruckter oder graphischer Darstellung beobachten und so mit dem Simulationsprogramm statt mit dem wirklichen System experimentieren.

Die Kritik an Simulationsergebnissen ist oft heftig und nimmt von Gruppe zu Gruppe der obigen Einteilung zu. Kann man ihre Mängel dem Arbeitsverfahren "Simulation" oder kann man sie dem ausführenden "Computer" anlasten?

Es kann klar gesagt werden, daß der "Computer" als Gerät keinesfalls für ungenaue Simulationsergebnisse verantwortlich ist. Kritik am Arbeitsverfahren "Simulation" ist in gewissem Grade nötig, kann aber sehr sachlich gehalten werden.

Drei Arbeitsabschnitte bei jeder Untersuchung durch Simulation sind

- Analyse des wirklichen Systems, Auswahl von Zustandsgrößen und der Beziehungen zwischen diesen Größen,

- Niederschrift eines Programms mit den entsprechenden Daten und Rechenvorschriften

- Ausführung des Simulationsprogramms, Beobachtung und Bewertung seiner Ergebnisse.

Die Analyse ist im Grunde nichts anderes als eine wissenschaftliche Untersuchung, wie sie auch erforderlich ist wenn keine Simulation beabsichtigt ist. Sie sollte natürlich keine falschen Beziehungen aufstellen. Aber sie kann zum Beispiel auch zeigen, daß für eine Berechnung nicht genügend Information vorliegt, und muß an ihrer Stelle eine Schätzung einfügen.

Wie steht es mit den Fehlern des zweiten Arbeitsabschnitts, den Programmierfehlern? Sie rühren vor allem von der Komplexität der untersuchten Systeme her, die eine ebensogroße Komplexität des Simulationsprogramms erzwingt.

Das wirksamste Hilfsmittel gegen Programmierfehler ist eine gute Strukturierung des Gesamtprogramms. Der Benutzer verwendet dazu Hilfsmittel wie Deklarationen und Prozeduraufrufe, die eine "Simulationssprache" bilden. Bei "unbekannten" Einflußgrößen kennt man nicht den genauen Wert, aber oft eine statistische Häufigkeitsverteilung.

Eine Simulations-Ausführung erfordert konkrete Werte aller Einflußgrößen. Unbekannte Größen werden deshalb vielfach als Pseudo-Zufallszahlen errechnet.

Die Schätzung der statistischen Kenngrößen aus einigen Simulationsabläufen und ihren Ergebnissen ist mitunter sehr unsicher. Die Ursache sind Abhängigkeiten, die für Wartesituationen typisch sind - und die nicht erst durch die Simulation eingeführt werden!

Noch unsicherer werden natürlich Ergebnisse aufgrund von Einflüssen, für deren Schätzung nicht einmal statistische Beobachtungen zugrunde liegen. Dieser Sachverhalt ist vor allem bei Modellen in den Sozialwissenschaften manchmal unvermeidlich. Zu allem Überfluß trifft er oft damit zusammen, daß die Abläufe unstabil sind. Dann sind natürlich - sei es mit oder ohne Simulation - treffende Voraussagen schwer zu machen.