Partie 2: Agents intelligents - PowerPoint PPT Presentation

1 / 51
About This Presentation
Title:

Partie 2: Agents intelligents

Description:

L'agent est donc un logiciel capable d'agir de mani re autonome dans un certain ... sont ' astucieux ' ou flexible (r actif, pro-actif, social) Sont actifs dans la mesure ou ... – PowerPoint PPT presentation

Number of Views:106
Avg rating:3.0/5.0
Slides: 52
Provided by: nicolep81
Category:

less

Transcript and Presenter's Notes

Title: Partie 2: Agents intelligents


1
Partie 2 Agents intelligents
DAMAS Dialogues, Agent et Multiagents
2
Quest ce quun agent?
  • Les agents sont autonomes, capables dagir de
    manière  indépendante  et exhibant un contrôle
    sur leurs états internes
  • Lagent est donc un logiciel capable dagir de
    manière autonome dans un certain environnement.

3
Agents du trivial au complexe
  • Agents triviaux (inintéressants)
  • Thermostat
  • Démon Unix
  • Un agent intelligent action autonome et
    flexible dans un environnement donné. Par
    flexible on entend
  • Réactif
  • Pro-actif
  • Social.

4
Réactivité
  • Exemple du compilateur reflète des environnements
    fixes nayant pas de contraintes de temps
  • Le monde réel nest pas de cette forme les
    choses changent, linformation est incomplète,
    les environnements du monde réel sont dynamiques
  • Les logiciels sont très difficiles à construire
    dans les environnements dynamiques on doit tenir
    compte des contingences et savoir si ça bien été
    exécuté
  • Un système réactif est un système qui maintient
    une interaction continue avec son environnement
    et répond aux changements qui sy produisent dans
    un temps utile.

5
Pro-activité
  • Réagir à un environnement est généralement facile
    sil est du type stimulus ! réponse sous forme
    de règles
  • Mais on voudrait déléguer des tâches aux agents,
    on voudrait que les agents fassent des choses
    pour nous
  • Les agents doivent donc avoir des comportements
     dirigés buts 
  • Pro-activité prendre linitiative en vue de
    réaliser son but et ne pas se contenter de juste
    répondre à des évènements bien que ceci peuvent
    être liés aux buts à réalisés
  • Lagent doit donc reconnaître et profiter des
    opportunités qui lui sont offertes.

6
Sociabilité
  • Le monde réel reflète plus un monde multiagent où
    il y a très peu de place pour le mono-agent
  • On ne peut donc réaliser les buts dun agent sans
    prendre en compte les buts et intérêts des autres
    agents. Certains buts ne peuvent être réalisés
    quavec le concours des autres agents
  • Sociabilité capacité dinteragir avec les
    autres agents (possiblement aussi avec les
    humains) via toutes sortes de langages de
    communication.

7
Autres propriétés
  • Dautres propriétés peuvent être discutées dans
    le cadre des agents
  • Mobilité la capacité dun agent de se déplacer
    à travers un réseau
  • Sincérité un agent ne pourrait  en
    connaissances de cause communiquer de fausses
    informations
  • Bénévolat les agents ne doivent entrer en
    conflit avec les autres, ils doivent toujours
    essayer de faire ce quon leur demande (au risque
    de délaisser leur propres tâches)
  • Rationalité (faible) un agent agit pour
    réaliser ses buts et il ne doit en aucun cas agir
    en vue dempêcher ses buts de se réaliser. Le
    tout conformément à ce quil croit (sait).
  • Adaptation et apprentissage les agents
    améliorent leur performance à mesure que le temps
    passe

8
Agents et objets
  • Beaucoup disent que les agents objets ??
  • Objets
  • ça encapsule un état E
  • ça communique via des passages de messages
  • ça a des méthodes opérations portant sur E
  • Agents
  • sont autonomes, ils décident quant aux actions.
  • sont  astucieux  ou flexible (réactif,
    pro-actif, social)
  • Sont actifs dans la mesure ou SMA multi-threads
    où chaque agent au moins un thread

9
Agents et objets (suite)
  • Beaucoup disent que les agents objets ??
  • Objets font les choses gratuitement du moment
    quil ne raisonnement pas et quils ne décident
    pas. Ça a été décidé par le concepteur.
  • Agents font les choses parce quils le veulent.
    En effet, ils font les choses suite à un
    raisonnement et/ou à une prise de décision
  • Très important rien nempêche les agents dêtre
    programmés sous forme dobjets.

