La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

ACL Roger Nkambou.

Présentations similaires


Présentation au sujet: "ACL Roger Nkambou."— Transcription de la présentation:

1 ACL Roger Nkambou

2 Pourquoi la communication est-elle importante ?
La COMMUNICATION est un élément important dans la coopération. Une société peut accomplir des tâches qu’auqu’un agent (individu) seul ne saurait faire. La diversité dans une société introduit l’hétérogéniété Les agents qui se communiquent n’ont besoin que de comprendre ou de parler un langage commun

3 Communication entre agents
La communication inter-agent est fondamentale à la réalisation du paradigme agent, tout comme le développement du langage humain était la clé du développement de l’intelligence humaine et des sociétés. Pour échanger les informations et les connaissances, les agents utilisent des ACL (Agent Communication Language). Selon Genesereth (CACM, 1992), un agent logiciel = tout système utilisant un ACL pour l’échange de l’information.

4 Évolution ACL Partage d’objet
-> Partage des objets, des appels de procédure et de SDD (CORBA, RPC, RMI, …) -> Partage des connaissances (faits, règles, contraintes, procédures, …) KIF, Ontolinguia, KQML, FIPA, Aglets…. -> Partage des intentions (croyances, plans, buts, intentions) => Niveau intentionnel Théorie BDI -> Que peut-on partager d’autre ? Expériences, Stratégies… Partage de K Partage des intentions ?

5 Le niveau intentionnel: BDI, Acte de langage et ACL
- Les actes du langage = Description de niveau intentionnel d’un agent => croyances, désires, intentions et autres. une description intentionnelle Le modèle BDI permet de décrire le comportement d’un agent, y compris le comportement communicatif en tenant compte des états mentaux (B, D , et I). Les agents ont des « attitudes propositionnelles » qui sont des relations tertiaires impliquant: Un agent Un contenu Un ensemble fini d’attitudes: croire, avoir peur, espérer, se demander, accepter, … Exemple : <a, fear, raining (Tnow)>

6 Le modèle BDI et la communication
I => A Communication  (1) Revéler à l’autre l’état de no croyances, désires et intentions (2) Essayer d’influencer l’état des croyances, désires et intentions de l’autre. Noter la récursivité: Un agent a des croyances sur le monde (son environnment), sur les croyances des autres agents, sur les croyances des autres agents, sur les croyances qu’ont les autres agents sur lui ou sur ses croyances …

7 Critiques du BDI Est-il nécessaire d’avoir les 3 modalités (B, D et I) ? En d’autres termes, ces 3 modalités sont-elles Suffisantes Insuffisantes En a-t-on vraiment besoin des 3 ? –Il reste encore plusieurs questionnements sur l’utilité du BDI dans la pratique. Il y a donc un écart important entre la théorie et la pratique.

8 Théorie des actes de langage
Théorie relative à l’usage du langage pour les actions de communication (Austin 1962) -Toute communication est faite avec l’objectif de satisfaire un but ou une intention. Ex: « il pleut! », « ferme la porte, s’il te plait .» 3 types d’actes: locutoire Illocutoire Perlocutoire.

9 Identification des actes de langage
Acte locutoire: Production d’une suite de signes selon les règles syntaxiques d’un langage donné => mode de production de l’acte Acte illocutoire: Acte accompli en produisant cette suite de signes dans un contexte donné, exprimant une intention => Intention du locuteur (ordre, conseille, …) Acte perlocutoire: Résultat d’un acte illocutoire. => Effet sur l’allocutaire Exemple: « Ferme la porte » locution : qui parle ? à qui ? quelle porte ? Illocution: le locuteur veut que l’allocutaire ferme la porte Perlocution: L’allocutaire ferme la porte

10 Actes illocutoires Acte de langage = Force illocutoire (composante intentionnelle) + contenu propositionnel. Actes illocutoires = Performatives 5 classes de Performatives: Assertifs Directifs Commissifs Déclaratifs Expressifs.

11 Mise en œuvre dans les SMA
De nombres langages de communications entre agents (ACL) se réclament des actes de langage. Des standards se sont développés KQML (93, 97) FIPA-ACL (97, 99, 2000)

