View
213
Download
0
Category
Preview:
Citation preview
Design III
Quelques éléments d’intelligence artificielle
Philippe GiguèrePLT-3976
philippe.giguere@ift.ulaval.ca
Matériel tiré et inspiré des coursIFT-4102 Concepts avancés pour systèmes intelligents
GLO-4001 Introduction à la robotique mobile
1
Design III
Plan
Intelligence artificielle et agent intelligent
Planification
Espace de configuration
Discrétisation de l’espace continu
Exemples de planification
3
Design III
Quels sont les domaines de l’IA ?
• L’exploration, le CSP et l’optimisation combinatoire• L’inférence logique• La planification• La représentation des connaissances• Le raisonnement incertain• La prise de décision• L’apprentissage automatique• Les agents et les systèmes multi-agents• La vision numérique• Le traitement de la langue naturelle• La robotique
4
Design III
Ce dont vous avez besoin pour votre projet?
• L’exploration• L’inférence logique• La planification• La représentation des connaissances• Le raisonnement incertain• La prise de décision• L’apprentissage automatique (pour s’inspirer de…)• Les agents et les systèmes multi-agents• La vision numérique• Le traitement de la langue naturelle• La robotique
5
Design III
Qu’est-ce qu’un agent intelligent?
Agent intelligent: tout ce qui perçoit son environnement
à l’aide de ses capteurs
et qui agit sur son environnement à l’aide de ses effecteurs.
6
Environnement?
Agent
Effecteurs
Capteur
percepts
actions
Design III
Environnement de tâche
Première étape de la conception d’un agent :
Spécifier l’environnement de tâche (task environment)
Contient les quatre éléments suivants (PEAS):
Mesure de la performance (Performance measure)
Environnement (Environment)
Effecteurs (Actuators)
Capteurs (Sensors)
7
Environnement?
Agent
Effecteurs
Capteur
percepts
actions
Design III
Votre robot• Les composantes de votre système
– Mesure de performance?• Minimiser les erreurs de détection de la position des bordures des
images (tableaux)
• Maximiser la précision de la localisation du robot pour le tracé
• Minimiser le temps de déplacement (moins important)
– Environnement? • La table, l’antenne fixe, les tableaux, l’aire de tracé, les obstacles
– Effecteurs?• Le préhenseur du crayon, les roues...
– Capteurs?• La caméra World, la caméra robot, l’antenne du robot…
9
Design III
Propriétés de l’environnement
• Complètement observable vs partiellement observable
• Déterministe vs stochastique
• Épisodique vs séquentielle
• Statique vs dynamique
• Discret vs continu
• Un agent vs plusieurs agents
• Connu ou inconnu...
10
Environnement?
Agent
Effecteurs
Capteur
percepts
actions
Design III
Propriétés de l’environnement
• Situation la plus difficile• Partiellement observable• Stochastique• Séquentielle• Dynamique• Continue• Multi-agents• Inconnue
• Exemple• Conduite automatisée
d’un véhicule
• Votre projet• Totalement observable• Stochastique• Séquentielle• Statique• Discret/continue• Mono-agent• Connue
• En résumé:• On est gentil !!!
11
Design III
Structure d’un agent
4 types en ordre de généralité croissante:Agent simple réflexe
Agent réflexe avec état interne
Agent basé sur les buts
Agent basé sur l’utilité
Utile pour la conception du module de contrôle du robot.
12
EnvironnementStructure
Agent
Effecteurs
Capteur
percepts
actions
Design III
Agent simple réflexe
13
Capteurs
Analyse des données
Quelle action dois-je
faire maintenant?
Effecteurs
Règles condition-action
Agent En
viro
nn
em
en
tSimple reflex agent
Exemple : évitement d’obstacle si distance < 0.1 m
asservissement visuel (visual servoing)
Pas d’historique, donc pas d’état
Design III
Agent réflexe avec état interne
15
Capteurs
Analyse des données
Quelle action dois-je
faire maintenant?
Effecteurs
Règles condition-action
Agent
En
viro
nn
em
en
t
État
Model-based reflex agent
Peut tolérer des environnements partiellement observable,
grâce à l’analyse de l’historique des données : état
• Filtre Kalman / à particules
• Modélisation de la dynamique du robot
• Modélisation évolution du monde
Robot non détecté dans une
trame de la caméra monde
Design III
Agent basé sur les buts
17
Capteurs
Analyse des données
Quelle action dois-je
faire maintenant?
Effecteurs
Agent
En
viro
nn
em
en
t
État
Quel est l’impact de mes actions?Comment sera le monde
si je fais l’action A?
Buts
Goal-based agent
Ajoute en plus le concept de recherche/planification
pour l’atteinte des objectifs
Design III
Plan
Intelligence artificielle et agent intelligent
Planification
Espace de configuration
Discrétisation de l’espace continu
Exemples de planification
18
Design III
Planification de trajectoire
Représentation continue(espace des configurations)
Discrétisation
Recherche dans un graphe(blind, best-first, A*)
Design III
Espace de configuration C
• Transformation de l’espace
– Réduire la dimension du robot
• Le centre du robot devient le point de référence.
– « Gonfler » les obstacles (Minkowski)
• Reporter les dimensions du robot sur les obstacles.
– Planifier un chemin dans l’espace de configuration libre (C-space)
• Avec les obstacles gonflés et le robot comme un point.
20
Espace
libre
Design III
Espace de configuration C
• Le centre du robot ne peut être que dans la zone grise.
22
Clibre
(approximé comme un point)
régions non-accessibles
Design III
Espace de configuration C
• Pour un robot se déplaçant en (x,y,q)
• Non-circulaire
23
intersection
Design III
Planification de trajectoire
Représentation continue(espace des configurations)
Discrétisation
Recherche dans un graphe(blind, best-first, A*)
Le contenu de
cette section
Design III
Grille régulière uniforme
• La forme la plus simple de découpage.• On découpe l’espace en cellules, toutes de même dimension.
• On marque les cellules contenant les obstacles – Les cellules occupées.– Et reporter la dimension du robot.
• On recherche un chemin dans les cellules vides.
27
Design III
Grille régulière uniforme
• Types de déplacement possibles
– Connectivité 4 directions
– Connectivité 8 directions
28
1
4 2
3
C
connectivité
von Neumann
1 2 3
4 5
6 7 8
C
connectivité
Moore
Design III
Grille régulière uniforme :
Propagation par front d’onde
• Exploration sur une grille régulière (Wavefront planner)– 0: non-visité 1: obstacle 2: indique le départ
30
départ
but
Design III
Grille régulière uniforme :
Propagation par front d’onde
• À chaque étape :– On ajoute +1 aux cellules adjacentes ayant des 0– Déplacement à 8 directions pour cet exemple (au choix)
31
Design III
Grille régulière uniforme :
Propagation par front d’onde
• On continue jusqu’à ce qu’il n’y ait plus de cellules 0 à côté des cellules > 2
32
Design III
Grille régulière uniforme :
Propagation par front d’onde
36
• On continue jusqu’à ce que la grille soit pleine• Les 0 correspondent aux cellules non accessibles
Design III
Grille régulière uniforme :
Propagation par front d’onde• La trajectoire consiste à partir du but et à choisir de façon
vorace les cases les plus petites.
• Ne cherche pas à maintenir une certaine distance par rapport aux obstacles (incertitude)
37
Attention! à rebours!
Design III
Grille régulière uniforme
• Point à considérer : – Si les cellules sont trop petites
• On augmente le nombre de nœuds considéré durant l’exploration (temps de calcul).
– Si les cellules sont trop grosses• Risque d’avoir des solutions de moindre qualité (moins d’options de chemins).• Possibilité de ne pas trouver de chemin réalisable.
– Choisir une taille de cellule empiriquement• En fonction de la taille du robot , des obstacles et de la table.
39
Design III
Décomposition cellulaire verticale
• Décomposer une carte 2D en trapèzes et triangles.
• Pour chaque sommet Pi des obstacles:– Étend ligne verticale en haut et en bas, jusqu’à un obstacle
• 4 cas possibles: – C1:(haut,bas)
– C2:(haut),
– C3:(bas),
– C4:(aucun)
40
Design III
Décomposition cellulaire verticale
41
Étape 2:
place 1 point au milieu
frontière entre cellules
Étape 3:
place 1 point au milieu
de la cellules
Étape 4:
relie les centres aux
points frontières
Design III
Décomposition cellulaire verticale
• Planification : recherche dans le graphe du chemin le plus court (Dijkstra, donner poids prop. à la longeur)
• Donne des trajectoires qui sont en général loin des obstacles (donc plus sécuritaire)
42
Design III
Points à considérer
• On suit la trajectoire planifiée hors ligne…
– En boucle ouverte
– En boucle fermée
• Par la caméra, ou un capteur de proximité.
• Quel est le cycle de rétroaction? (100 ms, 1s, 10 s?)
– Fusion d’information?
• Combiner odométrie, commandes et caméra ensemble
• Exemple : filtre à particule, filtre de Kalman
44
Design III
Conclusion
• Plusieurs options disponibles pour structurer votre espace de navigation
• Différents niveaux de complexité
• Prêter une attention particulière :
– Aux trajectoires semi-libres;
– Aux approches trop coûteuses en temps;
– Replanifier votre itinéraire en cas de déviation de la trajectoire initiale.
45
Recommended