10
Agents et systèmes experts
  • Beaucoup disent que les agents Systèmes Experts
    (SE)?
  • SE généralement
  • encapsule une expertise
  • Exemple un système expert type diagnostic
    ensemble de règles qui disent quoi faire dans
    telle ou telle situation. ) Un dépanneur type
    garagiste ou autre pourrait se faire aider par un
    tel système.
  • Les principales différences
  • un agent ne reflète pas forcément une expertise,
    il pourrait toutefois le faire (certains SE temps
    réel sont des agents)
  • un SE nest pas situé forcément dans un
    environnement sur lequel il agit.

11
Agents et IA
  • Comment se situe les agents par rapport à lIA
    dans son ensemble?
  • LIA vise à construire des systèmes capables de
  • comprendre le langage
  • Reconnaître des scènes
  • Planifier et re-planifier en présence
    dincertain, etc.
  • Raisonner selon le sens commun
  • Etc.
  • Les agents cest juste choisir la bonne action au
    bon moment et ce, dans un environnement limité.
  • Pas besoin de tout ce que lIA veut résoudre
  • Un agent pourrait avoir  peu  dintelligence.

12
Agents et leur environnements
  • Lenvironnement entourant lagent pourrait être
  • accessible ou non
  • déterministe ou non
  • statique ou dynamique
  • discret ou continu.

13
Lenvironnement (suite)
  • Accessible ou non
  • Un environnement est dit accessible si lagent
    peut obtenir une information à jour, précise et
    complète de létat de cet environnement
  • La plupart des environnements complexes (y
    compris le monde physique qui nous entoure) sont
    inaccessibles
  • Plus lenvironnement est accessible plus il est
    facile pour le ou les concepteurs.

14
Lenvironnement (suite)
  • Déterministe ou non
  • Un environnement est dit déterministe si toute
    action a un simple effet garanti. Ainsi il ny a
    pas dincertain associé à létat résultant de
    lexécution dune action
  • Le monde physique à bien des égards, peut être vu
    comme un monde non-déterministe
  • Un environnement non-déterministe présente (en
    général) plus de difficultés pour le ou les
    concepteurs.

15
Lenvironnement (suite)
  • Statique ou dynamique
  • Un environnement statique est un environnement
    qui reste inchangé si lagent nagit pas dessus
  • Un environnement dynamique est un environnement
    qui a dautres processus opérant sur lui, et qui
    donc change en dehors du contrôle de lagent
  • Le monde physique qui nous entoure est un monde
    hautement dynamique.

16
Lenvironnement (suite)
  • Discret ou continu
  • Un environnement est dit discret sil englobe un
    nombre fini et fixe dactions et de percepts
  • Le jeu déchec constitue un environnement
    discret
  • La conduite automobile constitue un environnement
    continu.

17
Agents systèmes intentionnels
  • Lorsquon explique lactivité humaine, il est
    toujours utile dexprimer des choses comme
  • Simon a pris le cours multiagent car il croit que
    ça peut laider dans son projet de maîtrise
  • Simon travaille dur, car il a lintention de se
    faire recruter par une entreprise très sélective.
  • De telles expressions utilisent des notions de
    psychologie (i.e., notions intentionnelles) qui
    prédisent et expliquent le comportement humain au
    moyen dattitudes mentales comme les croyances,
    les intentions, les désirs, etc.

18
Systèmes intentionnels (suite)
  • Est-il légitime dattribuer des croyances,
    désires. intentions, etc. à des entités
    logicielles?
  • attribuer des croyances, intentions, désirs ou
    autresà une machine, est légitime, quand une
    telle attribution exprime la même information que
    ce quelle exprime pour une personne. Cest
    utile, si lattribution nous aide à comprendre la
    structure de la machine, son comportement passé
    ou son comportement à venir, ou comment la
    réparer ou laméliorer traduction libre à
    partir de McCarthy.

19
Systèmes intentionnels (suite)
  • Les notions intentionnelles sont en fait des
    outils dabstraction qui nous fournissent une
    manière  familière  et convenable pour décrire,
    expliquer et prédire le comportement des systèmes
    complexes.
  • Se rappeler que les abstractions ont toujours eu
    leur place en informatique
  • abstraction procédurale
  • types de données abstraits
  • Objets
  • Agent et agents intentionnels représentent une
    nouvelle abstraction.

20
Systèmes intentionnels (suite)
  • autre avantage des agents comme systèmes
    intentionnels
  • Simon croit que Patrick ne sait pas la date du
    Super Bowl (représentations en niches) ) on
    pourra alors spécifier des systèmes ayant des
    représentations dautres systèmes
  • les représentations en niche sont essentiels aux
    systèmes multiagents