12 Knowledge Sharing Effort
• Initié par DARPA (Defense Advanced Research Projects Agency) en 1990 •Sponsorisé par DARPA, NSF, AFOSR •Participation de plusieurs chercheurs universitaires et de plusieurs industries • Objectif: Développer des techniques, méthodologies et outils de développement pour le partage et la réutilisation des connaissances. • Le partage et la réutilisation des connaissances peuvent survenir aussi bien au moment de la conception qu’au moment de l’implémentation ou de l’exécution.

13 Partage de connaissances
Le partage de connaissances nécessite une communication qui requiert un langage commun Langage => Syntaxe + Sémantique + Pragmatique Quelques composantes pouvant être utilisées indépendamment: KIF (Knowledge Interchange Format) => Syntaxe Ontolingua: un langage pour la définition d’ontologies partageables => Semantique KQML (Knowledge Query and Manipulation Language) Un langage la communication de haut-niveau => pragmatique

14 Syntaxe commune avec KIF
KIF permet de mettre en relation des systèmes hétérogènes (du point de vue base de connaissance) Il s’agit d’une version préfixée du calcul des prédicats du premier ordre avec quelques extensions: Codage de tuples Codage de procédures Exemple de code KIF: (forall ?x (=> (P ?x) (Q ?x))) (exists ?person (mother mary ?person)) (=> (apple ?x) (red ?x)) (<<= (father ?x ?y) (and (child ?x ?y) (male ?x))

15 KIF <-> traducteur lang 1 Système 2 KB en lang 2
KB en KIF BIBLIOTHÈQUE

16 Logiciel KIF Plusieurs systèmes de raisonnement KIF en LIPS disponibles à Stanford (Ex: EPILOG) Le moteur de raisonnement de ABE (Agent Building Environment de IBM) utilise KIF comme langage externe Le système Ontolingua (voir plus loin) de Stanford utilise KIF comme langage interne Des traducteur existe pour plusieurs langages: Prolog, CLIPS … Il existe des interpreteurs et des analyseurs qui acceptent des chaînes KIF dans les objets C++ ou Java.

17 Questions - Défis Définition d’un « mappage » KIF-XML (peut donner lieu à un outils plus intéressant pour l’interopérabilité de SBC).

18 Sémantique commune et partageable avec Ontolingua
Ontologie = Spécification des objets, des concepts et des relations dans un domaine particulier. Analogue à un schéma conceptuel de BD, Taxinomie de classe-sous-classe, … Ontolingua est un langage pour la construction, la publication et le partage d’ontologies. Il offre une interface Web Les ontologies peuvent être automatiquement traduites dans d’autres langages de description de contenu comme KIF, Prolog, CLIPS … Le langage offre des primitives pour la combinaison d’ontologies.

19 Sémantique commune et partageable avec Ontolingua
Les systèmes qui communiquent doivent partager une ontologie L’ontologie partagée peut être implicite ou explicite. Une ontologie implicite est généralement représentée par des procédures seulement. Une ontologie explicite est donnée par une représentation déclarative dans un langage de représentation de connaissance.

20 Ontologie des unités et
BD (une table) 77.60 … … Schema de la BD: Table Prix *Quantité: integer; cout: float Conceptual Schema: Un schéma conceptuel spécifie le sens (la signification) des concepts utilisés dans la BD prix(x, y) => Exist (x’, y’) [auto_part(x’) & part_no(x’) = x & retail_price(x’, y’, Value-Inc) & magnitude(y’, US_dollars) = y]. => Ontologie implicite Exemple Ontologie des produits d’auto Ontologie des produits Ontologie des unités et Des mesures

21 Exemple 2 : Ontologie explicite
fruit citrus apple pear orange lemon lime

22 Langage de representation de K = Logique + Ontology
Un formalisme de logique avec Une syntaxe pour les formules bien formées Un vocabulaire des symboles logiques (et, ou…) Des sémantiques pour l’interprétation des symboles logiques. + une ontologie comprenant Un vocabulaire des symboles non logiques (éléments du domaine) Une définition des symbole Des axiomes pour contraindre l’interprétation des symboles primitifs.

23 Pragmatique commune avec KQML
KQML = langage et protocole de communication de haut-niveau et orienté message, indépendant de la syntaxe et de la sémantique (ontologie) du contenu. Il est aussi indépendant Du mécanisme de transport des messages (ex: TCP/IP, SMTP, IIOP, HTTP …) Du protocole de haut niveau (ex: Contract Net …)

24 Message KQML Chaque message KQML représente un seul acte de langage (acte illocutoire) - Ex: ask, tell, achieve … - auquel sont associés une une sémantique (sémantique de la performative) et un protocole. 3 niveaux dans un message KQML La performative Des informations utiles pour l’interprétation de message (:ontology, :langage) et celles utiles pour le routage du message (:sender, :receiver, :reply-with …) Le contenu du message (:content).

25 Un message KQML Sémantique du tell de KQML décrite avec FIPA-SL:
:sender bhkAgent :receiver fininBot :in-reply-to id :ontology ecbk12 :language Prolog :content “price(ISBN ,24.95)”) Sémantique du tell de KQML décrite avec FIPA-SL: Opérateurs du langage sémantique (FIPA-SL) : -Bip “i (implicitement) croit (que) p” - Bif i p Uip “i est incertain sur p mais croit que p est plausible que non p” – Uif i p Cip “i désire que p” Fp = préconditions de faisabilité Re = effet rationnel sur l’environnement Ex: tell( i,j, B i f ) = fp [B i B i f Ù Ø B i ( Bif j B i f Ú Uif j B i f)] re [B j B i f] ... Problème: i veut informer j qu’il croit que f Précondition: i croit qu’il croit que f et ne croit pas ou a des doutes que j croit qu’il croit f Effets rationnels: j croit que i croit f

