DeSim: Distributed Architectures and Concepts for the Simulation of Systems of Systems

DeSim: Distributed Architectures and Concepts for the Simulation of Systems of Systems

The demands on distributed simulation environments is ever  increasing. It will become more and more essential to simulate and analyze not the behavior of a single system but that of complex Systems of Systems (SoS).
Traditional methods focus on speeding up the simulation itself (e.g. through parallelization) and mostly lack the capability to execute and especially create and design the models correspondent to these SoS. Consider e.g. a complex value creation chain with existing models for each of its aspects. It might not be desirable to bring all this information together in one system, e.g. because of security/confidentiality concerns of the involved parties.

To tackle this problem, Multi-Agent-Based Simulation (MABS) seems to be a most promising and quickly evolving key concept. It allows for microscopic modelling of actors, their goals, preferences capabilities and interaction between them, which is rather difficult, if not impossible, using traditional physical or cellular models.

Current agent-oriented models, e.g. in the field of traffic simulation, already support interaction, coordination and cooperation models, however, they are very restrictive in that and do not support distributing the models to multiple runtime environments.
The scope of this project comprises finding basic architectures, concepts and requirements for decentral modelling and execution of simulations of SoS.

Based on this, reasonable and suitable methods, models, protocols and utilities from the field of multi-agent systems are to be identified and - if possible - implemented in an existing framework (the Multi-Agent System simulation platform [MASSim], which is used for the annual Multi-Agent Programming Competition) and/or a completely new framework (the Parallel Multi-Agent simulation platform [PMAS]).

Motivation and technical background

Research in the field of distributed simulation has so far focused on more efficient, faster execution of large, but centrally modeled simulations. Here, methods from the fields of parallel computing and grid-based virtualization methods offer good approaches. For example, a complex factory simulation can be modeled centrally and broken down into substeps that can be executed in parallel (e.g., using topology information), taking domain knowledge into account. In this way, computationally intensive simulation tasks can be solved in a short time and the knowledge thus gained can be integrated into decision-making processes in a timely manner.

In many complex simulation applications, this approach is not feasible. An example might be the simulation-based analysis of a complex value chain consisting of different partners (customer, retailer, manufacturer, different supplier levels). Individual partners have simulation models and corresponding simulation systems for mapping the production and logistics processes. The corresponding models represent strategically important knowledge of the companies, which is confidential for reasons of information security and competition (e.g., between suppliers). If one now wants to simulate the complete, cross-company business processes, the central approach is therefore not viable. Instead, the individual simulation systems should be linked to form a SoS through loose, communication-based coupling.

In contrast to the factory simulation described at the beginning, here we have distributed execution as well as decentralized modeling and control of the simulation. Other applications where such a decentralized approach seems useful or necessary include control systems for decentralized energy production, complex social and economic simulations of transnational socio-economic and ecological contexts, and microsimulation approaches.

State of the art

Das Paradigma der multiagenten-basierten Modellierung und Simulation (MABS) ein viel versprechendes und aktuell rasch wachsendes Forschungsgebiet1: MABS ermöglicht die feingranulare Modellierung von Akteuren, ihrer Ziele, Präferenzen, Fähigkeiten und ihrer Interaktion, die mit den etablierten physikalischen oder zellulären Simulationsmodellen2 kaum angemessen darstellt werden kann. Agentenorientierte Modelle in der Verkehrssimulation (Hattori et al., 2010) (Luo; Bölöni, 2010) haben bereits Eingang in kommerzielle Simulationssysteme (wie Anylogic7) gefunden. Jedoch unterstützen diese Ansätze bisher nur sehr eingeschränkt Interaktion, Koordination und Kooperationsmodelle; auch die adäquate Abbildung der Modelle in verteilte Laufzeitumgebungen sucht man noch vergebens. Zudem erkauft man die zusätzliche Qualität und Akkuratheit der Modelle mit einem zusätzlichen Aufwand bei Modellierung und Ausführung.

Hier fehlen noch fundierte Vorgehensmodelle und Ansätze, dezentrale und sich evolutionär verändernde Modelle auf verschiedenen Abstraktionsebenen (Anwendungsebene, IT-Konzept-Ebene, Implementierungsebene) zu erstellen und zu verwalten. Auch die effiziente Abbildung der dezentralen Modelle auf verteilte, dezentrale organisierte Laufzeitplattformen ist erst in Ansätzen erforscht. Multiagentensysteme unterstützen sprechaktbasierte Interaktionsprotokolle zur Realisierung lose gekoppelter Interaktion zwischen Systemen (hier ist insbesondere der IEEE FIPA Standard zu nennen, s. www.fipa.org).

