Connecting conceptual models using relational reference attribute grammars

Model-driven engineering can be used to create problem-specific, conceptual models abstracting away unwanted details. Models at runtime take this principle to the time a system is running. Connecting and synchronizing multiple models creates several problems. Usually, models used at runtime must communicate with other systems over the network, they are often based on different paradigms, and in most settings a fast and reactive behaviour is required. We aim for a structured way to define and organize such connections in order to minimize development cost, network usage and computation effort while maximizing interoperability. In order to achieve those goals, we present an extension of the paradigm of models based on reference attribute grammars by creating a dedicated problem-specific language for those connections. We show how to connect several runtime models to a robotic system in order to control this robot and to provide guarantees for safe coexistence with nearby humans. We show, that using our approach, connections can be specified more concisely while maintaining the same efficiency as hand-written code.

[1]  S. Doaitse Swierstra,et al.  Higher order attribute grammars , 1989, PLDI '89.

[2]  Görel Hedin,et al.  Reference Attributed Grammars , 2000, Informatica.

[3]  Edward A. Lee,et al.  Heterogeneous composition of models of computation , 2009, Future Gener. Comput. Syst..

[4]  Aude Billard,et al.  A survey of Tactile Human-Robot Interactions , 2010, Robotics Auton. Syst..

[5]  Emma Söderberg Contributions to the Construction of Extensible Semantic Editors , 2012 .

[6]  Uwe Aßmann,et al.  Classifying Approaches for Constructing Single Underlying Models , 2019, MODELSWARD.

[7]  Juan de Lara,et al.  Foundations of multi-paradigm modeling and simulation: computer automated multi-paradigm modelling: meta-modelling and graph transformation , 2003, WSC '03.

[8]  Mehdi Dastani,et al.  Event-processing in autonomous robot programming , 2013, AAMAS.

[9]  Johannes Mey,et al.  Relational reference attribute grammars: Improving continuous model validation , 2020, J. Comput. Lang..

[10]  Scott A. DeLoach,et al.  Runtime models for automatic reorganization of multi-robot systems , 2011, SEAMS '11.

[11]  Fredrik Heintz,et al.  DyKnow: A dynamically reconfigurable stream reasoning framework as an extension to the robot operating system , 2016, 2016 IEEE International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR).

[12]  Edward A. Lee,et al.  Ptera: an event-oriented model of computation for heterogeneous systems , 2010, EMSOFT '10.

[13]  Nico Hochgeschwender,et al.  RRA: Models and tools for robotics run-time adaptation , 2015, 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[14]  Johannes Mey,et al.  Bridging the Gap between Smart Home Platforms and Machine Learning using Relational Reference Attribute Grammars , 2019, 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C).

[15]  Donald E. Knuth,et al.  Semantics of context-free languages , 1968, Mathematical systems theory.

[16]  Ákos Horváth,et al.  Viatra 3: A Reactive Model Transformation Platform , 2015, ICMT.

[17]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[18]  Frédéric Boulanger,et al.  Exploring Multi-Paradigm Modeling Techniques , 2009, Simul..

[19]  Brice Morin,et al.  Using Models@Runtime for Designing Adaptive Robotics Software: an Experience Report , 2010 .

[20]  Florence Maraninchi,et al.  42: programmable models of computation for a component-based approach to heterogeneous embedded systems , 2007, GPCE '07.

[21]  Filipe Moutinho,et al.  Asynchronous-Channels Within Petri Net-Based GALS Distributed Embedded Systems Modeling , 2014, IEEE Transactions on Industrial Informatics.

[22]  Görel Hedin,et al.  JastAdd--an aspect-oriented compiler construction system , 2003, Sci. Comput. Program..

[23]  Morgan Quigley,et al.  ROS: an open-source Robot Operating System , 2009, ICRA 2009.

[24]  Alin Albu-Schäffer,et al.  Towards the Robotic Co-Worker , 2009, ISRR.

[25]  Andrew Howard,et al.  Design and use paradigms for Gazebo, an open-source multi-robot simulator , 2004, 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE Cat. No.04CH37566).

[26]  Lydia E. Kavraki,et al.  The Open Motion Planning Library , 2012, IEEE Robotics & Automation Magazine.

[27]  Frédéric Boulanger,et al.  ModHel'X: A Component-Oriented Approach to Multi-Formalism Modeling , 2008, MoDELS.

[28]  Dániel Varró,et al.  Foundations for Streaming Model Transformations by Complex Event Processing , 2016, Software & Systems Modeling.

[29]  Brice Morin,et al.  Kevoree Modeling Framework (KMF): Efficient modeling techniques for runtime use , 2014, ArXiv.

[30]  Alessandro Margara,et al.  Processing flows of information: From data stream to complex event processing , 2012, CSUR.

[31]  Daniel de Leng,et al.  Robust Stream Reasoning Under Uncertainty , 2019, Linköping Studies in Science and Technology. Dissertations.