AI-Based Methods to Resolve Real-Time Scheduling for Embedded Systems: A Review

AI-Based Methods to Resolve Real-Time Scheduling for Embedded Systems: A Review

Fateh Boutekkouk
DOI: 10.4018/IJCINI.290308
Article PDF Download
Open access articles are freely available for download

Abstract

Artificial Intelligence is becoming more attractive to resolve nontrivial problems including the well known real time scheduling (RTS) problem for Embedded Systems (ES). The latter is considered as a hard multi-objective optimization problem because it must optimize at the same time three key conflictual objectives that are tasks deadlines guarantee, energy consumption reduction and reliability enhancement. In this paper, we firstly present the necessary background to well understand the problematic of RTS in the context of ES, then we present our enriched taxonomies for real time, energy and faults tolerance aware scheduling algorithms for ES. After that, we survey the most pertinent existing works of literature targeting the application of AI methods to resolve the RTS problem for ES notably Constraint Programming, Game theory, Machine learning, Fuzzy logic, Artificial Immune Systems, Cellular Automata, Evolutionary algorithms, Multi-agent Systems and Swarm Intelligence. We end this survey by a discussion putting the light on the main challenges and the future directions.
Article Preview
Top

1. Introduction

Embedded systems (ES) have penetrated our life to a point where we cannot ensure our daily business, assignments and chores in their absence. These systems have undergone a dramatic increase in functionality and omnipresence in such a way no one can negate their remarkable influence on our behaviors, habits and even our convictions.

Whatever their architectures type (i.e. centralized Vs. distributed), the used technologies (i.e. wired, wireless, optical) and the application fields (i.e. automotive, avionics, space, robotics, health care, military, entertainment and so on), ES have some common decisive requirements among others the real time constraints, the reduced energy consumption and the reliability assurance.

First, ES are qualified as Real Time (RT) systems. A RT system is any system where its correction depends not only on the results of computations, but also on the time instants at which these results become available. In other term, a real-time system is responsible for delivering logically correct computations within the predefined deadlines.

Depending on the severity of the timing constraint (i.e. deadline), RT systems can be hard (i.e. critical), soft, firm or any combination of them. RT systems typically incorporate a RTOS (Real Time Operating System) kernel. The latter is responsible of many vital activities for ES such as tasks scheduling, Input/output management, memory management, security and so on. Since ES are often battery-dependent, their design have to minimize their power dissipation and energy consumption accordingly. Energy-aware design methodologies of ES are becoming popular in the ES terminology. The other important characteristic is the reliability.

In its large sense, reliability means the capacity of the system to continue its functioning even in the absence of faults. Reliability includes many aspects or attributes such as availability, safety (i.e. functional correction), data integrity, etc. Each attribute has a set of means to realize it. For example, availability can be achieved through faults tolerance. The latter has many mechanisms among them the spatial redundancy (i.e. hardware redundancy) and the temporal redundancy (i.e. the re-execution of the same task or code). Faults tolerant or reliability-aware methodologies are also being an inherent part of the ES jargon.

Contrary to traditional ES, nowadays, ES are becoming more complex, more open and networked and integrate intelligent parts that can function in hostile, dynamic environments (probably with uncertain or partial knowledge) autonomously, simulating a bit of some human intellectual activities such as reasoning, learning, memorization, perception, decision-making, self-adaptation, and self-optimization. On the other hand, the exponential progress in the hardware technology conducting to the appearance of multi-core and parallel computing on chip, very high performance processing and reconfigurable hardware render embedding AI in ES possible. Of course, this coupling between AI and ES is not trivial at all, since the two fields have different philosophies. While AI deals with more complex cognitive, theoretically with unlimited resources tasks, ES are by nature reactive and have limited resources. The integration of AI into ES leads to the emergence of what we call ‘intelligent embedded systems’ (IES).

IES design is a hot research topic investigating the application of the most famous AI models and methods as Artificial Neural Networks (ANN), Reinforcement learning, multi agent systems (MAS), swarm intelligence, Genetic Algorithms, fuzzy logic, constraint programming, game theory, cellular automata, and Artificial Immune Systems (AIS) to ES design while meeting the temporal, the energetic and the reliability requirements in addition to the cost constraint and end-users goals satisfaction.

This paper is interested in the application of AI to resolve the well-known problem of RT scheduling for embedded systems. The possibility of coupling AI with RT systems was discussed earlier (Musliner et al., 1994) and a few existing works had yet been interested in the application of expert systems to resolve the traditional jobs scheduling problem (MacCarthy & Jou, 1995). In turn, (Laalaoui & Bouguila, 2014) presented a non-exhaustive survey on the application of some AI methods to the static RT scheduling.

Complete Article List

Search this Journal:
Reset
Volume 18: 1 Issue (2024)
Volume 17: 1 Issue (2023)
Volume 16: 1 Issue (2022)
Volume 15: 4 Issues (2021)
Volume 14: 4 Issues (2020)
Volume 13: 4 Issues (2019)
Volume 12: 4 Issues (2018)
Volume 11: 4 Issues (2017)
Volume 10: 4 Issues (2016)
Volume 9: 4 Issues (2015)
Volume 8: 4 Issues (2014)
Volume 7: 4 Issues (2013)
Volume 6: 4 Issues (2012)
Volume 5: 4 Issues (2011)
Volume 4: 4 Issues (2010)
Volume 3: 4 Issues (2009)
Volume 2: 4 Issues (2008)
Volume 1: 4 Issues (2007)
View Complete Journal Contents Listing