Summary: | Une large gamme de problèmes pratiques nécessite une diversité de représentation et de modélisation des données et de développer des modèles dans lesquels les différentes données peuvent être représentées. Dans cette thèse, nous nous intéressons à l'hybridation de deux modèles : le modèle des Systèmes Experts (SE) et le modèle des Problèmes de Satisfaction de Contraintes (CSP). L'objectif de notre travail est de proposer un système distribué et sécurisé pour intégrer des contraintes dans un moteur d'inférence. Pour ce faire, nous avons d'une part développé un outil de communication qui facilite la collaboration entre SE et CSP. D'autre part, nous avons conçu un algorithme qui permet la communication entre plusieurs agents situés dans un environnement distribué. Enfin, un de nos buts, et non des moindres, est d'assurer la protection des données privées de chaque entité. La thèse est donc constituée de trois axes principaux : Le premier axe vise l'élaboration d'une méthode de communication entre les deux modèles. Tout d'abord, nous décrivons une procédure de transformation automatique entre un système expert à base de règles vers un nouveau modèle de CSP dynamique nommé DDCSP (Dynamic Domain CSP) que nous avons au préalable défini. Cette procédure de transformation automatique permettra l'injection des résultats de l'un des deux modèles en entrée de l'autre. Cette procédure joue donc un rôle essentiel pour assurer la collaboration qui s'appuie sur l'échange d'informations. Le deuxième axe est consacré à la prise en compte de la distribution d'un problème CSP sur plusieurs sites. Nous proposons un algorithme basé sur la notion de coopération et de parallélisme qui assure une résolution distribuée entre plusieurs agents. Notre approche consiste à construire un anneau d'agents autonomes, responsable chacun d'une partie des variables et des contraintes du problème. Chacun de ces agents va initier un processus qui explore une branche différente de l'arbre de recherche. Des heuristiques sont proposées pour garantir une diversification des explorations, en d'autres termes pour éviter que les branches explorées ne se recouvrent. Enfin, nous présentons une technique de sécurisation de cet algorithme dans l'environnement distribué basée sur l'utilisation judicieuse des propriétés de cryptographie asymétrique pour préserver la confidentialité des instanciations. Afin d'effectuer une validation expérimentale de nos travaux, une implémentation dans les langages de programmation C/C++ ou Java est décrite dans chacun de ces trois axes. === A wide range of practical problems requires diversity of data representation and to develop models in which different data can be represented. In this thesis, we focus on the hybridization of two models: Expert System (ES) and Constraint Satisfaction Problem (CSP).The aim of our work is to propose a secure distributed system that allows integrating constraints in an inference engine.To reach this goal, on one hand we developed a communication tool that facilitates collaboration between ES and CSP. On the other hand, we designed an algorithm that allows communication between multiple entities in a distributed environment. Finally, one of our goals, not the least, is to protect private data of each entity. The thesis is composed of three main axes.The first priority is to develop a method of communication between the two models. First, we describe an automatic transformation procedure of the rule based expert system into the new dynamic CSP model called DDCSP (Dynamic Domain CSP) that we have designed. This procedure will automatically transform and inject the result of one of the two models as input to the other one. This process plays an essential role for collaboration based on the exchange of information.Our second axe proposes an algorithm based on the concept of cooperation and parallelism which provides a resolution distributed among several entities. Our approach is to build a ring of autonomous agents, each responsible for some of the variables and constraints of the problem. Each of these agents will initiate a process that explores a different branch of the search tree. Heuristics are proposed to ensure a diversification of exploration, in other words to prevent overlapping of the explored branches.Finally, we present a technique for securing this distributed algorithm based on a judicious use of the properties of asymmetric encryption to protect the confidentiality of instantiations. To perform an experimental validation of our work, an implementation in the programming languages C/C++ or Java is described in each of these three axes.
|