IFT608 / IFT702 Intelligence Artificielle

Slides:



Advertisements
Présentations similaires
IFT702 Intelligence Artificielle
Advertisements

IFT702 Intelligence Artificielle Froduald Kabanza Département d’informatique Université de Sherbrooke IFT702 TLPlan.
IFT 702 – Planification en intelligence artificielle Planification par recherche dans un espace de plans Froduald Kabanza Département d’informatique Université.
Maryse Godin, M.Sc.(A) Conseillère en soins infirmiers Urgence - CUSM
Le Changement comme résultat ou comme passage ? Définition : Le changement c’est le passage d’un état A à un état B Etat A Etat B Nous : - Résultat s -
1 Programmation en C++ Cycle de vie ● La vie d'un objet ● Destructeur ● Gestion de mémoire dynamique.
Volée 1316 S3 Cours No 2_3 : Le nombre en 1-2H. Les fonctions du nombre  Dénombrer, énumérer, décrire une collection. Aspect cardinal  Dater, classer,
Etat de l’art et recherche bibliographique L3EEA 3ème année – 2016.
Que faire? La recherche découverte. Dans une recherche découverte Sensibilisation ; Discussion ; Préparation-projet ; Opération-activités ; Réflexion.
Cycle élémentaire Année scolaire Classe de 6 e Discipline : Français Professeur : Andressa Bitar.
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE Université d’Adrar Diagramme d’états-transitions Présenté par Sbai Omar Benothman.
Enseigner autrement les mathématiques au travers du socle commun et des nouveaux programmes Un collège réformé, adapté et contextualisé.
Concepts pour le contrôle de flux
Optimisation du délai de transmission dans les réseaux SDN
Recherche d’informations
Exercice On considère un Système de contrôle de température composé de: Capteur, ordinateur Le capteur transmit à chaque heure de la journée la température.
Sylvain Hamel - Analyste
Je fabrique mon stabile
IFT 702 Planification en intelligence artificielle Contrôle de la recherche avec des réseaux de tâches hiérarchiques Froduald Kabanza Département d’informatique.
IFT 702 – Planification en intelligence artificielle Langage PDDL
Guide pour la transparence dans la formulation du budget
Algorithme et programmation
Gestion des flux pysiques
MOT Éditeur de modèles de connaissances par objets typés
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
IFT608 / IFT702 Intelligence Artificielle
IFT 615 – Intelligence artificielle Recherche heuristique
Activités algorithmiques
Cyber-Sphinx Séance 2.
Information générale et règlements
Bonnes pratiques en gestion des talents
Tableau de bord des risques
LE MFT Manuel de Formation Technique
Apprentissage profond Q
Cours d’Informatique et de Réseaux
IFT 702 – Planification en intelligence artificielle Langage PDDL
Formation au Numérique Codage et programmation dans les nouveaux programmes Romorantin, le 23 janvier 2018.
Gestion de Stocks & Achats
PROJET D’ORGANISATION DES PROCESSUS
Diagramme d’activité.
Département d’informatique
Les essentiels de la planification stratégique
Modélisation objet avec UML
Information générale et règlements
IFT 702 Planification en intelligence artificielle Contrôle de la recherche avec des réseaux de tâches hiérarchiques Froduald Kabanza Département d’informatique.
Les opérations intellectuelles et le dossier documentaire
Bilan de projet pour [Nom du projet]
Information générale et règlements
Accompagner vos collaborateurs dans leur impulsion managériale
Rapport sur le projet [Nom du projet]
Module 5 : Gestion de l'accès aux ressources à l'aide de groupes
1 A quoi sert la gestion de projet
Fiche de lecture Éléments de cadrage
Sophie Lapierre – Conseillère pédagogique en francisation
H. Wertz -- Exécution Symbolique
Opérateurs et fonctions arithmétiques Opérateurs de relation Opérateurs logiques Cours 02.
INTELLIGENCE ARTIFICIELLE
L ’ Intelligence Artificielle
PROGRAMMATION ET ENSEIGNEMENT
3 Les stratégies d'apprentissage
ManageEngine ADManager Plus 6
Arbre binaire.
Chapter 11: Récursivité Java Software Solutions Second Edition
Construire une séance de
INTELLIGENCE ARTIFICIELLE
Retour d’expérience Solutions organisationnelles
IFT 615 – Intelligence artificielle Consignes pour l’examen final
UC : Diagramme des cas d’utilisation Req : Diagramme d’exigence
MOT Éditeur de modèles de connaissances par objets typés
Transcription de la présentation:

IFT608 / IFT702 Intelligence Artificielle jeudi 15 novembre 2018jeudi 15 novembre 2018 IFT608 / IFT702 Intelligence Artificielle Contrôle de la recherche avec des formules LTL planiart.usherbrooke.ca/cours/ift608

Sujets Logique Temporelle Linéaire (LTL) jeudi 15 novembre 2018jeudi 15 novembre 2018 Sujets Logique Temporelle Linéaire (LTL) Spécification des buts avec LTL Spécifications de règles de contrôle de recherche avec LTL. TLPLAN

