Froduald Kabanza Département d’informatique Université de Sherbrooke

Slides:



Advertisements
Présentations similaires
Froduald Kabanza Département d’informatique Université de Sherbrooke
Advertisements

Froduald Kabanza Département d’informatique Université de Sherbrooke
Activité 1 OBJECTIF : Réalisation de tâches dites complexes pour identifier différentes dimensions qui permettent de rendre compte de la complexité de.
© 2006 Les Éditions de la Chenelière inc., La gestion dynamique: concepts, méthodes et applications, 4 e édition1/14 Chapitre 4 : Le gestionnaire en tant.
Nouveau programme de 3ème Probabilités Document de travail – Académie de Rouen
FSA/INGI - 5 septembre 2006 Application du Reinforcement Learning à un jeu de Markov de type évasion-poursuite Lionel Dricot Promoteur : Professeur Marco.
« Les vieux modèles » Julie Viel, enseignante CEA de Rivière-du-Loup Commission Scolaire de Kamouraska-Rivière-du-Loup.
Enseigner autrement les mathématiques au travers du socle commun et des nouveaux programmes Un collège réformé, adapté et contextualisé.
Froduald Kabanza Département d’informatique Université de Sherbrooke
Calcul de probabilités
Le Mouvement Directionnel
Outils de Recherche Opérationnelle en Génie MTH 8414
La prise de décision Cours de Management L3 AES
Valeurs de toutes les différences observables sous H0
Coloration de graphe, backtracking, branch and bound
Un Algorithme , c'est Quoi ?
Information, Calcul, Communication
IFT 702 – Planification en intelligence artificielle Langage PDDL
1.3 COORDONNÉES DES POINTS
MOT Éditeur de modèles de connaissances par objets typés
Prendre des notes en classe:
Reprise du cours ( ) Aujourd’hui :
Université Abou Bakr Belkaid Faculté des Sciences Département d’informatique Algorithmique Avancée et Complexité Chap5: Les méthodes de résolution exactes.
Probabilités.
IFT 615 – Intelligence artificielle Recherche heuristique
André Maïsseu et WANG Xingquan Université Versailles-Saint-Quentin-en-Yvelines France L’approche floue en tant qu’outil de la modélisation.
Initiation à la programmation impérative et algorithmique
Activités algorithmiques
Les Plans d’expériences: Plans Factoriels
Plans d’expériences: Plans factoriels.
Mouvement harmonique simple
Technologies de l’intelligence d’affaires Séance 11
Université Abou Bakr Belkaid Faculté des Sciences Département d’informatique Algorithmique Avancée et Complexité Chap7: Les méthodes de résolution exactes.
Tableau de bord des risques
Approximation de Pi par la méthode de Monte Carlo
Apprentissage profond Q
Méthode Taguchy Analyse de la variance Anavar
1.2 dénombrement cours 2.
Froduald Kabanza Département d’informatique Université de Sherbrooke
POL1803: Analyse des techniques quantitatives
LOG770 Annexe A Éléments de probabilité
Exercice : le jeu. Vous devez concevoir l’algorithme permettant de jouer avec votre calculatrice : elle détermine au hasard un nombre caché entier entre.
Tâches Tâches antérieures Durée A -- 6 B 5 C 4 D E F A D G E F Niveaux
Chapitre 3 : Caractéristiques de tendance centrale
SDRP & MA Problème du rendez vous : un algorithme probabiliste et une analyse probabiliste 09/11/2018.
Département d’informatique
CRITERES DE QUALITE 1) PRECISION 2) RAPIDITE 3) AMORTISSEMENT
Programme financé par l’Union européenne
Efficacité des algorithmes
Modélisation objet avec UML
4°) Intervalle de fluctuation :
Information sur survies des patients en dialyse péritonéale, en France métropolitaine dans le RDPLF Année 2016.
Lois de Probabilité Discrètes
BIO1130 LAB 4 MICROÉVOLUTION.
Le code de Huffman: est une méthode de compression statistique de données qui permet de réduire la longueur du codage d'un alphabet. Le code de Huffman.
Présentation 9 : Calcul de précision des estimateurs complexes
MATHÉMATIQUES FINANCIÈRES I
Un Mécanisme d‘Adaptation Guidé par le Contexte en Utilisant une Représentation par Objets Manuele Kirsch Pinheiro Laboratoire LSR – IMAG, Équipe SIGMA.
Jean-Sébastien Provençal
Reconnaissance de formes: lettres/chiffres
IFT313 Introduction aux langages formels
INTELLIGENCE ARTIFICIELLE
Arbre binaire.
Chapter 11: Récursivité Java Software Solutions Second Edition
INTELLIGENCE ARTIFICIELLE
IFT 615 – Intelligence artificielle Consignes pour l’examen final
Elections locales probabilistes
DICTIONNAIRES (MAPS).
MOT Éditeur de modèles de connaissances par objets typés
Transcription de la présentation:

