Thèse : Marie-Pierre Gleizes, Ahmed Hadj Kacem Et Frédéric Migeon Rapporteurs : Leila Jemni Ben Ayed Et Abderrafiaa Koukam
Total Page:16
File Type:pdf, Size:1020Kb
TTHHÈÈSSEE En vue de l'obtention du DOCTORAT DE L’UNIVERSITÉ DE TOULOUSE ET DE L’UNIVERSITÉ DE SFAX Délivré par Université Toulouse III - Paul Sabatier et Faculté des Sciences Economiques et de Gestion - Sfax Discipline ou spécialité : Informatique Présentée et soutenue par Zaineb Graja Le 15 septembre 2015 Titre : Vérification formelle des systèmes multi-agents auto-adaptatifs JURY Leila Jemni Ben Ayed, Maître de conférences (Hdr), Université de la Manouba (rapporteur) Marie-Pierre Gleizes, Professeur, Université Paul Sabatier – Toulouse III (directrice) Ahmed Hadj Kacem, Professeur, Université de Sfax (directeur) Dominique Méry, Professeur, Université de Lorraine (examinateur) Yamine Ait Ameur, Professeur, INPT-ENSEEIHT - Université de Toulouse (examinateur) Frédéric Migeon, Maître de conférences, Université Paul Sabatier – Toulouse III (encadrant) Abderrafiaa Koukam, Professeur, Université de Technologie de Belfort-Montbéliard (rapporteur) Ecoles doctorales : Mathématiques Informatique Télécommunications (MITT) et Sciences Economiques, Gestion et Informatique Unités de recherche : Institut de Recherche en Informatique de Toulouse (IRIT) et Laboratoire de Recherche en Développement et Contrôle d’applications Distribuées (ReDCAD) Directeur(s) de Thèse : Marie-Pierre Gleizes, Ahmed Hadj Kacem et Frédéric Migeon Rapporteurs : Leila Jemni Ben Ayed et Abderrafiaa Koukam Zaineb Graja VERIFICATION FORMELLE DES SYSTEMES MULTI-AGENTS AUTO-ADAPTATIFS Directeurs de thèse : Marie-Pierre Gleizes, Ahmed Hadj Kacem et Frédéric Migeon Résumé Un Système Multi-Agents (SMA) est formé par un grand nombre d’éléments appelés agents capables d’interagir ensemble afin de réaliser une tâche commune. Ces agents n’ont aucune information sur la fonction globale qu’ils doivent réaliser et fonctionnent généralement se- lon des règles comportementales simples. Pour décider des actions à entreprendre, ils re- posent uniquement sur des perceptions partielles de leur voisinage. On dit que la fonction globale du système émerge des interactions entre les agents. Un des défis majeurs pour le développement des SMA auto-organisateurs est de garantir la convergence du système vers la fonction globale attendue par un observateur externe au système et de garantir que les agents sont capables de s’adapter face aux perturbations. Dans la littérature, plusieurs travaux se sont basés sur la simulation et le model-checking pour analyser les SMA auto-organisateurs. La simulation permet aux concepteurs d’expéri- menter plusieurs paramètres et de créer certaines heuristiques pour faciliter la conception du système. Le model-checking fournit un support pour découvrir les blocages et les viola- tions de propriétés. Cependant, pour faire face à la complexité de la conception des SMA auto-organisateurs, le concepteur a également besoin de techniques qui prennent en charge non seulement la vérification, mais aussi le processus de développement lui-même. En outre, ces techniques doivent permettre un développement méthodique et faciliter le raisonnement sur divers as- pects du comportement du système à différents niveaux d’abstraction. Dans ce cadre, nous jugeons que le langage formel B-événementiel et la technique de raffinement associée four- nissent une base appropriée pour le développement formel des SMA auto-organisateurs. Dans cette thèse, trois contributions essentielles ont été apportées dans le cadre du dévelop- pement et la vérification formelle des SMA auto-organisateurs : une formalisation à l’aide du langage B-événementiel des concepts clés de ces systèmes en trois niveaux d’abstraction, une expérimentation d’une stratégie de raffinement descendante pour le développement des SMA auto-organisateurs et la proposition d’un processus de raffinement ascendant basé sur des patrons de raffinement. La première contribution est axée sur la formalisation de ces systèmes sur trois niveaux d’abstraction : (1) le niveau micro correspond aux comportements locaux des entités du système –les agents (le SMA) et l’environnement– considérés unilatéralement ; (2) le niveau méso correspond à la description des interactions du SMA dans l’environnement ; (3) le ni- veau macro décrit le comportement du système dans sa globalité observé par un observateur externe. Cette formalisation est réalisée à l’aide du langage B-événementiel et nous a permis de prouver des propriétés locales. Afin de prouver des propriétés globales liées à la conver- gence et la résilience, nous avons eu recours à la logique temporelle des actions (TLA). La deuxième contribution nous a permis d’expérimenter un processus descendant et de motiver par conséquent le choix d’adopter un processus ascendant pour la vérification des SMA auto-organisateurs. ii La troisième contribution réside dans la définition d’un processus ascendant pour le déve- loppement de SMA auto-organisateurs basé sur des patrons de raffinement. Ces patrons ap- portent une assistance au concepteur pour développer un comportement correct des agents aux niveaux micro et méso. Ils offrent également des guides pour prouver les propriétés de convergence et de résilience observées à l’aide des simulations au niveau macro du système. Vérication formelle des systèmes multi-agents auto-adaptatifs iii Zaineb Graja FORMAL VERIFICATION OF SELF-ADAPTIVE MULTI-AGENTS SYSTEMS Supervisors : Marie-Pierre Gleizes, Ahmed Hadj Kacem and Frédéric Migeon Abstract A Multi-Agent System (MAS) is composed by a large number of elements called agents interacting together in order to perform a common task. These agents have no information about the global function they have to perform and operate according to simple behavioral rules. Their decisions are based only on partial representations of their environment. The overall function of the system is said to emerge from the interactions between agents. A major challenge for the development of self-organizing MAS is to guarantee the conver- gence of the system to the overall function expected by an external observer and to ensure that agents are able to adapt to changes. In the literature, several works were based on simu- lation and model-checking to study self-organizing MAS. The simulation allows designers to experiment various settings and create some heuristics to facilitate the system design. Model checking provides support to discover deadlocks and properties violations. However, to cope with the complexity of self-organizing MAS, the designer also needs tech- niques that support not only verification, but also the development process itself. Moreover, such techniques should support disciplined development and facilitate reasoning about va- rious aspects of the system behavior at different levels of abstraction. In this context, we believe that the Event-B language and associated technical refinement provide an appro- priate basis for the formal development of self-organizing MAS. In this thesis, three essential contributions were made in the field of formal development and verification of self-organizing MAS : a formalization with the Event-B language of self- organizing MAS key concepts into three levels of abstraction, an experimentation of a top- down refinement strategy for the development of self-organizing MAS and the definition of a bottom-up refinement process based on refinement patterns. The first contribution focuses on the formalization of these systems on three levels of abs- traction : (1) the micro level corresponds to the local behavior of the entities –the MAS and the environment– considered unilaterally ; (2) the meso level is a description of the inter- actions of the MAS and its environment ; (3) the macro level describes the behavior of the overall system observed by an external observer. This formalization is performed using the Event-B language and allows us to prove the local properties. In order to prove the global properties related to convergence and resilience, we use the temporal logic of actions (TLA). The second contribution has enabled us to experiment a top-down process and therefore to motivate the choice to adopt a bottom-up process for the verification of self-organizing MAS. The third contribution is a definition of a bottom-up process for the development of self-organizing MAS based on refinement patterns. These patterns provide assistance to the designer to develop a correct behavior of the agents at the micro and meso levels. They also offer guidelines to prove the convergence and resilience properties observed using simula- tions at the system macro level. v vi Zaineb Graja Je dédie cette thèse à la mémoire de Baba Hadj Salah, mon grand père. Remerciements « Si j’ai vu si loin, c’est que j’étais monté sur des épaules de géants » Isaac Newton IENS enfin le sacré moment de la rédaction des remerciements. J’avoue que c’est un Vmoment plein d’émotions où les souvenirs se bousculent dans ma tête et où larmes, joie et fierté viennent se mêler. Ce moment marque pour moi la fin d’une aventure exceptionnelle de la quelle je sort grandie et qui n’a pas pu avoir tant de charme sans la présence de ces personnes qui m’ont épaulé durant toutes ces années et auxquelles j’ai le plaisir d’adresser mes sincères remerciements. Je tiens à remercier ... ... Ahmed Hadj Kacem, Professeur à la Faculté des Sciences Economiques et de Gestion de Sfax. Pour la confiance que tu m’as accordée depuis que j’ai été étudiante en mastère en me mettant en contact avec Marie-Pierre et en me recommandant à elle pour faire cette thèse en cotutelle. Tes encouragements et tes conseils m’ont été d’une grande utilité. J’espère que je ne t’ai pas déçu. ... Marie-Pierre Gleizes, Professeur à l’Université Paul Sabatier et chef de l’équipe SMAC. Pour m’avoir accueilli chaleureusement dans ton équipe et m’avoir permis de "grandir" dans une ambiance si active et dynamique. Ton dévouement à la recherche, à la science, aux SMA m’inspire. Pour moi tu es beaucoup plus qu’une directrice de thèse,... tu es une idole. ... Frédéric Migeon et Christine Maurel, Maîtres de conférences à l’Université Paul Saba- tier. Pour avoir été là chaque fois que j’avais besoin de vous. Vous avez toujours su, grâce à votre optimisme, votre bonne humeur et votre patience, me motiver, rebooster ma confiance en moi et m’aider à m’accrocher.