Plan. Les systèmes multi-agents De la conception à la programmation. Comment gérer les distribution? Intelligence Artificielle Distribuée (I.A.



Documents pareils
Programmation orientée-agent : évaluation comparative d outils et environnements

Modélisation multi-agents - Agents réactifs

La plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle

JADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.

Systèmes Multi-Agents : Modélisation et simulation informatique de comportements collectifs. Chapitre III

Programmation d'agents intelligents Vers une refonte des fils de raisonnement. Stage de fin d'études Master IAD 2006

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Etude de la simulation de systèmes multiagents pour la conception vivante d agents dans la méthode ADELFE

Intelligence Artificielle Distribuée (IAD)& Systèmes Multi-Agents (SMA)

Complexité et auto-organisation chez les insectes sociaux. Complexité et auto-organisation chez les insectes sociaux

Les apports de l informatique. Aux autres disciplines

L apprentissage automatique

Conception et contrôle des SMA tolérants aux fautes

Pourquoi l apprentissage?

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Programmation de services en téléphonie sur IP

Auto-explication des Chorégraphies de Services

AXES DE RECHERCHE - DOMAINE D'INTERET MAJEUR LOGICIELS ET SYSTEMES COMPLEXES

UNIVERSITE DE TECHNOLOGIE DE COMPIEGNE U. F. R. DE SCIENCES ET TECHNOLOGIE. Doctorat. Technologies de l information et des systèmes FABRICIO ENEMBRECK

Programmation orientée agents #1. v 1.3. M1 S2 - Université de Montpellier II"

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Atelier Transversal AT11. Activité «Fourmis» Pierre Chauvet.

Brève introduction à la recherche d!information sur le Web à base d!agents logiciels

Hervé Couturier EVP, SAP Technology Development

Brève introduction aux agents logiciels Bernard ESPINASSE

La Programmation Orientée Agent Les Agents Réactifs

Comportements Individuels Adaptatifs dans un Environnement Dynamique pour l'exploitation Collective de Ressource

SOUTIEN INFORMATIQUE DEP 5229

Construction modulaire d'agents et de systèmes multi-agents adaptatifs en DIMA

CAHIER DU LAMSADE 291

Systèmes Multi-Agents «réactifs»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

L intelligence artificielle distribuée appliquée aux jeux d équipe situés dans un milieu dynamique : l exemple de la RoboCup

Intelligence Artificielle et Robotique

MASTER SIS PRO : logique et sécurité DÉTECTION D INTRUSIONS. Odile PAPINI, LSIS. Université de Toulon et du Var. papini@univ-tln.

Implantation des protocoles de communication FIPA dans la plate-forme GAMA

Cours Bases de données

COR-E : un modèle pour la simulation d agents affectifs fondé sur la théorie COR

GI81 : Réseaux & Travail Collaboratif Partie I : Travail Collaboratif

Système immunitaire artificiel

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Systèmes décisionnels et programmation avancée

Intelligence Artificielle Distribuée. Systèmes Multi-Agents. Intelligence Artificielle Distribuée. Guillaume Hutzler / Tarek Melliti

Utilisation des tableaux sémantiques dans les logiques de description

Projet Active Object

Présentation du module Base de données spatio-temporelles

Poker. A rendre pour le 25 avril

Retour d expériences avec UML

MATHEMATIQUES ET SCIENCES POUR L INGENIEUR

Une méthode d apprentissage pour la composition de services web

Environnement Architecture de controle. Décisions

En vue de l'obtention du

Université Libre de Tunis

Conception d une plateforme multi agent pour la collecte de données dans une base de données distribuée

Université de Bangui. Modélisons en UML

Intelligence des essaims (Swarm Intelligence)

L intelligence collective des fourmis

1. Smart Energy Management System (SEMS)

République Algérienne Démocratique et Populaire Ministère de l Enseignement Supérieur et de la Recherche Scientifique Université Mohamed Khider-BISKRA

Intranet / Groupware LORIA - Université d automne Intranet/Groupware - L. Mirtain 1

IODAA. de l 1nf0rmation à la Décision par l Analyse et l Apprentissage / 21

Jean-Philippe Préaux

Segmentation d'images à l'aide d'agents sociaux : applications GPU

Conception des systèmes répartis

Christophe Le Page CIRAD - UPR Green

Analyse,, Conception des Systèmes Informatiques

Exemple de projet et réseau: modélisation et simulation des systèmes socio-environnementaux

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

Le pilotage des collaborations et l interopérabilité des systèmes d information Vers une démarche intégrée

UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE

Quand le bâtiment va, tout va

Surveillance logicielle à base d une communauté d agents mobiles

RÉSUMÉ DESCRIPTIF DE LA CERTIFICATION (FICHE RÉPERTOIRE)

Efficacité énergétique pour les particuliers : une solution pour le monitoring énergétique

Intelligence Artificielle Planification

Master IAC Philippe Caillou DÉVELOPPEMENT DE SMA. Cours 1b

Évaluation et implémentation des langages

Jean-Daniel Fekete Directeur de Recherche, Resp. équipe-projet AVIZ INRIA

UE 8 Systèmes d information de gestion Le programme

Big Data et Graphes : Quelques pistes de recherche

Partenaires: w w w. c o g m a s t e r. n e t

WEA Un Gérant d'objets Persistants pour des environnements distribués

Chapitre 1 : Introduction aux bases de données

DATASET / NETREPORT, propose une offre complète de solutions dans les domaines suivants:

Ingénierie et gestion des connaissances

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

TITRE DE L ACTIVITÉ : Vivre en groupe chez les animaux. DISCIPLINES ET DOMAINES D ACTIVITÉ de la discipline

Master Informatique Aix-Marseille Université

Big Data et Graphes : Quelques pistes de recherche

Thèse de Doctorat de l Université Pierre et Marie Curie PARIS VI

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION


Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Problématiques de recherche. Figure Research Agenda for service-oriented computing

De la conception participative de systèmes multi-agents. à la mise en place de coopérations humain non-humain

KMnet Admin LOGICIEL COMPLET ET PERFORMANT D'ADMINISTRATION DES PÉRIPHÉRIQUES.

Audition pour le poste de Maître de conférence INSA Lyon distributed Robotics avec aectation au CITI. Guillaume Lozenguez.

Organisation du parcours M2 IR Les unités d enseignements (UE) affichées dans la partie tronc commun sont toutes obligatoires, ainsi que le stage et

Vérifier la qualité de vos applications logicielle de manière continue

MEAD : temps réel et tolérance aux pannes pour CORBA

Transcription:

Plan Les systèmes multi-agents De la conception à la programmation Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.fr Définitions du terme «agent» Conception et implémentation de sma Des acteurs aux agents Programmation orientée agents (AOP) Plate-formes de développement de systèmes multi-agents (S.M.A) IAD Raisonnement distribué Intégration de connaissances hétérogènes Notion d ontologies Intelligence Artificielle Distribuée (I.A.D) Comment gérer les distribution? Les problèmes sont physiquement distribués Les problèmes sont fonctionnellement distribués multi savoir faire /multi expertises Hétérogénéïté des savoirs Les réseaux de communication imposent une vision distribuée Internet, Bases de données mondiales, Web Sémantique Penser global agir local La complexité impose une vision locale Nécessité dʼadaptation (locale) Changer un central téléphonique ne met pas en péril le réseau mondial 1. Les tableau noirs (blackboards) Contrôle centralisé Partage d information 2. Les acteurs Contrôle décentralisé Envoi de messages 1

Définitions du terme agent «un ensemble d agents qui interagissent dans un environnement commun et qui participent à une dynamique d organisation» ([Demazeau Ferber 98]) Définitions du terme agent (suite) Un agent établit un ensemble de conditions sur les relations entre des objets et des processus. (1) Un processus (ou un processeur) est associé à chaque objet pour le rendre actif (et/ou proactif). Exemples : Dans les systèmes basés sur les acteurs([hewitt 77], [Briot 89]), ce processus exécute le comportement de l'objet. Dans les règles de production, les processus correspondent aux diverses règles que l objet doit activer [Barthelemy & al. 88]. (2) Tout objet est doté d'une architecture lui permettant de modéliser des connaissances dans son domaine de compétence ainsi que des connaissances lui permettant d interagir avec d autres objets et son environnement. (3) Chaque objet doit prendre ses décisions localement, c est-à-dire, sans l intervention d un objet centralisateur (proacivité). Définition de système Multi-Agents Programmation concurrente basée sur les acteurs (1) Systèmes dans lesquels des agents artificiels opèrent collectivement et de façon décentralisée pour accomplir une tâche Agent = entité autonome, proactive, réactive, sociale SMA = système hétérogène, ouvert, dynamique, (auto)- organisé Notions importantes = concurrence, coopération, communication, coordination, collaboration, interaction Emergence de fonctionnalités Organisation Systèmes d interaction Agents Contraintes et objectifs sociaux Un objet (passif) envoie un message et attend la réponse pour entamer une autre tâche, alors qu un acteur envoi un message et continue son activité, qui peut être, par exemple, envoyer un autre message. Un acteur est un objet actif qui communique avec les autres acteurs (ses accointances) par envoi de message asynchrone. 2

Programmation concurrente basée sur les acteurs (2) Destinés aux machines parallèles. Il existe plusieurs modèles (comportements) d acteurs : ABCL, Agha De nombreux langages : Plasma (Hewitt 77) Act1(Lieberman 81) Act2 (Theriault 81) Pract/Acore (Manning 87) Modèle d acteurs Comportement de base d un acteur : 1. Lire un message 2. Exécuter le comportement associé au message 3. Aller en 1. Le système Actalk (Briot 89) Actalk (suite) Les acteurs sont des instances de la classe Actor qui permet l encapsulation d objets standards smalltalk 80. Un acteur est caractérisé par un comportement et une boîte à lettres. Le comportement est exécuté par l objet standard qui est encapsulé. MinimalObject Actor {mailbox, behavior} ABCLActor ExtendedActor Object ActorBehavior {aself} ExtendedActorBehavior ABCLActorBehavior 3

Actalk (suite) Concept de comportement de remplacement Exemple : un compteur acteur MinimalObject Object mailbox Actor {mailbox, behavior} ActorBehavior {aself} ABCLActor ExtendedActor ABCLActorBehavior ExtendedActorBehavior behavior replacementbehavior Counter {contents} A counter Behavior Instance de Sous classe de Plate formes basées sur les acteurs Agents dérivés d acteurs Exemple : le système Mocah Extension d acteurs pour implémenter des agents Un agent=un acteur Spécification du comportement de l acteur pour l adapter au comportement souhaité pour un agent Actor ActorBehaviour Classes de Actalk Hérite de Hérite de ActeurAgent AgentBehaviour Classes de Mocah Les classes de Mocah à partir des classes d Actalk. 4

Programmation orientée agents Programmation de systèmes multi-agents Langages d agents 1) D exécution des agents en mode concurrent (asynchrone) 2) Permettant l envoie de messages entre les agents 3) Architecture et/ou comportements génériques des agents 4) Protocoles de communication (différents moyens de considérer la communication) 5) Interface de visualisation de l exécution et/ou de déploiement 6) Méthodologie de conception Une méthode simple pour l implémentation d un sma est par exemple : MAGE. Simuler un scheduler d agents. Maintenir une liste d agents et donner la main aux agents tour à tour en leur permettant d exécuter un cycle. La granulation du cycle /et/ou le nombre de cycles est à définir. Dans le cas de MAGE, un agent déclenche une règle de production à chaque fois qu il a la main. Pas debuggage, ni de conception globale du sma. L utilisateur est totalement libre Quelques plate-formes multi-agents célèbres Shoam est le premier à parler de la nécessité d avoir des langages de programmation spécifiques pour les agents, avec Agent0, donner détails, sur le langage, au tableau AgentTool Basé sur une méthodologie MaSE 1) Identifier les buts 2) Appliquer les cas d utilisation 3) Raffiner les buts 4) Créer les classes d agents 5) Construire les conversations 6) Assembler les classes d agents 7) Implémenter effectivement les méthodes Déploiement des agents au sein de l environnement Génération automatique du code des conversations 5

