IFT 615 Intelligence artificielle Processus dcisionnels markoviens MDP

  • Slides: 27
Download presentation
IFT 615 – Intelligence artificielle Processus décisionnels markoviens (MDP) Jean-François Landry Département d’informatique Université

IFT 615 – Intelligence artificielle Processus décisionnels markoviens (MDP) Jean-François Landry Département d’informatique Université de Sherbrooke http: //planiart. usherbrooke. ca/~eric/ift 615/

Sujets couverts • Processus de décision de Markov (MDP). • Algorithme d’itération par valeurs

Sujets couverts • Processus de décision de Markov (MDP). • Algorithme d’itération par valeurs (value-iteration) • Algorithme d’itération par politiques (policy-iteration) IFT 615 Processus de décision de Markov 2

Rappel: Utility-based agents État incertain. Les capteurs peuvent être bruités… Les actions peuvent avoir

Rappel: Utility-based agents État incertain. Les capteurs peuvent être bruités… Les actions peuvent avoir des effets incertains! IFT 615 Processus de décision de Markov 3

 • • Incertitude Soit At l’action d’aller à l’aéroport t minutes avant le

• • Incertitude Soit At l’action d’aller à l’aéroport t minutes avant le départ de l’avion. At me permettra-t-il d’arriver à temps? Problèmes: – Observabilité partielle (conditions routières, etc. ) – Senseurs bruités (annonces du trafic, etc. ) – Incertitude dans l’effet des actions (crevaisons, pannes, etc. ) – Immense complexité pour modéliser les actions et le trafic. Un raisonnement purement logique – Risque de tirer des conclusions erronées: « A 25 me permettra d’arriver à temps » , ou – Risque de tirer des conclusions peu exploitable du point de vue « prise de décision » : • « A 25 me permettra d’arriver à temps, s’il ne pleut pas, s’il n’y a pas d’accident, si mes pneus ne crèvent pas, etc. » • « A 1440 me permettra raisonnable d’arriver à temps, mais je devrai passer une nuit à l’aéroport. » IFT 615 Processus de décision de Markov 4

Actions: E: Go east W: Go west S: Go south N: Go north Example

Actions: E: Go east W: Go west S: Go south N: Go north Example Grille (occupancy grid) Room 2 0 1 2 3 …. Room 1 Degré de désirabilité 0 But -0. 4 -1 : +1 Room 5 Room 3 Room 4 But 0 1 2 3 …. IFT 615 Processus de décision de Markov 5

Actions aux effets incertains Go South (S) État courant Action États successeurs possibles 25

Actions aux effets incertains Go South (S) État courant Action États successeurs possibles 25 % 50 % 25 % 6

Une décision est un choix d’action pour un état • Une décision est un

Une décision est un choix d’action pour un état • Une décision est un choix d’une action dans un état. • C’est une règle if state then action Exemples: (21, 12) → W ou (21, 12) → E (21, 13) (20, 13) W 0. 2 (20, 12) W 0. 3 W 0. 5 (21, 12) 0. 1 S (20, 11) 0. 9 S (20, 10) (1, 1) IFT 615 Processus de décision de Markov 7

Un plan est un ensemble de décisions (politique) • Un plan est une stratégie

Un plan est un ensemble de décisions (politique) • Un plan est une stratégie : choix d’une action pour chaque état. • Un plan est également appelé une politique (policy) • C’est un ensemble de règles if state then action. Exemples: (21, 13) (20, 13) W 0. 2 (20, 12) W 0. 3 W 0. 5 S (21, 12) 0. 1 (20, 11) 0. 9 S Plan π1 { (21, 12) → W, (20, 13) → S, (21, 13) → S, (20, 12) → E, … } (20, 10) (1, 1) IFT 615 Processus de décision de Markov 8

Un plan est un ensemble de décisions (policy) • Un plan est une stratégie

Un plan est un ensemble de décisions (policy) • Un plan est une stratégie : choix d’une action pour chaque état. • Un plan est également appelé une politique (policy) • C’est un ensemble de règles if state then action. Exemples: (21, 13) (20, 13) W 0. 2 (20, 12) W 0. 3 W 0. 5 S (21, 12) 0. 1 (20, 11) 0. 9 S (20, 10) (1, 1) IFT 615 Plan π1 { (21, 12) → W, (20, 13) → S, (21, 13) → S, (20, 12) → E, …} Processus de décision de Markov Plan π2 { (21, 12) → S, (20, 11) → S, (21, 10) → E, …. } 9

Exécution d’un plan (politique) • • • Un plan est un ensemble de règles

Exécution d’un plan (politique) • • • Un plan est un ensemble de règles if state then action. Notons π(s) l’action désignée par le plan π 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 = π(s); 3. execute a; } • • L’étape 1 peut impliquer de la détection (sensing) et la localisation. 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 infini (une parmi celles de l’arbre). IFT 615 Processus de décision de Markov 10

