FG Internettechnologie
In simulation engineering, a system model mainly consists of an information model describing a system's state structure and a process model describing its dynamics. In the fields of Information Systems and Software Engineering, there are widely used standards such as the Class Diagrams of the Unified Modeling Language (UML) for making information models, and the Business Process Modeling Notation (BPMN) for making process models. This tutorial presents a general Object Event Modeling (OEM) approach for Discrete Event Simulation modeling using UML class diagrams and BPMN-based process diagrams at all three levels of model-driven simulation engineering: for making conceptual domain models, for making platform-independent simulation design models, and for making platform-specific, executable simulation models. In this approach, object and event types are modeled as special categories of UML classes, random variables are modeled as a special category of UML operations constrained to comply with a specific probability distribution, and queues are modeled as ordered association ends, while event rules are modeled both as BPMN-based process diagrams and pseudo-code. In Part II, we will discuss the more advanced OEM concepts of activities and GPSS/SIMAN/Arena-style Processing Networks. Finally, in Part III, we will further extend the OEM paradigm towards agent-based modeling and simulation by adding the concepts of agents with perceptions, actions and beliefs.
The term Computer Simulation subsumes different simulation paradigms, languages and implementation technologies as well as many different application areas each with its own scientific communities. So, there is clearly a lot of conceptual, methodological, technological and application diversity in the area of Computer Simulation. From its start in 1967, the Winter Simulation Conference managed to get four scientific communities involved: computer scientists, electrical engineers, industrial engineers and mathematicians (operations researchers). Only later, in 2011 and 2012, an attempt was made to get environmental and social scientists involved who have been adopting the idea of "individual-based" or "agent-based" simulation. Today, two American, a European and an Asian social simulation conference have been established. How much unity exists between the scientific areas and communities represented by the Winter Simulation Conference? How much unity exists between the scientific areas and communities represented by the newer social science simulation conferences? And how much unity exists between Discrete Event Simulation and the newer forms of social science simulation? These and other questions about the unity and diversity of Computer Simulation have been discussed via email from April 17 to May 17, 2018, by five leading experts: Alexis Drogoul, Paul Fishwick, Nigel Gilbert, Dennis Pegden and Levent Yilmaz, moderated by Gerd Wagner.
DPMN is a BPMN-based diagram language for making (computational) process design models for discrete event simulation. It combines the intuitive flowchart modeling style of BPMN with the rigorous semantics provided by the event scheduling arrows of Event Graphs and the event rules of the Object-Event Modeling and Simulation paradigm. While BPMN uses XML Schema as its default type definion
language, DPMN uses UML Class Diagrams as its default (data, object and event) type definion language. As opposed to BPMN Data Objects, DPMN Data Objects instantiate an object type defined by an information model expressed in the form of a UML Class Diagram. A DPMN model has a formal semantics in terms of an Abstract State Machine whose state structure is defined by an object-oriented signature and whose transitions are defined by event rules capturing causal regularities.
Object Event Modeling and Simulation(OEM&S)is a general Discrete Event Simulation paradigm combining object-oriented modeling with the event scheduling paradigm. We show how to extend OEM&S by adding
concepts of agent-based modeling and simulation, resulting in a framework that we call Agent/Object Event Modeling and Simulation (A/OEM&S). The main point for such an extension is to define agents as special objects, which are subject to general (physical) laws of causality captured in the form of event rules, and which have their own behavior allowing them to interact with their inanimate environment and with each other. Because agent behavior is decoupled from physical causality, an A/OE simulator consists of an
environment simulator, which simulates the physical world (the objective states of material objects), and agent simulators, which simulate the internal (subjective) states of agents and their behaviors.
This tutorial presents a model-based approach to developing plain JavaScript web applications with responsive constraint validation, enumeration attributes, uni- and bi-directional associations, and inheritance in class hierarchies. It also shows how to implement the discussed information management concepts and techniques in a generic way in the form of three model-based development libraries: cLASSjs, mODELcLASSjs and mODELvIEWjs.