cours agents cognitifs3 - lirmm.frferber/progagent/cours agents cognitifs.pdf · cours...

26
Agents cognitifs cours programmation orientée agents Master Informatique - Univ . de Montpellier II Jacques Ferber LIRMM - Université Montpellier II 161 rue Ada 34292 Montpellier Cedex 5 Email: [email protected] Home page: www.lirmm.fr/~ferber Version 2.1 Nov. 2017

Upload: hadang

Post on 11-Sep-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Agents cognitifs cours programmation orientée agents

Master Informatique- Univ. de Montpellier II

Jacques Ferber

LIRMM - Université Montpellier II161 rue Ada

34292 Montpellier Cedex 5

Email: [email protected] page: www.lirmm.fr/~ferber

Version 2.1 Nov. 2017

Page 2: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 2

Définition d'un système multi-agents

uUn SMA est défini comme:l Un ensemble B d'entités plongées dans un environnement E (E

est caractérisé par l'ensemble des états de l'environnement S)l Un ensemble A d'agents avec A Í Bl Un système d'action (opérations) permettant à des agents d'agir

dans E (une opération est une fonction de S => Sl Un système de communication entre Agents (envoi de messages,

diffusion de signaux,… (I comme interaction)l Une organisation O structurant l'ensemble des agents et

définissant les fonctions remplies par les agents (notion de rôleet éventuellement de groupes)

l Eventuellement: une relation à des utilisateurs U qui agissent dans ce SMA via des agents interfaces U Í A

Modèle voyelles d'Yves Demazeau

Page 3: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 3

Architecture générale d’agents

Sélectiond'action

Action

Consommation

Etat interne, drives,

Tendances (désirs)Agent

Raisonnement

Système conatif

Système représentationnel (cognitif)

ReprésentationMémoire

Perception

Système decommunication

Environment

Fonctiondéontique

Page 4: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 4

Agents cognitifs

uNotion d’état mental

uThéorie des états mentaux

uArchitecture BDI

Page 5: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 5

Agents cognitifs #1u Comportement est dirigé par des états mentaux (ou attitudes mentales) tels

que les intentions, les croyances, les buts, les émotions, etc..

u La notion de croyance et/ou représentation constitue la différence majeure avec les agents réactifsl Une croyance peut ne plus être vraie:

F Ex: j’ai laissé mon verre sur la table • Mais en fait quelqu’un a pu le prendre pour le ranger par exemple)

F Ex: Il y a encore une bière dans le frigo que je vais pouvoir déguster tranquillement…• En fait quelqu’un a pu la prendre et la boire

F Ex: Il y a un cours cet après midi• Mais le prof est peut être malade… ou autre…

u Pour un agent réactifl Le comportement dépend uniquement de la perception. Si pas d’illusion, le

comportement est sûr

u Pour un agent cognitifl Nécessiter de mettre à jour les représentations/croyances en fonction des

informations diverses qui sont disponibles

Page 6: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 6

Théorie des agents cognitifs

u Les trois états mentaux principaux (pour les SMA) sont les croyances, les intentions et les buts:l Les intentions sont des buts persistants qui imposent à un agent d’agirl Les buts persistants sont des buts qui ne sont abandonnés que s’ils ont été

accomplis ou que l’on croit inaccessibles.

u Théories fondées sur des attitudes mentales qui peuvent s’exprimer en termes formels avec un ensemble de primitives:l Cohen & Levesque: beliefs, goals et choice.l Rao & Georgeff: beliefs, desires (goals), et intentionsl Sadek: belief, uncertainty et choice (ou goals)l autres: un mélange savant de ces primitives

u Ces théories utilisent des logiques modales et temporelles pour raisonner sur les événements passés et futurs.

Page 7: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 7

Croyances

uLes croyances peuvent être définies logiquement. Elles sont fondées sur de la logique modale.

uLeur signification est généralement fondée sur la sémantique des mondes possibles.

uPrincipes:

l Bel(p)

l Intention(a)

l Goal(p)

Page 8: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 8

Une logique modale standard pour les croyances

Axiome de distribution

u Bel(a, (p Þ q)) Þ Bel(a, p Þ Bel(a,q)) (K)

u Bel(a, p) Ù Bel(a, (p Þ q)) Þ Bel(a, q))

Principe de non-contradiction

u Bel(a,p) Þ ¬Bel(a, ¬p) (D)

Introspection positive et négative

u Bel(a,p) Þ Bel(a,Bel(a, p)) (4)

u ¬Bel(a,p) Þ Bel(a, ¬Bel(a, p)) (5)

Page 9: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 9

Modèles des buts et des intentions

u Relations entre buts et intentionsl Les intentions sont des buts persistants qui imposent à un agent d’agirl Les buts persistants sont des buts qui ne sont abandonnés que s’ils ont été accomplis

ou que l’on croit inaccessibles.

u Plusieurs modèles de buts persistants et d’intentions:l Ex: Cohen et levesque: l Goal-p(a,p) = Goal(a,Later(p)) Ù Bel(a, ¬p) Ù