Quelques plate-formes multi-agents célèbres (suite) Quelques plate-formes multi-agents célèbres (suite) AgentBuilder : environnement de programmation complet Modélisation OMT Identification d ontologie avec OMT Modèle BDI pour modéliser le comportement des agents Langage AGENT0 pour coder le comportement des agents Langage de communication : KQML Exécution des agents à partir du système Possibilité de générer des.class DECAF : environnement de développement de plans Pas de méthodologie pour la conception Utilitaires pour décrire des plans Mécanismes de coordination de tâches Application d heuristiques pour ordonnancer les tâches Les heuristiques sont construite via une interface Éditeur d agents pour le «débuggage» Quelques plate-formes multi-agents célèbres (suite) Jack Éditeur gestionnaire de projet Langage de programmation (JAL) Un compilateur Agents basés sur le modèle BDI Pas de déploiement Quelques plate-formes multi-agents célèbres (suite) JAFMAS : un ensemble de protocoles de communication et d interaction entre agents Méthodes de coordination et de vérification de cohérence Méthodologie en cinq phases : 1) Identifier les agents 2) Identifier les conversations 3) Identifier les règles de conversation 4) Analyse le modèle des conversations 5) Implémentation. 6

Jive : Quelques plate-formes multi-agents célèbres (suite) Éditeur graphique Possibilité de travail en groupe sur un même projet Création des conversations avec les réseaux de Pétri et le langage COOL MadKit : Éditeur pour le déploiement et la gestion de plusieurs S.M.A Utilitaire pour simulations Quelques plate-formes multi-agents célèbres (suite) Zeus Trois couches : 1) Agent=entité autonome+raisonnement+croyances+ressources+ préférences. 2) Organisation : relations entre les agents 3) Modes de communication, protocoles, coordination Plusieurs éditeurs : ontologies, description des tâches, organisation, définition des agents, coordination, faits et variables. Quelques plate-formes multi-agents célèbres (suite) Quelques plate-formes multi-agents célèbres (suite) Jade : propriétés Répond aux norme FIPA97 Pas de méthodologie spécifiée Classes génériques pour manipulation d ontologies Possible mobilité des agents (migration des agents) Jade : description et utilisation Lancement d un agent avec la méthode (setup ()) Un agent peut contenir un ou plusieurs comportements Un comportement peut être : Un lancement du moteur d inférence (JESS) Toute autre méthode Java Interface graphique pour l enregistrement et la gestion des agents Possibilité de visualiser les conversations Communication par le langage ACL (FIPA) 7

