Agents
Types Typ es d’Agents
Intelligence artificielle : Cours Master1 II. Agents intelligents
Camilla Schwind
February 22, 2010
Environments
Agents
Types Typ es d’Agents
1
2
3
Agents
Types d’Agents
Environments
Environments
Agents
Types Typ es d’Agents
1
2
3
Agents
Types d’Agents
Environments
Environments
Agents
Types Typ es d’Agents
Environments
Agents et Environnements
Capteurs (−→perceptions) perceptions) effectueurs (−→actions) actions) Exemples: humain, animaux, robots, agents logiciels (softbots), thermostats, chips, etc. aussi interrupteurs, chau chauff ffag ages es,, . . . Agent humain, capteurs: yeux, oreilles, bouche, (percevoir, ...) Agent humain, effectueurs: mains, jambe jam bes s, (ag (agir, . . . )
Agents
Types d’Agents
Environments
Exemples
Type
Perceptions
Actions
Mesures de Performance
Environnement
Diagnose ´ medical
ˆ Symptomes Observation
trouver la maladie
ˆ Hopital Cabinet
´ Satelite pour l’analyse d’images ˆ Controleur de raffinerie Tuteur de langue interactif
Pixels, couleur intensite´ Temp´erature Pression Texte saisi
analyser observer ´ etudier sortir classement de la sc´ene ouvrir/fermer les valves expliquer, sugg´erer corriger
Classement correcte
Images de ´ satelite
Purete´ S´ecurite´ Meilleures ´ resultats aux examens
Raffinerie Classe ´ d’etudiants
Agents
Types d’Agents
Environments
´ Definition: agent
Agent N = (P , A, f ) ou`
P est l’ensemble des perceptions de N A est l’ensemble des actions de N ´ sequences de perceptions p 1 , p 2 , . . . , p n ∈ P et d’actions ´ sequences d’actions a 1 , a 2 , . . . , a m ∈ A f : P → A est la FONCTION D ’ AGENT ∗
´ e´ sur une architecture Le programme d’agent est execut ´ physique pour realiser (calculer) f
Agents
Types d’Agents
Environments
Exemple 1: agent aspirateur
AS = (P 1 , A1 , f 1 ) ou` P 1 = Loc × Etat ou` Loc = {A, B } et Etat = {propre , sale } ´ e), ´ P 1 est un ensemble de couples (Location, Etat de propr et par ex. (A, propre ) A1 = {gauche , droite , aspire , }
Agents
Types d’Agents
Environments
Agent aspirateur: Fonction d’agent f
´ Sequence de perceptions (A, propre ) (A, sale ) (B , propre ) (B , sale ) (A, propre )(A, propre ) (A, propre )(A, sale ) .. .
Action droite aspirer gauche aspirer droite aspirer .. .
Agents
Types d’Agents
Agents rationnels Mesures de performance sur le r´esultat de la fonction d’agent
Mesures de performance pour l’aspirateur autonome: ` aspiree ´ Quantite´ de poussiere ´ en m 2 Surface nettoyee ´ ergie ´ Consommation d’en Niveau de bruit de l’appareil ... ´ ´ e, ´ le chat, . . . ) Securit e´ (comportement avec le b eb Important Mesures de performance adaptes Quand mesurer la performance?
Environments
Agents
Types d’Agents
Environments
Rationalite´ vs Omniscience ´ Un agent omniscient connait l’etat du monde et les effets ´ reels de ses actions Mais rationnel = omniscient
Un agent rationnel agit sur la base de ses perceptions et de ses connaissances restreintes, il essaie de maximiser les performances attendues Mais ` rationnel = a` succes
Agents
Types d’Agents
Environments
´ Agent rationnel ideal ´ Agir rationnellement est determin e´ par ´ Sequences de perceptions Actions disponibles Mesures de performance ´ Connaissances sur le monde r eel Buts finaux ´ choisi toujours l’action qui l’amene ` Un Agent rationnel id eal au but final en maximisant la valeur de la mesure de performance. Il agit sur la base de ses connaissances du monde, pour ´ chaque sequence de perceptions La perception active est un aspect important d’un comportement rationnel. ´ explicitement des actions sensorielles ∼Il faut integrer
Agents
Types d’Agents
´ Definition: Agent rationnel
Definition Agent rationnel AS = (C , P , A, f ) ou` ´ C est la “connaissance” du monde r eel P est l’ensemble des perceptions de AS A est l’ensemble des actions de AS f : P × C → A est la FONCTION D ’ AGENT ∗
Environments
Agents
Types d’Agents
Structure d’un agent rationnel
Fonction d’agent Perceptions × Connaissances → Action ´ ´ par un Cette fonction est r ealis ee programme d’agent qui tourne sur une ´ architecture qui organise egalement l’interface avec l’environnement (perceptions, actions)
∼
Agent = Architecture + Programme
Environments
Agents
Types d’Agents
Environments
´ Schema de programme pour un agent Programm function S KELETON -AGENT( percept ) returns action static: memory , the agent’s memory of the world memory ← U PDATE -M EMORY( memory, percept ) action ← C HOOSE -B EST-ACTION ( memory ) memory ← U PDATE -M EMORY( memory, action ) ` ´ Chaque agent est compl etement determin e´ par sa fonction d’agent. ´ ´ une sequence ´ Etant donnee de perceptions, la fonction renvoie une action.
Agents
Types d’Agents
Approche la plus simple: Tables Programme function TABLE -D RIVEN -AGENT( percept ) returns action static: percepts , a sequence initially empty append percept to the end of percepts action ← L OOK - UP( percepts, table ) return action ` Problemes: ´ La table peut enormement grandir La construction de la table sera donc tr ` es longue ` couteuse Toute mise a` jour sera tres . . . non-modulaire ˆ Aucune flexibilit´e pour l’agent
∼ impossible en pratique
Environments
Agents
Types d’Agents
Types d’agents
´ Agents reflexes simples ´ ´ sur des modeles ` ` Agents reflexes fondes (avec modele interne du monde) ´ sur des buts Agents fondes ` fondes ´ sur l’utilite´ Agents complets Agents capables d’apprentissage
Environments
Agents
Types d’Agents
´ Agent reflex simple
Il est impossible de construire un tableau complet (ex. perceptions visuelle) Mais on peut abstraire ` Regles de condition - action: if condition then do-action
Environments
Agents
Types d’Agents
´ ´ Agent reflex simple: Schema
Environments
Agents
Types d’Agents
Environments
´ Agent reflex simple: Programme Programme function S IMPLE -R EFLEXE -AGENT( percept ) returns action static: rules , a set of condition-action rules state ← I NTERPRET-I NPUT ( percept ) rule ← RULE -M ATCH( state, rules ) action ← RULE -ACTION[ rule ] return action Programme pour l’aspirateur function AGENT- ASPIRATEUR( lieu,statut ) returns act if status = sale then return aspire else if endroit = A then return droite else if endroit = B then return gauche
Agents
Types d’Agents
´ ` interne du monde Agent reflex avec modele
Etat du monde Evolution du monde Effets des actions ` cot ˆ e´ de la perception actuelle, l’histoire de toutes les A perceptiopns influence le choix des actions. Il faut alors ´ ´ representer cette histoire sous une forme ad equate.
Environments
Agents
Types d’Agents
Environments
´ ` interne du monde: Schema ´ Agents reflex avec modele
Agents
Types d’Agents
Environments
´ ´ Agents reflex avec etat
Les percepteurs rendent accessible seule une partie de l’environnement ´ Les effets de certaines actions sont d ependantes du contexte.
Agents
Types d’Agents
Environments
´ ´ Agents reflex avec etat : Programme Programme function R EFLEX -AGENT-W ITH -S TATE ( percept ) returns action static: state , a description of the current world state rules, a set of condition-action rules state ← U PDATE -S TATE ( state, percept ) rule ← RULE -M ATCH( state, rules ) action ← RULE - ACTION[ rule ] state ← U PDATE -S TATE ( state, action ) return action ` ´ ´ ´ L’agent choisit une r egle dont la pr econdition verifie l’etat actuel ´ ´ a` cette regle. ` du monde et execute ensuite l’action associ ee
Agents
Types d’Agents
´ Agent reflex avec buts explicites
But explicit Effets des actions pour atteindre un but Combination des buts avec les effets des actions ´ Planification et decision
Environments
Agents
Types d’Agents
´ ´ Agent reflex avec buts explicites : Schema
Environments
Agents
Types d’Agents
Environments
` base´ sur la performance Agent complet Agent State
Sensors
How the world evolves
What the world is like now
What my actions do
What it will be like if I do action A
Goals
How happy I will be in such a state What action I should do now Effectors
E n v i r o n m e n t
Agents
Agent qui apprend
Types d’Agents
Environments
Agents
Types d’Agents
Environments
Types d’environnements AN accessibles non-accessible Est-ce que toutes les ´ es ´ pertinentes du monde sont-elles accessibles propriet aux percepteurs de l’agent? ´ ´ ´ DN deterministe vs stochastique L’ etat suivant depend-il ´ ´ ´ uniquement de l’etat actuel et de l’action ex ecut ee? ´ ´ ´ EN episodique vs sequentiel Peut-on evaluer la qualite´ d’une ´ ´ action a` l’interieur d’un episode? Ou bien le ´ ´ developpement futur est-il egalement pertinent pour ´ l’evaluation? SD statique vs dynamique Est-ce que le monde peut changer ´ echit ´ pendant que l’agent r efl (et ne fait rien)? ` vs continu Est-ce que les changements d’ etat ´ DC discret sont ` (par exemple “jouer aux echecs”) ´ ils discrets ou sont-ils continus (par exemple se promener dans une maison)?
Agents
Types d’Agents
Environments
Exemples d’environnements
Environnement ´ Echec Poker Backgammon Taxi ´ Diagnose medicale Analyse d’images ˆ Controleur de raffinerie Tuteur interactif de langue
AN oui non non non non non non non
DN oui non non non non non non non
EN non non non non non non non non
SD semi oui oui oui oui oui oui non
´ ´ e´ d’un environnement d epend ´ La presence d’une propri et ´ egalement de la formalisation du concepteur.
DC oui oui oui oui oui oui oui oui
Agents
Types d’Agents
´ ` Agent de resolution de problemes function S IMPLE -P ROBLEM -S OLVING -AGENT( percept ) returns an action static: seq , an action sequence, initially empty state some description of the current world state goal a goal, initially null problem a problem formulation state ← U PDATE -S TATE ( state, percept ) if seq is empty then goal ← F ORMULATE -G OAL( state ) problem ← F ORMULATE -P ROBLEM( state, goal ) seq ← S EARCH ( problem ) action ← R ECOMMENDATION( seq, state ) seq ← R EMAINDER ( seq, state ) return action
Environments
Agents
Types d’Agents
Conception d’un agent
´ Specification des perceptions des actions des buts ˆ l’environnement des taches
Environments
Agents
Types d’Agents
Environments
Conception d’un agent : exemple taxi
´ ´ destination, profits, Mesures de performance? securit e, comfort, . . . ´ Environnement? rue/routes/autoroutes, circulation, pi etons, temps, . . . ´ erateur, ´ Actuateurs ? volant, accel frein, claxon, taxiphone, . . . ´ Actions? conduire, acc´elerer, freiner, claxonner, parler, . . . capteurs? vid´eo, compteur, jauge, voyants, tableau de bord, GPS, . . .
Agents
Types d’Agents
Environments
Conception d’un agent : exemple agent de vente
´ efficacite, ´ adaptabilite, ´ Mesures de performance? prix, qualite, .. .
Environnement? sites WWW, vendeurs, acheteurs, transporteurs, . . . Actuateurs ? formulaires, pages web, liens, . . . ´ Actions? conduire, acc´elerer, freiner, claxonner, parler, . . . capteurs? pages HTML (textes, graphics, photographies, scripts, . . .)