+ All Categories
Home > Documents > Méthodes et modèles pour les interactions...

Méthodes et modèles pour les interactions...

Date post: 30-Aug-2019
Category:
Upload: others
View: 9 times
Download: 0 times
Share this document with a friend
72
E. ADAM – LAMIH UMR CNRS 8530 - UVHC Systèmes multi-agents pour les interactions Intelligentes Méthodes et modèles pour les interactions intelligentes Master Recherche AISIHM E. ADAM
Transcript
Page 1: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Systèmes multi-agents pour les interactions Intelligentes

Méthodes et modèles pour les interactions intelligentes

Master Recherche AISIHM

E. ADAM

Page 2: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Plan

● Architectures d'applications graphiques

● Programmation Orientée Agent– Définition des agents, des systèmes multi-agents

d'information

● Méthodes Orientées Agent– Méthode MAMOSACO, exemple de conception de

SMA pour la veille technologique

● Outils de l'IA pour l'apprentissage des données utilisateurs et leurs classifications automatiques

Page 3: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Architectures d'applications graphiques

● Le modèle langage● Le modèle SEEHEIM

● Le modèle Entrées-Sorties

● Le modèle ARCH

● Le modèle Agents● Le modèle PAC, PAC-AMODEUS, MVC

Page 4: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle SEEHEIM

Architectures d'applications graphiques

Gestion présentation

Contrôle dialogue

Interface avec l'application

Application

Niveau Sémantique de l'interactionpour une indépendance IHM-ApplicationNiveau Syntaxique : contrôle de l'enchaînement des états/actions

Niveau Lexical : représentation physique des objets et prise en compte des actions

Page 5: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle Entrées-Sorties

● Vue en couches : – Interaction = suite d’opérations d’entrée/sortie.– opérations traitées par hiérarchie de machines abstraites– au plus bas niveau :

● interception de l’action de l’utilisateur, ● transformée pour être passée à la machine de niveau

supérieur , .....– au sommet de la hiérarchie, l'action est interprétable par

l’application. – Les concepts de l’application descendront la hiérarchie

des machines abstraites jusqu’à la machine physique. – une machine de niveau i peut communiquer directement

avec l’application

Architectures d'applications graphiques

Page 6: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle Entrées-Sorties

● Vue en couches : Exemple

Architectures d'applications graphiques

Application

Machine 1

Machine 2

Machine 4

Machine 3

Page 7: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle Entrées-Sorties● Vue modulaire :

– pilotes = E/S niveau physique

– Serveur = gère ressources, indépendant matériel, dépendant média

– Serveur d'images abstraites = non dépendant média

– Serveur de dialogue = dialogue abstrait entre client et utilisateur, indépendant matériel & média, dépendant concepts client (application)

– Application = serveur de concepts, interface indépendante concept client. Ex gestionnaire de thèmes

Architectures d'applications graphiques

Page 8: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle ARCH

Architectures d'applications graphiques

Noyau Fonctionnel

Adaptateur de Domaine

Contrôleur de Dialogue

Présentation

Composant d'interaction

Page 9: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Les modèles agents IHM : PAC● Le modèle PAC (Présentation, Abstraction, Contrôle,

[COUTAZ 88]), basé sur trois types d'agents

● Chaque agent élémentaire de ce modèle est constitué :– d'une image, Présentation perceptibles avec E/S– D'un noyau fonctionnel (Abstraction),– d'un Contrôle de la communication entre l'Abstraction et

la Présentation, et avec les autres agent PAC.

● Les agents PAC sont organisés hiérarchiquement.

● La structure d'une IHM PAC est récursive...

Architectures d'applications graphiques

Page 10: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Les modèles agents IHM : PAC

P

P P

PPP

A

A

AA

A

A

C

C C

C CC

Architectures d'applications graphiques

Page 11: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle PAC-AMODEUS

● Sur base du modèle ARCH,● Le contrôleur de dialogue est constitué

d'agents PAC pour traitements parallèles