Sites web des plate formes Jade : architecture globale 1. AMS : Agent Management System 2. ACC: Agent Communication Chanel 3. DF : director facilitator (service pages jaunes) AgentBuilder http://www.agentbuilder.com/ AgentTool http://en.afit.af.mil/ai/agentool.htm. Brainstorm/J http://www.exa.unicen.edu.ar/~azunino/brainstormj.htm DECAF http://www.eecis.udel.edu/~decaf/ Jack http://www.agentsoftware.com.au/shared/products/index.html Jade http://sharon.cselt.it/project/jade/ JAFMAS http://www.eces.uc.edu/~abaker/jafmas/home.html JiVE http://www. eces.uc.edu/~abaker/jive/index.html MadKit http://www.madkit.org Zeus http://www.labs.bt.com/projects/agents/zeus/ Méthodologies de développement de SMA Méthodologies de développement de SMA (suite) On initialise les accointances des acteurs Dans le cas d acteurs, on spécifie les différents comportements associés aux messages échangés Phases concernées par la méthodologie : Analyse Développement Implémentation Déploiement 8

Méthodologies de développement de SMA (suite) Différentes phases de développement d un s.m.a. MaSE Aalaadin ou AGR RETSINA Dmars OAA DESIRE Gaia Tropos Kaos Cassiopé Modes de raisonnement en Intelligence Artificielle Systèmes experts Modus Ponens et Modus Tollens Raisonnement qualitatif Raisonnement par défaut Raisonnement non monotone Raisonnement plausible Un raisonnement est souvent un entrelacement de plusieurs types de raisonnement connus La coopération dans les SMA La communication et la coopération sont étroitement liées, l envoi de messages étant le résultat de décisions de coopération Coopérer, c est adopter une attitude (Cesta and Miceli) Etat interne Niveau d énergie 0 danger Faim Normal 20 60 100 Seuil inférieur Seuil Supérieur Relation entre niveau d énergie et états internes des agents. Solitaire : les agents s ignorent. Parasite : l unique but est de chercher de la nourriture ou de manger la nourriture envoyée par les autres agents. Egoïste : demande de l aide ou recherche de la nourriture. Social : plusieurs types de buts en fonction de leur état interne, rechercher de la nourriture, fournir de l aide ou demande de l aide). 9

