Table of Contents
Fetching ...

Model-Driven Rapid Prototyping for Control Algorithms with the GIPS Framework (System Description)

Maximilian Kratz, Sebastian Ehmes, Philipp Maximilian Menzel, Andy Schürr

TL;DR

The paper presents GIPS, a Graph-Based ILP Problem Specification framework enabling rapid prototyping of control algorithms through Model-Driven Software Engineering (MDSE). By combining Graph Transformation (GT) with Integer Linear Programming (ILP) and using the GIPSL DSL to express constraints and objectives, GIPS automatically generates Java runtime artifacts and, at runtime, derives optimized GT rule applications. The authors demonstrate a P2P topology maintenance scenario (lectureStudio) within a MAPE-K loop, showing how Analyze/Plan/Execute components can be generated from specifications and solved via an ILP solver (e.g., GLPK). This work highlights the potential of MDSE-driven prototyping to explore topology-control strategies, while acknowledging limitations in real-time applicability and outlining future directions for broader domains and enhanced automation.

Abstract

Software engineers are faced with the challenge of creating control algorithms for increasingly complex dynamic systems, such as the management of communication network topologies. To support rapid prototyping for these increasingly complex software systems, we have created the GIPS (Graph-Based ILP Problem Specification) framework to derive some or even all of the building blocks of said systems, by using Model-Driven Software Engineering (MDSE) approaches. Developers can use our high-level specification language GIPSL (Graph-Based ILP Problem Specification Language) to specify their desired model optimization as sets of constraints and objectives. GIPS is able to derive executable (Java) software artifacts automatically that optimize a given input graph instance at runtime, according to the specification. Said artifacts can then be used as system blocks of, e.g., topology control systems. In this paper, we present the maintenance of (centralized) tree-based peer-to-peer data distribution topologies as a possible application scenario for GIPS in the topology control domain. The presented example is implemented using open-source software and its source code as well as an executable demonstrator in the form of a virtual machine is available on GitHub.

Model-Driven Rapid Prototyping for Control Algorithms with the GIPS Framework (System Description)

TL;DR

The paper presents GIPS, a Graph-Based ILP Problem Specification framework enabling rapid prototyping of control algorithms through Model-Driven Software Engineering (MDSE). By combining Graph Transformation (GT) with Integer Linear Programming (ILP) and using the GIPSL DSL to express constraints and objectives, GIPS automatically generates Java runtime artifacts and, at runtime, derives optimized GT rule applications. The authors demonstrate a P2P topology maintenance scenario (lectureStudio) within a MAPE-K loop, showing how Analyze/Plan/Execute components can be generated from specifications and solved via an ILP solver (e.g., GLPK). This work highlights the potential of MDSE-driven prototyping to explore topology-control strategies, while acknowledging limitations in real-time applicability and outlining future directions for broader domains and enhanced automation.

Abstract

Software engineers are faced with the challenge of creating control algorithms for increasingly complex dynamic systems, such as the management of communication network topologies. To support rapid prototyping for these increasingly complex software systems, we have created the GIPS (Graph-Based ILP Problem Specification) framework to derive some or even all of the building blocks of said systems, by using Model-Driven Software Engineering (MDSE) approaches. Developers can use our high-level specification language GIPSL (Graph-Based ILP Problem Specification Language) to specify their desired model optimization as sets of constraints and objectives. GIPS is able to derive executable (Java) software artifacts automatically that optimize a given input graph instance at runtime, according to the specification. Said artifacts can then be used as system blocks of, e.g., topology control systems. In this paper, we present the maintenance of (centralized) tree-based peer-to-peer data distribution topologies as a possible application scenario for GIPS in the topology control domain. The presented example is implemented using open-source software and its source code as well as an executable demonstrator in the form of a virtual machine is available on GitHub.

Paper Structure

This paper contains 13 sections, 4 equations, 8 figures.

Figures (8)

  • Figure 1: Component diagram of the GIPS framework (red star = generated during build time) gipsGCM.
  • Figure 2: Extended workflow diagram of the GIPS framework gipsGCM.
  • Figure 3: Small example network of a lectureStudio document distribution. The left one is purely centralized and the right one uses a peer-to-peer mechanism. The central server node (LectureStudioServer) is shown as a square, relay clients are shown as diamonds, and normal clients are shown as circles.
  • Figure 4: GIPS as MAPE-K loop with the lectureStudio server (control loop) and the clients (managed elements). Blue arrows indicate data flow.
  • Figure 5: Simplified metamodel of the example's implementation.
  • ...and 3 more figures