IFT 608 / IFT 702 Planification en intelligence artificielle Planification multi-agents Froduald Kabanza Département d’informatique Université de Sherbrooke planiart.usherbrooke.ca/cours/ift608

Planification multi-agents Sujets couverts Types de problèmes de planification multi-agents Planification coopérative Planification contre des adversaires et la théorie des jeux Références: Yoav Shoham and Kevin Leyton-Brown. Multiagent Systems: Algorithmic, Game-Theoretic, and Logical Foundations. Chapitres 1 à 2 et Chapitre 5. Browne et al. A Survey of Monte Carlo Tree Search Methods. IEEE Transactions on Computational Intelligence and AI in Games, VOL. 4, NO. 1, March 2012 IFT608 / IFT 702 Planification multi-agents

Planification multi-agents Types de problèmes IFT608 / IFT 702 Planification multi-agents

Planification multi-agents Planification par ou pour plusieurs agents Coopératif : but commun, fonction d’utilité commune. Plusieurs robots coopératifs Compétitif : buts opposés Jeux de stratégie temps réel (RTS) Opérations militaires Coalition: coopératif et compétitif Jeux RTS multi-joueurs Jeux d’équipe comme le soccer Quel intérêt pour avoir plusieurs agents ? Il y a des tâches qu’un seul agent ne peut pas faire tout seul : e.g., soulever des charges, marquer des buts au soccer. Une équipe peut faire des tâches plus rapidement: explorer un grand territoire sur mars, se localiser en échangeant les informations. Certaines tâches sont naturellement multi-agents: e.g., montage automobile. Réseau de capteurs distribués qui poursuit un véhicule ou une personne dans un habitat intelligent IFT608 / IFT 702 Planification multi-agents

Planification CoopératiVE IFT608 / IFT 702 Planification multi-agents

Planification coopérative centralisée Planificateur central Exécution de plans individuels Planification centralisée, exécution décentralisé Le planificateur central doit être capable de traiter des Activités concurrentes Buts temporels Il faut un middleware assurant la communication entre les agents (par exemple: ROS, DDS). Avantage: Généralisation facile des algorithmes usuels de planification pour un seul agent. Désavantage: généralement inefficace IFT608 / IFT 702 Planification multi-agents 6

Planification coopérative décentralisée avec fusion de plans (plan merger) Planificateur individuel Planificateur individuel Planificateur individuel Exécution de plans individuels Des plans individuels peuvent être générés séparément en adaptant un planificateur pour un seul agent et fusionnés ensuite (plan merging). La planification par recherche dans l’espace de plan vu antérieurement s’apprêtent particulièrement bien à la fusion des plans. Fusion de plans: Étant donné les plans individuels pour chacun des agents: - examiner toutes les combinaisons possibles (par exemple, tous les entralacements ou par une recherche dans l’espace de plans). - résoudre les inconsistences par les mêmes techniques que la planification ordinaire (ajouts de contraintes, backtracking, etc.) IFT608 / IFT 702 Planification multi-agents 7