26 Quelques exemples (ask-one (tell : sender Joe : sender Stock-server
: content (price ibm ? Price) : receiver stock-server : reply-with ibm-stock : language LPROLOG : ontology NYSE-TICKS) (tell : sender Stock-server : content (price ibm 14) : receiver Joe : in-reply-to ibm-stock : language LPROLOG : ontology NYSE-TICKS) (ask-all : sender Stock-server : content (ibm, (Price, Time)) : receiver Joe : reply-with ibm-stock : language LPROLOG : ontology NYSE-TICKS)

27 Inform Request Query Reply Promise Meta
Insert, Uninsert Delete-one, Del-all, Undel Inform Tell, Untell Basic DB Broadcast Forward Network Ask-if Ask-one Ask-all Inform Basic Achieve, Unachieve Goal Eos Stream Request Query Stream Performatives KQML Facilitation Reply Broker-one Recom.-one Recruit-one Broker-all Recom.-all Recruit-all Cursor Promise Sream Eos Standby Ready Next Rest, Discard Meta Advertise Unadv. Deny Subscribe

28 Services de renseignement (Facilitation services)
Les agents de renseignement Contiennent des méta-connaissances sur les autres agents Fournissent des services de communication tels que: La diffusion des messages et le « faire-suivre » L’appariement des demandes et des offres de service … Des performatives dédiés à ces agents: Advertise, broker, recruit, recommend, forward, broadcast … Les agents de renseignement peuvent être intelligents ou non Ceux qui sont intelligents utiliseront les connaissances du domaine pour l’appariement des offres et des demandes de service

29 Sémantique de quelques performatives: Requête simple
Scène: A voudrait connaître la vérité sur l’action X que B détient dans sa BC 1- Connexion directe Ask-one , Ask-all Ask-one(X) B A Tell(X) Ask-if, Stream-all B A

30 Performatives de renseignement
2. A ne sait pas que X est dans B : Il faut passer par un facilitateur Broker (Le fac. soumet la req. à l’agent approprié et transmet la rép. à A) Broker(ask(X)) Advertise(ask(X)) F B A Tell(X) Ask(X) Recruit (Le fac. recruite un agent qui répond directement à A) Tell(X) F Advertise(ask(X)) B A Recruit(Ask(X)) Ask(X) Recommend (le facilitateur recommande un agent approprié à A) Recommand(ask(X)) F Advertise(ask(X)) B A Reply(B) Ask(X) Tell(X)

31 Extensibilité KQML peut être étendu : Ajout de nouvelles performatives
Ajouts de nouveaux paramètres (attributs) Création de nouvelles ontologies

32 ACL FIPA KQML = Premier essai de standardisation d’un ACL mais il n’offre pas d’infrastructure pour la gestion des agents. En 1996, création de la FIPA (Foundation for Intelligent Physical Agents), une association à but non lucratif regroupant: Universités et instituts de recherche + Entreprises: Alcatel, BT, DT, FT, Hitatchi, Hewlett Packard, IBM, Intel, Lucent, NEC, Nortel, Siemens etc.

33 Mode de travail de la FIPA
Travaux annuels sur les spécifications. Première spécification FIPA97 ( FIPA97 compremait 7 comités techniques (TCs) TC1: Agent Management TC2: Agent Communication Language TC3: Agent/Software Interaction TC4-TC7: Specification of Applications Spec actuelle: FIPA2000

34 TC2: FIPA ACL Basé sur des actes de langage
Les messages sont des actions de communication (Communicative action (CA)) Les actes de communication sont décrits sous forme narrative et sous forme de sémantiques formelles basées sur la logique modale La syntaxe est similaire à celle de KQML La spécification fournie une description normative des protocoles d’interaction de haut-niveau.

35 Caractéristiques essentielles de FIPA ACL
Les primitives de gestion et de renseignement (register, broker, recruit, etc.) ne font pas partie de l’ACL FIPA Des primitives peuvent être définies par composition de primitives de base. Utilise un langage puissant pour définir les états des agents (le langage SL (Semantique Language)) Les sématiques sont basés sur les attitudes mentales (croyance, intention etc.) Le sens des primitives est donné en terme de préconditions de faisabilité (Feasibility Preconditions (FP)) et d’effet rationnel (Rational Effect (RE)).

36 Catégorie de performatives FIPA
Information (contenu: proposition) Query_if, query_ref, sunscribe, inform, inform_if, inform_ref, confirm, disconfirm, not_understood Distribution de tâches (contenu: action) Request, request_whenever, cancel, agree, refuse, failure Négociation (contenu: action et proposition) Cfp (Call for proposal), propose, accept_proposal, reject_proposal

37 Sémantique et FIPA ACL Exemple: Performative Inform
<i, inform( j, f)> FP: B i fÙ Ø B i ( Bif j fÚ Uif j f) (i croit que f et i ne croit pas que j croit f ou il en a des doutes) RE: B j f (j croit que f) Exemple: L’agent i informe l’agent j qu’il (est vrai que) va pleuvoir aujourd’hui: (inform :sender i :receiver j :content "weather(today,raining)" :language Prolog :ontology weather42).

38 Sémantique et FIPA ACL (request A l’agent j de répondre que non:
L’agent i demande à j de l’informer si Lannion est en Normandie. (request :sender i :receiver j :content(inform-if :sender j :receiver i :content "in( lannion, normandie)" :language Prolog) :language FIPA-SL) A l’agent j de répondre que non: (inform :content"\+ in( lannion, normandie )"

39 Comparaison de Tell(KQML) et Inform(FIPA ACL)
Les deux messages sont syntaxiquement identiques La différence est uniquement au niveau de la sémantique et ce à 2 niveaux: La façon de décrire la primitive. Ex: pre-, post- pour les conditions dans KQML et FP et RE pour FIPA ACL Langage différent pour la description des attitudes propositionelles (mentales). Ex: les opérateurs bel et B (resp.) de KQML et de FIPA ACL n’ont pas la même signification.

40 Sémantique de Tell (KQML)
TELL(A,B,X) A informe B qu’il (A) croit que X est vrai (pour lui) bel(A,X) Pre(A): bel(A,X) Ù know(A,want(B,know(B,S))) where S may be bel(B,X) or NOT(bel(B,X)) Pre(B): intend(B,know(B,S)) Post(A): know(A,know(B,bel(A,X))) Post(B): know(B,bel(A,X)) Completion: know(B,bel(A,X)) La condition de complétion et les post-conditions doivent s’apparier à moins qu’un SORRY ou un ERROR soit émis (exception) pour indiquer que B ne peut traiter proprement ce message.

41 Méthodologie de développement
4 phases pour le développement de SMA: Collecter et construire les ontologies nécessaires Utiliser les standard, les ontotologies publiées si possible Développer et publier de nouvelles composantes au besoin Utiliser les outils commun (Ex: Ontologuia, Zeus Onto. Edit) Choisir un langage de représentation commun Exemple: KIF Utiliser un ACL (ex: KQML) comme langage de communication Au besoin, l’étendre avec de nouvelles performatives et de nouveaux protocoles Identifier et définir des protocoles de haut-niveau Ex: pour la négociation, pour l’achat, pour le cataloguage …


Télécharger ppt "ACL Roger Nkambou."

Présentations similaires


Annonces Google