Abstract
Scenario-Based Programming (SBP) is an approach to modeling and running complex, event-based, system behavior by composing narrower views of overall behavior. In this paper we introduce significant extensions to the strict interfaces by which scenarios in existing SBP frameworks specify what the system must, may, or must not do, and to the mechanisms that execute these scenarios: (i) we allow events with a multitude of variables and parameters; each event can become an entire model, and each event selection can be the selection of a major section of the new state of the system and the environment; (ii) we extend the basic request/block SBP interfaces with a rich set of composable constraints and functions, which can describe desired and undesired variable assignments, where each constraint may relate to all variables or to just a subset thereof; (iii) we introduce a central, application-agnostic mechanism for adding optimization to standard event selection; and (iv) we relate our method to Null-Space Behavior (NSB)—a successful compositional approach in control theory. We demonstrate these language-independent concepts through several use cases that are implemented in a variety of languages and solvers.
Original language | English |
---|---|
Title of host publication | Model-Driven Engineering and Software Development - 7th International Conference, MODELSWARD 2019, Revised Selected Papers |
Editors | Slimane Hammoudi, Luís Ferreira Pires, Bran Selic |
Publisher | Springer |
Pages | 246-274 |
Number of pages | 29 |
ISBN (Print) | 9783030378721 |
DOIs | |
State | Published - 2020 |
Event | 7th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2019 - Prague, Czech Republic Duration: 20 Feb 2019 → 22 Feb 2019 |
Publication series
Name | Communications in Computer and Information Science |
---|---|
Volume | 1161 CCIS |
ISSN (Print) | 1865-0929 |
ISSN (Electronic) | 1865-0937 |
Conference
Conference | 7th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2019 |
---|---|
Country/Territory | Czech Republic |
City | Prague |
Period | 20/02/19 → 22/02/19 |
Bibliographical note
Publisher Copyright:© Springer Nature Switzerland AG 2020.
Keywords
- Behavioral programming
- Constraint solvers
- MATLAB-Simulink Z3
- Mathematica
- NSB
- Python
- SMT solvers
- Scenario-Based Programming