SlideShare ist ein Scribd-Unternehmen logo
1 von 39
IFT 702 – Planification en
Intelligence Artificielle
Planification avec des
processus de décision de Markov
Froduald Kabanza
Département d’informatique
Université de Sherbrooke
planiart.usherbrooke.ca/kabanza
Modifications par Simon Chamberland
IFT 702 © Froduald Kabanza 2
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 3
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 4
Exemple
Room 1
Room
2
Room 5
Room 4
Room 3
Goal
IFT 702 © Froduald Kabanza 5
Architecture de contrôle
Environnement
Capteurs
Effecteurs
État
du
système
Planificateur
de tâches
Modèles:
-actions
-environnement
- stratégies
de planification
- heuristiques
But
Plan = règles
« état→action»
Suivi de
l’exécution
Module
d’apprentissage
Action
Planificateur
de trajectoires
Trajectoire
IFT 702 © Froduald Kabanza 6
Grille (occupancy grid)
Actions:
E: Go east
W: Go west
S: Go south
N: Go north
Exemple
0
Degré de désirabilité
-0.4 -1
: +1
But
Room 1 Room 5
Room
2
Room 4
Room 3
But
0 1 2 3 ….
0
1
2
3
….
IFT 702 © Froduald Kabanza 7
• Une décision est un choix d’une action dans un état.
• C’est une règle if state then action
(21,12) (20,11)
S
(20,12)
(20,13)
W W
0.9
0.2
0.5
Décision
S
0.1
(21,13)
W 0.3
(20,10)
(1,1)
(21,12) → W
ou
(21,12) → S
Exemples:
IFT 702 © Froduald Kabanza 8
• Un plan (policy) est une stratégie : choix d’une action pour chaque état
• C’est un ensemble de règles if state then action.
Plan (policy)
(21,12) (20,11)
S
(20,12)
(20,13)
W W
0.9
0.2
0.5
S
0.1
(21,13)
W0.3
(20,10)
(1,1)
Plan 1
{ (21,12) → W,
(20,13) → S,
(21,13) → S,
(20,12) → E,
…}
Exemples:
IFT 702 © Froduald Kabanza 9
• Un plan (policy) est une stratégie : choix d’une action pour chaque état
• C’est un ensemble de règles if state then action.
Plan (policy)
(21,12) (20,11)
S
(20,12)
(20,13)
W W
0.9
0.2
0.5
S
0.1
(21,13)
W0.3
(20,10)
(1,1)
Plan 1
{ (21,12) → W,
(20,13) → S,
(21,13) → S,
(20,12) → E,
…}
Exemples:
Plan 2
{ (21,12) → S,
(20,11) → S,
(21,10) → E,
….}
IFT 702 © Froduald Kabanza 10
Exécution d’un plan
• Un plan est un ensemble de règles if state then action.
• Notons P(s) l’action désignée par le plan P dans l’état s.
• Voici un algorithme d’exécution, interprétation ou application d’un plan
While (1)
{
1 s = état courant du système s;
2 a = P(s);
3 execute a;
}
• L’étape 1 implique observation : détection (sensing), localisation, classification,
tracking
• L’état résultant de l’exécution de l’action à l’étape 3 est imprévisible.
• L’interprétation (ensemble de séquences possibles) est un arbre infini.
• L’exécution est une séquence infinie (une parmi celles de l’arbre).
Exemple de P(S)
S : P(S)
{ (21,12) : W,
(20,13) : S,
(21,13) : S,
(20,12) : E,
…}
IFT 702 © Froduald Kabanza 11
Interprétation/application d’un plan
• L’application d’un plan à un automate stochastique donne une chaîne
de Markov (un graphe).
• La chaîne se déroule en un arbre infini.
(21,12) (20,11)
S
(20,12)
(20,13)
W W
0.9
0.2
0.5
S
0.1
(21,13)
W0.3
(20,10)
(1,1)
Plan 1
{ (21,12) → W,
(20,13) → S,
(21,13) → S,
(20,12) → E,
(20,11) → S,
…}
Exemples:
Plan 2
{ (21,12) → S,
(20,11) → S,
(21,10) → E,
….}
IFT 702 © Froduald Kabanza 12
• La qualité d’un plan est déterminée par l’ensemble des séquences d’états qui
peuvent potentiellement en résulter.
– C-à-d., les séquences déroulables de la chaîne de Markov correspondante.
• La qualité peut être formalisée selon :
– Une approche logique classique : chaque séquence doit satisfaire une condition
de succès (conduire au but ou satisfaire une formule de logique temporelle)
– Une approche de théorie de l’utilité/théorie de la décision: fonction d’utilité
ou de récompense.
– Une combinaison des deux.
• Chaque approche donne lieu à une méthode de calcul du plan différente.
– Recherche dans un graphe et/ou pour l’approche logique classique
– Programmation dynamique pour l’approche de théorie de la décision
• Des prototypes existent pour les différentes approches
Interprétation/application d’un plan
IFT 702 © Froduald Kabanza 13
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 14
Théorie de l’utilité
• Relations de désirabilité entre des états
• Axiomes contraignant les relations
– Par exemple, transitivité: s1 < s2 et s2 < s3 -> s1 < s3
• Des axiomes découle l’existence d’une fonction
d’utilité u: S -> R
– Telle que sx < sy ssi u(sx) < u(sy)
– Et sx = sy ssi u(sx) = u(sy)
s1 s2 s3
< <
IFT 702 © Froduald Kabanza 15
Théorie de l’utilité
• Principe de rationalité
– Maximiser l’utilité espérée
– Par opposition à maximiser le meilleur cas, minimiser le
pire cas, etc.
– Dans les MDPs, on veut discriminer la désirabilité de
séquences d’états plutôt que d’états individuels
i
p(i)*u(xi)
s1 s2 s3 t1 t2 t3
<
IFT 702 © Froduald Kabanza 16
Processus de décision de Markov
• État initial: s0
• Modèle de transition: pr(s,a,s’)
• Fonction de récompense: R(s)
Hypothèses
• Environnement totalement observable
• Un seul agent
• Modèles de transition/récompense indépendant du temps
IFT 702 © Froduald Kabanza 17
Fonction d’utilité/récompense et qualité des plans
• Une fonction récompense, R(s), assigne un nombre réel à chaque état s.
– R(s) désigne le degré de désirabilité de l’état s.
• Le but et le coût des actions sont indirectement modélisés par la fonction de
récompense.
• Ainsi, la qualité d’un plan est déterminée par l’espérance des récompenses
qu’on peut potentiellement obtenir en suivant/exécutant le plan
– Un plan optimal est celui qui maximise les récompenses.
– Plus un plan est proche de du plan optimal, plus il est de qualité.
• Ainsi un plan fait un compromis entre:
– La maximisation de la probabilité d’atteindre le but (réduction de la
probabilité d’échec).
– La maximisation des récompenses (optimisation du coût des actions).
IFT 702 © Froduald Kabanza 18
Horizon
• Fini
– Politique non-stationnaire (dépend du temps)
• Infini (pas de deadline fixe)
– Politique stationnaire (plus simple)
Les prochaines slides vont traiter le cas infini.
IFT 702 © Froduald Kabanza 19
Valeur d’un plan
• R(s) : récompense pour l’état s
• Hypothèses:
– Processus Markovien
– Récompenses temporairement atténués
(discounted rewards)
• U(P,s) : Valeur d’utilité du plan P dans l’état s
U(P,s) = R(s) + df × pr(s,P(s),s’) × U(P,s’)
– df : facteur de pondération (0 <= df < 1)
– S : espace d’états
– P(s) : action dans s donnée par le plan P
– pr(s,P(s),s’) : probabilité de la transition
s’ in S
(21,12) (20,11)
S
(20,12)
(20,13)
W W
0.9
0.2
0.5
S
0.1
(21,13)
W0.3
(20,10)
IFT 702 © Froduald Kabanza 20
Plan optimal
• Un plan P domine un plan P’ si les deux conditions suivantes sont réunies:
– U(P,s) >= U(P’,s) pour tout état s
– U(P,s) > U(P’,s) pour au moins un s
• Un plan est optimal s’il n’est pas dominé par un autre.
• Il peut y avoir plusieurs plans optimaux, mais ils ont tous la même valeur
• On peut avoir deux plans incomparables (la dominance induit une fonction d’ordre
partiel sur les plans)
• Deux algorithmes différents pour le calcul du plan (parmi plusieurs) :
– value iteration
– policy iteration
IFT 702 © Froduald Kabanza 21
Équations de Bellman pour la valeur optimale
• Les équations de Bellman nous donnent la valeur d’utilité U* des plans
optimaux
U*(s)= R(s) + max df × pr(s,a,s’) × U*(s’)
• Si nous pouvons calculer U*, nous pourrons calculer un plan optimal
aisément:
– Il suffit de choisir dans chaque état s une action qui maximise U*(s)
s’ in S
a
IFT 702 © Froduald Kabanza 22
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 23
Algorithme Value iteration
1. Initialiser U(s) à 0 pour chaque état s
2. Répéter (jusqu’à ce que le changement en U soit négligeable)
a. Pour chaque état s
U’(s) = R(s) + max df × pr(s,a,s’) × U(s’)
b. U=U’ (ou |U| - |U’| ≤ tolérance)
3. Le plan optimal est obtenu en choisissant pour chaque s état l’action a
telle que la valeur df × pr(s,a,s’) × V(s’) est la plus élevée.
(En d’autres mots, on choisit l’action qui maximise l’espérance des
valeurs des successeurs).
Complexité: O(N4M) où N est le nombre d’états et M le nombre d’actions.
s’ dans S
s’ dans S
a
IFT 702 © Froduald Kabanza 24
Démonstration de Value iteration
Démo de l’algorithme value iteration:
http://planiart.usherbrooke.ca/kabanza/cours/ift615/demos/vi/vi.htm
IFT 702 © Froduald Kabanza 25
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 26
Algorithme Policy iteration
1. Choisir un plan arbitraire P’
2. Répéter jusqu’à ce que P devienne inchangé :
a. P := P’;
b. Pour tout s dans S, calcule U(P,s) en résolvant le système de |S| équations
en |S| inconnus
U(P,s) = R(s) + df × pr(s,P(s),s’) × U(P,s’)
c. Pour tout s dans S,
s’il existe une action a telle que
[ R(s) + df × pr(s,a,s’) × U(P,s’)] > U(P,s)
alors P’(s) := a sinon P’(s) := P(s)
3. retourne P
Converge au plan optimal en temps pseudopolynomial.
s’ in S
s’ in S
IFT 702 © Froduald Kabanza 27
• Actions
• But: S2
0.8
S2
S1
S0
a3
a1 1
a1
a2
a2 a4
a5
0.2 1
1
1
1
Exemple (policy iteration)
IFT 702 © Froduald Kabanza 28
• Le but (atteindre S2) est exprimé par une fonction de récompenses:
S0 : 0, S1: 0, S2: 1
et le facteur de pondération df=0.5
a1 a5
0.2 1
0.8
S2
S1
S0
a3
a1 1
a2
a2 a4
1
1
1
0
0 1
Exprimer le but
IFT 702 © Froduald Kabanza 29
Notons ri=R(si) et vi=U(P,si) :
ui = ri + df × pr(si,P(si),sj) × uj
a1 a5
0.2
0.8
S2
S1
S0
a3
a1 1
a2
a2 a4
1
1
1
1
0
0 1
s’ in S
Rappel : équation de la valeur d’utilité d’un plan
U(P,s) = R(s) + df × pr(s,P(s),s’) × U(P,s’)
s’ in S
IFT 702 © Froduald Kabanza 30
Plan initial choisi arbitrairement :
P’ = { S0 → a2,
S1 → a2,
S2 → a4 }
0.8
S2
S1
S0
a3
a1 1
a1
a2
a2 a4
a5
0.2 1
1
1
1
0
0 1
Initialisation
IFT 702 © Froduald Kabanza 31
a. P = P’
Équations : u0=0+0.5*(1*u0);
u1=0+0.5*(1*u0);
u2=1+0.5*(1*u1)
b. Solution : u0=u1=0, u2=1
c. s0 → a1 : 0+0.5*(0.2*0+0.8*0)=0; ne change pas
s1 → a3 : 0+0.5*(1*1)=0.5 > 0; change
s2 → a5 : 1+0.5*(1*1)=1.5 > 1; change
P’ = { S0 → a2 , S1 → a3 , S2 → a5 }
0.8
S2
S1
S0
a3
a1 1
a1
a2
a2 a4
a5
0.2
1
1
1
1
0
0 1
Itération #1
IFT 702 © Froduald Kabanza 32
a. P = P’
Équations : u0=0+0.5*(1*u0);
u1=0+0.5*(1*u2);
u2=1+0.5*(1*u2)
b. Solution : u0=0, u1=1, u2=2
c. s0 → a1 : 0+0.5(0.2*0+0.8*1)=0.4 > 0; change
s1 → a2 : 0+0.5(1*0)=0 < 1; ne change pas
s2 → a4 : 1+0.5(1*1)=1.5 < 2; ne change pas
P’ = { S0 → a1 , S1 → a3 , S2 → a5 }
Itération #2
0.8
S2
S1
S0
a3
a1 1
a1
a2
a2 a4
a5
0.2
1
1
1
1
0
0 1
IFT 702 © Froduald Kabanza 33
a. P = P’
Équations : u0=0+0.5(0.2*u0+0.8u1);
u1=0+0.5(1*u2);
u2=1+0.5(1*u2)
b. Solution : u0=0.4, u1=1, u2=2
c. s0 : a2: 0+0.5(1*0.4)=0.2 < 0.4; ne change pas
s1 : a2: 0+0.5(1*0.4)=0.2 < 1; ne change pas
s2 : a4: 1+0.5(1*1)=1.5 < 2; ne change pas
P’ = { S0 : a1 , S1 : a3 , S2 : a5 }, c-à-d. P
Solution finale : P
Itération # 3
0.8
S2
S1
S0
a3
a1 1
a1
a2
a2 a4
a5
0.2
1
1
1
1
0
0 1
IFT 702 © Froduald Kabanza 34
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 35
Autres algorithmes
• RTDP (Real-Time Dynamic Programming)
• LRTDP (Labelled Real-Time Dynamic Programming)
• UCT (Upper-Confidence Bounds for Trees)
• Q-Learning (si modèles de transition/récompense pas connu)
IFT 702 © Froduald Kabanza 36
Sujets couverts
• Introduction
• Processus de décision de Markov
– Algorithme value-iteration
– Algorithme policy-iteration
– Autres algorithmes
• Généralisations
IFT 702 © Froduald Kabanza 37
• Notons : « R=i » le fait que le robot est dans le local numéro i,
G={i,..,k} le but spécifiant que le robot doit visiter les locaux {1, …, k}
• Ainsi G={1,2} signifie que le robot doit inévitablement visiter le local 1 (c-à-d., R=1)
et inévitablement visiter le local 2 (c-à-d., R=1)
• Ce genre de but nécessite d’étendre au préalable l’espace d’états de manière à
attribuer des récompenses à des comportements.
• Une façon élégante de le faire est d’attribuer les récompenses à des formules de
logique temporelle satisfaisant les comportements désirés [Thiébaux et al., JAIR 2006]
R=1
G={2}
R=3
G={1,2}
R=2
G={1}
goto(1)
goto(3) goto(3)
goto(2)
Fonctions de récompenses complexes
3
1
2
4
5
IFT 702 © Froduald Kabanza 38
• Environnement partiellement observable
– POMDP (Partially-Observable MDP)
– Réseaux de décision / diagrammes d’influence
• Plusieurs joueurs
– Jeux stochastiques (SG – Stochastic Game)
• Environnement partiellement observable +
plusieurs joueurs
– Jeux stochastiques partiellement observables
(POSG – Partially Observable Stochastic Game)
Autres généralisations
IFT 702 © Froduald Kabanza 39
Résumé
• L’approche Markovienne est très attrayante parce qu’elle combine
raisonnement probabiliste et optimisation avec élégance.
• C’est une des approches les plus étudiées actuellement pour :
– La planification
– L’apprentissage par renforcement.
• Elle est notamment populaire dans les applications de robots
mobiles.