Planification complètement décentralisée Exécution de plans individuels Indor sensor network Dans une approche complètement décentralisée, chaque agent calcule son plan en échangent des données avec les autres. Une des approches est « Distributed CSP (DCSP) ». C’est une généralisation des problèmes CSP vus dans IFT615. Chapitre 1 & 2 de [Shoam et Leyton-Brown] Problème: Allouer des capteurs aux cibles, étant donné des contraintes de visibilité (obstacles) et de compatibilité, de sorte que l’on puisse suivre les cibles en tout temps et le choix des fréquences des capteurs ne cause pas des interférences. Il y a interférence quand deux capteurs ayant des rayons d’action qui se chevauchent utilise la même fréquence. IFT608 / IFT 702 Planification multi-agents 8

Planification multi-agents Distributed CSP Une généralisation à plusieurs agents de backtracking-search pour CSP (IFT615) Pour des problèmes de planification coopérative Exemple: Réseau de capteurs distribués (SensorDCSP) Chapitre 1 de [Shoam et Leyton-Brown] Outdoor sensor network Indor sensor network IFT608 / IFT 702 Planification multi-agents

Sensor DCSP - Enoncé du problème Plusieurs capteurs: s1, …, sm Chaque capteur a un rayon d’action Peut être obstrué par des obstacles dans l’environnement Peut fonctionner sur des fréquences différentes Les rayons d’action des capteurs peuvent se chevaucher Plusieurs cibles à suivre: t1, …, tn. Problème: Allouer des capteurs aux cibles, de sorte que l’on puisse suivre les cibles en tout temps et qu’il n’y ait pas d’interférences entre les capteurs. Il y a interférence lorsque deux capteurs avec des rayons d’action qui se chevauchent utilisent la même fréquence. Peut se modéliser comme un problème CSP IFT608 / IFT 702 Planification multi-agents

Rappel IFT615 – Problème CSP Formellement, un problème de satisfaction de contraintes (ou CSP pour Constraint Satisfaction Problem) est défini par: Un ensemble fini de variables X1, …, Xn. Chaque variable Xi a un domaine Di de valeurs permises. Un ensemble fini de contraintes C1, …, Cm sur les variables. Une contrainte restreint les valeurs pour un sous-ensemble de variables. Un état d’un problème CSP est défini par une assignation de valeurs à certaines variables ou à toutes les variables. {Xi=vi,Xn=v1,…}. Une assignation qui ne viole aucune contrainte est dite consistante ou légale. Une assignation est complète si elle concerne toutes les variables. Une solution à un problème CSP est une assignation complète et consistante. Parfois, la solution doit en plus maximiser une fonction objective donnée. IFT608 / IFT 702 Planification multi-agents

Rappel IFT615 - Exemple : Colorier une carte On vous donne une carte de l’Australie : Et on vous demande d’utiliser seulement trois couleurs (rouge, vert et bleu) de sorte que deux états frontaliers n’aient jamais les mêmes couleurs. On peut facilement trouver une solution à ce problème en le formulant comme un problème CSP et en utilisant des algorithmes généraux pour CSP. IFT608 / IFT 702 Planification multi-agents

Rappel IFT615 - Graphe de contraintes Pour des problèmes avec des contraintes binaires (c-à-d., entre deux variables), on peut visualiser le problème CSP par un graphe de contraintes. Un graphe de contraintes est un graphe dont les nœuds sont des variables (un nœud par variable) et les arcs sont des contraintes entre les deux variables. WA≠ NT WA≠ SA NT≠ Q NT≠ SA Q≠ SA Q≠ NSW NSW≠ V SA≠ V SA≠ NSW IFT608 / IFT 702 Planification multi-agents