21
Systèmes Post-déclaratifs
  • Du procédural au post-déclaratif
  • En programmation procédurale, on dit exactement
    ce que le système doit faire
  • En programmation déclarative, on exprime quelque
    chose que nous voulons réaliser. Après ça, on
    donne au système des info générales sur les
    relations entre objets, et on laisse le mécanisme
    de contrôle pré-construit, faire ce quil doit
    faire.
  • Avec les agents, nous donnons une spécification
    très abstraite du système et on laisse le
    mécanisme de raisonnement faire ce quil doit
    faire, en accord avec une  théorie agents
    pré-construite 

22
Architectures abstraites dagents
  • Supposons que lenvironnement pourrait être dans
    lun des états de lensemble des états
    instantanés discrets, soit
  • Agents sont supposés avoir un répertoire
    dactions possibles qui leur sont disponibles et
    qui transforment létat de lenvironnement.
  • Une exécution est une séquence entrelacée détats
    et dactions.

23
Architectures abstraites (suite)
  • Soit R lensemble de toutes les séquences finies
    possibles
  • Soit RAc un sous ensemble de R finissant avec une
    action
  • Soit RE le sous ensemble de R finissant avec un
    état.

24
Fonctions de transformations détats
  • Une fonction de transformation détats représente
    le comportement de lenvironnement
  • Noter que lenvironnement est dépendant de
    lhistorique (notion de temps) et est
    non-déterministe
  • If t(r) Æ, alors il ny a pas détat successeur
    à r . Dans ce cas on dit que le système a fini
    son exécution.
  • Un environnement est alors caractérisé par

25
Agents
  • Un agent est une fonction qui  mappe  les
    exécutions aux actions
  • Un agent doit prendre une décision sur laction à
    exécuter en se basant sur lhistorique du système
    à date. Soit AG lensemble de tous les agents.

26
Systèmes
  • Un système est une paire contenant un agent et un
    environnement
  • Nimporte quel système lui est associé un
    ensemble dexécutions Lensemble des exécutions
    de lagent Ag dans lenvironnement Env par
    R(Ag,Env) .

27
Systèmes

28
Agents standards via des systèmes
  • Formellement, une séquence
  • représente une séquence dexécution de lagent Ag
    dans si

29
Agents purement réactifs
  • Certains agents ne tiennent nullement compte de
    lhistorique. Leurs actions sont justes basées
    sur le présent et ne tiennent pas compte du
    passé
  • Ils sont appelés agents réactifs
  • Un thermostat est un agent purement réactif

30
Agents purement réactifs (suite)

31
Agent réactif (suite)
  • Lagent est par ex. capable de voir et donc on a
    une fonction see qui représente la capacité de
    lagent à observer son environnement, tandis que
    action représente le processus de prise de
    décision
  • Bien entendu, loutput de see est un percept
  • qui mappe les états de lenvironnement aux
    percepts
  • Et action est maintenant la fonction suivante
  • elle mappe donc les séquences des percepts aux
    actions.


32
Agent avec état
  • Cette fois-ci lagent maintient ses états

33
Agent avec état
  • Ce type dagent a une structure de donnée interne
    qui est typiquement utilisée pour enregistrer les
    états et lhistorique. Soit I lensemble de tous
    les états internes de lagent.
  • La perception de lagent reste inchangée
  • La fonction de prise décision est reflétée par
  • cest une fonction qui mappe les états internes
    aux actions
  • Une fonction additionnelle est ajoutée dans ce
    cas

34
Boucle de contrôle de lagent
  • Lagent commence dans un état initial interne i0
  • Il observe son état environnemental e, et il
    génère suite à ça see(e).
  • Létat interne de lagent est alors mis à jour
    via la fonction next qui devient next(i0,see(e))
  • Laction sélectionnée et exécutée par lagent est
    cette fois-ci action(next(i0,see(e))).
  • Aller à létape 2.

35
Tâches pour les agents
  • Nous programmons des agents afin quils puissent
    exécuter des tâches pour nous
  • Les tâches doivent être spécifier par nous
  • Mais nous voulons dire aux agents, juste ce quil
    faut faire et surtout pas comment faire.

36
Fonctions dutilités
  • Une possibilité pour les agents est alors
    dassocier des utilités aux états. La tâche de
    lagent est alors de trouver le ou les états qui
    maximisent lutilité
  • Une spécification de tâche est alors la fonction
    suivante
  • elle associe un nombre réel à chaque état de
    lenvironnement.