Architectures d'applications graphiques

Noyau Fonctionnel

Adaptateur de Domaine

Contrôleur de Dialogue

Présentation

Composant d'interaction

Objets du domaine

Objets conceptuels Objets de présentation

Objets d'interaction

CA P

CA P

CA P

CA P

CA P

CA P

Page 12: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Les modèles agents IHM : MVC

● Le Modèle MVC (Smalltalk [GOLDBERG 84]), est basé sur trois types d'agents :– Le modèle : définit les fonctionnalités propres au

domaine.– Les vues : présentées à l'utilisateur.

Représentations du modèle.– Le contrôleur : gère les entrées de l'utilisateur en

communicant avec le modèle ou les vues. ● Communication par envoi de messages● Chaque objet graphique peut être défini par des

agents MVC● Principes utilisés en Java, JSP (appli web), ...

Architectures d'applications graphiques

Page 13: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Les modèles agents IHM : MVC

Architectures d'applications graphiques

90

fenêtre

camembert

chaîne

min = 0max = 360val = 90

VC

M VC

M VC

M

Contrôle

Modèle

VuesVuesVuesVues

Actions utilisateur

Actions sur vues

États des vues

Action sur m

odèle

Mise à jour

de la vue

Page 14: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Les modèles agents IHM : MVC

● Java et MVC– Java propose un ensemble de classes

regroupées dans la JFC (Java Foundation Classes)

– Dans la JFC, la vue et le contrôle sont regroupés

Architectures d'applications graphiques

http://www.javaworld.com/javaworld/jw-04-1998/jw-04-howto.html

Page 15: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle n-tiers

Architectures d'applications graphiques

● Applications réparties– Interfaces– Application / Applicatifs– Bases de données

● Utilisé en application web : workflow, e-commerce, ...

Serveur d'applications

Application 1

Application 2 Données

Servlet, jsp, asp, .net, ...

Page 16: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle n-tiers

Architectures d'applications graphiques

● Des scripts à MVC2...

Serveur d'applications

Script 1

DonnéesScript 2

Script 3

Scripts php, asp, jsp

Page 17: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle n-tiers

Architectures d'applications graphiques

● Des scripts à MVC2...

Serveur d'applications

Controleur 1

Données

C2

Vue 1

ModèleV2

C3

V3

MVC

Page 18: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Le modèle n-tiers

Architectures d'applications graphiques

● Des scripts à MVC2...

Serveur d'applications

Controleur

Vue 1

V2

V3

Modèle Données

MVC2

Page 19: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM – LAMIH UMR CNRS 8530 - UVHC

Les modèles des SMA● SMA = Systèmes Multi-Agents

– Agents Intelligents (communiquant, ...) et non simples objets comme PAC, MVC, ...

– Agents d'Interface,– Agents de Profil,– Agents d'Information– Agents Coordinateurs– ...

Architectures d'applications graphiques

agentsd'interfaces

agentscoordinateurs

agentsinformations sources externesutilisateurs

système multi-agentinformation

base de données

internet

base de données

interrogation

insertion /modification

d'uneinformation

Page 20: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

E. ADAM - LAMIH - UVHC

La Programmation Orientée Agent

E.ADAM

Page 21: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Sommaire

• Rappels sur les agents, les systèmes multi-agents

• Agents vs Objets• Les agents réactifs• Les plateformes• La modélisation de systèmes multi-agents

Page 22: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Rappels sur les agents, les systèmes multi-agents

Page 23: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Définition d’un agent

[Gasser 89], [Demazeau 95], [Ferber 95], [Nwana 96], [Chaib-Draa 96], ...

• Un agent est une entité adaptative, rationnelle, autonome, capable de communication et d’action.

Rappels sur les agents, les systèmes multi-agents

Page 24: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Définition d’un agent

• Agent– autonome

• agir

– perception

– adaptatif• apprendre• modifier le comportement

– coopérant• communiquer

• négocier