Rappel IFT615 - Backtracking search function BACKTRACKING-SEARCH(csp) return a solution or failure return BACKTRACK({} , csp) function BACKTRACK(assignment, csp) return a solution or failure if assignment is complete then return assignment var  SELECT-UNASSIGNED-VARIABLE(var, assignment, csp) for each value in ORDER-DOMAIN-VALUES(var, assignment, csp) do if value is consistent with assignment then add {var=value} to assignment inferences  INFERENCES(csp, var, value) // e.g., AC-3 if inferences  failure then add inferences to assignment result  BACTRACK (assignment, csp) if result  failure then return result remove {var=value} and inferences from assignment return failure Puisque la représentation du domaine est standardisée, pas besoin de spécifier les fonctions successeurs et le but. Elles sont implicites. BACKTRACK est une recherche en profondeur. Pas besoin de maintenir un graphe de nœuds (closed). Open implicitement représenté par la pile de récursivité. On aurait pu être tenté d’utiliser une recherche dans un graphe classique telle que chaque nœud du graphe est une assignation partielle et une action consiste à ajouter var=value à l’assignation. Supposons n variable avec un domaine de taille d pour chaque variable. Cela donne nd nœuds au premier niveau du graphe. Au second niveau, le facteur de branchement est (n-1)d et ainsi de suite. En tout, l’arbre aurait n!*d^n feuilles, mêmes s’il y a seulement d^n assignations complètes possibles. Le problème avec cette formulation naïve est qu’elle ignore la commutativité des assignations! (Voir Page 214). BACKTRACK considère seulement une seule variable à chaque niveau de l’arbre. IFT608 / IFT 702 Planification multi-agents

Planification multi-agents DCSP Dans DCSP, chaque variable est gérée par un agent. Le problème demeure de trouver une assignation qui satisfait les contraintes. Chaque agent décide de la valeur de sa variable avec une certaine autonomie. Les agents se coordonnent en parllèle. Chaque agent n’a pas une vue globale des assignations, mais il peut communiquer avec les agents voisins (selon le graphe des contraintes) pour connaître leurs valeurs. Un algorithme DCSP consiste à avoir les agents qui communiquent avec leurs voisins, chacun mettant à jour sa valeur, de sorte que le processus converge éventuellement vers une assignation complète et satisfaisante. Le chapitre 1 [Shoam et Leyton-Brown] décrit deux algorithmes en détail. IFT608 / IFT 702 Planification multi-agents

Planification adversariale IFT608 / IFT 702 Planification multi-agents

Planification multi-agents Théorie des jeux Modéliser des situations où les décisions de l’agent sont influencées par celles d’autres autre agents (et vice-versa) Pas seulement des situations de compétition Mais aussi des situations de coopération (exemple, entre des firmes pour former un cartel) et de coalition. Ici je couvre seulement les situations adversariales, pour seulement deux agents. IFT608 / IFT 702 Planification multi-agents 17

Planification multi-agents Théorie des jeux Très utilisée en économie Modéliser des situations économiques de coopération/compétition On cherche à maximiser une certaine fonction d’utilité Les fonction d’utilité sont définies en fonction du type de jeu (adversarial, coopératif) IFT608 / IFT 702 Planification multi-agents 18

Planification multi-agents Théorie des jeux Types de jeux Coopératif / Non coopératif Somme nulle / Somme générale Simultanés / Séquentiels Information complète / incomplète Information parfaite / imparfaite Types de représentation Normale (matricielle) Extensive (arbre de jeu) Somme nulle = somme des utilités toujours égale à 0 Somme constante = somme des utilités toujours égale à une constante c (e.g. jeu d’échecs avec 0 point pour défaite, ½ pour match nul et 1 pour une victoire) Peut être transformé trivialement en jeu à somme nulle en soustrayant une constante à chaque utilité Somme générale In a game of incomplete information, players may or may not k i f ti b t th th t know some i n formation a bou t the other players, e.g. their “type”, their strategies, payoffs o t e p e e e ces. In a game of imperfect information, players are g p , p y simply unaware of the actions chosen by other players. However they know who the other players are hat their possible strategies/actions are and are, what their possible strategies/actions are, and the preferences/payoffs of these other players. IFT608 / IFT 702 Planification multi-agents 19

