- Promoter: Hans Vangheluwe
- Supervisor: Simon Van Mierlo
For more information about this research project, read the report or view the presentation.
- AToMPM: https://atompm.github.io/
- LoLA: https://www2.informatik.hu-berlin.de/top/lola/loladoku/index.html
- PythonPDEVS: http://msdl.cs.mcgill.ca/projects/DEVS/PythonPDEVS
- Unity: https://unity.com/
Railway assets: https://assetstore.unity.com/packages/3d/vehicles/land/simple-trains-cartoon-assets-86794 (import the.unitypackage
package in theRailway/Assets/Resources
directory in Unity)
- Install by running the install script and passing AToMPM's home directory. This script will put the formalisms on its right place for all the users and it will create a working directory for the Railway formalism.
(sudo) ./install.sh ATOMPM_DIR
Railway
: the Railway formalism modelled in AToMPMTrainSchedule
: the Train Schedule formalism modelled in AToMPMrailway_wd
: working directory for the Railway formalism, used to store temporary files etc. (place this folder in AToMPM's root directory)RailwayDEVS
: the railway model in DEVSRailwayUnity
: the railway model in Unity
report
: the sources of the report and the report itself
- Import the
Railway.defaultIcons.metamodel
toolbar - To define a train's schedule: import the
TrainSchedule.defaultIcons.metamodel
toolbar
- Run the
T_OperationalSemantics.model
transformation
- For default analysis: run the
T_SafetyAnalysis.model
transformation - For custom analysis (using custom properties): run the
T_CustomSafetyAnalysis.model
transformation - To replay a counterexample:
- Make sure there was a trace generated (check the
trace
property of a Property) - Set
replay
totrue
on the Property object - Run the
T_ReplayTrace.model
transformation
- Make sure there was a trace generated (check the
- Run the
T_QueueingAnalysis.model
transformation - Alternatively the
T_QueueingAnalysisAfterDEVSTransformation.model
transformation can be ran on a model that has already been transformed to a DEVS model (usingT_ToDEVS.model
)
- Visualize using a trace:
- Just run the queueing analysis (
T_QueueingAnalysis.model
) to create a tracefile andrailway.xml
file - Open the Unity project
- Set the
simulateLive
parameter tofalse
on theMain
object (you can also specify thesimulationTimeScaleFactor
if you like) - Start the Unity project
- Just run the queueing analysis (
- Visualizing live while simulating:
- You might need to run the queueing analysis beforehand (to create the
railway.xml
), so Unity can instantly load this file - Open the Unity project
- Set the
simulateLive
parameter totrue
on theMain
object - Start the Unity project
- Run the
T_Visualization.model
transformation (orT_VisualizationAfterDEVSTransformation.model
)
- You might need to run the queueing analysis beforehand (to create the