Agents intelligents
L’IA peut être envisagée de différentes manières. Les deux questions
essentielles qu’ il convient de se poser sont:
• Vous intéressez-vous plutôt à la pensée ou au comportement?
• Voulez-vous prendre modèle sur les humains ou travailler à partir d’une norme idéale
Nous adoptons le point de vue selon lequel l’intelligence a
principalement trait à l’action rationnelle.
Dans l’idéale, un agent intelligent exécute la meilleur action
possible compte tenu de la
situation.
Les philosophes (dès l’an 400 av. J.-c) ont rendu l’IA
concevable en supposant que l’esprit peut être considéré à certains égards comme une machine, qu’il opère sur des
connaissances encodées dans un langage interne et que la
pensée peut permettre de
choisir les actions à entre
prendre.
Les mathématiciens ont fourni les outils nécessaires à la manipulation d’énoncés logiques ou probabilistes
Les économistes ont formalisé le
problème de la prise de décisions qui maximisent les gains prévisibles pour le décideur.
Les informaticiens ont fourni les artefacts qui redent
possibles les applications de
l’IA.
On appelle agent toute entité qui peut être considérée
comme percevant son
environnement grâce à des capteurs et qui agit sur cet environnement via des
effecteurs.
Agent Capteurs
Effecteurs
?
Percepts
Actions
Environnement
Un agent logiciel possède des entrées sensorielles tel que la saisie au clavier, les contenus des fichiers les paquets de données reçus sur le réseau, et il
agit sur l’environnement en affichant à l’écran, en écrivant dans des fichiers et en envoyant d’autres paquets.
Un agent humain…
Nous proposerons l’hypothèse générale que tout agent peut percevoir ses
propres actions (mais pas toujours leurs effets)
Le terme de percept désigne les
entrées perceptives d’un agent à un instant donné.
La séquence des percepts d’un agent est l’historique complet de tout ce
qu’il a perçu.
L’action choisie par un agent à un instant donné peut dépendre de la totalité de la séquence des percepts observée jusqu’à ce moment.
Mathématiquement parlant, on dit que le comportement d’un agent est décrit par la fonction agent qui fait correspondre une action à chaque séquence de percepts.
On pourrait envisager de tabuler la fonction agent qui décrit un agent donné.
Pour construire cette table on doit
normalement essayer toute les séquences
perceptives possibles et en notant les actions que l’agent fournit en réponse.
La table est une caractéristique externe de l’agent.
En interne la fonction agent d’un agent artificiel sera implémentée par un
programme agent.
Il est très important de distinguer ces
deux notions: la fonction agent qui est une description mathématique abstraite de l’agent; le programme agent qui est une implémentation concrète qui
s’exécute sur l’architecture de l’agent.
Nous considérons l’exemple du monde de l’aspirateur dans son schéma le plus
simple:
• Ce monde ne contient que deux lieu A et B.
• L’agent aspirateur perçoit la case dans laquelle il se trouve et si celle-ci contient ou non de la
poussière.
• L’agent peut choisir de se déplacer vers la
gauche ou vers la droite, d’aspirer la poussière ou de rien faire.
A B
Voici une fonction agent simple:
si la case courante contient de la poussière alors aspirer sinon se déplacer vers l’autre case.
Séquence de percepts Action Séquence de percepts Action
[[ A , PropreA , Propre] Aller à droite] Aller à droite [[ A , SaleA , Sale] ] AspirerAspirer
[[ B , PropreB , Propre] Aller à Gauche] Aller à Gauche [[ B , SaleB , Sale] ] AspirerAspirer
[[ A , PropreA , Propre] [] [ A , PropreA , Propre] Aller à droite] Aller à droite [[ A , PropreA , Propre] [] [ A , SaleA , Sale] ] AspirerAspirer
Tabulation partielle d’une fonction Agent
Fonction Agent-Aspirateur([emplacement;état]) Retourne une action.
Si état = Sale alors retourner Aspirer
Sinon si emplacement=A alors retourner Droite Sinon si emplacement=B alors retourner gauche
A A est sale B
donc aspirer
A est propre donc aller à
droite
B est sale donc aspirer
B est propre donc aller à
gauche A est
propre donc aller à
droite
B est propre donc aller à
gauche
La question qui se pose évidemment est la suivante:
- Quelle est la bonne façon de remplir la table?
- autrement dit, qu’est-ce qui fait qu’un agent est bon ou mauvais, itelligent ou non?
Un agent rationnel est un agent qui effectue toujours l’action appropriée;
d’un point de vue conceptuel. cette action doit rendre l’agent le plus
performant. En conséquence, il nous faut un moyen de mesure de
performance.
La tache de l’IA et de concevoir le
programme agent qui implémente la fonction agent, laquelle associe des percepts à des actions.
Nous supposons que ce programme s’exécutera sur un équipement
informatique doté d’effecteurs et de capteurs physiques; c’est ce que nous appelons l’ARCHITECTURE.
AGENT = ARCHITACTURE + PROGRAMME
Il existe plusieurs types d’agents:
- agents réflexes simple;
- agents réflexes fondés sur des modèles;
- agents fondés sur des buts;
- agents fondés sur l’utilité;
-…
Agent Capteurs
Effecteurs
A quoi ressemble
Le monde maintenant?
Percepts
Actions
Environnement
Quelle action
effectuer maintenant?
Règles condition-action