Coopérer, cʼest conceptualiser (Gasser, Adler et Simoudis ) concepts manipulés : engagements, les intentions et les buts Instanciation des concepts en fonction de lʼapplication envisagée Coopérer c est s engager («commitment») Qui fait quoi Liens d autorité entre les agents L engagement revêt différentes formes L engagement interne : une relation entre un agent et une action (Bouron, Cohen & Levesque) L engagement collectif : engagement interne d un groupe d agents L engagement social : «un agent x possède un engagement social envers un agent y s il s engage à réaliser une action a (engagement interne) et si y est intéressé par l action a. Le résultat de a est un but pour l agent y ; c est pour cela que y possède également comme but que l agent x doit effectuer a. L agent y possède alors des droits de regards sur l agent x, il peut vérifier s il a bien effectué a, exiger sa réalisation, protester s il n est pas satisfait Coopérer, cʼest partager des résultats et des tâches (Davis et Smith, Rochowiak) Deux modes de coopération Partage de tâche : problème à traiter est décomposable en sous tâches pouvant être réalisées de façon indépendante Partage de résultats : doter chaque agent de moyen(s) lui permettant de partager des résultats. Coopérer, cʼest calculer (Sunju Park, Levi, Stirling) Définition de montants de rétribution pour la réalisation de tâches Maximisation de profits individuels Définition de niveaux de satisfaction locaux (solution obtenue dés que tous les niveaux sont atteints) Utilité épistémique : valeur de fausseté et de vérité de chaque proposition cognitive 10