Référence Bacchus F. and Kabanza F. Using Temporal Logic to Express Search Control Knowledge for Planning. Artificial Intelligence , 116(1-2):123-191, 2000. http://www.cs.toronto.edu/tlplan/

Robot domestique Des robots vont bientôt devenir omniprésents: jeudi 15 novembre 2018jeudi 15 novembre 2018 Robot domestique r1 (chambre) r2 (chambre) c1 (corridor) r4 (cusine) r3 (s. bain) c2 (corridor) Smith Infirmière d11 d12 d23 d24 Des robots vont bientôt devenir omniprésents: Transporter des objets pour eux (ex.: verre d’eau) Chercher des objets (ex., lunettes) Surveiller des activités (ex., les portes sont fermées) Le Challenge AAAI simule des tâches similaires à ces activités.

jeudi 15 novembre 2018jeudi 15 novembre 2018 Types de tâches Certaines tâches sont des buts classiques (atteindre un état final) : Transporter des objets à des endroits désignés. D’autres tâches sont comportementales : Conduire Madame Smith à la cuisine, lui servir un verre d’eau, et si vous rencontrez l’infermière, donnez-lui ce message. Chaque fois que la cuisine est salie, la nettoyer, et une fois fini, préparer le prochain repas. Ce genre de buts sont dits « temporels » : Maintenir certaines conditions vraies. Accomplir une tâche périodiquement. Accomplir une tâche dans un délai prescrit suite à une requête. Accomplir des tâches dans une séquence donnée. Combinaisons des buts précédents.

Connaissance experte de planification jeudi 15 novembre 2018jeudi 15 novembre 2018 Connaissance experte de planification Un planificateur classique a comme connaissance les actions primitives ou les transitions possibles (effets, préconditions) Certains planificateurs utilisent en plus des connaissances expertes pour planifier. Ce sont des connaissances sur les stratégies de planification. Par exemple: chaque fois que le but est d’avoir un objet quelconque à un endroit quelconque et que l’état actuel durant la recherche est tel que le robot tient l’objet mais l’objet n’est pas à sa destination alors ne pas faire des actions qui auraient pour effet de relâcher l’objet. Durant la planification, éviter d’explorer des comportements inutiles selon les connaissances données par un expert Ça s’appelle aussi des connaissances de contrôle de recherche Eval: c-x c-e Abort: c-c c-c To run TLPLAN (load “main”) c-x c-e (ld ‘robot) c-x c-e (si state3a) c-x c-e --- ou (si state1a) (sg goal3a) c-x c-e --- ou (sg goal1a) --- On peut sauter cette étape car rsim fait (plan)-- (plan) c-x c-e (rsim) c-x c-e

Règles de contrôle de recherche jeudi 15 novembre 2018jeudi 15 novembre 2018 Règles de contrôle de recherche r1 (chambre) r2 (chambre) c1 (corridor) r4 (cusine) r3 (s. bain) c2 (corridor) Smith Infirmière d11 d12 d23 d24 Exemple : Lorsque le but exige d’amener un objet x à la chambre y, alors le planificateur s’il atteint un état tel que le robot a l’objet x dans la main, il (le planificateur) doit préserver cette condition jusqu’à ce qu’à un nœud tel que le robot est rendu dans y. Une telle règle permet d’éviter la génération de transitions inutiles durant la recherche d’un plan.

D’où viennent les connaissances stratégiques? jeudi 15 novembre 2018jeudi 15 novembre 2018 D’où viennent les connaissances stratégiques? Les connaissances de contrôle de recherche Rendent le planificateur plus efficace Et le font paraître plus intelligents (les personnes évitent certaines alternatives lorsqu’ils cogitent un plan, grâce à leur expérience/connaissances). Les connaissances stratégiques sont données par le programmeur … au même titre que les actions primitives. Certains chercheurs travaillent à développer des algorithmes capables d’apprendre de tels connaissances. … D’autres visent à apprendre les actions primitives.

jeudi 15 novembre 2018jeudi 15 novembre 2018 Illustration : TLPLAN TLPLAN est un planificateur basé sur une recherche dans un espace d’états comme A*: Utilise un langage à base de règles pour spécifier les transitions (actions primitives) Utilise la Logique temporelle linéaire (LTL) pour spécifier des buts comportementales. Utilise LTL pour spécifier des connaissances de contrôle de recherche.

Architecture de TLPLAN jeudi 15 novembre 2018jeudi 15 novembre 2018 Architecture de TLPLAN Fonction de transition A* ou depth-first search Plan État initial (LTL) Goal Actions primitives LTL Formula Progress Search Control Formula

LTL A LTL : Logique du premier ordre + jeudi 15 novembre 2018jeudi 15 novembre 2018 LTL LTL : Logique du premier ordre + Opérateurs temporels : O (next), <> (eventually), [] (always), U (until) Les opérateurs sont appliquées sur des formules, permettant leur interprétation sur des séquences d’états (générés parr A* ou depth-first search) Exemple: “toujours p(x) implique éventuellement q(x) et vice-versa” x dom(x) [] ((p (x) -> <> q (x)) Λ [] (q (x) -> <> p (x))) A {r(a)} {p(a)} {r(b), p(a)} {q(a)} {r(a)} {r(b)} {r(a),r(c)}