monde

SMA

environnement du SMA

Rappels sur les agents, les systèmes multi-agents

(BDI / Belief Desire Intention)

Page 25: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Structure d’un agent

Grille d’analyse fonctionnelle [Ferber 95]

Personnel Environnemental Social Relationnel Physique

Représentationnel

Organisationnel

Conative

Interactionnel

Productif

Conservatif, reproducteur

Connaissances

Planification

But, désirs, contraintes

Perception, coopération

Action

Conservation, protection

Rappels sur les agents, les systèmes multi-agents

Page 26: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Une définition formelle des SMA

• Un environnement multi-agent est un tuple défini par : EMA ={E, A, Π, ∆} où :– A = {α1, …, αn} est l’ensemble des agents avec

• αi le tuple défini par {Si, Pi, Ai, Φi} où

– Si est l’ensemble des états possibles de l’agent αi

– Pi est l’ensemble des perceptions

– Ai est l’ensemble des actions (sur l’environnement)

– Φi : Si x Pi Si x Ai est la fonction de prise de décision

– E est l’ensemble des états d’environnement

– Π : E (P1 x … x Pn) est une fonction de perception

– ∆ : E x (A1 x … x An) E est une fonction de modification de l’environnement

Rappels sur les agents, les systèmes multi-agents

Page 27: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Agents vs Objets

Page 28: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Agents vs Objets (1/2)

• Un agent est il un objet ?

– Un agent est un objet qui est adaptatif, rationnel, autonome, capable de communication et d’action.

– Un agent logiciel est de préférence créé sous forme d'un objet ayant les caractéristiques d'un processus

– D'un ensemble d'agents émergent des fonctionnalités / comportements...

Rappels sur les agents, les systèmes multi-agents

Page 29: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Agents vs Objets (2/2)

• Un objet o1 ne peut qu'appeler une méthode existante d'un objet o2 qui doit l'exécuter

• Un agent a1 peut demander l'exécution d'une méthode à l'agent a2 qui ne la connaît pas ou qu'il ne souhaite pas exécuter (dans l'instant ou jamais!)

Rappels sur les agents, les systèmes multi-agents

Page 30: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Différents types d'agents

Rappels sur les agents, les systèmes multi-agents

autonomie

coopération adaptativité

agent collaborant

agent information

agent interface

agent intelligent

Cas particuliers : les agents réactifs

agent interface

agent conversationnel [Martin, Sansonnet, AMI – LIMSI-CHM, Paris XI]

Page 31: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Possibilité d'utiliser différents types d'agents

• Exemple : la recherche d'informations

• A CIASTEWA : Cooperative Information Agent System for Technological Watch

Rappels sur les agents, les systèmes multi-agents

InformationAgent

InformationAgent

InformationAgent

Interface Agent

Information Responsible

Agent

CoordinatorAgent

Queries

ResultsUser

Group

Queries

Results

Key words

Page 32: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Communication entre agents

• ACL : Agent Communication Language

Rappels sur les agents, les systèmes multi-agents

Page 33: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Communications entre agents (1/3)

• Nécessité de posséder un langage commun entre agents

• ACL : Agent Communication Languages– KIF : Knowledge Interchange Format

• Langage formel de dialogue interne

– KQML : Knowledge Query Meta Language

– FIPA ACL : extension de KQML

Page 34: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Communications entre agents (2/3)

• Un message en FIPA ACL peut être constitué des champs :– performative : type de l’acte communicatif– sender : émetteur du message– receiver : destinataire(s) du message– reply-to : destinataire de la réponse au message– content : contenu du message– language : type de langage utilisé– encoding : type de codage du message– ontology : ontologie sur laquelle est basée le message– protocol : type de protocole utilisé– conversation-id : identifiant de la conversation– reply-with : type de réponse souhaitée– in-reply-to : nom de la requête– reply-by : type de réponse

Page 35: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Communications entre agents (3/3)

• Liste de performatifs de FIPA ACL : – Accept Proposal, Agree, Cancel, Call for Proposal, Confirm,

Disconfirm, Failure, Inform, Inform If, Inform Ref, Not Understood, Propagate, Propose, Proxy, Query If, Query Ref, Refuse, Reject Proposal, Request, Request When, Request Whenever, Subscribe

• Exemple de message en FIPA ACL :– Agent i confirme à agent j qu’il est vrai qu’il neige aujourd’hui. (confirm

:sender (agent-identifier :name i) :receiver (set (agent-identifier :name j)) :content

"weather (today, snowing)"  :language Prolog

)

Page 36: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

La Plateforme JADE : Protocoles de communication 1/2

• Problème de communication entre agents : – Un agent peut choisir d'ignorer des messages

==> nécessité de protocoles de dialogues

• Jade (entres autres plateformes) propose les protocoles : – AchieveRE (Achieve Rational Effect) :

• un Initiateur envoie un message, le receveur peut répondre par not-understood, refuse ou agree. Suite à l'accord (agree), le receveur retourne un message de type inform (réponse) ou failure.

– FIPA - Contract NET• Un initiateur sollicite d'autres agents par un CFP, les receveurs peuvent

répondre par une proposition (PROPOSE), ou un message de type REFUSE ou NOT-UNDERSTOOD. L'émetteur choisit parmi toutes les propositions reçus et envoie un message de type ACCEPT_PROPOSAL au candidat retenu. Ce dernier retourne un message de type INFORM (accord), FAILURE ou CANCEL (annulation de l'offre)