Planification multi-agents Concepts basiques Comme dans la planification MDP, le but est pour chaque agent de maximiser sa fonction d’utilité. La différente notable est que nous avons maintenant plusieurs agents (deux dans l’exemple) possiblement avec des fonctions d’utilité opposées. L’équivalent d’un plan ou politique dans les jeux est une stratégie Choix d’actions pour un jouer pour toutes les phases du jeu, autrement dit pour chaque état. Stratégie pure (fixée pour chaque état du jeu) vs stratégie mixte (aléatoire) Au lieu de plan/stratégie optimal, on parle de concept d’équilibre. Il y a plusieurs concepts d’équilibre. IFT608 / IFT 702 Planification multi-agents 20

Planification multi-agents Équilibre de Nash Étant donné un ensemble de stratégies (une pour chaque agent), elles sont en équilibre de Nash si et seulement si chaque stratégie est la meilleure réponse face aux autres stratégies Autrement dit, aucun agent n’a intérêt à dévier de sa stratégie si les stratégies des adversaires restent fixes. L’équilibre de Nash est conservatrice Donne une stratégie optimale si effectivement les autres agents jouent selon l’équilibre (jouent de façon optimale) Elle n’exploite pas les faiblesses éventuelles des autres agents Selon notre définition de rationalité, un agent rationnel se comporte donc aléatoirement. IFT608 / IFT 702 Planification multi-agents 21

Jeux sous forme normale Exemple à somme générale: dilemme des prisonniers Se taire Dénoncer (-0.5, -0.5) (-10, 0) (0, -10) (-5, -5) Solution: équilibre de Nash Dans cet exemple: { (Dénoncer), (Dénoncer) } C’est un jeu simulatnée, à information incomplète IFT608 / IFT 702 Planification multi-agents 22

Jeux sous forme normale Exemple de jeu à somme nulle: build orders dans StarCraft Zerg Terran Solution: équilibre de Nash, avec une stratégie mixte { (25% Proxy Gates, 50% 2 Gates, 25% Fast Expand), (17% 4 Pool, 48% 9 Pool, 35% 12 Pool, 0% 12 Hatch) } IFT608 / IFT 702 Planification multi-agents 23

Planification multi-agents Jeux répétés Séquence du même jeu matriciel Horizon fini ou infini … IFT608 / IFT 702 Planification multi-agents 24

Planification multi-agents Jeux répétés Séquence du même jeu matriciel Horizon fini ou infini Chaque agent doit prendre en compte l’impact futur de ses décisions (sa « réputation ») Représailles potentielles des autres agents La meilleure décision n’est pas nécessairement de toujours jouer l’équilibre de Nash du jeu matriciel Solutions tenant compte de l’expérience (historique des stratégies des autres agents) … IFT608 / IFT 702 Planification multi-agents 25

Jeux (séquentiels) à information parfaite, sous forme extensive Décision tour à tour Minimax Optimisation: alpha-beta pruning Information complète: État du jeu, règles du jeu et fonction d’utilité complètement connus. IFT608 / IFT 702 Planification multi-agents 26

Monte-Carlo Tree-Search (Approche de base) Jeux sous-forme extensive à information complète: État du jeu, règles du jeu et fonction d’utilité complètement connus. Idée principale: la valuer d’une action (donc d’un noeud aussi) est approximée, non pas par une heuristique comme dans alpha-beta pruning, mais par une simulation. Quatre phases principales, répétées: Traversée de l’arbre en utilisant l’algorithme jusqu’à arriver à un noeud à expander, c.à.d, un noeud sans enfant (Sélection) : UCT utilise l’algorithme UCB1. Partant de la racine, à chaque noeud courant s, on vérifie si c’est une feuille (sans successeurs). Si oui, on arête, on passe à l’étape 2. Sinon, on choisit un enfant du noeud et on poursuit au point a, à traverser l’arbre. On choisit toujour l’enfant qui maximise UB1(s_i) où s_i sont les enfants du noeud courrant s. Expansion du noeud en ajoutant un ou plusieurs successeurs immédiats, selon les actions permises dans ce noeud (Expansion) Une simulation à partir du ou des nouveaux noeuds en utilisant une politique par défaut (Simulation aléatoire / Rollaout) La simulation est rétropropagée pour mettre à jours les statistiques attachées aux noeuds (Backpropagation). Browne et al. A Survey of Monte Carlo Tree Search Methods. IEEE Transactions on Computational Intelligence and AI in Games, VOL. 4, NO. 1, March 2012 IFT608 / IFT 702 Planification multi-agents 27

