INTELLIGENCE ARTIFICIELLE IAR1001 Apprentissage par renforcement Retour sur

  • Slides: 41
Download presentation
INTELLIGENCE ARTIFICIELLE IAR-1001

INTELLIGENCE ARTIFICIELLE IAR-1001

Apprentissage par renforcement • Retour sur les notions d’agents intelligents • Retour sur les

Apprentissage par renforcement • Retour sur les notions d’agents intelligents • Retour sur les notions d’apprentissage • Retour sur les notions d’inférence (réaction à l’environnement) • Q-Learning • LECTURES: Chapitre 21 Russell & Norvig • Notes de cours (site ftp UQTR)

Retour sur les notions d’agents intelligents • Agent réflexe (sans apprentissage continue)

Retour sur les notions d’agents intelligents • Agent réflexe (sans apprentissage continue)

Retour sur les notions d’agents intelligents • Agent Utility-based Inconnus et doivent être appris

Retour sur les notions d’agents intelligents • Agent Utility-based Inconnus et doivent être appris

Retour sur les notions d’agents intelligents • Agent avec apprentissage continue

Retour sur les notions d’agents intelligents • Agent avec apprentissage continue

Retour sur les notions d’apprentissage • Comment déterminer l’état le plus vraisemblable d’un agent

Retour sur les notions d’apprentissage • Comment déterminer l’état le plus vraisemblable d’un agent à partir de son environnement ? • Comment l’agent apprend t-il de ses expériences ?

Retour sur les notions d’apprentissage • Notions d’inférence: Règle de Bayes (exemple)

Retour sur les notions d’apprentissage • Notions d’inférence: Règle de Bayes (exemple)

Retour sur les notions d’apprentissage • Notions d’inférence: Règle de Bayes (exemple)

Retour sur les notions d’apprentissage • Notions d’inférence: Règle de Bayes (exemple)

Retour sur les notions d’apprentissage • Exemples d’utilisation des réseaux Bayesien (contexte de jeu

Retour sur les notions d’apprentissage • Exemples d’utilisation des réseaux Bayesien (contexte de jeu vidéo)

Retour sur les notions d’apprentissage • Exemples d’utilisation des réseaux Bayesien

Retour sur les notions d’apprentissage • Exemples d’utilisation des réseaux Bayesien

Retour sur les notions d’apprentissage • Exemples d’utilisation des réseaux Bayesien: inférence des états

Retour sur les notions d’apprentissage • Exemples d’utilisation des réseaux Bayesien: inférence des états d’un agent

Retour sur les notions d’apprentissage • Exemples d’utilisation de l’apprentissage supervisé (Drivatar)

Retour sur les notions d’apprentissage • Exemples d’utilisation de l’apprentissage supervisé (Drivatar)

Retour sur les notions d’apprentissage • Apprentissage basées sur le renforcement

Retour sur les notions d’apprentissage • Apprentissage basées sur le renforcement

Retour sur les notions d’apprentissage • Apprentissage basées sur le renforcement

Retour sur les notions d’apprentissage • Apprentissage basées sur le renforcement

Q-Learning

Q-Learning

Q-Learning

Q-Learning

Q-Learning • Formule du renforcement

Q-Learning • Formule du renforcement

Q-Learning • Q-Learning pour l’apprentissage de combat agressif

Q-Learning • Q-Learning pour l’apprentissage de combat agressif

Q-Learning • Q-Learning pour l’apprentissage de combat d’Aikido

Q-Learning • Q-Learning pour l’apprentissage de combat d’Aikido

Q-Learning • Algorithme d’apprentissage Fonction d’exploration

Q-Learning • Algorithme d’apprentissage Fonction d’exploration

Q-Learning • Algorithme d’apprentissage

Q-Learning • Algorithme d’apprentissage

SARSA • Algorithme d’apprentissage

SARSA • Algorithme d’apprentissage

Q-Learning • Exemple de fonction d’exploration • R+ est une estimation optimiste de la

Q-Learning • Exemple de fonction d’exploration • R+ est une estimation optimiste de la meilleure récompense possible de chaque état avec Ne un paramètre dont la valeur est fixée. • Cette fonction f() permet à l’agent d’explorer chaque paire action-state au moins Ne fois. • u représente dans certaines approches une fonction d’utilité, mais dans l’algorithme d’apprentissage basé sur le Q -Learning u devient une fonction Q(s, a) qui est une valeur de la combinaison (s, a) appelée fonction valeur-action

Q-Learning • Exemple d’application du Q-Learning: path planning • http: //mnemstudio. org/path-finding-q-learningtutorial. htm

Q-Learning • Exemple d’application du Q-Learning: path planning • http: //mnemstudio. org/path-finding-q-learningtutorial. htm

Q-Learning • Exemple d’application du Q-Learning: path planning • Graphe des états-actions possibles: passage

Q-Learning • Exemple d’application du Q-Learning: path planning • Graphe des états-actions possibles: passage d’une pièce à l’autre

Q-Learning • Exemple d’application du Q-Learning: path planning • Graphe des états-actions possibles: passage

Q-Learning • Exemple d’application du Q-Learning: path planning • Graphe des états-actions possibles: passage d’une pièce à l’autre avec les récompenses associées: 100 correspondant à une récompense importante pour accéder à l’extérieur

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 2 vers l’extérieur (5)

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 2 vers l’extérieur (5): graphe états-actions États Actions

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 2 vers l’extérieur (5): matrice de récompenses -1: valeur nulle correspondant à l’absence de lien

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 2 vers l’extérieur (5): La règle de transition du Q-learning est: Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)]

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 2 vers l’extérieur (5): Algorithme Q-Learning 1. Initialiser le paramètre et la matrice R. 2. Initialiser la matrice Q à zéro. 3. POUR chaque épisode: Selectionner un état initial. TTQ l’état but n’est pas atteint. Choisir 1 des actions possibles pour cet état. Avec cette action, amenant au prochain état s’. Trouver Q max pour les combinaisons s’-a’ possibles. Calculer: Q(state, action) = R(state, action) + Max[Q(next state, all actions)] L’état courant est fixé au prochain état (next state). FIN TTQ

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 1 vers l’extérieur (5): Matrice Q initiale: "Q", est ajoutée au cerveau de l’agent, représente la mémoire de ce que l’agent apprend de ses expériences. Les rangées de Q représentent s actuel de l’agent, les colonnes représentent les actions possibles permettant de passer au prochain s (s’) (passage entre les noeuds).

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning • Exemple de planification d’évacuation de la pièce 1 vers l’extérieur (5): Matrice R initiale

