Emergency Response Environments are environments in which unexpected events may occur. Due to the high level of emergency in these events, there is a need for prior planning, training and supplying resources for operations. One of the effective approaches for making decisions by crisis managers is modeling and simulating emergency response environments. In emergency response environments, there are variant entities with different behaviors. These entities with their interactions between them form a complex system that can be well modeled as a multi-agent system.
The complexity of multi-agent systems is one of the significant challenges of the systems. Hence implementing software systems for them is difficult and complicated. To overcome this complexity, the use of modern software engineering approaches, such as model-driven development, may be very helpful. This approach help designers to overcome the complexity of highly interactive dynamic systems and obtain automatically generated code from the model. To achieve this goal, two important prerequisites are considered in model-driven development: a domain-specific modeling language for designing an emergency response environment model, and transformation programs for automatic code generation from a model.
In this thesis, a domain-specific modeling language named ERE-ML 2.0 and a tool for modeling by this language, is defined. Using ERE-ML 2.0 tool, it is possible to model an emergency situation and then validate the model against the predefined constraints. After designing and validating the model, the executable code of a multi-agent system is automatically generated based on a model-driven approach. For this purpose, several model to code transformations are written such that by executing them it is possible to transform a model that is designed in ERE-ML 2.0 tool into executable Java code. For executing the generated code, the JAMDER platform was extended according to the ERE-ML 2.0 modeling language. To evaluate the proposed framework, several case studies such as the case study of Plasco Tower Collapse are modeled, and the scenarios are defined in the model and are visualized in the generated system. The results of the evaluation show that comparing to the traditional approaches such as programming, using the proposed framework, the required time for development process is reduced, the level of abstraction in system development and flexibility in modeling emergency response scenarios is increased.
Ph.D. Student of Software Engineering at University of Isfahan