Nous vous suggérons de passer à IE 7 ou Firefox pour une meilleure navigation.
Chapitre 6 : Apprendre des politiques
Les réseaux Bayésiens, statiques ou dynamiques, constituent un outil d’aide à la décision dans le sens où ils permettent de calculer la probabilité des états en fonction des connaissances disponibles. Cette aide peut toutefois être considérablement améliorée en enrichissant ces réseaux avec deux autres types de nœuds, les nœuds Utilité et les nœuds Décision.
6.1 Les utilités
Un noeud Utilité est un nœud permettant d’associer une valeur numérique aux états constitués par la combinaison des différentes modalités de ses parents. Ces valeurs numériques représente alors la qualité, ou le coût[1], de ces états.
Prenons par exemple la problématique classiquement utilisée du forage d’un puit de pétrole. La variable Pétrole modélise le fait que le sol peut contenir beaucoup, peu ou pas du tout de pétrole, et le variable Forage indique si on effectue le forage ou non. Le nœud Utilité permet alors de décrire la qualité des différents états. On notera par exemple que le pire des cas correspond à un forage quand le sol ne contient pas de pétrole (-70) et que le meilleur des cas correspond au forage d’un sol imbibé (200).
Le mode Validation permet alors de calculer l’utilité espérée en fonction des observations présentes. Par exemple, l’utilité espérée a priori est de 10, alors que lorsqu’on décide de forer, elle est de 20. Le moniteur d’un nœud Utilité comporte toujours deux barres : la première indique son utilité espérée, la seconde indique la somme de tout les nœuds Utilités définis dans le réseau.
6.2 Les décisions
Le nœud Forage de l’exemple ci-dessus représente en fait une action. BayesiaLab dispose de nœuds Décision pour modéliser ce type de nœud. Comme les nœuds classiques, l’effet de chacune des actions est décrit par l’intermédiaire des tables de probabilités associées aux enfants. Par contre, un nœud Décision n’a pas de table de probabilités mais une table de qualités indiquant la politique à suivre.
Dans l’exemple précédent, la politique à suivre, en l’absence d’information sur le sol autre que la distribution de probabilités initiale, consiste donc à forer (action figurant en bleu clair dans la table et dans le moniteur).

Cette table de qualités peut être remplie par expertise, et/ou apprise automatiquement par BayesiaLab (menu Apprentissage en mode Validation). Dans ce cas, un algorithme d’apprentissage par renforcement met à jour la qualité de chaque état/action en fonction de l’utilité globale espérée. Les paramètres de cet algorithme sont modifiables par l’intermédiaire des Préférences (phase d’initialisation, taux d’apprentissage et d’exploration, nombre de pas d’apprentissage).
Pour des problèmes simples comme l’exemple du forage, la phase d’initialisation est suffisante pour trouver la politique optimale, même en prenant l’exemple dans sa totalité, comme illustré ci-dessous. Le réseau contient une Décision supplémentaire modélisant le choix d’effectuer un test sismique pour sonder le sol. Ce test à un coût et son résultat est incertain. Malgré cela, la politique optimale apprise par BayesiaLab consiste à faire ce test puis à effectuer le forage, sauf si le test indique que le sol ne contient pas de pétrole.


6.3 Les politiques de systèmes dynamiques
BayesiaLab offre le même type d’aide à la décision pour les réseaux Bayésiens dynamiques. Pour illustrer ces fonctionnalités, nous reprenons notre système de distribution de fluide (cf. Chapitre 5). Le réseau Bayésien ci-dessous y ajoute un système de maintenance dans lequel il est impossible de réparer plus d’une seule vanne à la fois, et dans lequel le temps de réparation dépend de chaque vanne. Il qualifie également les différents états du système par l’intermédiaire de 4 nœuds Utilité : des coûts fixes, des coûts liés à chacune des trois réparations, et des revenus et coûts en matières premières dépendant de la disponibilité du système.
La politique de maintenance est périodique et dépend donc directement de la variable Temps. Cette variable entière a 12 modalités, une pour chaque mois, et est définie comme le modulo de la valeur du compteur temporel de BayesiaLab (le nœud vert).

Comme pour les réseaux Bayésiens statiques, l’apprentissage d’une politique pour un réseau dynamique s’effectue en mode Validation. Le passage dans ce mode affiche la barre d’outils suivante :
.
Alors que le bouton
permet de tester aléatoirement des actions pendant la simulation temporelle (Exploration), le bouton
permet d’activer l'apprentissage des qualités des états/actions pendant cette simulation. La durée de la simulation est quant à elle directement spécifiée par l’intermédiaire du compteur.
Les paramètres de l'algorithme d'apprentissage par renforcement mettant à jour la qualité de chaque état/action en fonction de la somme escomptée des utilités espérées sont modifiables par l'intermédiaire des préférences (facteur d’escompte, taux d’apprentissage et d’exploration). La politique de maintenance illustrée ci-dessous correspond à la politique apprise par BayesiaLab sur 1000 pas de temps, avec un facteur d’escompte de 0.99, un taux d’apprentissage de 0.5 et un taux d’exploration initial de 1.
Le graphe ci-dessous représente l’évolution de la probabilité de la disponibilité du système sur 200 pas de temps lorsqu’on applique cette politique de maintenance (sans exploration
, ni apprentissage
). La moyenne de l’utilité globale espérée par pas de temps obtenue est de 182,998.[1] Les coûts associés aux variables dans le cadre des questionnaires adaptatifs correspondent au coût d’acquisition de l’information, identique quelque soit la réponse, i.e. la modalité. Il n’y à donc pas dans ce cas d’état.