Weitere ähnliche Inhalte

Ähnlich wie iteration par valeur.ppt

Présentation oracle version finale
Présentation oracle version finalePrésentation oracle version finale
Présentation oracle version finaleKhalil Fekkour
 
CHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdf
CHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdfCHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdf
CHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdfYounesOuladSayad1
 
DevExp 2012 methodes agiles SCRUM jesnault
DevExp 2012 methodes agiles SCRUM jesnaultDevExp 2012 methodes agiles SCRUM jesnault
DevExp 2012 methodes agiles SCRUM jesnaultJérôme Esnault
 
Statique_des_solidesStatique_des_solidesStatique_des_solides
Statique_des_solidesStatique_des_solidesStatique_des_solidesStatique_des_solidesStatique_des_solidesStatique_des_solides
Statique_des_solidesStatique_des_solidesStatique_des_solidesAbdelaliYacoubi
 
ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....
ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....
ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....chaymae36
 
Cours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdfCours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdfadeljaouadi
 
TP3: Comportement Temps Réel de l'Agent Perception
TP3: Comportement Temps Réel de l'Agent PerceptionTP3: Comportement Temps Réel de l'Agent Perception
TP3: Comportement Temps Réel de l'Agent PerceptionSaid Benaissa
 
La complexité des algorithmes récursives Géométrie algorithmique
La complexité des algorithmes récursivesGéométrie algorithmiqueLa complexité des algorithmes récursivesGéométrie algorithmique
La complexité des algorithmes récursives Géométrie algorithmiqueHajer Trabelsi
 
