Achieving Energy Efficiency with a Software Product Line Engineering Approach
Creators: name: Daniel-Jesus Munoz
Publisher: name: Zenodo
Year: 2023
Subjects: Software Product Lines
Energy Efficiency
Features
Variability Modelling
Automated Reasoning
Category Theory

description: You can find a live presentation video at https://youtu.be/yaYEoj4S3pc
The OECD states that energy consumption is a fuel for economic growth, but is closely linked to global climate change through greenhouse gas emissions. closely linked to global climate change through greenhouse gas emissions. emissions. Software systems do not consume energy themselves, but affect the use of hardware, which leads to indirect energy consumption. hardware, which leads to indirect energy consumption. Reducing the energy consumption of CPS requires a of the different actors, components and environment involved. According to the IEA, only data centres and data centres and networks alone consume 1% of the world's electricity. Energy-aware software design can energy-aware software design can reduce total energy consumption by 30-90%.
However, the different ways of measuring energy consumption in real time are very complex. The energy meters are devices that plug into the power socket and measure the amount of electricity flowing through it, while hardware energy models with predictive software tools are very complex. electricity flowing through it, while hardware energy models with predictive software tools can show how much energy any given component is using. can show how much energy any component uses for a specific process. Energy readings are provided as the total energy consumption in joules or the rate of energy consumption in watts. For battery-powered battery-powered devices, joules per task is a more interesting metric, while watts per task is more commonly used for battery-powered devices. per task is more used for devices directly connected to power. The usual approach to modelling and storing approach to modelling and storing power consumption readings is to describe them as a characteristic of individual components, such as monetary cost. individual components, such as the monetary cost of a hardware component.
However, the energy consumption values have many interactions between components, which makes it difficult to describe them with individual, static energy values. This makes it difficult to describe them in terms of individual, static energy values. Instead, we can store and energy information can be stored and populated in collaborative databases. The IEA and Datarade offer free databases with energy consumption data. free databases with energy consumption data for energy efficiency and sustainability analysis. Without However, the databases are not scalable for highly configurable systems because of the curse of the dimension. Our work focuses on Industry 4.0, specifically on Cyber-Physical Systems (acronym CPS), which are characterised by their high configurability and adaptability, presenting a large number of alternatives and a colossal number of alternatives and a colossal number of different systems in operation. This is known as the This is known as the search/solution space, the size of which is the set of all possible points that satisfy an optimisation problem. optimisation problem.
Partially known solution spaces are a common problem in many fields, such as computer engineering, machine learning, artificial intelligence and goal-oriented optimisation. engineering, machine learning, artificial intelligence and goal-oriented optimisation. The Constraint Satisfaction Problems (CSP) are mathematical problems defined as a set of objects whose state must satisfy a set of constraints. set of objects whose state must satisfy a set of constraints. Variability Models (acronym VMs) are tree-like structures used to represent the commonalities and differences of a CPS. Numerical Features (NFs) can be used in VMs to represent quantitative properties of the system, but they can be used to represent quantitative properties of the system, but most tools do not support NFs. In addition, NFs increase the size of the VM, NFs increase the size of the solution space by multiplying it by its domain size, which makes large solution spaces colossal. large solution spaces into colossal ones.
Quality Models (QMs) are tree structures that are used to determine which Quality Attributes (QAs) such as energy efficiency are to be taken into account when evaluating a project. which Quality Attributes (QAs) such as energy efficiency are to be taken into account when evaluating a system. system. ISO/IEC 25010 is the most popular QM formalisation, which groups QAs into eight different types. The Automated reasoning is the automation of formal logical reasoning to compute different types of information about system models. Examples are providing a VM or QM to a reasoning tool, and calculating the size of the reasoning tool, and calculating the size of the solution space, checking the satisfiability of the model, or generating only optimal systems based on objective functions. only optimal systems based on objective functions based on one or more QAs.
This thesis aims to find a native modelling and reasoning approach for a unified Quality and Variability Model (QVM). Variability and Quality Model (QVM). The aim is to develop an approach that supports modelling and reasoning for the reasoning oriented optimisation of numerical characteristics, an algebraic framework for unified QVMs, an online eco-assistant for optimising a user-constrained solution space measured for quality, and an algorithm and an online quality, and an algorithm and a web tool for learning the influences of energy and characteristics of user-constrained, domain-unknown and partially measured solution spaces.
description: This PhD. thesis has been supported by the European Union's H2020 research and innovation programme under grant agreement DAEMON H2020-101017109, by the projects IRIS PID2021-12281 2OB-I00 (co-financed by FEDER funds), Rhea P18-FR-1081 (MCI/AEI/ FEDER, UE), and LEIA UMA18-FEDERIA-157, and the PRE2019-087496 grant from the Ministerio de Ciencia e Innovación.