Modelling is a powerful technique which allows us to work on the right abstraction level and avoid accidental complexity. Nowadays, we have a lot of different formalisms at our disposal, so it's necessary to choose the most appropriate language when building a model. Aside from that, it's also possible to define a mapping from one formalism to another, so that we can expose the functionality of one another. This research internship will revolve around the Railway formalism, which is mostly based on Railway Operation and Control by Joern Pachl and some of the assignments given in the Model Driven Engineering course. This formalism is first modelled in the tool AToMPM to create a basic visual modelling environment, here we can also simulate a model by defining its operational semantics. To analyze if a model satisfies certain properties, we will map it to petri-nets, where we can do a reachability, coverability, deadlock, ... analysis. Next to that, we can also map it to Discrete Event System Specifications (DEVS), which is more appropriate when it comes to queueing, throughput, ... analysis. Finally, to visualize and animate the model, we make use of Unity, here we also allow the user to modify the model.

In the figure below, a small overview is given with the different formalisms and mappings in between them.


Source Code
Maintained by Zhong-Xi Lu.