Restitution d'orbites de débris spatiaux par algorithmes génétiques
Restitution d'orbites de débris spatiaux par algorithmes génétiquesRestitution d'orbites de débris spatiaux par algorithmes génétiques
Restitution d'orbites de débris spatiaux par algorithmes génétiquesamjadsig
 
Digital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdfDigital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdfHouBou3
 
Prog Pc 1
Prog Pc 1Prog Pc 1
Prog Pc 1IPEIT
 
Cour simulation ns2
Cour simulation ns2Cour simulation ns2
Cour simulation ns2Gilles Samba
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithmemustapha4
 
MapReduce: Traitement de données distribué à grande échelle simplifié
MapReduce: Traitement de données distribué à grande échelle simplifiéMapReduce: Traitement de données distribué à grande échelle simplifié
MapReduce: Traitement de données distribué à grande échelle simplifiéMathieu Dumoulin
 
Performances dans la segmentation d’images médicales
Performances dans la segmentation d’images médicalesPerformances dans la segmentation d’images médicales
Performances dans la segmentation d’images médicalesEL-Hachemi Guerrout
 

Ähnlich wie iteration par valeur.ppt (20)

Presentation Map Reduce
Presentation Map ReducePresentation Map Reduce
Presentation Map Reduce
 
chapitre 5.pptx
chapitre 5.pptxchapitre 5.pptx
chapitre 5.pptx
 