37
Fonctions dutilités (suite)
  • Mais dans ce cas, que doit-on associer à une
    exécution?
  • utilité minimum dun état sur une exécution?
  • Utilité maximum dun état sur une exécution?
  • Somme des utilités?
  • Moyenne?
  • Inconvénient difficulté de spécifier à long
    terme.

38
Fonctions dutilités (suite)
  • Autre possibilité assigner une utilité à une
    exécution complète
  • Cette possibilité entrevoit mieux le long terme
  • Variations incorporer des probabilités pour les
    différents états.

39
Difficultés avec les utilités
  • Doù viennent les nombres?
  • Nous nous pensons pas en termes dutilités!
  • Cest généralement difficile de formuler les
    tâches au moyen des utilités.

40
Utilité dans le Tileworld
41
Tileworld (suite)
  • Apparition et disparition aléatoires de trous.
  • La fonction dutilité pourrait être définie comme
    suit

42
Utilité attendue et agents optimaux
  • Soit lexpression dénotant la
    probabilité que lexécution r se produit quand
    lagent Ag est placé dans lenvironnement Env
  • Selon les lois des probabilités
  • Dans ce cas, un agent optimal Agopt dans
    lenvironnement Env est lagent qui maximise
    lutilité attendue

43
Agents optimaux limités
  • Certains agents ne peuvent être implémentés sur
    certaines machines (nécessité de plus de mémoires
    ou autres)
  • Soit alors lensemble dénotant les
    agents qui peuvent être implémentés sur la
    machine m
  • Dans ce cas, léquation précédente de Agopt
    devient

44
Spécification de tâches par des prédicats
  • Un spécial cas dassignation dutilités consiste
    à assigner faux ou vrai à une exécution
  • Si une exécution est à 1, alors lagent a réussi
    pour cette exécution, sinon il a échoué
  • Dès lors on a spécifié une tâche par un prédicat
    qui peut être faux ou vrai
  • Un tel prédicat peut être noté de la manière
    suivante

45
Environnement tâche
  • Un environnement tâche est une paire où
    Env est un environnement et y est définie par

  • Dans ce cas, un environnement tâche spécifie
  • Les propriétés du système dans lequel doit
    évoluer lagent
  • Le critère par lequel un agent peut être jugé
    comme ayant réussi ou pas.

46
Environnement tâche (suite)
  • Soit donc lexpression dénotant lensemble de
    toutes les exécutions de lagent Ag évoluant dans
    lenvironnement Env qui satisfait y
  • Nous disons alors quun agent Ag a du succès dans
    lenvironnement tâche si

47
Probabilité de succès
  • Soit lexpression dénotant la
    probabilité que lexécution r se produit quand
    lagent Ag est placé dans lenvironnement Env
  • Alors la probabilité que
    y est satisfaite par Ag dans Env pourrait
    sexprimer par

48
Tâches à réaliser ou à maintenir
  • On distingue 2 types de tâches celles qui sont
    à réaliser et celles qui sont à maintenir
  • Les tâches qui sont à réaliser sont celles ayant
    la forme  réaliser tel ou tel état des choses 
    exemple nettoyer cette salle
  • Les tâches à maintenir sont celles ayant la forme
     maintenir tel ou tel état des choses , exemple
    maintenir la distance à 10m.

49
Réaliser ou à maintenir (suite)
  • Une tâche à réaliser est spécifier par un
    ensemble de  bons  états ou détats but
  • Lagent aura satisfait une telle réalisation
    sil peut au moins satisfaire un état de cet
    ensemble Eils sont tous considérés comme
     bons .
  • Une tâche à maintenir est spécifier par un
    ensemble détats mauvais quil convient déviter
  • Lagent aura satisfait un tel maintient sil
    réussit à éviter tous les états de B.

50
Synthèse dagent
  • Synthèse programmation automatique dont le but
    est davoir un programme qui prend comme entrée
    un environnement tâche et génère automatiquement
    un agent qui réussit dans cet environnement
  • où TE signifie lensemble des environnements
    tâches et ? est nil

51
Algorithme de synthèse agent
  • Un algorithme de synthèse est
  • Valide chaque fois quil retourne un agent,
    alors cet agent est un agent qui réussit dans
    lenvironnement représentée comme input
  • Complet sil garanti de retourner un agent
    chaque fois quil existe un agent qui réussira
    dans lenvironnement présentée en input
Write a Comment
User Comments (0)
About PowerShow.com