Page 37: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

La Plateforme JADE : Protocoles de communication 2/2

• autres protocoles : – FIPA – Propose :

• un Initiateur envoie un message à un Participant lui indiquant qu'il effectuera une action si le Participant est d'accord (agree). Le Participant répond par un refus ou un accord. Lorsque l'accord est reçu, l'Initiateur doit effectuer l'action et retourner un résultat

– FIPA - Subscribe• Un Initiateur envoie un message à un Participant lui demande s'il souhaite

souscrire (subscribe). Le participant répond par un accord (agree) ou un refus (refuse). En cas d'accord, le Participant envoie les informations répondant à la souscription jusqu'à ce que l'Initiateur annule la souscription ou que le Participant émette un message de type failure.

Page 38: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Organisations Multi-Agents

[Le Strugeon 95], [Mandiau 99]

Structure hiérarchique[Ito 98], [Odubiyi 97], ...

ordres

Structure de marché[Bensaid 97], ...

appeld'offres offres

Structure de société[Soulié 98], ...

objectifs

ajustementsajustements

Structure de communauté[Minar 98], ...

Rappels sur les agents, les systèmes multi-agents

Page 39: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Organisation Multi-Agent Holonique

communication d'objectifs

stabilité

équilibre autonomie-coopération

cognitif

réactif

Rappels sur les agents, les systèmes multi-agents

Page 40: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

La récursivité des OMAH (1)

• Chaque holon du système possède les mêmes caractéristiques que l ’ensemble et possède une spécialité

gérer des données

4 holons de bas niveau

interagir avec l ’utilisateur

recevoir des donnéesenvoyer des données

1 responsable du systèmeplanifier ses actions

Rappels sur les agents, les systèmes multi-agents

Page 41: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Système Multi-Agent d'Information (IMAS)Système Multi-Agent d'Information (IMAS)

Information Multi-Agent System

Users

querying

Insert/modify an information

Coordinator agents

Information agents

Interface agents

External sources

Data base

Internet

Data base

Page 42: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

E.ADAM

Page 43: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• Nombreuses plateformes apparues ces dernières années

• Très indépendantes et hétérogènes

FIPA ( Foundation for Intelligent Physical Agents ) fournit une spécification générale– But : faire interagir différentes plateformes, …

Page 44: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• Quelques plateformes francophones :– CORMAS [Bakam, Bousquet, Le Page, Proton]