Coopérer, cʼest coordonner des plans, plan partiel global : PGP (Durfee, Lesser) Définition dʼun plan global et de plans locaux Échange de plans partiels entre agents Les agents ajustent leurs activités en fonctions des plans des autres, et proposent des modifications des plans Possibilité dʼinférer les buts des autres à partir de leurs actions en vue dʼaméliorer la coordination globale (réseau probabiliste de reconnaissance de plans) Le protocole réseau contractuel Le protocole réseau contractuel ("Contract Net" en anglais) a été une des premières approches utilisées dans les systèmes multiagents pour résoudre le problème d'allocation des tâches (Davis et Smith, 1983). deux rôles: gestionnaire et contractant Décomposition des tâches en sous-tâches Le protocole réseau contractuel (suite) 11

Applications des SMA Résolution de problèmes et s.m.a Intelligence ambiante Simulation de systèmes complexes Résolution de problèmes distribués Commerce électronique Modélisation biologique Web services Diagnostic de pannes Travail collaboratif Apprentissage collectif Approche classique Analyse et conception problème Algorithme de résolution du problème exécution Solution(s) Données Approche à base de s.m.a domaine Modélisation agents Agents et, intéractions entre les agents Instance du problème Résolution Types d agents/types d applications? Types d agents/types d applications? (suite) Deux types d architecture d agents Agents réactifs Agents cognitifs Agents réactifs un agent ne possède pas de représentation explicite (ni d'eux-mêmes, ni des autres, ni de leur environnement) un agent n effectue pas de raisonnement abstrait (nécessite des représentations) l intelligence (l'organisation) est une propriété émergente; l'organisation des agents entre eux n est qu un effet induit de leur activité et de leurs interactions : elle n est explicitée à aucun niveau dans le système, ce n est pas une donnée du problème 12

Types d agents/types d applications? (suite) Types d agents/types d applications? (suite) Exemples de fonctions collectives Ethologie Insectes sociaux, autres animaux sociaux fourmis, termites, abeilles, guêpes loups, rats, primates, oiseaux, poissons Exemple : les fonctions collectives des fourmis Lasius Niger régulation de la température du nid formation collective de ponts par les ouvrières construction et protection des nids tri du couvain et des items de nourriture coopération dans le transport d'objets trop lourds choix des chemins les plus courts entre nid et sources de nourriture choix des sources de nourriture les plus riches au détriment des autres Types d agents/types d applications? (suite) Le fourragement Collectif "Benchmark" très populaire en IAD et Vie Artificielle Types d agents/types d applications? (suite) Les robots fourrageurs Pb = Collecte d'échantillons de minerai dans un environnement inconnu Exploration et exploitation collective d'un environnement inconnu et dynamique, par des robots ou agents simulés Base Robots 2. Ramassage 3. Retour Beaucoup de techniques envisageables (inspirées la plupart du temps des fourmis) Minerai 1. Recherche aléatoire 4. Recherche aléatoire Les robots les plus simples 13