Interprétation/application d’un plan • L’application d’un plan à un automate stochastique donne une chaîne

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. Exemples: (21, 13) (20, 13) W 0. 2 (20, 12) W 0. 3 W 0. 5 S (21, 12) 0. 1 (20, 11) 0. 9 S (20, 10) (1, 1) IFT 615 Processus de décision de Markov Plan 1 { (21, 12) → W, (20, 13) → S, (21, 13) → S, (20, 12) → E, (20, 11) → S, …} Plan 2 { (21, 12) → S, (20, 11) → S, (21, 10) → E, …. } 11

Valeur d’un plan • • R(s) : récompense pour l’état s; c-à-d. , utilité

Valeur d’un plan • • R(s) : récompense pour l’état s; c-à-d. , utilité de l’état s. V(π, s) : valeur du plan π dans l’état s V(π, s) = R(s) + df × P(s, π(s), s’) × V(π, s’) s’ in S – df : facteur de pondération (0 < df <= 1) – S : espace d’états – π(s) : action dans s – P(s, π(s), s’) : probabilité de la transition IFT 615 Processus de décision de Markov 14

Plan optimal • Un plan π domine un plan π’ si les deux conditions

Plan optimal • Un plan π domine un plan π’ si les deux conditions suivantes sont réunies: – V(π, s) >= V(π’, s) pour tout état s – V(π, s) > V(π’, 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 : – Itération par valeurs (value iteration) – Itération par politique (policy iteration) IFT 615 Processus de décision de Markov 15

Équations de Bellman pour la valeur optimale • Les équations de Bellman nous donnent

Équations de Bellman pour la valeur optimale • Les équations de Bellman nous donnent la valeur V* des plans optimaux V*(s)= R(s) + max df × P(s, a, s’) × V*(s’) a s’ in S • Si nous pouvons calculer V*, nous pourrons calculer un plan optimal aisément: – Il suffit de choisir dans chaque état s une action qui maximise V*(s). IFT 615 Processus de décision de Markov 16

Algorithme Value iteration 1. Initialiser V(s) à 0 pour chaque état s. 2. Répéter

Algorithme Value iteration 1. Initialiser V(s) à 0 pour chaque état s. 2. Répéter (jusqu’à ce que le changement en V soit négligeable). a. Pour chaque état s V’(s) = R(s) + max df × P(s, a, s’) × V(s’) a s’ dans S b. V=V’ (ou |V - V’| ≤ tolérance) 3. Le plan optimal est obtenu en choisissant pour chaque s état l’action a telle que la valeur df × P(s, a, s’) × V(s’) est la plus élevée. s’ dans S (En d’autres mots, on choisit l’action qui maximise l’espérance des valeurs des successeurs). Converge au plan optimal en O(|S|3) IFT 615 Processus de décision de Markov 17

Démonstration de Value iteration http: //planiart. usherbrooke. ca/~eric/ift 615/demos/vi/ IFT 615 Processus de décision

Démonstration de Value iteration http: //planiart. usherbrooke. ca/~eric/ift 615/demos/vi/ IFT 615 Processus de décision de Markov 18

Algorithme Policy iteration 1. Choisir un plan arbitraire π’ 2. Répéter jusqu’à ce que

Algorithme Policy iteration 1. Choisir un plan arbitraire π’ 2. Répéter jusqu’à ce que π devienne inchangé : a. π : = π’; b. Pour tout s dans S, calcule V(π, s) en résolvant le système de |S| équations en |S| inconnus V(π, s) = R(s) + df × P(s, π(s), s’) × V(π, s’) s’ in S c. Pour tout s dans S, s’il existe une action a telle que [ R(s) + df × P(s, a, s’) × V(π, s’)] > V(π, s) s’ in S alors π’(s) : = a sinon π’(s) : = π(s) 3. retourne π Converge au plan optimal en O(|S|3) IFT 615 Processus de décision de Markov 19

Exemple (policy iteration) • Actions 0. 2 a 1 S 0 1 a 5

Exemple (policy iteration) • Actions 0. 2 a 1 S 0 1 a 5 1 0. 8 a 2 1 a 3 S 1 1 a 4 S 2 1 a 2 • But: S 2 IFT 615 Processus de décision de Markov 22

Exprimer le but a 1 0. 2 a 5 1 a 1 0 S

Exprimer le but a 1 0. 2 a 5 1 a 1 0 S 0 1 a 2 1 0. 8 a 2 a 3 S 1 0 1 1 a 4 S 2 1 • Le but (atteindre S 2) est exprimé par une fonction de récompenses: S 0 : 0, S 1: 0, S 2: 1 et le facteur de pondération df=0. 5 IFT 615 Processus de décision de Markov 23

Rappel : équation de la valeur d’un plan V(π, s) = R(s) + df

Rappel : équation de la valeur d’un plan V(π, s) = R(s) + df × P(s, π(s), s’) × V(π, s’) s’ in S a 1 0. 2 a 1 0 S 0 1 a 2 1 a 5 1 0. 8 a 2 1 a 3 S 1 1 a 4 0 S 2 1 Notons ri=R(si) et vi=V(π, si) : vi = ri + df × P(si, π(si), sj) × vj sj in S IFT 615 Processus de décision de Markov 24

Initialisation a 1 0. 2 a 1 0 S 0 a 5 1 0.

Initialisation a 1 0. 2 a 1 0 S 0 a 5 1 0. 8 1 a 2 a 3 S 1 0 1 1 a 4 S 2 1 Plan initial choisi arbitrairement : π’ = { S 0 → a 2, S 1 → a 2, S 2 → a 4 } IFT 615 Processus de décision de Markov 25

Itération #1 0. 2 a 1 0 S 0 1 1 a 2 a

Itération #1 0. 2 a 1 0 S 0 1 1 a 2 a 5 1 0. 8 a 2 a 3 S 1 0 1 1 a 4 S 2 1 a. π = π’ Équations : v 0=0+0. 5*(1*v 0); v 1=0+0. 5*(1*v 0); v 2=1+0. 5*(1*v 1) b. Solution : v 0=v 1=0, v 2=1 c. s 0 → a 1 : 0+0. 5*(0. 2*0+0. 8*0)=0; ne change pas s 1 → a 3 : 0+0. 5*(1*1)=0. 5 > 0; change s 2 → a 5 : 1+0. 5*(1*1)=1. 5 > 1; change π’ = { S 0 → a 2 , S 1 → a 3 , S 2 → a 5 } IFT 615 Processus de décision de Markov 26

Itération #2 0. 2 a 1 0 S 0 1 1 a 2 a

Itération #2 0. 2 a 1 0 S 0 1 1 a 2 a 5 1 0. 8 a 2 a 3 S 1 0 1 1 a 4 S 2 1 a. π = π’ Équations : v 0=0+0. 5*(1*v 0); v 1=0+0. 5*(1*v 2); v 2=1+0. 5*(1*v 2) b. Solution : v 0=0, v 1=1, v 2=2 c. s 0 → a 1 : 0+0. 5(0. 2*0+0. 8*1)=0. 4 > 0; change s 1 → a 2 : 0+0. 5(1*0)=0 < 1; ne change pas s 2 → a 4 : 1+0. 5(1*1)=1. 5 < 2; ne change pas π’ = { S 0 → a 1 , S 1 → a 3 , S 2 → a 5 } IFT 615 Processus de décision de Markov 27

Itération # 3 0. 2 a 1 0 S 0 1 1 a 2

Itération # 3 0. 2 a 1 0 S 0 1 1 a 2 a 5 1 0. 8 a 2 a 3 S 1 0 1 1 a 4 S 2 1 a. π = π’ Équations : v 0=0+0. 5(0. 2*v 0+0. 8*v 1); v 1=0+0. 5(1*v 2); v 2=1+0. 5(1*v 2) b. Solution : v 0=0. 4, v 1=1, v 2=2 c. s 0 : a 2: 0+0. 5(1*0. 4)=0. 2 < 0. 4; ne change pas s 1 : a 2: 0+0. 5(1*0. 4)=0. 2 < 1; ne change pas s 2 : a 4: 1+0. 5(1*1)=1. 5 < 2; ne change pas π’ = { S 0 : a 1 , S 1 : a 3 , S 2 : a 5 }, c-à-d. π Solution finale : π IFT 615 Processus de décision de Markov 28

Fonctions de récompenses complexes 2 R=1 G={2} goto(1) goto(3) R=3 G={1, 2} goto(2) goto(3)

Fonctions de récompenses complexes 2 R=1 G={2} goto(1) goto(3) R=3 G={1, 2} goto(2) goto(3) 3 R=2 G={1} 4 5 1 • 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] • IFT 615 Processus de décision de Markov 29

Un peu plus loin … • Les algorithmes value-iteration et policy-iteration sont lents sur

Un peu plus loin … • Les algorithmes value-iteration et policy-iteration sont lents sur des grands espaces d’états. Améliorations: – Real-Time Dynamic Programming (RTPD). – Labeled RTDP. • Les MDP supposent un observation totale. – Partially Observable MDP (Po. MDP). • Les MDP sont limités à des décisions séquentielles. Pour des actions simultanés: – Concurrent MDP (Co. MPD) – Concurrent Probabilistic Temporal Planning (CPTP) IFT 615 Processus de décision de Markov 30

Résumé • L’approche Markovienne est très attrayante parce qu’elle combine raisonnement probabiliste et optimisation

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. IFT 615 © Éric Beaudry & Froduald Kabanza 31