RailCabs and Birds in Julia: Context-Role Ensemble Engineering in Practice

Research output: Contribution to book/Conference proceedings/Anthology/ReportConference contributionContributedpeer-review

Abstract

Because ensembles and swarms occur everywhere in nature, in social and in technical contexts, their modeling and programming is one of the challenges of modern software systems engineering. While it is well-known how self-adaptive or autonomic systems can be designed advantageously (Kounev et al., 2017), this often requires the engineering of new software languages with a tremendous development effort. This paper presents a novel context-role-adaptive approach for modeling and programming of ensembles and swarms that relies on a small library in Julia (1300 SLOC), exploiting its facilities for metaprogramming, multiple dispatch, and equational modeling. We demonstrate the validity of the approach with a tutorial on two scenarios from the technical and natural domain in which ensembles are represented by (dynamic) contexts. RailCabs are shuttle-based autonomous trains, self-forming ensembles, represented as contexts that re-group during their travels. Bird swarms show specific formations, represented as contexts to save energy and to prevent attackers. In the latter case study, we show how to model the dynamic behavior of the birds with an equational modeling library in Julia. Therefore, the paper contributes a new library-based approach to Context-Role-oriented Equational Modeling of Ensembles (CREME).

Details

Original languageEnglish
Title of host publicationLeveraging Applications of Formal Methods, Verification and Validation. Rigorous Engineering of Collective Adaptive Systems
EditorsTiziana Margaria, Bernhard Steffen
PublisherSpringer Nature
Pages191–207
Number of pages16
ISBN (electronic)978-3-031-75107-3
ISBN (print)978-3-031-75106-6
Publication statusPublished - 27 Oct 2024
Peer-reviewedYes

Publication series

SeriesLecture Notes in Computer Science
Volume15220
ISSN0302-9743

External IDs

ORCID /0000-0002-3513-6448/work/171065335
ORCID /0009-0008-3887-3217/work/171066102

Keywords

Research priority areas of TU Dresden

DFG Classification of Subject Areas according to Review Boards