Um für ein Simulationsmodell nicht alles von Grund auf neu entwickeln zu müssen, existieren verschiedene Plattformen. Diese kümmern sich neben anderem um die Ausführung der Simulation und der Kommunikation der Agenten. Dabei gibt es bei den verschiedenen Plattformen viele ähnliche Komponenten

Aufsetzend auf der Programmiersprache Java erlaubt Jade (Java Agent DEvelopment Framework) (http://jade.tilab.com/) zum Beispiel die vereinfachte Implementation von Multiagentensystemen. Sie ist eine sogenannte Middle-Ware, die den FIPA Spezifikationen entspricht. Agenten können auf mehrere Rechner verteilt werden. Eine Vielzahl an grafischen Werkzeugen helfen bei der Entwicklung. So gibt eine grafische Benutzerschnittstelle dem Benutzer die Möglichkeit, Agenten dezentral zu verwalten, zu steuern und zu beobachten.

JACK (http://www.agent-software.com/products/jack/) ist eine Agenten-entwicklungsumgebung der Agent Oriented Software Group. Die Agentenentwicklung wird dabei als Erweiterung zur Objekt-orientierten Entwicklung gesehen. Dementsprechend baut JACK auf Java auf und bietet agentenbezogene Konzepte an. Der Agent Tracing Controller ermöglicht es, die Simulation und die Agenten zu beobachten.

Die MASSim (Multi Agent System Simulation) Plattform besteht aus sieben Komponenten, die über mehrere Computer verteilt sein können. Der eigentliche Kern ist in Java geschrieben und dient als zentrale Komponente für die Interaktions- und Kooperationsmöglichkeiten der einzelnen Elemente untereinander. Außerdem implementiert er den Ablaufplan des Turniers. Das Simulationsplug-in, implementiert in einer Java-Klasse, beschreibt ein diskretes, schrittbasiertes Spiel. Außerdem beinhaltet es die Logik sowie die Funktionalität der MAS-Umgebung. Die MASSim Plattform besteht zusätzlich aus den Agententeams. Diese laufen nicht auf dem Server, sondern auf der Infrastruktur der Teilnehmer. Damit wird weder die Implementierungstechnik noch die Agentenkommunikationsmethode oder der Kooperations-mechanismus eingeschränkt.

Phenomena to be studied

Das beantragte Vorhaben soll sich somit damit befassen, grundlegende Architekturen, Konzepte und Anforderungen an die dezentrale Modellierung und an dezentral organisierte Laufzeitumgebungen der Simulation von SoS herauszuarbeiten. Basierend auf diesen Konzepten und Anforderungen sollen sinnvolle Methoden, Modelle, Protokolle und Werkzeuge aus dem Bereich der Multiagentensysteme identifiziert und beispielhaft anhand für eine Klasse von Anwendungsszenarien bewertet werden (s. dazu auch Abschnitt 5, Ziele und Arbeitsplan).

Dabei soll in dem Projekt mögliche Erweiterungen der Simulationsplatform MASSim um Funktionen und Methoden zur Simulation autonomer, kooperierender Fahrzeuge (z.B. Roboter) untersucht und prototypisch umgesetzt werden. Dies ermöglicht die Betrachtung unterschiedlichster Anwendungsszenarien, von Produktion und Logistik über Verkehr und (Elektro-)Mobilität, Desaster-Management und Rettung bis hin zu Fragestellungen der kooperativen Servicerobotik.

Erweiterungen betreffen zum einen Fragestellungen einer performanten Visualisierung (3D-Modelle, Verwendung von Games Engines, unterschiedliche Perspektiven), zum anderen die Untersuchung, Integration und Weiterentwicklung von Modellen und Verfahren zur Wissensrepräsentation, zum Schließen unter Unsicherheit, sowie für Problemstellung der Kooperativen Aufgabenplanung und der dynamischen Aufgabenallokation.

Insbesondere soll untersucht werden, inwieweit die bisher entwickelten Ansätze der agentenbasierten Simulation den Anforderungen der Koordination lose gekoppelter SoS Rechnung tragen und in welche Richtungen die MASSim Plattform erweitert und ergänzt werden muss, um diesen Anforderungen zu genügen. Das Projekt soll so einen methodischen Rahmen für weiterführende Aktivitäten schaffen, mit dem Ziel einer konvergenten, ganzheitlichen Betrachtung von dezentraler Modellierung, Steuerung und Ausführung von Verteilten Simulationen.

Publication list

2016

 2015

2014

2013