Présentation oracle version finale
Présentation oracle version finalePrésentation oracle version finale
Présentation oracle version finale
 
CHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdf
CHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdfCHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdf
CHAPITRE3_Fondements_Big_Data_MR_YARN - converted (1).pdf
 
DevExp 2012 methodes agiles SCRUM jesnault
DevExp 2012 methodes agiles SCRUM jesnaultDevExp 2012 methodes agiles SCRUM jesnault
DevExp 2012 methodes agiles SCRUM jesnault
 
Statique_des_solidesStatique_des_solidesStatique_des_solides
Statique_des_solidesStatique_des_solidesStatique_des_solidesStatique_des_solidesStatique_des_solidesStatique_des_solides
Statique_des_solidesStatique_des_solidesStatique_des_solides
 
ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....
ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....
ProgrammationLinéaire.pptxProgrammationLinéaire.pptxProgrammationLinéaire....
 
Cours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdfCours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdf
 
Expose.ppt
Expose.pptExpose.ppt
Expose.ppt
 
TP3: Comportement Temps Réel de l'Agent Perception
TP3: Comportement Temps Réel de l'Agent PerceptionTP3: Comportement Temps Réel de l'Agent Perception
TP3: Comportement Temps Réel de l'Agent Perception
 
La complexité des algorithmes récursives Géométrie algorithmique
La complexité des algorithmes récursivesGéométrie algorithmiqueLa complexité des algorithmes récursivesGéométrie algorithmique
La complexité des algorithmes récursives Géométrie algorithmique
 