Questions conceptuelles Questions conceptuelles (2) Nombre et densité d'agents Certains phénomènes ne surviennent qu'en présence d'un nombre ou densité d'agents donné : effet de "seuil" ou "masse critique" Exemples construction des arches par les termites ponts chez les fourmis choix du plus court chemin Choisir un modèle de communication propagation par l'environnement champs de potentiel communication non-intentionnelle instantanée ou non pérenne ou non message point à point message "broadcasté" Questions conceptuelles (3) Modèles : Architecture de Subsumption Choisir un modèle de comportement Pourquoi un comportement se déclenche Perceptions? Buts externes? Buts internes? Motivations? Combinaison des deux? Comment un comportement se déclenche Interactions entre perceptions et motivations (activation, planification) Interactions entre comportements (sélection) Inné? Acquis? Brooks 86 - Behavior Language 90 Modèle semi-hiérarchique de sélection d'actions Capteurs Niveau 3 Evitement obstacles Niveau 2 Exploration Niveau 1 Construction de carte Niveau 0 Déplacement aléatoire Niveau 0 Actionner pince Effecteurs 14

Modèles : Architecture de Subsumption Agents cognitifs Exemple architecture BDI évitement d obstacles suivi de piste mouvement exploratoire mouvement de retour mouvement aléatoire Le contrôle BDI (Michael Wooldrige) Algorithme de contrôle d'agent BDI //B0, D0 et I0 les croyances, désirs et intentions initiales de l'agent 1 B =B0 2 D =D0 3 I = I0 4 répéter 4.1 obtenir nouvelles perceptions p 4.2 B = revc(b, p) 4.3 I = options(d, I) 4.4 D = des(b, D,I) 4.5 I = filtre(b, D, I) 4.6 PE = plan(b, I) 4.7 exécuter(pe) jusqu'à ce que l'agent soit arrêté Notion d engagement (commitment) d'un agent envers une intention Algorithme de contrôle d'agent BDI avec obligation limitée 1 B = B0 2 D = D0 3 I = I0 4 répéter 4.1 obtenir nouvelles perceptions p 4.2 B = revc(b, p) 4.3 I = options(d, I) 4.4 D = des(b, D,I) 4.5 I = filtre(b, D, I) 4.6 PE = plan(b, I) 4.7 tant que (PE<>{} et nonaccompli I,B) et possible(i,b)) répéter - x =exécuter(x); PE = reste(pe) - obtenir nouvelles perceptions p - B = revc(b, p) fin tant que jusqu'à ce que l'agent soit arrêté fin 15

Algorithme de contrôle d'agent BDI avec obligation ouverte 1 // initialisations 4 répéter 4.1 obtenir nouvelles perceptions p 4.2 B = revc(b, p) 4.3 I = options(d, I) 4.4 D = des(b, D,I) 4.5 I = filtre(b, D, I) 4.6 PE =plan(b, I) 4.7 tant que (PE<>{} et nonaccompli(i, B) et possible(i, B)) répéter - x = première(pe); exécuter(x); PE = reste(pe) - obtenir nouvelles perceptions p - B = revc(b, p) - D = des(b, D,I) - I = filtre(b, D, I) - PE = plan(b, I) fin tant que jusqu'à ce que l'agent soit arrêté Approches d intégration de méthodes hétérogènes Minsky et Papert ([Minsky & Papert 74]) «L évolution des stratégies d'utilisation des connaissances est fortement corrélée à la bonne exploitation de la diversité des moyens d'expression, d'identification et d'utilisation des connaissances.» Approches d intégration de méthodes hétérogènes (suite) Le cadre proposé : " doit permettre une interaction entre ces différents types de connaissances de façon à avoir une compréhension complète du domaine à résoudre..." de manière qu'il puisse "contrôler le choix de segments de connaissances pertinents..." ou "décider quand une approche particulière doit être interrompue en faveur d'une autre..." ([Bublin & Kashyap 88] pages 18-25). Objectif Conception d un système permettant de combiner plusieurs modes de raisonnement lors de la résolution d un problème Ce système doit être capable d adapter dynamiquement sa manière d intégrer les modes de raisonnement en fonction de son contexte d utilisation 16