(Bel(a,p) v Bel(a,Always(¬p)) à ¬Goal(a,Later(p))l Agent a a le but persistant que p soit vrai s’il a le but que p soit vrai plus tard, s’il

croît que p n’est pas vrai pour l’instant et que si il croît qu’il est vrai ou s’il croit qu’il ne sera jamais vrai, alors a abandonner le but p.

Page 10: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 10

Comportements dirigés par les buts

P-Goal(p)

Bel(¬p)Bel(u -> p)

Bel(CanDo(u))Intention(u)

alorssi

Si un agent peut faire l’action u et qu’il croit que u permet de satisfaire le but p, alors il a l’intentiond’accomplir u

Page 11: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 11

Comportements dirigés par les buts

P-Goal(p)

Bel(¬p)Bel(u -> p)

Bel(CanDo(u))Intention(u)

alorssi

Si l’une des conditions n’est plus satisfaitealors l’intention est abandonnée

Et comme les croyances peuvent évoluer, cela suppose un système de révision de croyances et de révision d’intention

Page 12: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 12

Architecture BDI

Beliefs

Plans

Goals

Decision

Intentionsmessages

actions

messages

perceptions

Page 13: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 1313

Cycle de fonctionnement d'une architecture BDI

BDI-interpreteurrinit();do {

if (U != null){execute(U); // exécute l’activité U (cf. les FSM)

}R = getNextPercepts(); // récupère les perceptsB = beliefRevisionFunction(B,R); // fonction de révision des croyancesD = generatePossibleActions(B,G); // selectionne les buts acceptables

// en fonction des croyances..I = selectIntentions(B, D, I); // nouvelle intention à partir des désirs et intentionsU=plan(B, I);}

while !(empty(p) or succeded(I, B, p) or impossible(I, B)) }

Page 14: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 14

Communication et comportements dirigés par les buts

Bel(¬p)Bel(u => p)

Bel(CanDo(c,u))Bel(Benev(u))

Intention(send(c,request(u))

alorssi

P-Goal(p)

c

Page 15: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 15

Communication et comportements dirigés par les buts

P-Goal(Done(u,for(x))

c

Intention(u)

Bel(¬p)Bel(u -> p)

Bel(CanDo(u))

Page 16: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 16

Communication et comportements dirigés par les buts

c

Bel(done(u))

Page 17: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 17

Relier les désirs et les préférences?

uDès que j’ai un but, je sais ce que je dois faire, si j’ai la fonction associée.

uMais d’où viennent les désirs/buts?

uUne réponse: l’architecture BDI étendue avec un système de construction de désirs

Page 18: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 18

Black and White

uJeu de Lionhead studios (Peter Molyneux) sorti en 2001

uOn jour le rôle d'un Dieu qui contrôle une créature.l Mais la créature dispose d'une certaine autonomie de

comportement

Page 19: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 19

Black and White: la créature

Buts (désirs)

Opinions

Croyances

IntentionsAttaquer la ville de l'ennemi

Plan(but, objets)

Envoyer des pierres à la maison

Primitives d'action

Aller vers une pierreEn prendre uneAller vers la maison,Lancer des pierres vers la maison

Page 20: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 20

Infos supplémentaires

uOpinions: l valeurs associées à des désirs en fonction d'informations sur les

objets pouvant satisfaire ces désirsl Ex: Nourriture =>

• Steak = 0.9• Herbe = 0.1• Pierre = -0.2

l Permet de faire des priorité dans les intentions en fonction des objets impliqués

Page 21: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 21

Construction des "désirs". Ex: Faim

Energie basse

Nourriture

Mécontentement

Source=0.2Poids=0.8Valeur=0.16

Source=0.4Poids=0.2Valeur=0.08

Source=0.7Poids=0.2Valeur=0.14

∑ Seuil Faim

Différents poids donnent différentes personnalités

Page 22: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 22

Extension: cognitons

uGénéraliser les B, D et I sous formes de Cognitons qui ont une influence sur le déclenchement de plans

Page 23: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 23

Un schéma cognitif

Page 24: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 24

MetaCiv

u Construit au-dessus de MadKit / Turtlekitl MadKit: agents + AGR (Agent Groupe Rôle) + communicationsl TurtleKit: espace implémente les primitives de NetLogo +

gestion efficace du scheduling des agents

Page 25: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 25

Et maintenant coglogo

uVersion des cognitions disponible pour NetLogo

Page 26: cours agents cognitifs3 - lirmm.frferber/ProgAgent/cours agents cognitifs.pdf · cours programmation orientée agents Master Informatique-Univ. de Montpellier II ... lUn système

Jacques Ferber - LIRMM 26

Intérêt des agents cognitifs

u1 : utiliser du réactif tant que c'est possiblel Devoir gérer des croyances et des révisions de croyance est plus

complexel Ne sert à rien pour gérer des comportements dans l'espace

u2 : les désirs, croyances et intentions méritent d'être pondérésl Préférences, l Poids sur les cognitons

u3 : intéressant si l'on fait intervenir des raisonnementsl Bel(X) et Percept(Y) è Bel(Z)

u4 : on peut faire intervenir d'autres "cognitons": l Emotions (peur, colère/frustration, tristesse, etc.) => se gère

comme les autres cognitons (faim, fatigue, etc.)