Exemple : robot domestique jeudi 15 novembre 2018jeudi 15 novembre 2018 Exemple : robot domestique r1 (chambre) r2 (chambre) c1 (corridor) r4 (cusine) r3 (s. bain) c2 (corridor) Smith Infirmière d11 d12 d23 d24 TLPLAN utilise LTL pour spécifier des buts du genre: Chaque fois que la cuisine est salie, la nettoyer, et une fois fini, préparer le prochain repas. Et des connaissances stratégiques du genre: Lorsque le but exige d’amener un objet x à la chambre y, le robot, s’il réussit à saisir l’objet x doit le garder jusqu’à ce qu’il soit rendu dans y.

Progression des formules LTL jeudi 15 novembre 2018jeudi 15 novembre 2018 Progression des formules LTL Cette technique permet de : Vérifier une formule LTL sur des chemins générés par A* ou depth-first de manière incrémentales. Dans le nœud courant, on évalue la contrainte sur l’état courant et on retarde la contraintes sur les états futurs : Cela est possible parce qu’on peut décomposer chaque formule en partie présente et partie future. La partie présente évalue à FALSE dans des états terminants des préfixes ne satisfaisant pas la formule LTL.

Algorithme Formula Progression jeudi 15 novembre 2018jeudi 15 novembre 2018 Algorithme Formula Progression Entrée : - État - Formule LTL Sortie : Formule LTL retardée au successeurs de l’état Trois sorties possibles : True : le chemin satisfait la formule False : le chemin viole la formule Une formule LTL avec au moins un connecteur temporel

Progression LTL combinée avec A* (so,f) L’état initial (s0) est étiqueté avec la formule LTL initiale (f). Chaque successeur est étiquété avec le résultat de la progression de la formule dans l’état courant. Les états étiquetés FALSE sont considérés comme des cul-de-sac. On ne génère pas de successeurs pour eux. (s2,g) (s1,g) g=prog(f,s0)

Architecture de TLPLAN jeudi 15 novembre 2018jeudi 15 novembre 2018 Architecture de TLPLAN Fonction de transition A* ou depth-first search Plan État initial (LTL) Goal Actions primitives LTL Formula Progress Search Control Formula

Exemple But séquentiel : jeudi 15 novembre 2018jeudi 15 novembre 2018 Exemple r1 (chambre) r2 (chambre) c1 (corridor) r4 (cusine) r3 (s. bain) c2 (corridor) Smith Infirmière d11 d12 d23 d24 But séquentiel : <>(in(o1,r2) Λ O<>(in(o2,r4) Λ O<>(in(o4,r2))

jeudi 15 novembre 2018jeudi 15 novembre 2018 Exemple : r1 (chambre) r2 (chambre) c1 (corridor) r4 (cusine) r3 (s. bain) c2 (corridor) Smith Infirmière d11 d12 d23 d24 But réactif : Conduire Madame Smith à la cuisine, lui servir un verre d’eau, et si vous rencontrez l’infermière, donnez-lui ce message. (in(robot,c1) Λ in(nurse,c1) -> O talkto(nurse)) U ([] with(Smith) Λ O<> (in(Smith,bathroom) Λ O<> have(Smith, cofee)))

Exemple : But cyclique : jeudi 15 novembre 2018jeudi 15 novembre 2018 Exemple : r1 (chambre) r2 (chambre) c1 (corridor) r4 (cusine) r3 (s. bain) c2 (corridor) Smith Infirmière d11 d12 d23 d24 But cyclique : Le robot doit continuellement surveiller (visiter) r1 et r3 [] (in(robot, r1) -> <> in(robot, r3)) Λ [] (in(robot, r3) -> <> in(robot, r1)) Plan: ((close(d11), open(d11), mv(r1,c1), mv(c1,c2), mv(c2,r3), close(d23), open(d23), mv(r3,c2), mv(c2,c1), mv(c1,r1),0)

Au de là de TLPLAN TALPLANNER Kvarnström and Doherty (Linköping University, Sweden) Préférences temporellement étendues McIlRaith and Baier (University of Toronto) Défi: apprendre les connaissances de contrôle de recherche.

Références Malik Ghallab, Dana Nau & Paolo Traverso. Automated Planning: theory and practice. Morgan Kaufmann, 2004. http://www.laas.fr/planning/ (Chapitre 10) Bacchus F. and Kabanza F. Using Temporal Logic to Express Search Control Knowledge for Planning. Artificial Intelligence , 116(1-2):123-191, 2000 http://www.cs.toronto.edu/tlplan/tlplan.shtml http://www.planiart.usherbrooke.ca (Section Donwload)

TLPLAN Exemples de modèles Robot world Robot problems Démo Téléchargement: http://www.planiart.usherbrooke.ca/download-en.html