Skip to main content

Enabling Autonomous IoT Systems: A Middleware-based Hybrid AI Approach to Self-adaptation

Overview of the CRAFTER architecture

Abstract
#

The proliferation of Internet of Things (IoT) devices has transformed traditional spaces into smarter, more interconnected environments. These advanced IoT systems consist of devices that sense physical phenomena and generate data, which are then processed by computing nodes before being used by applications. Such applications typically define specific Quality-of-Service (QoS) requirements, such as availability, accuracy, and latency, that must be met. To achieve this, IoT systems are normally configured to ensure that the QoS requirements of the deployed applications are met. This involves adjusting multiple parameters such as network settings, processing resources, and tuning data exchange systems. However, modern smart spaces are inherently dynamic and unpredictable. Changes in the number of IoT devices, network conditions, and available computational resources create a continuously evolving environment. Thus, to ensure that IoT systems operate autonomously, it is essential to design advanced self-adaptive mechanisms for maintaining QoS requirements of applications across dynamic smart spaces.This thesis proposes a middleware-based, hybrid Artificial Intelligence (AI) self-adaptation approach for enabling autonomous IoT operations across dynamic smart spaces. By combining logic-based approaches with data-driven AI techniques, we design effective and explainable self-adaptation solutions for IoT systems operating over dynamic environments. This is achieved through three main research contributions. First, queueing network modeling techniques are leveraged to compose QoS models that represent IoT systems under different situations and/or configurations of smart spaces. By simulating QoS models, we generate performance metrics datasets that can be used as input in self-adaptive approaches. These approaches dynamically adjust to changing conditions by selecting the configuration that best meets the QoS requirements specified by the applications. The second contribution enables AI-driven adaptation of IoT systems in smart spaces. By combining AI techniques such as Automated Planning and Reinforcement Learning, we design a framework involving intelligent agents capable of taking adaptation decisions at runtime. Possible adaptation actions include data flow configurations (e.g., priorities, drop rates) and resource control (e.g., network resources, computing resources). Finally, the third contribution enables proactive and explainable autonomous systems by relying on Causal Reinforcement Learning. To achieve this, Causality methodologies are employed to provide a formal analysis of the performance of IoT systems. Subsequently, causal models enable agents to take efficient adaptation actions in dynamic environments. We validate our proposed approach by developing a prototype implementation of an IoT system and experimenting with case studies considering different types of IoT environments. Our QoS models are evaluated and compared with a prototype implementation for validating the accuracy of the generated performance metrics datasets. We then evaluate the effectiveness of our solution by leveraging data from real deployments to ensure that our approach is valid in real-life settings. The self-adaptation approach presented in this thesis can be exploited to design resilient and modern IoT systems where interactive and real-time services are required, enabling smart spaces to autonomously adapt to changes in their environment, and ensuring optimal performance even under dynamic conditions.