Restitution d'orbites de débris spatiaux par algorithmes génétiques
Restitution d'orbites de débris spatiaux par algorithmes génétiquesRestitution d'orbites de débris spatiaux par algorithmes génétiques
Restitution d'orbites de débris spatiaux par algorithmes génétiques
 
Digital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdfDigital_Signal_Processors_TG_FULL.pdf
Digital_Signal_Processors_TG_FULL.pdf
 
Prog Pc 1
Prog Pc 1Prog Pc 1
Prog Pc 1
 
Cour simulation ns2
Cour simulation ns2Cour simulation ns2
Cour simulation ns2
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithme
 
MapReduce: Traitement de données distribué à grande échelle simplifié
MapReduce: Traitement de données distribué à grande échelle simplifiéMapReduce: Traitement de données distribué à grande échelle simplifié
MapReduce: Traitement de données distribué à grande échelle simplifié
 
Mathématiques et Python
Mathématiques et PythonMathématiques et Python
Mathématiques et Python
 
Performances dans la segmentation d’images médicales
Performances dans la segmentation d’images médicalesPerformances dans la segmentation d’images médicales
Performances dans la segmentation d’images médicales
 
Hug janvier 2016 -EDF
Hug   janvier 2016 -EDFHug   janvier 2016 -EDF
Hug janvier 2016 -EDF
 

Mehr von SaidaSoundouss

الأسرة نواة المجتمع.pptx
الأسرة نواة المجتمع.pptxالأسرة نواة المجتمع.pptx
الأسرة نواة المجتمع.pptxSaidaSoundouss
 
الإيمان وعمارة الأرض.pptx
الإيمان وعمارة الأرض.pptxالإيمان وعمارة الأرض.pptx
الإيمان وعمارة الأرض.pptxSaidaSoundouss
 
projetImageMining.pptx
projetImageMining.pptxprojetImageMining.pptx
projetImageMining.pptxSaidaSoundouss
 
La mode et le snobisme chez les jeunes.pptx
La mode et le snobisme chez les jeunes.pptxLa mode et le snobisme chez les jeunes.pptx
La mode et le snobisme chez les jeunes.pptxSaidaSoundouss
 

Mehr von SaidaSoundouss (7)

الأسرة نواة المجتمع.pptx
الأسرة نواة المجتمع.pptxالأسرة نواة المجتمع.pptx
الأسرة نواة المجتمع.pptx
 
الإيمان وعمارة الأرض.pptx
الإيمان وعمارة الأرض.pptxالإيمان وعمارة الأرض.pptx
الإيمان وعمارة الأرض.pptx
 
projetImageMining.pptx
projetImageMining.pptxprojetImageMining.pptx
projetImageMining.pptx
 
La mode et le snobisme chez les jeunes.pptx
La mode et le snobisme chez les jeunes.pptxLa mode et le snobisme chez les jeunes.pptx
La mode et le snobisme chez les jeunes.pptx
 
RA article.pptx
RA article.pptxRA article.pptx
RA article.pptx
 
Naive Bayes.pptx
Naive Bayes.pptxNaive Bayes.pptx
Naive Bayes.pptx
 
Medical imagery.pptx
Medical imagery.pptxMedical imagery.pptx
Medical imagery.pptx
 