Raisonnement multi-modèles Modèles de raisonnement pour le diagnostic Modèles de raisonnement Systèmes Multi-Agents C.B.R Amdec Comport... Intégration distribuée Mocah : Modélisation de la coopération entre agents hétérogènes Intégration centralisée MDX2 Jacquard... Dynamis Modèle de raisonnement Raisonnement comportemental (Comport) Raisonnement basé sur les cas (CBR) Raisonnement basé sur les modes de défaillance, de leur effet et criticité (Amdec) Connaissances manipulées Comportements des composants (suspect) Bibliothèque de Cas Une Amdec (cause) Caractéristiques des méthodes Fiabilité de ses solutions Risque d'une explosion combinatoire Manque d'exhaustivité Rapidité Diversité des problèmes traités Manque de fiabilité Exhaustivité Réduit le risque d'explosion combinatoire Manque de rapidité Manque de fiabilité Agents coopératifs Caractéristiques de Mocah Agent Amdec Agent CBR Connaissances de coopération Raisonnement basé sur les Amdec Agent Comport Connaissances de coopération Connaissances de coopération Raisonnement à partir de cas Identification de concepts communs Modélisation de l expertise à un niveau conceptuel Modélisation homogène du domaine et de la coopération Raisonnement Comportemental 17

Une identification de concepts communs Décomposition des connaissances selon trois dimensions Tâche réalisée par génère modifie rend candidate Méthode rend utilisable utilise Données Exemples de tâches de diagnostic Exemples de tâches de coopération 18

Architecture interne d'un agent coopératif Diagnostic de pannes de l'essuie-vitre Connaissances sur Les autres Niveau Superviseur Connaissances sur soi Agenda Tâches de coopération Moteur Tâches du domaine Raisonnement comportemental Raisonnement à partir de cas Raisonnement à partir d'amdec Initialisation d'un problème à résoudre Extraits d'un scénario de coopération Solution Enoncé global à résoudre nonok lave-vitre Cmd M145 on type Vehicule R19 Nbr d'apparitions 4 Rapidité 2 Fiabilité 7 CBR DemandeInfo Information integrermess Information génererhyp CBR Amdec Comport nonok lave-vitre type Vehicule R19 Rapidité=2 Fiabilité=7 nonok lave-vitre type Vehicule R19 Nbr d'apparitions 4 Rapidité=2 Fiabilité=7 nonok lave-vitre type Vehicule R19 Cmd M145 on Rapidité=2 Fiabilité=7 Représentations locales Agendas Comport génererhyp Amdec génererhyp génererhyp génererhyp vérifierhyp génererhyp vérifierhyp integremess DemandeInfo DemandeInfo DemandeInfo Information pompe H.S réservoir d'eau vide génererhyp discriminer informeraccoint génererhyp vérifierhyp integremess informaccoint discriminer DemandeInfo Résultat Boîtes à lettres Demande Demande Demande T1 T2 T3 T4 T5 T15 T16 T25 19

Résultats et observations Problématiques Amélioration des caractéristiques individuelles des modèles de raisonnement Organisation dynamique de la résolution Apparition d'un agent Pivot Observation de la coopération entre agents Évaluation de la résolution collective = évaluation de l'activité de coopération Expérimentation de stratégies de coopération et de modèles de raisonnement Une modélisation d'expertises de coopération Un environnement de programmation agent Définitions Application/intérêts Ontolgies Classification/web/langage naturel intégration de modèles de raisonnement Ontologies et SMA Définitions An ontology is an explicit specification of a conceptualization. Ontologies define domain concepts, their properties and the relationships between them, and thus provide a domain language that is meaningful to both humans and machines. They are formal theories supporting knowledge sharing and reuse. 20

Définitions (suite) Wikipédia En philosophie, l'ontologie (du grec oν, oντος, participe présent du verbe être) est l'étude de l'être en tant qu'être, c'est-à-dire l'étude des propriétés générales de ce qui existe. La scolastique considéra cette étude comme une partie de la métaphysique, en tant qu'elle définit les transcendentia, les déterminations communes à tous les êtres (ce qu'on appellera plus tard métaphysique générale, par opposition à la théologie, dite métaphysique spéciale). En informatique, une ontologie est un ensemble structuré de concepts. Les concepts sont organisés dans un graphe dont les relations peuvent être : des relations sémantiques ; des relations de composition et d'héritage (au sens objet) L'objectif premier d'une ontologie est de modéliser un ensemble de connaissances dans un domaine donné. Conclusion L I.A.D est un domaine de recherche récent De nombreux axes non encore explorés Plate formes explorent souvent un aspect de l IAD Sources http://turing.cs.pub.ro/auf2/html/chapters/chapters. html (accédée le 18 janvier 2010) Cours Guillaume Hutzler 21