Définitions, histoire, agents et environnements
Département de Mathématiques et Informatique, Faculté des Sciences et Techniques, Université Cheikh Anta Diop de Dakar
Ce que la séance construit
Le cadre de tout le cours : une définition de l’IA par l’agent rationnel, la place du Machine Learning et du Deep Learning dans l’IA, la description d’une tâche (PEAS) et de son environnement, puis quatre architectures d’agents programmées et exécutées sur un même problème : l’arrosage d’une parcelle maraîchère des Niayes.
D’où l’on vient, où l’on va
Amont. La programmation en Python (fonctions, boucles, dictionnaires) ; aucune connaissance préalable en IA.
Aval. Chaque séance outille une architecture de cette séance : l’agent qui raisonne sur une base de connaissances (Séance 2), l’agent fondé sur des buts qui cherche une suite d’actions (Séance 3), l’agent qui tient à jour des croyances (Séance 5), l’agent fondé sur l’utilité qui décide et apprend (Séance 6) ; le cours de Machine Learning développe l’agent apprenant.
La définition retenue décide du programme de tout le cours : imiter l’humain ou agir au mieux.
Intelligence artificielle
L’intelligence artificielle étudie et conçoit des agents : des systèmes qui perçoivent leur environnement et agissent de manière à atteindre au mieux leurs objectifs, compte tenu de ce qu’ils savent.
Un tel système n’a pas à penser comme un humain, ni à produire des réponses indiscernables des siennes : il doit bien agir. Un calculateur d’itinéraire, un trieur de colis ou un assistant de diagnostic entrent dans ce cadre.
Intelligent n’est pas conscient
Un agent peut bien agir sans comprendre ce qu’il fait au sens humain. La question de la conscience des machines relève de la philosophie de l’esprit, pas de la conception d’agents.
Lecture. La définition porte sur le comportement et sur un objectif mesurable : c’est ce qui permet de comparer deux systèmes.
Les définitions historiques se rangent selon deux axes : la pensée ou le comportement, la fidélité à l’humain ou la rationalité.
| comme un humain | rationnellement | |
|---|---|---|
| penser | sciences cognitives (GPS, 1957–1959) | lois de la pensée (d’Aristote à Boole) |
| agir | test de Turing | agent rationnel |
L’approche du cours
Agir rationnellement : elle est générale (du thermostat au taxi autonome), normative (ce que l’agent devrait faire) et mesurable (une mesure de performance).
Penser comme un humain suppose de connaître la cognition humaine, et hérite de ses biais. Les lois de la pensée exigent que tout se formalise en logique : le monde réel est incertain et partiellement observé.
Le jeu de l’imitation (Turing, 1950)
Un interrogateur converse par écrit avec deux interlocuteurs cachés, un humain et une machine. La machine réussit si l’interrogateur ne la distingue pas de l’humain. Turing prévoyait que, d’ici une cinquantaine d’années (vers 2000), un interrogateur moyen n’aurait pas plus de 70 % de chances d’identifier correctement la machine après cinq minutes de questions.
Ce que le test ne mesure pas
Lecture. Un calculateur d’itinéraire échoue au test et rend pourtant un service exact ; la recherche en IA s’est tournée vers des tâches précises, mesurées par leur résultat.
Dartmouth, 1955–1956
En 1955, McCarthy, Minsky, Rochester et Shannon proposent un atelier, tenu à l’été 1956, sur l’« intelligence artificielle », fondé sur la conjecture que tout aspect de l’intelligence peut être décrit assez précisément pour qu’une machine le simule.
Symboles, règles, inférence : Logic Theorist (1956), LISP (1958), GPS (1957–1959), ELIZA (1966) ; puis les systèmes experts : MYCIN (années 1970, plusieurs centaines de règles), R1/XCON chez DEC (années 1980).
Les deux hivers
1974–1980 : le rapport Lighthill (1973) pointe l’explosion combinatoire ; Perceptrons (Minsky, Papert, 1969) : un perceptron à une couche ne calcule pas le OU exclusif.
1987–1993 (selon les auteurs) : le marché des machines LISP s’effondre ; les systèmes experts, fragiles hors de leur domaine, coûtent cher à maintenir.
Lecture. Les règles écrites à la main fonctionnent dans un domaine étroit ; elles ne passent pas à l’échelle du sens commun.
Les règles ne s’écrivent plus : elles s’apprennent sur des exemples.
Deep Blue bat Kasparov (1997)
Le champion du monde d’échecs perd un match contre un programme d’IBM. Deep Blue doit sa victoire à la recherche plus qu’à l’apprentissage : il explore de l’ordre de 200 millions de positions par seconde, avec une fonction d’évaluation réglée en grande partie à la main, avec des grands maîtres.
Lecture. Des techniques différentes conviennent à des problèmes différents : la recherche arborescente gagne aux échecs, l’apprentissage gagne sur la parole et l’écriture manuscrite.
Trois facteurs réunis
Données : ImageNet (2009), plus de 14 millions d’images annotées à la main.
Calcul : les processeurs graphiques (GPU).
Algorithmes : ReLU, dropout, réseaux convolutifs, Transformers.
| 2012 | AlexNet : 15,3 % d’erreur (top-5) contre 26,2 % |
|---|---|
| 2016 | AlphaGo bat Lee Sedol 4 à 1 au go |
| 2017 | le Transformer (Vaswani et al.) |
| 2020 | GPT-3, 175 milliards de paramètres |
| 2022 | ChatGPT, ouvert au grand public |
| 2024 | Nobel de physique : Hopfield, Hinton |
| 2024 | Nobel de chimie : Hassabis, Jumper (AlphaFold), Baker |
Lecture. Les limites mesurées de ces modèles : affirmations fausses mais plausibles, biais hérités des données, consommation d’énergie de l’entraînement.
Les trois termes ne sont pas synonymes : le Machine Learning est une approche de l’IA, le Deep Learning une technique de Machine Learning.
Machine Learning
Construire des systèmes qui apprennent à partir de données au lieu d’être programmés règle par règle : on fournit des exemples, le système en extrait les régularités.
Deep Learning
Machine Learning par des réseaux de neurones à plusieurs couches cachées, qui apprennent des représentations hiérarchiques des données (bords, formes, objets).
Le ML n’est pas la seule approche
Un calculateur d’itinéraire qui applique A* (Séance 3) relève de l’IA : il résout un problème de planification. Ce n’est pas du Machine Learning : la règle de recherche est programmée. De même, le calcul formel (intégrer, résoudre une équation) est de l’IA symbolique.
| catégorie | exemples |
|---|---|
| IA sans ML | A*, systèmes experts, calcul formel |
| ML sans DL | Naive Bayes, arbres, SVM, \(k\)-PPV |
| DL | réseaux convolutifs, Transformers |
Le choix dépend du problème : le ML exige des données ; l’IA symbolique exige un expert qui écrive les règles.
Lecture. Le cours couvre l’IA dans son ensemble, y compris sans apprentissage ; le cours de Machine Learning du second semestre se consacre au ML.
Khadim, maraîcher à Mboro, classe l’humidité de son sol avec les seuils d’un agronome : sous 30 %, le sol est sec ; au-dessus de 70 %, saturé.
Résultat \(\rightarrow\)
20 sec
33 correct
72 sature
75 sature
Lecture. Les seuils 30 et 70 sont dans le code : 20 est sec, 33 correct, 72 et 75 saturés. Changer de sol, c’est réécrire le programme.
Résultat \(\rightarrow\)
20 sec sec
33 correct correct
72 sature correct
75 sature sature
Lecture. Le plus proche voisin (1-PPV) rend la classe de l’exemple le plus proche : 72 est à 4 de 68 (correct) et à 8 de 80 ; il diffère de la règle. Aucun seuil n’est écrit : il est appris, au milieu de 68 et 80, soit 74.
Résultat \(\rightarrow\)
20 sec sec
33 correct sec
72 sature sature
75 sature sature
Lecture. Sur une autre parcelle, au sol plus sableux, un autre agronome étiquette d’autres exemples : 33 devient sec, 72 et 75 saturés. Le programme est le même ; seules les données ont changé.
Lecture. Les seuils des règles sont écrits (30 et 70). Ceux du plus proche voisin sont les milieux entre exemples voisins de classes différentes : 31,5 et 74 sur les premiers exemples, 35,5 et 56 sur le sable.
Énoncé
(a)–(c) IA sans ML, ML sans DL, ou DL ? (d) Bilan. (1) A* d’une application de VTC à Dakar ; (2) système expert, maladies de l’oignon ; (3) filtre des SMS frauduleux ; (4) arbre, rendement de l’arachide ; (5) parasites d’un frottis ; (6) traduction français–wolof.
Correction
Agent, percept
Un agent perçoit son environnement par des capteurs et agit sur lui par des actionneurs. Un percept (ou perception) est ce que les capteurs livrent à un instant ; la séquence de percepts est tout ce que l’agent a perçu depuis le début.
| agent | capteurs | actionneurs |
|---|---|---|
| humain | yeux, oreilles | mains, voix |
| robot | caméras, lidar | moteurs |
| assistant | texte, micro | texte, voix |
| thermostat | thermomètre | chauffage |
Lecture. Percevoir, choisir, agir ; l’environnement change et produit le percept suivant.
Fonction d’agent
\(f:\mathcal P^*\to\mathcal A\) associe à toute séquence de percepts une action. \(\mathcal P^*\) : l’ensemble des séquences de percepts possibles ; \(\mathcal A\) : l’ensemble des actions.
La fonction d’agent est une description mathématique du comportement. Le programme d’agent est le code qui la réalise sur une machine : il reçoit le percept courant et rend une action.
Fonction n’est pas programme
Une même fonction d’agent admet de nombreux programmes : une table, une règle, un calcul. La fonction dit quoi faire, le programme comment.
Lecture. L’agent ne voit que le percept courant ; s’il veut tenir compte du passé, c’est à son programme de s’en souvenir.
Le capteur de Khadim livre chaque heure une humidité entière de 0 à 100 %, ou rien quand il est muet : 102 percepts possibles.
Résultat \(\rightarrow\)
1 102
2 1.04e+04
6 1.13e+12
24 1.61e+48
Lecture. Une table qui donne l’action pour chaque séquence de \(T\) percepts compte \(102^T\) lignes : 102 pour une heure, \(1{,}61\times10^{48}\) pour une journée. Un programme d’agent remplace cette table par quelques lignes de code.
Agent rationnel
Pour chaque séquence de percepts possible, un agent rationnel choisit l’action qui maximise l’espérance de sa mesure de performance, compte tenu de la séquence de percepts et des connaissances qu’il a de l’environnement.
Rationnel n’est pas omniscient
L’agent fait au mieux avec ce qu’il perçoit. Un orage imprévu noie la parcelle que Khadim vient d’arroser : la décision était rationnelle au moment où il l’a prise, le résultat est mauvais.
La mesure de performance évalue la suite des états de l’environnement, pas l’impression de l’agent : une récolte, un sol jamais sous 15 % d’humidité, de l’eau économisée. La fixer est une décision du concepteur.
Lecture. Un agent optimise exactement ce que mesure sa performance : récompenser « sol humide » sans compter l’eau conduit à arroser sans arrêt.
PEAS
Performance (comment juger l’agent), Environnement (où il agit), Actionneurs (ce qu’il peut faire), S : capteurs (ce qu’il perçoit) : la première étape de la conception.
| agent | P | E | A | S |
|---|---|---|---|---|
| Taxi autonome à Dakar | sécurité, durée du trajet, confort, respect du code, consommation | routes de Dakar, autres véhicules, motos, charrettes, piétons, travaux, hivernage | volant, accélérateur, frein, clignotants, klaxon, écran pour le client | caméras, lidar, radar, GPS, odomètre, accéléromètre, micro |
| Robot de tri des colis (La Poste) | colis dans le bon bac, cadence, colis abîmés | tapis roulant, colis de formes et de poids variés, bacs par région | bras articulé, ventouse, aiguillage du tapis | caméra, lecteur de codes-barres, balance, capteurs de présence |
Lecture. Critères en tension : un taxi plus rapide consomme plus ; un tri plus rapide abîme plus de colis.
| agent | P | E | A | S |
|---|---|---|---|---|
| Aide au diagnostic du paludisme | diagnostics corrects, coût des examens, délai | patient, infirmier, poste de santé, saison des pluies | questions, examens demandés (TDR, goutte épaisse), diagnostic affiché | symptômes saisis, résultats d’examens, température |
| Assistant conversationnel en wolof (écrit) | demandes satisfaites, réponses exactes, durée de l’échange | utilisateurs, téléphone, réseau, services (santé, agriculture, banque) | messages écrits en wolof, transfert vers un humain | messages saisis au clavier, historique de la conversation |
Un environnement logiciel est un environnement
L’assistant écrit en wolof n’a ni roue ni bras : son capteur est le clavier du téléphone, son actionneur l’affichage des messages. Un agent logiciel se décrit par PEAS comme un robot.
Lecture. L’aide au diagnostic du paludisme agit en demandant des examens : un TDR ou une goutte épaisse coûte, et le coût fait partie de la performance.
L’arrosage au bon moment
Khadim cultive des oignons à Mboro, dans les Niayes, entre Dakar et Saint-Louis. Un goutte-à-goutte, alimenté par une pompe, arrose sa parcelle ; un capteur d’humidité du sol envoie chaque heure une mesure, mais la liaison sans fil se coupe parfois. Le sol perd 6 points d’humidité par heure ; un arrosage en apporte 20. Sous 15 %, les oignons flétrissent.
| P | sol jamais sous 15 %, eau et énergie économisées |
|---|---|
| E | parcelle, sol sableux, soleil, vent |
| A | pompe : arroser, attendre |
| S | capteur d’humidité (muet par moments) |
Le même problème sert aux quatre architectures d’agents de la séance : seul le programme d’agent change.
ARROSAGE = 20 # points d'humidite apportes par un arrosage
EVAPORATION = 6 # points perdus en une heure
class Parcelle:
def __init__(self, h, muet):
self.h = h # humidite reelle du sol (%)
self.muet = muet # heures ou le capteur ne repond pas
self.t = 0
def percevoir(self):
return None if self.t in self.muet else self.h
def executer(self, action):
if action == "arroser":
self.h = self.h + ARROSAGE
self.h = self.h - EVAPORATION
self.t = self.t + 1
champ = Parcelle(40, muet={2, 3, 4})
champ.executer("attendre")
print(champ.h, champ.t, champ.percevoir())Résultat \(\rightarrow\)
34 1 34
Lecture. percevoir rend l’humidité réelle, ou None aux heures muettes ; executer applique l’action, retire l’évaporation, avance l’horloge. Départ à 40 % : une heure d’attente, 34 %, à \(t=1\).
Six propriétés de l’environnement de la tâche déterminent en grande partie l’architecture d’agent qui convient.
Entièrement ou partiellement observable
Entièrement observable : les capteurs donnent à chaque instant tout ce qui compte pour décider. Partiellement observable : une partie de l’état échappe aux capteurs, ou leur mesure est bruitée.
Le jeu de dames : tout le damier est visible. Le taxi à Dakar : angles morts, intentions des autres conducteurs. La parcelle de Khadim : capteur muet trois heures.
Déterministe ou stochastique
Déterministe : l’état suivant est entièrement fixé par l’état courant et l’action de l’agent. Stochastique : l’état suivant suit une loi de probabilité.
Les dames : un coup a toujours le même effet. Le robot de tri : un colis glisse ou tombe. La parcelle simulée est déterministe (6 points par heure) ; une vraie parcelle ne l’est pas (vent, nuages).
Épisodique ou séquentiel
Épisodique : l’expérience se découpe en épisodes indépendants ; une décision n’influence pas les suivantes. Séquentiel : chaque décision pèse sur les suivantes.
Lire un frottis : chaque lame est indépendante. Arroser : ne pas arroser à \(t=2\) laisse le sol à 10 % après l’heure \(t=4\).
Statique ou dynamique
Statique : le monde ne change pas pendant que l’agent réfléchit. Dynamique : il change ; ne pas décider revient à décider. Semi-dynamique : le monde reste fixe, mais le score dépend du temps mis.
Les dames sans pendule : statique. Avec pendule : semi-dynamique. Le taxi : dynamique.
Statique n’est pas déterministe
Les deux propriétés sont indépendantes : un jeu de cartes est statique (rien ne bouge pendant la réflexion) et stochastique (la donne est aléatoire).
Discret ou continu
Discret : un nombre fini d’états, de percepts et d’actions distincts. Continu : états, temps, percepts ou actions prennent des valeurs réelles.
Les dames : un nombre fini de positions. Le taxi : vitesse, angle du volant, position. L’assistant écrit en wolof échange des mots : discret ; avec la voix, il deviendrait continu.
Mono-agent ou multi-agent
Mono-agent : l’agent est seul à poursuivre un objectif. Multi-agent : d’autres agents agissent, dans un rapport compétitif (les dames) ou coopératif (des taxis qui évitent les collisions).
Un colis sur le tapis n’est pas un agent ; un autre conducteur en est un.
Lecture. Une septième propriété, la connaissance des règles : un environnement connu (les effets des actions sont donnés) ou inconnu (l’agent doit les apprendre).
| environnement | observable | déterminisme | épisodes | dynamique | valeurs | agents |
|---|---|---|---|---|---|---|
| Dames (sans pendule) | entièrement | déterministe | séquentiel | statique | discret | multi |
| Lecture d’un frottis | entièrement | déterministe | épisodique | semi-dynamique | continu | mono |
| Tri des colis (La Poste) | partiellement | stochastique | épisodique | dynamique | continu | mono |
| Diagnostic du paludisme | partiellement | stochastique | séquentiel | dynamique | continu | mono |
| Assistant écrit en wolof | partiellement | stochastique | séquentiel | dynamique | discret | multi |
| Taxi autonome à Dakar | partiellement | stochastique | séquentiel | dynamique | continu | multi |
Lecture. Le taxi autonome à Dakar cumule les six propriétés défavorables : partiellement observable, stochastique, séquentiel, dynamique, continu, multi-agent. La lecture d’un frottis est épisodique : chaque lame est jugée seule.
Quoi, pourquoi, quand ça échoue
| partiellement observable | tenir un état interne, et des croyances sur ce qui échappe aux capteurs (Séance 5) |
|---|---|
| stochastique | raisonner sur des probabilités de résultats, et sur l’utilité espérée (Séances 5 et 6) |
| séquentiel | planifier une suite d’actions (Séance 3) ou une règle de conduite (Séance 6) |
| dynamique | décider à temps : une réflexion longue vaut une action |
| continu | discrétiser, ou employer des fonctions à paramètres (cours de ML) |
| multi-agent | modéliser les autres agents : jeux, coopération |
Lecture. Un agent réflexe n’est rationnel que si le percept contient tout ce qui compte (entièrement observable) ; le cas le plus favorable ajoute déterministe, épisodique, statique, discret.
Énoncé
PEAS (a) d’un joueur de yoté (damier de \(5\times6\), douze pions par joueur) ; (b) d’un trieur de mangues pour l’export, en Casamance ; (c) d’un régulateur des feux d’un carrefour de Thiès. Critères en tension ?
Correction
Énoncé
Caractériser selon les six propriétés l’environnement (a) du yoté, (b) du tri des mangues, (c) des feux de Thiès, puis (d) proposer une architecture d’agent pour chacun.
Correction
Le programme d’agent peut s’organiser de quatre manières, de la règle sur le percept au calcul d’une utilité ; chacune ajoute une capacité à la précédente.
| agent | décide à partir de | retient | Séance |
|---|---|---|---|
| réflexe | le percept courant | rien | 1 |
| fondé sur un modèle | un état interne | une estimation de l’état du monde | 1, 5 |
| fondé sur des buts | les conséquences prévues | un but à atteindre | 2, 3 |
| fondé sur l’utilité | la valeur des conséquences | une fonction d’utilité | 6 |
| apprenant | l’expérience | ce qu’il améliore | 6, cours de ML |
Lecture. Les quatre programmes qui suivent tournent sur la parcelle de Khadim : même environnement, mêmes percepts au départ, décisions différentes.
Agent réflexe
Il choisit son action d’après le seul percept courant, par des règles condition-action : « si le sol est sous 30 %, arroser ». Il ignore la séquence des percepts passés.
Sa fonction d’agent ne dépend que du dernier percept : 102 lignes au lieu de \(102^T\). Un thermostat, une porte automatique, le trieur de mangues sont des agents réflexes.
Sortie \(\rightarrow\)
0 40 attendre2 None attendre4 None attendre
1 34 attendre3 None attendre5 10 arroser
Quoi, pourquoi, quand ça échoue
Quoi : une table de règles condition-action appliquée au percept courant.
Pourquoi : rapide, sans mémoire, rationnel si le percept courant contient tout ce qui compte pour décider.
Quand ça échoue : dès que l’environnement est partiellement observable. Capteur muet de \(t=2\) à \(t=4\) : « attendre » trois fois, et le sol descend à 10 %, sous le seuil de flétrissement. Même percept, None, à 40 % ou à 10 % d’humidité réelle : aucune règle sur ce seul percept ne distingue les deux.
Les boucles infinies
Un agent réflexe peut répéter sans fin la même action (un robot qui avance contre un mur). Une part de hasard dans le choix casse ces boucles, au prix d’actions inutiles.
Agent fondé sur un modèle
Il tient un état interne, une estimation de l’état du monde, mise à jour à chaque percept grâce à un modèle : le modèle de transition (comment le monde évolue, seul ou sous l’effet des actions) et le modèle des capteurs (comment l’état se traduit en percepts). Les règles portent sur l’état, pas sur le percept.
Pour Khadim : transition \(h\leftarrow h+20-6\) après un arrosage, \(h\leftarrow h-6\) sinon ; capteur : le percept est \(h\), ou rien.
Sortie \(\rightarrow\)
0 40 attendre 402 None arroser 284 None attendre 36
1 34 attendre 343 None attendre 425 30 attendre 30
Lecture. Initialisation (lignes 1, 10, 11) : état interne vide ; sol à 40 %, capteur muet de \(t=2\) à \(t=4\).
Lecture. Tour 0 : percept 40 ; la ligne 3 le recopie dans l’état, la ligne 8 décide « attendre ».
Lecture. Tour 1 : percept 34 ; la ligne 3 le recopie dans l’état, la ligne 8 décide « attendre ».
Lecture. Tour 2 : capteur muet ; la ligne 7 prédit \(34-6=28\) ; la ligne 8 décide « arroser ».
Lecture. Tour 3 : muet, dernière action « arroser » : la ligne 5 prédit \(28+20-6=42\) ; « attendre ».
Lecture. Tour 4 : capteur muet ; la ligne 7 prédit \(42-6=36\), au-dessus du seuil : « attendre ».
Lecture. Tour 5 : le capteur revient sur 30, la valeur estimée : le modèle a suivi le sol sans le voir.
Quoi, pourquoi, quand ça échoue
Quoi : un état interne mis à jour par le modèle, puis des règles appliquées à cet état (ici, la règle de l’agent réflexe, ligne 8).
Pourquoi : il agit dans un environnement partiellement observable ; ici, il arrose à \(t=2\) sans rien percevoir, et le sol ne descend jamais sous 24 %.
Quand ça échoue : quand le modèle est faux. Si le vent porte l’évaporation à 10 points par heure, l’estimation dérive : à \(t=4\), l’agent estime 32 % quand le sol est à 20 %, attend, et le sol tombe à 10 % ; il faut alors des croyances pondérées par des probabilités (Séance 5).
Lecture. Dans cette parcelle simulée, déterministe, le modèle est exact : l’humidité estimée égale l’humidité réelle à chaque heure, et le capteur revient à \(t=5\) sur la valeur prévue, 30 %.
Énoncé
L’aiguillage ne bascule que tronçon vide. E : un colis entre ; S : un colis sort. (a) Réflexe : bloquer si E ou S. (b) Modèle : \(n\leftarrow n+E-S\), bloquer si \(n>0\). (c) Erreurs du réflexe ? (d) Un meilleur réflexe ?
Correction
Agent fondé sur des buts
Il connaît un but, une description des états désirables, et se demande « que se passe-t-il si je fais \(a\) ? » : il prévoit avec son modèle les conséquences des actions et retient une action qui mène au but.
Quand le but est à plusieurs actions de distance, il faut chercher une suite d’actions : c’est l’objet de la recherche et de la planification (Séance 3). Un calculateur d’itinéraire est un agent fondé sur des buts.
Lecture. Changer de but ne demande pas de réécrire des règles : le même agent vise 40 % ou 60 % en changeant une ligne.
Khadim choisit maintenant une durée de goutte-à-goutte : une minute apporte un point d’humidité. But : un sol entre 40 et 70 % dans une heure.
Résultat \(\rightarrow\)
20
[20, 30, 40]
Lecture. Le sol est à 28 % : la première dose qui atteint le but est 20 minutes (\(28+20-6=42\)). Trois doses atteignent le but, 20, 30 et 40 ; le but ne dit pas laquelle préférer.
Agent fondé sur l’utilité
Une fonction d’utilité \(U\) associe à chaque état (ou résultat) un nombre réel qui mesure sa désirabilité pour l’agent. L’agent choisit l’action dont le résultat a la plus grande utilité ; dans un monde stochastique, la plus grande utilité espérée (Séance 6).
Un but est binaire, atteint ou non ; l’utilité est graduée. Elle arbitre entre des objectifs en conflit (récolte contre eau) et classe les actions qui atteignent toutes le but.
Lecture. Pour Khadim : \(U(d)=\text{valeur}(h')-0{,}5\,d\), \(h'=28+d-6\), \(\text{valeur}(h)=100-2\,|h-50|\).
Sortie \(\rightarrow\)
0 44.020 74.040 56.0
10 59.030 81.0dose choisie : 30
Lecture. Initialisation (lignes 1, 2, 4, 7) : prix, valeur, utilité ; aucune dose retenue.
Lecture. Dose 0 : \(h=22\), valeur 44, coût 0, \(U=44\) ; la ligne 12 la retient.
Lecture. Dose 10 : \(h=32\), valeur 64, coût 5, \(U=59\) ; la ligne 12 la retient.
Lecture. Dose 20 : \(h=42\), valeur 84, coût 10, \(U=74\) ; la ligne 12 la retient.
Lecture. Dose 30 : \(h=52\), valeur 96, coût 15, \(U=81\) ; la ligne 12 la retient.
Lecture. Dose 40 : \(h=62\), valeur 76, coût 20, \(U=56\) ; moins bonne que 30, rien n’est retenu.
Lecture. Ligne 13 : 30 minutes, \(U=81\) ; l’agent fondé sur des buts prenait 20 minutes.
En saison sèche, Khadim pompe l’eau d’un forage au gasoil : la minute d’eau coûte 1,5 au lieu de 0,5.
Résultat \(\rightarrow\)
[44.0, 49.0, 54.0, 51.0, 16.0]
20
Lecture. Utilités 44, 49, 54, 51, 16 : 20 minutes. Sous 1,2 : 30 minutes ; de 1,2 à 2 : 20 minutes ; au-delà de 2, aucun arrosage ne vaut son coût (égalités à 1,2 et à 2).
Quoi, pourquoi, quand ça échoue
Quoi : prévoir le résultat de chaque action avec le modèle, lui attribuer une utilité, garder l’action de plus grande utilité.
Pourquoi : il classe toutes les actions, arbitre les critères en conflit et s’adapte aux prix : 30 minutes quand l’eau est bon marché, 20 quand elle est chère.
Quand ça échoue : quand l’utilité est mal fixée (l’agent optimise exactement ce qu’on lui donne), quand le modèle se trompe sur \(h'\), ou quand les actions sont trop nombreuses pour être toutes évaluées.
Lecture. L’agent rationnel de la définition est un agent fondé sur l’utilité, dont l’utilité traduit la mesure de performance.
Énoncé
Aïssatou, mareyeuse, part de Kayar à 7 h avec 200 kg. Kayar : 600 F/kg, 120 kg au plus. Thiès : 900 F/kg, transport 15 000 F, 1 h 30. Pikine : 1 100 F/kg, 25 000 F, 2 h 30. Fraîcheur : 4 000 F par heure. (a) But : tout vendre avant 11 h. (b) Utilités. (c) Seuil du transport. (d) Bilan.
Correction
Agent apprenant
Une des architectures précédentes (l’élément de performance), plus un critique qui juge les résultats d’après un standard de performance, un élément d’apprentissage qui modifie l’élément de performance, et un générateur de problèmes qui propose des actions exploratoires.
Comparer l’humidité prévue à l’humidité mesurée apprendrait l’évaporation réelle : le modèle n’est plus donné, il est appris.
Lecture. Agir dans un environnement d’abord inconnu : Séance 6 et cours de Machine Learning.
| branche | question | outils |
|---|---|---|
| recherche, planification | quelle suite d’actions mène au but ? | BFS, A*, recherche locale (Séance 3) ; minimax, contraintes |
| connaissances, raisonnement | que déduire de ce que l’on sait ? | logique, inférence, systèmes experts |
| raisonnement sous incertitude | que croire quand on n’est pas sûr ? | Bayes, réseaux bayésiens (Séance 5) ; filtrage |
| décision, apprentissage | comment décider et s’améliorer ? | MDP, Q-learning, ML supervisé, non supervisé |
| langage naturel | comprendre et produire du texte ? | analyse, traduction, grands modèles de langage |
| vision, robotique | voir et agir dans le monde physique ? | reconnaissance d’objets, contrôle, trajectoires |
Lecture. Les branches communiquent : le Machine Learning s’appuie sur les probabilités ; la robotique réunit vision, planification et contrôle.
Le taxi autonome à Dakar
Lecture. Chaque architecture d’agent de la séance trouve sa place dans un même système ; le cours les étudie une à une.
| agent | décide d’après | sur la parcelle de Khadim | limite |
|---|---|---|---|
| réflexe | le percept | attend trois fois, sol à 10 % | observabilité partielle |
| fondé sur un modèle | un état estimé | arrose à \(t=2\), sol jamais sous 24 % | modèle faux |
| fondé sur des buts | le but prévu | 20 minutes, première dose dans [40, 70] | ne classe pas |
| fondé sur l’utilité | l’utilité prévue | 30 minutes (\(U=81\)) ; 20 si l’eau est chère | utilité à fixer |
| apprenant | l’expérience | apprendrait l’évaporation réelle | données, exploration |
Lecture. Le même environnement, les mêmes premiers percepts, quatre comportements : le programme d’agent fait la différence.
Quelle architecture pour quelle tâche ?
Lecture. La moins riche qui reste rationnelle est la bonne : trier des mangues est épisodique, mémoriser les fruits passés n’apporte rien ; un taxi autonome a besoin de tout.
À retenir
Séance 2 — L’IA qui raisonne
L’agent fondé sur un modèle de cette séance connaissait l’évaporation ; un agent qui raisonne tire de nouvelles connaissances de celles qu’il possède. Dans le Monde de Bouki, une grotte où rôdent Bouki, la hyène des contes wolof, et des puits, l’agent ne perçoit qu’une odeur (Bouki est dans une case voisine) ou une brise (un puits est voisin), et doit en déduire où sont les dangers : logique propositionnelle et du premier ordre, inférence, systèmes experts. La question de la séance : comment un agent raisonne-t-il de façon correcte ?
Introduction à l’IA — Séance 1 Dr. El Hadji Bassirou TOURÉ • DMI/FST/UCAD
Lecture. Initialisation (lignes 1, 5) : la règle est définie ; sol à 40 %, capteur muet de \(t=2\) à \(t=4\).
Lecture. Tour 0 : percept 40, la condition de la ligne 2 est fausse : « attendre » ; sol à 34 %.
Lecture. Tour 1 : percept 34, la condition de la ligne 2 est fausse : « attendre » ; sol à 28 %.
Lecture. Tour 2 : capteur muet ; la ligne 4 rend « attendre » ; le sol tombe à 22 %.
Lecture. Tour 3 : capteur muet ; la ligne 4 rend « attendre » ; le sol tombe à 16 %.
Lecture. Tour 4 : capteur muet ; la ligne 4 rend « attendre » ; le sol tombe à 10 %, les oignons flétrissent.
Lecture. Tour 5 : \(10<30\), la ligne 3 rend « arroser », trop tard : le sol a passé une heure à 10 %.