EN FR
EN FR


Section: Overall Objectives

Introduction

The research goals of the Dream project-team concern monitoring complex systems. The challenge is to design smart systems, both adaptable and dependable, to answer the demand for self-healing embedded systems. The considered systems meet a fixed common goal (or contract), possibly expressed by a set of QoS (Quality of Service) constraints. The Dream team investigates and develops model-based approaches. Dealing with dynamic systems, a central role is given to temporal information and the model specification uses event-based formalisms such as discrete-event systems (mainly described by automata), or sets of chronicles (a chronicle is a temporally constrained set of events). We investigate two main research questions. Firstly, we design and develop distributed architectures and efficient diagnosis/repair algorithms for highly distributed systems. Secondly, we study the automatic acquisition of models from data using symbolic machine learning and data mining methods, with a particular focus on data stream processing. Target applications are of two kinds: large component-based system monitoring applications, like telecommunication networks, and software systems like web services and environmental protection systems with development of decision support systems to help managing agricultural plots and support high water quality threatened by pollution.

In this context, the research questions we are investigating are the following.

Classical model-based diagnosis methodologies appear to be inadequate for complex systems due to the intractable size of the model and the computational complexity of the process. It is especially true when one considers on-line diagnosis or when many interacting components (or agents) make up the system. This is why we focus on decentralized approaches which relies on computing local diagnoses from local models and synchronizing them to get a global view of the current state of the system. The problems we are investigating are the following: (i) which strategy to select for synchronizing the local diagnoses in an optimal way to maintain the efficiency and the completeness of the process, (ii) which kind of communication protocols to use, (iii) how to improve the computation efficiency by using adequate symbolic representations, (iv) how to guarantee the efficiency of incremental on-line diagnosis where observations come from a continuous stream?

When designing a dependable and adaptive system, a main point is to formally characterize the intended properties of the system such as diagnosability (i.e. whether, given the system specifications, it is possible to detect and explain an error in due time), or repairability (i.e. whether it is possible to get the system back to correctness, in due time).

More recently, we enlarge our interest and consider in the same view both monitoring, deficiency detection, diagnosis and the consequent system adaptation or repair. We extended diagnosability to self-healability and investigated how to weave diagnosis and repair, to get adaptive systems maintaining a good QoS, even in unexpected, or even abnormal conditions.

It is well-recognized that model-based approaches suffer from the difficulty of model acquisition. The first issue we have studied is the automatic acquisition of models from data with symbolic learning methods and data mining methods. We list the investigated problems here. How to improve relational learning methods to cope efficiently with data coming from signals (as an electrocardiogram in the medical domain) or alarm logs (in the telecommunication domain)? How to integrate signal processing algorithms to the learning or diagnosis tasks when these latter ones rely on a qualitative description of signals? How to adapt the learning process to deal with multiple sources of information (multi-sensor learning)? How to apply learning techniques to spatiotemporal data? How to combine data mining and visualization to help experts build their models?

Concerning evolving context management and adaptive systems, an emerging issue is to detect when a model is becoming obsolete and to update it by taking advantage of the current data. This difficult and new issue has strong connections with data streams processing. This is a big challenge in the monitoring research area where the model serves as a reference for the diagnosis task.

The last point we consider is the decision part itself, mainly having abilities to propose repair policies to restore the functionalities of the system or the expected quality of service. A first direction is to interleave diagnosis and repair and to design some decision-theoretic procedure to dynamically choose the best action to undertake. Another direction concerns how to automatically build the recommending actions from simulation or recorded data.