Summary: | L'Internet des Objets (IdO) et les Environnements Intelligents (EI) ont attiré beaucoup d'activités de recherche et développement au cours de la dernière décennie. Pourtant, de nombreuses applications IdO/EI d'aujourd'hui sont encore limitées à l'acquisition et au traitement des données de capteurs et de leur contexte, avec un contrôle, le cas échéant, utilisant soit des solutions de base ou demandant l'intervention humaine, loin du contrôle automatique qui est un facteur essentiel de promouvoir ces technologies. Cette thèse vise à apporter le savoir-faire de la théorie du contrôle et des systèmes réactifs dans le domaine IdO/EI pour arriver à une solution avec une méthode formelle pour l'aspect de contrôle qui fait défaut. Nous proposons l'extension d'un canevas logiciel pour une infrastructure générique et partagée IdO/EI qui offre des interfaces de haut niveau pour réduire l'effort de conception, et qui permet l'auto-configuration et l'adaptation des applications de contrôle sur des propriétés génériques de l'environnement sans intervention humaine en utilisant les connaissances générales sur le domaine qui s'appliquent à chaque instance cible de système IdO/EI. Dans cette infrastructure étendue, les entités physiques individuelles (y compris toutes les "choses", appareils électriques et sous-ensembles de l'espace) peuvent être regroupées comme des entités virtuelles par des propriétés communes afin de fournir un niveau d'abstraction plus élevé pour le contrôle et d'autres applications, ainsi qu'une meilleure adaptation aux changements des configurations au niveau inférieur. Sur le requis d'une solution générique et commun dénominateur partagée par toutes les applications de l'IdO/EI dans un environnement donné, nous proposons pour cette infrastructure, de modéliser les entités cibles supervisées et contrôlées, y compris les entités individuelles et de leurs regroupements, ainsi que les choses et les entités spatiales, par des automates à états finis, pour être en mesure d'appliquer la technique de la synthèse des contrôleur discrets (SCD) aux différents niveaux d'abstraction et de granularité. SCD est une méthode formelle qui construit automatiquement un contrôleur, s'il existe, en assurant les objectifs de contrôle exigés concernant le modèle de comportement du système donné en termes d'automates parallèles synchrones. Les langages de programmation BZR et les outils Sigali existants sont utilisés pour effectuer la SCD et de générer un contrôleur de manière automatique. Les modules logiciels nécessaires sont proposés dans l'implémentation tels que le module de maintenance de relation qui garde une association correcte entre les instances d'entités individuelles et les groupes, et répercute des commandes d'action du contrôle de haut niveau aux actionneurs correspondants. Ce module est destiné à évoluer plus tard vers une solution plus générique comme une base de données graphes comprenant à la fois la base de connaissances générales et relations spécifiques d'instance environnement. La résolution des conflits entre les objectifs de contrôle venant de contrôleurs concurrent est également indispensable en raison des objectifs de l'ouverture de la plateforme. Un simulateur de contexte basé sur Java a été développé pour simuler l'environnement de la maison au sein de plusieurs scénarios proposés pour la validation, tels que le contrôle de la charge électrique et l'adaptation au contexte de l'activité. === The Internet of Things (IoT) and Smart Environments (SE) have attracted a lot of research and development activities during the last decade. Yet many present-day IoT/SE applications are still limited to the acquisition and processing of sensor data and its context, with control, if any, using either basic solutions or requiring human intervention, far away from the automatic control which is an essential factor to promote the technologies. This thesis targets to bring knowhow from control theory and reactive systems to the IoT/SE domain to achieve a solution with a formal method for the missing control aspect. We propose the extension of a framework in order to build a shared generic IoT/SE infrastructure offering high-level interfaces to reduce design effort, and enabling the self-configuration and adaptation of control applications over generic properties of the environment without human interaction by using general knowledge over the domain that applies to each target instance of IoT/SE system. In this extended framework, individual physical entities (including all relevant "things", appliances and subsets of space) may be grouped as virtual entities by shared properties to provide a higher level abstraction for control and other applications and better adaptation to lower level configuration changes. Requiring a generic common denominator solution shared by all IoT/SE applications in a given environment, we propose for this infrastructure, to model by finite state automata the target entities to be monitored and controlled, including both individual entities and their groupings, as well as things and space entities, to be able to apply discrete controller synthesis (DCS) technique over any of these at different levels of abstraction and granularity. DCS is a formal method which constructs automatically a controller, if it exists, guaranteeing the required control objectives regarding to the given system behavior model in terms of synchronous parallel automata. The existing BZR programming language and Sigali tools are employed to perform DCS and generate a controller in an automatic way. Necessary supporting software modules are proposed in the implementation such as the relation maintenance module keeping the correct association between individual entity instances and groups, and dispatching the action orders from the high level control to corresponding actuators. This module would evolve later to a more generic solution such as a graph data base including both the general knowledge base and specific environment instance relations. Conflict resolution between objectives of control coming from concurrent controllers is also indispensable due to the intended openness of the platform. A java based context simulator has been developed to simulate the home environment within several scenarios proposed for the validation, such as electrical load control and activity context adaptation.
|