Q-Learning • Exemple d’application du Q-Learning: path planning Exemple de planification d’évacuation de la

Q-Learning • Exemple d’application du Q-Learning: path planning Exemple de planification d’évacuation de la pièce 1 vers l’extérieur (5): • En observant la rangée 1 (state 1) de R. 2 actions sont possibles pour l’état actuel 1: aller vers les états 3, ou 5. Par une sélection aléatoire, 5 est l’action choisie et ce sachant que Q(1, 3) = Q(1, 5) = 0;

Q-Learning • Exemple d’application du Q-Learning: path planning Exemple de planification d’évacuation de la

Q-Learning • Exemple d’application du Q-Learning: path planning Exemple de planification d’évacuation de la pièce 1 vers l’extérieur (5): • Mise à jour de Q(1, 5): Sachant que le prochain état est le 5 et en consultant la matrice R à la rangée 5. 3 actions sont alors possibles: aller à l’état 1, 4 ou 5. Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)] Q(1, 5) = R(1, 5) + 0. 8 * Max[Q(5, 1), Q(5, 4), Q(5, 5)] = 100 + 0. 8 * 0 = 100

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de la pièce 3 vers l’extérieur (5): • En observant la rangée 3 (state 3) de R. 3 actions sont possibles pour l’état actuel 3: aller vers les états 1, 2, ou 4. Par une sélection aléatoire, 1 est l’action choisie et ce sachant que Q(3, 1) = Q(3, 2) = Q(3, 4) = 0;

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de la pièce 3 vers l’extérieur (5): • Mise à jour de Q(3, 1): Sachant que le prochain état est le 1 et en consultant la matrice R à la rangée 1. 2 actions sont alors possibles: aller à l’état 3 ou 5. Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)] Q(3, 1) = R(3, 1) + 0. 8 * Max[Q(1, 3), Q(1, 5)] = 0 + 0. 8 * 100 = 80

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de la pièce 3 vers l’extérieur (5): • N’ayant pas atteint le nœud terminal 5, nous répétons la boucle de l’algorithme Q-Learning et ce à partir du nœud 1: En observant la rangée 1 (state 1) de R. 2 actions sont possibles pour l’état actuel 1: aller vers les états 3, ou 5. Par une sélection aléatoire, 5 est l’action choisie et ce sachant que Q(1, 3) = 0, Q(1, 5) = 100;

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de

Q-Learning • Exemple d’application du Q-Learning: path planning Autre exemple de planification d’évacuation de la pièce 3 vers l’extérieur (5): • Mise à jour de Q(1, 5): Sachant que le prochain état est le 5 et en consultant la matrice R à la rangée 5. 3 actions sont alors possibles: aller à l’état 1, 4 ou 5. Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)] Q(1, 5) = R(1, 5) + 0. 8 * Max[Q(5, 1), Q(5, 4) , Q(5, 5)] = 100 + 0. 8 * 0 = 100

Q-Learning • Exemple d’application du Q-Learning: path planning, après la phase d’apprentissage, donc après

Q-Learning • Exemple d’application du Q-Learning: path planning, après la phase d’apprentissage, donc après l’apprentissage de plusieurs chemins, l’agent possède une base de connaissances représentée par la matrice Q Forme normalisée en %

Q-Learning • Exemple d’application du Q-Learning: path planning, après la phase d’apprentissage, l’agent peut

Q-Learning • Exemple d’application du Q-Learning: path planning, après la phase d’apprentissage, l’agent peut utiliser la matrice Q pour déterminer les chemins optimum