iteration par valeur.ppt

  • 1. IFT 702 – Planification en Intelligence Artificielle Planification avec des processus de décision de Markov Froduald Kabanza Département d’informatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza Modifications par Simon Chamberland
  • 2. IFT 702 © Froduald Kabanza 2 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 3. IFT 702 © Froduald Kabanza 3 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 4. IFT 702 © Froduald Kabanza 4 Exemple Room 1 Room 2 Room 5 Room 4 Room 3 Goal
  • 5. IFT 702 © Froduald Kabanza 5 Architecture de contrôle Environnement Capteurs Effecteurs État du système Planificateur de tâches Modèles: -actions -environnement - stratégies de planification - heuristiques But Plan = règles « état→action» Suivi de l’exécution Module d’apprentissage Action Planificateur de trajectoires Trajectoire
  • 6. IFT 702 © Froduald Kabanza 6 Grille (occupancy grid) Actions: E: Go east W: Go west S: Go south N: Go north Exemple 0 Degré de désirabilité -0.4 -1 : +1 But Room 1 Room 5 Room 2 Room 4 Room 3 But 0 1 2 3 …. 0 1 2 3 ….
  • 7. IFT 702 © Froduald Kabanza 7 • Une décision est un choix d’une action dans un état. • C’est une règle if state then action (21,12) (20,11) S (20,12) (20,13) W W 0.9 0.2 0.5 Décision S 0.1 (21,13) W 0.3 (20,10) (1,1) (21,12) → W ou (21,12) → S Exemples:
  • 8. IFT 702 © Froduald Kabanza 8 • Un plan (policy) est une stratégie : choix d’une action pour chaque état • C’est un ensemble de règles if state then action. Plan (policy) (21,12) (20,11) S (20,12) (20,13) W W 0.9 0.2 0.5 S 0.1 (21,13) W0.3 (20,10) (1,1) Plan 1 { (21,12) → W, (20,13) → S, (21,13) → S, (20,12) → E, …} Exemples:
  • 9. IFT 702 © Froduald Kabanza 9 • Un plan (policy) est une stratégie : choix d’une action pour chaque état • C’est un ensemble de règles if state then action. Plan (policy) (21,12) (20,11) S (20,12) (20,13) W W 0.9 0.2 0.5 S 0.1 (21,13) W0.3 (20,10) (1,1) Plan 1 { (21,12) → W, (20,13) → S, (21,13) → S, (20,12) → E, …} Exemples: Plan 2 { (21,12) → S, (20,11) → S, (21,10) → E, ….}
  • 10. IFT 702 © Froduald Kabanza 10 Exécution d’un plan • Un plan est un ensemble de règles if state then action. • Notons P(s) l’action désignée par le plan P dans l’état s. • Voici un algorithme d’exécution, interprétation ou application d’un plan While (1) { 1 s = état courant du système s; 2 a = P(s); 3 execute a; } • L’étape 1 implique observation : détection (sensing), localisation, classification, tracking • L’état résultant de l’exécution de l’action à l’étape 3 est imprévisible. • L’interprétation (ensemble de séquences possibles) est un arbre infini. • L’exécution est une séquence infinie (une parmi celles de l’arbre). Exemple de P(S) S : P(S) { (21,12) : W, (20,13) : S, (21,13) : S, (20,12) : E, …}
  • 11. IFT 702 © Froduald Kabanza 11 Interprétation/application d’un plan • L’application d’un plan à un automate stochastique donne une chaîne de Markov (un graphe). • La chaîne se déroule en un arbre infini. (21,12) (20,11) S (20,12) (20,13) W W 0.9 0.2 0.5 S 0.1 (21,13) W0.3 (20,10) (1,1) Plan 1 { (21,12) → W, (20,13) → S, (21,13) → S, (20,12) → E, (20,11) → S, …} Exemples: Plan 2 { (21,12) → S, (20,11) → S, (21,10) → E, ….}
  • 12. IFT 702 © Froduald Kabanza 12 • La qualité d’un plan est déterminée par l’ensemble des séquences d’états qui peuvent potentiellement en résulter. – C-à-d., les séquences déroulables de la chaîne de Markov correspondante. • La qualité peut être formalisée selon : – Une approche logique classique : chaque séquence doit satisfaire une condition de succès (conduire au but ou satisfaire une formule de logique temporelle) – Une approche de théorie de l’utilité/théorie de la décision: fonction d’utilité ou de récompense. – Une combinaison des deux. • Chaque approche donne lieu à une méthode de calcul du plan différente. – Recherche dans un graphe et/ou pour l’approche logique classique – Programmation dynamique pour l’approche de théorie de la décision • Des prototypes existent pour les différentes approches Interprétation/application d’un plan
  • 13. IFT 702 © Froduald Kabanza 13 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 14. IFT 702 © Froduald Kabanza 14 Théorie de l’utilité • Relations de désirabilité entre des états • Axiomes contraignant les relations – Par exemple, transitivité: s1 < s2 et s2 < s3 -> s1 < s3 • Des axiomes découle l’existence d’une fonction d’utilité u: S -> R – Telle que sx < sy ssi u(sx) < u(sy) – Et sx = sy ssi u(sx) = u(sy) s1 s2 s3 < <
  • 15. IFT 702 © Froduald Kabanza 15 Théorie de l’utilité • Principe de rationalité – Maximiser l’utilité espérée – Par opposition à maximiser le meilleur cas, minimiser le pire cas, etc. – Dans les MDPs, on veut discriminer la désirabilité de séquences d’états plutôt que d’états individuels i p(i)*u(xi) s1 s2 s3 t1 t2 t3 <
  • 16. IFT 702 © Froduald Kabanza 16 Processus de décision de Markov • État initial: s0 • Modèle de transition: pr(s,a,s’) • Fonction de récompense: R(s) Hypothèses • Environnement totalement observable • Un seul agent • Modèles de transition/récompense indépendant du temps
  • 17. IFT 702 © Froduald Kabanza 17 Fonction d’utilité/récompense et qualité des plans • Une fonction récompense, R(s), assigne un nombre réel à chaque état s. – R(s) désigne le degré de désirabilité de l’état s. • Le but et le coût des actions sont indirectement modélisés par la fonction de récompense. • Ainsi, la qualité d’un plan est déterminée par l’espérance des récompenses qu’on peut potentiellement obtenir en suivant/exécutant le plan – Un plan optimal est celui qui maximise les récompenses. – Plus un plan est proche de du plan optimal, plus il est de qualité. • Ainsi un plan fait un compromis entre: – La maximisation de la probabilité d’atteindre le but (réduction de la probabilité d’échec). – La maximisation des récompenses (optimisation du coût des actions).
  • 18. IFT 702 © Froduald Kabanza 18 Horizon • Fini – Politique non-stationnaire (dépend du temps) • Infini (pas de deadline fixe) – Politique stationnaire (plus simple) Les prochaines slides vont traiter le cas infini.
  • 19. IFT 702 © Froduald Kabanza 19 Valeur d’un plan • R(s) : récompense pour l’état s • Hypothèses: – Processus Markovien – Récompenses temporairement atténués (discounted rewards) • U(P,s) : Valeur d’utilité du plan P dans l’état s U(P,s) = R(s) + df × pr(s,P(s),s’) × U(P,s’) – df : facteur de pondération (0 <= df < 1) – S : espace d’états – P(s) : action dans s donnée par le plan P – pr(s,P(s),s’) : probabilité de la transition s’ in S (21,12) (20,11) S (20,12) (20,13) W W 0.9 0.2 0.5 S 0.1 (21,13) W0.3 (20,10)
  • 20. IFT 702 © Froduald Kabanza 20 Plan optimal • Un plan P domine un plan P’ si les deux conditions suivantes sont réunies: – U(P,s) >= U(P’,s) pour tout état s – U(P,s) > U(P’,s) pour au moins un s • Un plan est optimal s’il n’est pas dominé par un autre. • Il peut y avoir plusieurs plans optimaux, mais ils ont tous la même valeur • On peut avoir deux plans incomparables (la dominance induit une fonction d’ordre partiel sur les plans) • Deux algorithmes différents pour le calcul du plan (parmi plusieurs) : – value iteration – policy iteration
  • 21. IFT 702 © Froduald Kabanza 21 Équations de Bellman pour la valeur optimale • Les équations de Bellman nous donnent la valeur d’utilité U* des plans optimaux U*(s)= R(s) + max df × pr(s,a,s’) × U*(s’) • Si nous pouvons calculer U*, nous pourrons calculer un plan optimal aisément: – Il suffit de choisir dans chaque état s une action qui maximise U*(s) s’ in S a
  • 22. IFT 702 © Froduald Kabanza 22 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 23. IFT 702 © Froduald Kabanza 23 Algorithme Value iteration 1. Initialiser U(s) à 0 pour chaque état s 2. Répéter (jusqu’à ce que le changement en U soit négligeable) a. Pour chaque état s U’(s) = R(s) + max df × pr(s,a,s’) × U(s’) b. U=U’ (ou |U| - |U’| ≤ tolérance) 3. Le plan optimal est obtenu en choisissant pour chaque s état l’action a telle que la valeur df × pr(s,a,s’) × V(s’) est la plus élevée. (En d’autres mots, on choisit l’action qui maximise l’espérance des valeurs des successeurs). Complexité: O(N4M) où N est le nombre d’états et M le nombre d’actions. s’ dans S s’ dans S a
  • 24. IFT 702 © Froduald Kabanza 24 Démonstration de Value iteration Démo de l’algorithme value iteration: http://planiart.usherbrooke.ca/kabanza/cours/ift615/demos/vi/vi.htm
  • 25. IFT 702 © Froduald Kabanza 25 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 26. IFT 702 © Froduald Kabanza 26 Algorithme Policy iteration 1. Choisir un plan arbitraire P’ 2. Répéter jusqu’à ce que P devienne inchangé : a. P := P’; b. Pour tout s dans S, calcule U(P,s) en résolvant le système de |S| équations en |S| inconnus U(P,s) = R(s) + df × pr(s,P(s),s’) × U(P,s’) c. Pour tout s dans S, s’il existe une action a telle que [ R(s) + df × pr(s,a,s’) × U(P,s’)] > U(P,s) alors P’(s) := a sinon P’(s) := P(s) 3. retourne P Converge au plan optimal en temps pseudopolynomial. s’ in S s’ in S
  • 27. IFT 702 © Froduald Kabanza 27 • Actions • But: S2 0.8 S2 S1 S0 a3 a1 1 a1 a2 a2 a4 a5 0.2 1 1 1 1 Exemple (policy iteration)
  • 28. IFT 702 © Froduald Kabanza 28 • Le but (atteindre S2) est exprimé par une fonction de récompenses: S0 : 0, S1: 0, S2: 1 et le facteur de pondération df=0.5 a1 a5 0.2 1 0.8 S2 S1 S0 a3 a1 1 a2 a2 a4 1 1 1 0 0 1 Exprimer le but
  • 29. IFT 702 © Froduald Kabanza 29 Notons ri=R(si) et vi=U(P,si) : ui = ri + df × pr(si,P(si),sj) × uj a1 a5 0.2 0.8 S2 S1 S0 a3 a1 1 a2 a2 a4 1 1 1 1 0 0 1 s’ in S Rappel : équation de la valeur d’utilité d’un plan U(P,s) = R(s) + df × pr(s,P(s),s’) × U(P,s’) s’ in S
  • 30. IFT 702 © Froduald Kabanza 30 Plan initial choisi arbitrairement : P’ = { S0 → a2, S1 → a2, S2 → a4 } 0.8 S2 S1 S0 a3 a1 1 a1 a2 a2 a4 a5 0.2 1 1 1 1 0 0 1 Initialisation
  • 31. IFT 702 © Froduald Kabanza 31 a. P = P’ Équations : u0=0+0.5*(1*u0); u1=0+0.5*(1*u0); u2=1+0.5*(1*u1) b. Solution : u0=u1=0, u2=1 c. s0 → a1 : 0+0.5*(0.2*0+0.8*0)=0; ne change pas s1 → a3 : 0+0.5*(1*1)=0.5 > 0; change s2 → a5 : 1+0.5*(1*1)=1.5 > 1; change P’ = { S0 → a2 , S1 → a3 , S2 → a5 } 0.8 S2 S1 S0 a3 a1 1 a1 a2 a2 a4 a5 0.2 1 1 1 1 0 0 1 Itération #1
  • 32. IFT 702 © Froduald Kabanza 32 a. P = P’ Équations : u0=0+0.5*(1*u0); u1=0+0.5*(1*u2); u2=1+0.5*(1*u2) b. Solution : u0=0, u1=1, u2=2 c. s0 → a1 : 0+0.5(0.2*0+0.8*1)=0.4 > 0; change s1 → a2 : 0+0.5(1*0)=0 < 1; ne change pas s2 → a4 : 1+0.5(1*1)=1.5 < 2; ne change pas P’ = { S0 → a1 , S1 → a3 , S2 → a5 } Itération #2 0.8 S2 S1 S0 a3 a1 1 a1 a2 a2 a4 a5 0.2 1 1 1 1 0 0 1
  • 33. IFT 702 © Froduald Kabanza 33 a. P = P’ Équations : u0=0+0.5(0.2*u0+0.8u1); u1=0+0.5(1*u2); u2=1+0.5(1*u2) b. Solution : u0=0.4, u1=1, u2=2 c. s0 : a2: 0+0.5(1*0.4)=0.2 < 0.4; ne change pas s1 : a2: 0+0.5(1*0.4)=0.2 < 1; ne change pas s2 : a4: 1+0.5(1*1)=1.5 < 2; ne change pas P’ = { S0 : a1 , S1 : a3 , S2 : a5 }, c-à-d. P Solution finale : P Itération # 3 0.8 S2 S1 S0 a3 a1 1 a1 a2 a2 a4 a5 0.2 1 1 1 1 0 0 1
  • 34. IFT 702 © Froduald Kabanza 34 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 35. IFT 702 © Froduald Kabanza 35 Autres algorithmes • RTDP (Real-Time Dynamic Programming) • LRTDP (Labelled Real-Time Dynamic Programming) • UCT (Upper-Confidence Bounds for Trees) • Q-Learning (si modèles de transition/récompense pas connu)
  • 36. IFT 702 © Froduald Kabanza 36 Sujets couverts • Introduction • Processus de décision de Markov – Algorithme value-iteration – Algorithme policy-iteration – Autres algorithmes • Généralisations
  • 37. IFT 702 © Froduald Kabanza 37 • Notons : « R=i » le fait que le robot est dans le local numéro i, G={i,..,k} le but spécifiant que le robot doit visiter les locaux {1, …, k} • Ainsi G={1,2} signifie que le robot doit inévitablement visiter le local 1 (c-à-d., R=1) et inévitablement visiter le local 2 (c-à-d., R=1) • Ce genre de but nécessite d’étendre au préalable l’espace d’états de manière à attribuer des récompenses à des comportements. • Une façon élégante de le faire est d’attribuer les récompenses à des formules de logique temporelle satisfaisant les comportements désirés [Thiébaux et al., JAIR 2006] R=1 G={2} R=3 G={1,2} R=2 G={1} goto(1) goto(3) goto(3) goto(2) Fonctions de récompenses complexes 3 1 2 4 5
  • 38. IFT 702 © Froduald Kabanza 38 • Environnement partiellement observable – POMDP (Partially-Observable MDP) – Réseaux de décision / diagrammes d’influence • Plusieurs joueurs – Jeux stochastiques (SG – Stochastic Game) • Environnement partiellement observable + plusieurs joueurs – Jeux stochastiques partiellement observables (POSG – Partially Observable Stochastic Game) Autres généralisations
  • 39. IFT 702 © Froduald Kabanza 39 Résumé • L’approche Markovienne est très attrayante parce qu’elle combine raisonnement probabiliste et optimisation avec élégance. • C’est une des approches les plus étudiées actuellement pour : – La planification – L’apprentissage par renforcement. • Elle est notamment populaire dans les applications de robots mobiles.