Jeu sous-forme extensive à information imparfaite On ne connait pas les actions exécutées par l’autre joueur Modélisé par un ensemble d’information (information set). Information complète: État du jeu complètement connus. Mais on ne connait pas forcément les coups que va jouer l’autre (règles du jeu). In a game of imperfect information, players are g p , p y simply unaware of the actions chosen by other players. However they know who the other players are hat their possible strategies/actions are and are, what their possible strategies/actions are, and the preferences/payoffs of these other players. IFT608 / IFT 702 Planification multi-agents 28

Planification multi-agents Algorithme Expectiminimax Un model probabiliste des comportement des l’opposant: Le modèle peut être une simple distribution de probabilités Le modèle peut être plus sophistiqué, demandant des inférences/calculs élaborés Le modèle peut représenter des actions stochastiques/incontrôlables (à cause de de l’opposant, l’environnement) Le modèle pourrait signifier que des actions de l’adversaire sont probables In a game of incomplete information, players may or may not k i f ti b t th th t know some i n formation a bou t the other players, e.g. their “type”, their strategies, payoffs o t e p e e e ces. Pour cet illustration, supposer que (de façon magique) nous avons une distribution de probabilités à associer aux actions de l’adversaire/environnement Avoir une croyance probabiliste sur les actions d’un agent ne signifie pas que l’agent lance effectivement un dé! IFT608 / IFT 702 Planification multi-agents 29

Algorithme Expectimax EXPECTIMAX (n) = UTILITY(n) Si n est un nœud terminal maxs  successors(n) MINIMAX-VALUE(s) Si n est un nœud Max mins  successors(n) MINIMAX-VALUE(s) Si n est un nœud Min s  successors(n) P(s) * EXPECTEDMINIMAX(s) Si n est un nœud chance Ces équations donne la programmation récursive des valeurs jusqu’à la racine de l’arbre. Le nom fréquent est EXPECTIMAX. Dans le livre: EXPECTIMINMAX. Le livre a plutôt raison, parce qu’on ajoute EXPECTED-UTILITY à MINIMAX. Mais je préfère garder le nom le plus fréquent. Note: Contrairement à minmax et alpha-beta pruning qui ne sont pas sensibles aux transformations monotones de la fonction d’utilité (scores), expectimax l’est. Ça prend une transformation linéaire de l’utilité espéré pour que expectimax ne soit pas sensible. IFT608 / IFT 702 IFT615 Planification multi-agents

Jeu à information incomplète On ne connait pas certaines informations sur les autres joueurs. Par exemple, leur fonction d’utilité. Exemple dans le domaine de sécurité: on ne sait pas ce que les intrust cherchent. IFT608 / IFT 702 Planification multi-agents 31

Planification multi-agents Résumé La planification multi-agents concerne la planification pour plusieurs agents. La théorie des jeux fournit les concepts de solution (équilibres) et les algorithmes de prise de décision. L’intelligence artificielle distribuées fournit des méthodes de coordination centralisées, décentralisées, ou hybrides. Pour la planification coopérative, les approches de planification par recherche dans l’espace de plans, combinées avec DCSP offrent un cadre de résolution fréquemment rencontré dans la littérature. Pour l’examen: retenir les différents concepts (définitions), types de problèmes et types d’approches de solutions correspondantes. IFT608 / IFT 702 Planification multi-agents