– DIMA [Guessoum, Briot, Ramdani]

– GEAMAS [Calderoni, Courdier, Vally]

– MAGIQUE [Mathieu, Bensaid, Routier]

– MADKIT [Ferber]

– MASK [Occello, Baeijs, Koning, Demazeau]

– MOCAH [Abchiche]

– OSACA [Barthès]

– ADELFE [Gleizes]

• Plateformes connues : JADE, ZEUS, JACK

Page 45: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• CORMAS [Bakam, Bousquet, Le Page, Proton]– Coomon-Pool Resources and Multi-Agent System– CIRAD (institut de recherche en agronomie)– Pour modéliser la gestion des ressources renouvelables– Plateforme téléchargeable (http://cormas.cirad.fr)– Basé sur VisualWorks (descendant de SmallTalk)– Plusieurs applications sur la simulation de sociétés d’agents

exploitant une ressource pouvant être dynamique et simulée par un SMA

– L’espace est un automate cellulaire– 2 types d’agents : spatialisés et communicants– Maximum de 5000 agents réactifs

Page 46: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• DIMA [Guessoum, Briot, Ramdani]– Développement et Implémentation de Systèmes Multi-Agents– LIP6 (Paris 6), LERI (Reims)– Pour simulations, résolutions de problèmes, systèmes de contrôles

avec contraintes de temps réels– Plateforme évolutive– Basé sur Smalltalk puis Java– Plusieurs applications sur la ventilation artificielle, simulation de

modèles économiques– Découpe un agent en module de perception, de délibération et de

communication– Notion de méta-comportement– 3 types d’agents : réactifs, cognitifs, hybrides

Page 47: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• GEAMAS [Calderoni, Courdier, Vally]– Mas, La Réunion– Pour modélisation et simulation en Java– Plateforme évolutive en java– Plusieurs applications sur la modélisation des phénomènes sismiques

et volcaniques, gestion de déchets, étude de la ressource pélagique (dans l’environnement océanique)

– Micro noyau générique auquel peuvent être couplées des extensions (apprentissage, auto-organisation, …)

– Environnement tient la place centrale , seul moyen de communication– agents de réactifs à ‘fortement cognitifs’

Page 48: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• MASK [Occello, Baeijs, Koning, Demazeau]– MultiAgent System Kernel– MAGMA (LEIBNIZ), Grenoble– fournir des bibliothèques d'agents (A), de manipulation

d'environnement (E), d'interaction (I) et d'organisation(O) ainsi que les outils d'aide a la programmation.

– Librairies Tcl/Tk, C, C++, Java– agents cognitifs

Page 49: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• MOCAH [Abchiche] : coopération entre plusieurs modèles de raisonnement hétérogènes pour la résolution d’un problème commun

• OSACA [Barthès] : UTC (Compiègne), Open System for Asynchronous Cognitive Agents, réalisation de sma avec peu d’agents cognitifs complexes

• ADELFE [Gleizes] : SMAC (Toulouse III), Atelier de Développement de Logiciels à Fonctionnalité Emergente

Page 50: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• MADKIT (Lirmm – Montpellier) : – Gutknecht, Ferber– Plateforme orientée organisation pour le développement

et l’exécution de SMA – Plateforme également orientée simulation d’automates

cellulaires• MAGIQUE (SMAC – LIFL – LILLE 1)

– Mathieu, Routier– MultiAGent hiérarchIQUE– Pour la conception de SMA hiérarchiques– Propose une librairie de classes Java pour la réalisation d’agents

Autres plateformes : JADE, AGENT, ZEUS, …

Page 51: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les plateformes multi-agents

• JADE (Telecom Italia Lab)– Java Agent DEvelopment Framework– ensemble de services système et agents conforment aux

caractéristiques de FIPA: • service de nommage• service de pages jaunes• transport de messages• service d’analyse• bibliothèque des protocoles d'interaction de FIPA

– Les agents sont des coquilles auxquelles il faut ajouter des comportements implémentant des services/fonctionnalités

– Les communications utilisent le standard ACL– Possibilité de communications entre plateformes JADE

Page 52: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Méthodes Orientées Agents

[Picard, 04]

• OO : ingénierie objet KE : ingénierie des connaissances

• RE : ingénierie des besoins P : orientée plate-forme

Page 53: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Méthodes Orientées Agents

• AAII : Australian Artificial Intelligence Institute Methodology, gestion du trafic aérien [Kinny et al., 1996].

• Aalaadin : cadre de développement de systèmes multi-agents, modèle AGR (Agent Groupe Rôle) [Ferber]

• Cassiopée : issue de la simulation multi-agent inspirée de l’éthologie [Collinot et Drogoul]

• Gaia : extension des approches d’ingénierie logicielle classique, [Wooldridge], (rôle, interaction, agent, services, organisation, environnement)

• MaSE : approche complète de développement de systèmes multi-agents, basé sur les rôles, [Deloach]

• MASSIVE : Multi Agent SystemS Iterative View Engineering, basé sur les besoins, concept de vues [Lind].

• PASSI : Process for Agent Societies Specification and Implementation, OO et IA, UML [Cossentino],

Page 54: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Méthodes Orientées Agents

• Prometheus : méthode complète pour des agents BDI [Padgham et Winikoff]

• TROPOS : basée sur les concepts utilisés en ingénierie des besoins, notation i* et A-UML, [Castro]

• Voyelles : vue d’un système suivant les dimensions Agent, Environnement, Interaction et Organisation [Boissier et Demazeau]

• MAMOSACO : méthode issue de l'étude des organisations administratives, [Adam]

Page 55: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACO

• MAMOSACO (Méthode Adaptable de MOdélisation de Systèmes Administratifs COmplexes) [ADAM 2000],

• Méthode développée pour la modélisation de flux discrets entre acteurs d’une organisation humaine.

– 2 étapes : • identification et description des différents rôles

• Modélisation des actions coopératives

Page 56: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACO Exemple d’identification de rôles

Personnel Environnemental Social

Organisationnel

Interactionnel

Productif

Conservatif

Planifie les actions des subordonnés

Communique avec son voisinage

Spécialité

Veille sur les subordonnés et le responsable

Planifie les actions selon les documents et l ’utilisateur

Interagit avec le réseau, le poste,l’utilisateur

Analyse l ’état du poste de travail et du réseau local

Demande la sauvegarde de docs et la restauration

Contrôle les planifications

« Apprend »

Déféré au responsable ou aux subordonnés

Représentationnel Représentation de soiReprésentation de la procédure, de l ’acteur

Représentation du voisinage

Page 57: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACOLes modèles

• MAMOSACO peut nécessiter 4 modèles :– Un modèle des données– Un modèles des flux de données– Un modèle des traitements– Un modèle dynamique

Page 58: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACOExemple de modèle des données

- planifier- recevoir- emettre- agir- surveiller

- C_String identifiant- Boolean libre, interruptible- C_RepHolon *responsable- C_RepHolon *voisins- C_RepHolon *subordonnés- C_Procedure*procedure_entière- C_Procedure*procedure_etat_actuel- C_Acteur *acteur- C_Poste *poste

Classe HolonC_Holon

- C_String identifiant- C_String addresse_IP- C_String addresse_acteur- Integer nb_alertes

Classe Représentation d'un HolonC_RepHolon

- C_String nom- C_RdP* regles

Classe ProcédureC_Procedure

- C_String nom- C_String rôle- Boolean libre, intterruptible- C_Date temps_inacessibilité

Classe ActeurC_Acteur

- C_String adresse_IP- Integer mémoire- Integer espace_disque- Files *liste_fichiers_nécessaires

Classe Poste de TravailC_Poste

Responsable leprocédureResp.Proc

Responsable deposte

Resp.Poste

ExécutantExécutant

ExécutantResponsable Interface

UtilisateurExec.Int.

ExécutantResponsable Gestion

de DocumentsExec.Docs.

ExécutantResponsable

RéceptionExec.Recept.

ExécutantResponsable

EmissionExec.Emis.

Page 59: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACOExemple de modèle de flux de données

afficher le résultat

afficher le résultat

afficher le résultat

sélectionner,annoter,

transmettre

trier, modifier lescommentaires

sélectionner,annoter,

transmettre

L'info est annotée à l'aide demots clés prédéfinis

avant d'être transmise,(lien avec les catégories de CI-

MASTER)

éventuellement, ajout/retrait depoints aux moteurs apportant les

informations gardées

intégrer dans CI-Master

(Infos)marquées

(Infos)marquées

(Infos)marquées

(Infos)sélectionnées

(Infos)sélectionnées

(Infos)annotées

télécharger deslistes d'adresses

télécharger deslistes d'adresses

télécharger deslistes d'adresses

Internet,Intranet,BdD (Oracle, ...)

filtrer selon règles

filtrer selon règles

filtrer selon règles

comparer résultat

comparer résultat

comparer résultat

(Blocs d'infos)

(Blocs d'infos)

(Blocs d'infos)

(Infos)

(Infos)

(Infos)

(Infos)marquées

(Infos)marquées

(Infos)marquées

élaguer la liste,écraser result.ini

extraction et sauvegarde dansresult.ini

passer le fichier enattachement par outlook

recherche avec union des troischamps dans mots possibles

recalculer la pertinence !!!

pour chaque adresse,vérifier si le texte

correspond aux règles

échanger les listesdiminuées se trouvant

dans le result.ini

Gestionnaire

Responsable

Utilisateur B

Utilisateur C

AgentResponsable

Agent B

Agent C

recherche & téléchargement 2nd tri confrontation des téléchargements distribution filtre insertion dans CIMaster

Gestionnaire

Responsable

Utilisateur B

Utilisateur C

AgentResponsable

Agent B

Agent C

Page 60: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACOExemple de modèle de traitements

ask for adocument D

(demand of D document)

user

A

stat

ion

resp

osib

le A

inte

rfac

ere

spon

sibl

efo

r sta

tion

A

rece

ptio

nre

spon

sibl

efo

r sta

tion

A

emis

sion

resp

onsi

ble

for s

tatio

n A

data

resp

onsi

ble

for s

tatio

n A

forward thedemand

search D inlocal

if(doesn't exist) (exists)

display D

(path to D doc)

search in theneighbouringwho have D

search in itsrepresentation of the

procedure

if(D is in station B) (D is unknow)(demand access to B station) (forward demand to the

process responsible)

AA A A Ainterfacereceptionemissiondata

management

(demand of D document)

(demand of D document)

Page 61: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Modélisation de SMA : MAMOSACOExemple de modèle dynamique

Page 62: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Les étapes de l’atelier

1 2 3

4

5

6

Page de présentation Fiche descriptive Modèle des données

Modèle dynamique

Modèle des traitements

Modèle de flux de données

Page 63: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

• Système d’Agent d’Informations pour la Veille Système d’Agent d’Informations pour la Veille COopérative (SAIVCO)COopérative (SAIVCO)

• Pourquoi ? – Veille technologique de plus en plus importante– Permettre à un groupe d’acteurs de rechercher de l’information,

sans redondance du traitement de l’information

• Comment ? – Associer un système multi-agents à chaque acteur de la cellule de veille

Application à une cellule de veille technologique Application à une cellule de veille technologique (problématique)(problématique)

Page 64: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Application à une cellule de veille technologique Application à une cellule de veille technologique (problématique)(problématique)

Cellule de veille

Aide externe

Base de données

Page 65: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Application à une cellule de veille technologique Application à une cellule de veille technologique (analyse)(analyse)

Acteurs

Analyse

Modélisation

Données

Activité

[Broudoux 99][Broudoux 99]

Démarche participative à Démarche participative à l’intégration d’agents très l’intégration d’agents très appréciéeappréciée

[Szabo 00][Szabo 00]

Traitement

Spécification

Page 66: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Application à une cellule de veille technologique Application à une cellule de veille technologique (modélisation)(modélisation)

Gestionnaire

télécharger selonprofil

télécharger selonprofil

télécharger selonprofil

Internet,Intranet,BdD (Oracle, ...)

filtrer selon règles

filtrer selon règles

filtrer selon règles

comparer résultat

comparer résultat

comparer résultat

afficher le résultat

afficher le résultat

afficher le résultat

Distribution

sélectionner,annoter,

transmettre

trier, modifier lescommentaires

sélectionner,annoter,

transmettre

filtrage

Responsable

Utilisateur B

Utilisateur C

AgentResponsable

Agent B

Agent C

intégrer dans CI-Master

Recherche large etTéléchargement

(Bloc d'infos)

(Bloc d'infos)

(Bloc d'infos)

(Infos)

(Infos)

(Infos)

Recherchefine en local etcomparaison

(Infos)marquées

(Infos)marquées

(Infos)marquées

(Infos)marquées

(Infos)marquées

(Infos)marquées

(Infos)sélectionnées

(Infos)sélectionnées

(Infos)annotées

Gestionnaire

Responsable

Utilisateur B

Utilisateur C

AgentResponsable

AgentB

AgentC

1 2 3

4

5

Page 67: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

RequestAgent

RequestAgent

Interface Agent

Queries

ResultsUser

Information Responsible

Agent

Group

Queries

ResultsCoordinator

Agent

Search engineAgent

Search engineAgent

Search engineAgent

Search engineAgent

Search engineAgent

long-lived agent

ephemeral agent

communication link

Application à une cellule de veille technologique (spécification d’un SAICO)

SAICO : Système d’Agents d’Information COopératifs

Page 68: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

SAIVCO

: communication links between SAICO

IRA

IA IA IA

IRA

IAIAIA

IRA

IAIAIA

IA: Information Agent

IRA: Information Responsible Agent

communication links between SAICO agents

ItA ItA

ItA

ItA: Interface Agent

Internet

Application à une cellule de veille technologique (spécification)

CACA

CACA: Coordinator Agent

Page 69: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Social Environmental Personal

Representational Knows the information search agent, interface agent et all the others coordinator agents.

Knows the requests and results of the user, the keywords the requests and the results of the group.

Knows its name, capacity to reorganise itself.

Organisational Watches over the co-ordination of actions of the group of agents of CIASTEWA.

Manages the databases of the user and the group.

Checks that the request doesn’t exist.

Interactional Is the superior of interface agent and information search agent.

Interacts with coordinator agents of the CIASTEWA. Ø

Productive Feeds databases with results providing by information agents.

Sends requests and results to coordinator agents of CIASTEWA.

Modifications of knowledge, of its role.

Regeneration Checks if its contacts (coordinator agents) are active…

Requests (databases of the user and the group).

Refers to its contacts.

The coordinator agent

FunctionsDimensions

Application à une cellule de veille technologique Application à une cellule de veille technologique (spécification des rôles)(spécification des rôles)

Spécification individuelle de chaque rôle

Page 70: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Application à une cellule de veille technologique (spécification des interactions)

Page 71: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Indication des autres acteurs ayant reçu l’information

Application à une cellule de veille technologique (interface)

Page 72: Méthodes et modèles pour les interactions intelligentesemmanuel.adam.free.fr/site/IMG/pdf/dea42.pdf · Proposal, Request, Request When, Request Whenever, Subscribe • Exemple de

Identifier les groupes d’acteursIdentifier les groupes d’acteurs

Objectif : identifier les groupes d’acteurs ayant les mêmes centres d’intérêts

Réorganisation selon la distance d’intérêt -> algorithme d'apprentissage et de classification (réseaux de Kohonen dans cet exemple)


Recommended