Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parGisbert Ollivier Modifié depuis plus de 11 années
1
Conception Préliminaire de Manipulateurs Mobiles et Génération de Consignes Évolutionnaires : une Méthodologie pour Intégrer la Commande dans l’Évaluation de la Structure Je vous remercie, Monsieur le président. Messieurs les membres du jury, bonjour. Le travail que je vais vous présenter s’intitule « conception préliminaire de manipulateurs mobiles et génération de consignes évolutionnaires : une méthodologie pour intégrer la commande dans l ’évaluation de la structure. Sophie Sakka
2
Conception préliminaire
Contexte CONCEPTION ROBOTIQUE Détermination des variables de conception d’un robot Spécification du besoin Décomposition du problème Optimisation en fonction du problème à résoudre Conception préliminaire Prototype virtuel Ce travail s’inscrit dans le cadre de la conception préliminaire robotique, qui est une étape essentielle de la conception robotique assistée par ordinateur puisqu’elle est destinée à déterminer un ensemble de variables de conception du robot avant sa construction. Ces variables sont optimisées de manière à répondre au mieux aux exigences du cahier des charges. La famille de robots à laquelle nous nous intéressons est celle des manipulateurs mobiles, et les variables de conception sont celles qui déterminent la structure du robot. L’évaluation de la structure se base généralement sur l’établissement de critères mathématiques qui dépendent du problème posé. La commande des robots n’intervient pas dans cette phase de la conception du fait de la nature évolutive des paramètres topologiques recherchés. L’absence de la commande dans l’évaluation de la structure peut s’avérer problématique, notamment lors de la conception de robots mobiles. Ce travail est une analyse de méthodologie de la conception préliminaire robotique qui se penche plus particulièrement sur le problème de l’intégration de la commande des robots dès leur phase de conception préliminaire. Absence de la commande Prototype Adaptation finale 20 septembre 2002 Introduction
3
Problématique générale
Déterminer une chaîne cinématique ouverte, laquelle, fixée sur une plate-forme mobile connue, permet la réalisation d’une tâche de manipulation mobile donnée Cadre : Conception Assistée par Ordinateur Tâche : suivi de trajectoire par l’effecteur Nous cherchons à définir une méthodologie qui permette d’inclure les déplacements des robots type manipulateurs mobiles dans l’évaluation de leur structure. La définition générale du problème que nous nous proposons de résoudre est « Déterminer une chaîne cinématique ouverte, laquelle, fixée sur une plate-forme mobile connue, permet la réalisation d’une tâche de manipulation mobile donnée ». Le cadre de la recherche est celui de la conception assistée par ordinateur et les résultats seront validés par la simulation. La tâche est un suivi en position et orientation le long d’un mur. (image) La trajectoire désirée est constituée de segments rectilignes horizontaux, et les seules contraintes imposées tout au long de l’étude lui sont liées (réaliser la tâche, pas de collision avec le mur). L’orientation de l’effecteur est demandée perpendiculaire au mur tout au long du déplacement. Contraintes : réalisation de la tâche respect de l’environnement 20 septembre 2002 Introduction
4
Domaines d’étude Définir une structure mécaniquement adaptée à des besoins spécifiques La problématique de l’étude intervient sur deux aspects : - la définition d’une structure adaptée à ce que l’on veut faire : une chaîne cinématique ouverte est constituée par un assemblage de segments (liaison + barre) Quantité de segments ? Type, axes des liaisons ? Géométries des barres ? Il est de plus évident que n’importe quelle structure ne pourra pas réaliser la tâche. Celles-ci peuvent –et doivent- être éliminées de la sélection dès le départ. - Pour celles qui semblent adaptées aux besoins, l’existence et la détermination d’une commande générique pour toute la famille de structures étudiées sont loin d’être évidentes. Par la suite, les interactions qui existent entre ces deux problèmes sont aussi à définir de manière trouver une structure et sa commande associée qui permettront au mieux de répondre aux exigences du problème. Définir la commande de structures dont le type seul est déterminé 20 septembre 2002 Introduction
5
Plan de la présentation
Introduction Méthodologie générale Génération de consignes : - Suivi en position rectiligne - Suivi en position avec manœuvre - Suivi en position et orientation - Configuration initiale Conclusions Perspectives Nous allons, dans un premier temps, présenter la méthodologie générale que nous avons adopté. Une condition essentielle de sa validation passe par la détermination des consignes qui doivent être appliquées aux différentes structures. Le problème de la génération de consignes constitue donc l’essentiel de la présentation. Trois cas de difficulté de résolution croissante, ainsi que la détermination de la configuration initiale, sont traités. L’exposé se terminera par des conclusions sur l’ensemble du travail ainsi que les perspectives qui lui sont associées. 20 septembre 2002 Introduction
6
Décomposition de l’étude
Pré-sélection des structures Évaluation partielle sur des sous-tâches caractéristiques de la tâche globale Pré-sélection des structures Évaluation partielle sur des sous-tâches caractéristiques de la tâche globale Sélection finale Choix de la meilleure structure basée sur la réalisation complète de la tâche Sélection finale Choix de la meilleure structure basée sur la réalisation complète de la tâche L’approche générale décompose l’étude en deux étapes : la première est une étude de faisabilité, et la seconde une étude de validation. La première étape effectue une pré-sélection de structures potentiellement aptes à réaliser la tâche fixée. Elle se base sur une décomposition de la tâche globale en sous-tâches caractéristiques, et considère qu’une structure qui ne peut pas réaliser l’ensemble des sous-tâches caractéristiques ne pourra pas, par extension, s’acquitter de la tâche globale. C’est une étude de faisabilité car la recherche de structures y est effectuée sans tenir compte des mouvements du robot. Elle peut ainsi être abordée par la synthèse « classique » de chaînes cinématiques, qui construit, selon des règles précises, de nombreuses topologies par l’assemblage aléatoire de modules (barres, liaisons, la plate-forme mobile y est associée à un socle), puis évalue et élimine les solutions qui ne parviennent pas à réaliser l’ensemble des sous-tâches. Nous avons donc, En entrée : la définition des modules, leurs caractéristiques, leur quantité maximale En sortie : structures potentiellement aptes –c’est-à-dire qui réalisent l’ensemble des sous-tâches sans entrer en collision avec le mur- qui vont être testées sur le suivi de trajectoire global. La deuxième étape détermine la meilleure solution extraite de l’ensemble des structures potentiellement aptes, en les testant sur la totalité du suivi en plaçant les chaînes cinématiques précédemment déterminées sur une plate-forme mobile à roues. Pour lever toute ambiguïté entre deux solutions qui parviennent à l’objectif, la structure minimale est retenue. En entrée : structures + caractéristiques En sortie : Structure optimale et ses consignes sur la totalité du suivi. Toute la validité de l’approche repose sur la possibilité de générer les consignes qui permettent de réaliser le suivi. Cette recherche est donc soumise à des contraintes de mise en place strictes 20 septembre 2002 Méthodologie générale
7
Génération des consignes
Fiabilité Trouver systématiquement une solution Stabilité S’adapter à la grande diversité des structures Rapidité Test de nombreuses solutions topologiques Génération de consignes en boucle ouverte Toute la validité de l’approche repose sur la possibilité de générer les consignes qui permettent de réaliser le suivi. Cette recherche doit donc : - être fiable (trouver systématiquement une solution, lorsqu’elle existe), - utiliser un temps de simulation raisonnable (de nombreuses solutions topologiques vont être testées), - être stable par rapport à la structure étudiée (grande diversité au sein des structures étudiées). La solution retenue pour la mise en place du générateur de consignes utilise le fait que la recherche s’effectue par la simulation. Nous utilisons une génération de consignes en boucle ouverte, en considérant qu’un mouvement peut s’effectuer par l’application successive de vecteurs de consignes constants, dont les temps d’application varient en fonction de la complexité de la trajectoire à suivre. Pour cette recherche, l’optimisation est effectuée par les algorithmes évolutionnaires. Avant de poser le problème de la génération de consignes, nous allons rappeler brièvement le fonctionnement de cette famille d’algorithmes. Vecteur de consignes constant par morceaux Recherche par les algorithmes évolutionnaires 20 septembre 2002 Méthodologie générale
8
Algorithmes évolutionnaires
Théorie de l’évolution (Darwin, 1859) Théorie de l’évolution (Darwin, 1859) Lois génétiques (Mendel, 1859) Lois génétiques (Mendel, 1859) Sélection naturelle Reproduction Variabilité Croisement Objectif Mutation Les algorithmes évolutionnaires sont basés sur la modélisation de phénomènes naturels. Ils résultent de l’association des règles de survie des espèces établies par Darwin et des lois génétiques introduites par Mendel. La théorie de l’évolution se base sur 4 points essentiels pour valider la capacité d’une espèce de survivre et de se reproduire. L’analyse est effectuée sur la base des individus et de la recherche de possibilités pour améliorer les chances de survie selon des contraintes données. Les lois génétiques établissent des règles de reproduction, de croisement et de mutation des gènes lors de la reproduction sexuée. L’analyse s’effectue au niveau génétique des individus et l’existence d’une chaîne codée contenant les caractéristiques d’un individu y est déjà envisagée. L’évolution génétique à travers une génération résulte alors des modifications de cette chaîne codée. Adaptation Fabrication de nouveaux individus par la manipulation de chaînes codées Fabrication de nouveaux individus par la manipulation de chaînes codées Fabrication de nouveaux individus par la manipulation de chaînes codées Survie des espèces par la survie des mieux adaptés Survie des espèces par la survie des mieux adaptés Survie des espèces par la survie des mieux adaptés 20 septembre 2002 Algorithmes évolutionnaires
9
Algorithmes évolutionnaires
Population Sélection naturelle Reproduction Variabilité Croisement Objectif Mutation La modélisation de ces phénomènes considère l’évolution d’une population d’individus représentés par une chaîne codée. La variabilité est prise en compte dans leur sélection et leur adaptation est quantifiée par rapport à un objectif donné. Adaptation 20 septembre 2002 Algorithmes évolutionnaires
10
Algorithmes évolutionnaires
Population Sélection naturelle Variabilité Variabilité Sélection naturelle Reproduction Variabilité Sélection naturelle Variabilité Sélection naturelle Sélection naturelle Croisement Objectif Mutation Adaptation 20 septembre 2002 Algorithmes évolutionnaires
11
Algorithmes évolutionnaires
Population Reproduction Sélection naturelle Croisement Objectif Adaptation Objectif Adaptation Mutation Objectif Adaptation Adaptation 20 septembre 2002 Algorithmes évolutionnaires
12
Algorithmes évolutionnaires
Nouvelle génération g Initialisation k Population Nouvelle population Mutation Croisement Reproduction Sélection naturelle Adaptation Évaluation F Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Sélection naturelle Adaptation Mutation pm Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Mutation Croisement Reproduction Sélection naturelle Adaptation Sélection Reproduction Croisement pc Reproduction Le modèle extrait effectue une série de manipulations génétiques, c’est-à-dire sur les chaînes codées, qui s’associe au phénomène de croisement et de mutation naturelles avant de passer à la génération suivante. Pour l’optimisation, la constitution de la population initiale s’appelle l’initialisation. Elle construit k chaînes codées qui représentent les variables recherchées, où k est la taille de la population. La nature du codage utilisé –suite de nombres binaires, réels, mixtes, entiers- dépend du problème à résoudre et de la nature des variables recherchées. Chaque individu est ensuite évalué par une fonction d’adaptation. Une valeur d’adaptation, notée F, lui est attribuée. De celle-ci dépendra sa sélection pour la reproduction ou son élimination. Les individus sélectionnés sont alors manipulés par les différents opérateurs génétiques. Les manipulations dépendent de deux paramètres, pc et pm, qui fixent la part d’exploration et d’exploitation dans la recherche, c’est-à-dire la part d’aléatoire dans la constitution de la nouvelle génération. Ce cycle est répété pendant g générations, ou tant qu’une condition d’arrêt est attendue. Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Reproduction Accouplement Reproduction 20 septembre 2002 Algorithmes évolutionnaires
13
Génération de consignes
Mouvement désiré Consignes Robot Mouvement Environnement Évaluation U1=(u11,…,un1) R O B O T F1 U2=(u12,…,un2) Le principe de génération de consignes en boucle ouverte est le suivant : On considère un Robot à n actionneurs. On applique une entrée de commande sur chaque actionneur => cela produit un certain mouvement. Celui-ci, comparé à un mouvement de référence, va permettre la quantification de la valeur du vecteur de consignes. Celle-ci va aussi prendre en compte un ensemble de contraintes de réalisation de la tâche, dans notre cas l’environnement. Les consignes, dans ce cas, sont les entrées de commande appliquées sur chaque actionneur du robot. Elles peuvent être constantes ou évoluer dans le temps. Dans le cas d’une trajectoire complexe, elles ne peuvent bien sûr rester constantes tout au long de la trajectoire. Nous considérons dans notre approche, que la réalisation d’une trajectoire quelconque peut se réaliser par l’application successive de vecteurs de consignes constants par morceaux. Le temps d’application d’un vecteur est d’autant plus court que la trajectoire à réaliser est complexe. Utilisation des algorithmes évolutionnaires pour trouver un vecteur de consignes qui permette une évaluation maximale est la suivante : On considère une population d’individus, où chaque individu est associé à un vecteur de consignes. L’adaptation d’un individu correspond à la valeur de la fonction d’évaluation correspondant au test des consignes qu’il représente. Problème de la génération de consignes dans le cadre de la conception préliminaire : le robot peut être de n’importe quelle structure. Bien considérer, en entrée : seul le nombre d’actionneurs est une donnée exploitable. A priori, on ne sait rien d’autre du robot. En sortie : les consignes qui permettent de réaliser le suivi. Au milieu : des consignes constantes par morceaux. Gros ou petits morceaux en fonction de la difficulté du suivi. Remarque : tous les vecteurs de consignes d’une population sont testés sur un seul robot à la fois. (la structure ne change pas au cours de l’évolution d’une même recherche). F2 Uk=(u1k,…,unk) Fk 20 septembre 2002 Génération de consignes : problématique
14
Validation de l’approche
Structures fixes de dynamique connue Plate-forme mobile ROMAIN non-holonome, deux roues arrières motrices à différentiel de vitesses Bras manipulateur PUMA 560 à 6 degrés de liberté (6 rotations) Pour la validation des résultats, des robots existants, représentés par leurs modèles dynamiques pour la simulation, sont utilisés. (modèles facilement disponibles) Le véhicule est une plate-forme non-holonome dont la direction est assurée par un différentiel de vitesses sur les deux roues arrières. Il y donc deux actionneurs à contrôler. Le bras manipulateur est un PUMA 6 axes classique. Il est fixé, pour notre étude, au milieu de la face supérieure de la plate-forme mobile. Trois cas de difficulté de réalisation croissante sont étudiés. La faisabilité est dans un premier temps démontrée à travers la recherche d’un seul vecteur de consignes pour effectuer un suivi en position rectiligne. Le cas où le robot est contraint de manœuvrer pour atteindre la position finale est ensuite traité. On se place toujours dans le cadre du suivi en position. Enfin, la génération de consignes est validée en étendant l’étude au suivi en position et orientation. Suivi en position rectiligne Gestion de la manœuvre Suivi en position et orientation 20 septembre 2002 Génération de consignes : problématique
15
Suivi en position rectiligne
Droite horizontale de 5 mètres Situation initiale de l’effecteur fixée Configuration initiale du robot fixée Dans un premier temps, la faisabilité de l’approche doit être démontrée. La recherche d’un unique vecteur de 5 consignes est recherché pour effectuer un suivi en position de l’effecteur. Les caractéristiques de la tâche sont : - pour la trajectoire, une ligne droite horizontale de 5 mètres de long, partant d’un point xi et arrivant à un point xd connus. - Pour l’environnement, sol plat horizontal et mur vertical. - pour les conditions initiales de la simulation : la configuration du robot est fixée telle que 1) la direction de la plate-forme mobile soit parallèle à la direction désirée, dirigée dans le sens de la trajectoire, 2) l’organe terminal du robot coïncide avec le point de départ de la trajectoire désirée. Chaque vecteur de consignes de la population va être testé dans ces mêmes conditions. Le test d’un vecteur s’arrête - si le point d’arrivée désiré xd est atteint - dès qu’il y a contact avec le mur - dès que l’effecteur s’éloigne trop de la trajectoire désirée. Arrêt du test des consignes : Atteinte de la situation finale désirée Contact avec le mur Atteinte de l’erreur limite en position 20 septembre 2002 Optimal Evolutionary-Based Control
16
Problème d’optimisation
Notations : Coordonnées généralisées : q = (d g 1 2 3)t Coordonnées opérationnelles : Xe = (xe ye ze)t Vecteur des consignes : U = (u1 u2 u3 u4 u5)t Énoncé du problème d’optimisation Cas sans manœuvre dans un premier temps : on recherche un vecteur de consignes unique . . Trouver U* = U(q*) R5 Tel que F(Xe*) F(Xe) Xe R3 20 septembre 2002 Génération de consignes : suivi simple
17
Sélection Croisement Mutation
Algorithme Initialisation Décodage Modèle du robot Évaluation Sélection Croisement Mutation Condition d’arrêt Initialisation Génération aléatoire de 5 valeurs réelles comprises entre 0 et 1 Pour chaque individu Chromosome = concaténation des 5 gènes Ûj = < û1 û2 û3 û4 û5 > j = 1,..,k ûi R[0,1] 20 septembre 2002 Génération de consignes : suivi simple
18
Sélection Croisement Mutation Vecteur d’entrées de commande
Algorithme Initialisation Décodage Modèle du robot Évaluation Sélection Croisement Mutation Condition d’arrêt Décodage Consignes : ui = ûi.bi j = 1,..,k ui R[0,bi] Uj = ( u1 u2 u3 u4 u5 )t Vecteur d’entrées de commande Actionneur Couple maximal Roue droite 6.25 Roue gauche Hanche 9.9 Épaule 14.9 Coude 9.1 20 septembre 2002 Génération de consignes : suivi simple
19
Sélection Croisement Mutation
Algorithme Initialisation Décodage Modèle du robot Évaluation Sélection Croisement Mutation Condition d’arrêt Évaluation Avancement sur la trajectoire C1 = || Xd - Xf || || Xd - Xi || Erreur en position C2 = (t).|| Xd - X(t) || l.|| Xd - Xi || 1 n L’évaluation des solutions se doit d’utiliser une quantité minimale de critères, de manière à ce que ceux-ci ne se compensent pas une fois réunis dans la fonction d’évaluation. Nous n’utilisons donc que des critères liés à la réalisation de la tâche, c’est-à-dire aux contraintes de tâche et aux contraintes d’environnement. Aucune contrainte sur le « comment? » la tâche est réalisée n’est imposée. Ceci permet une évaluation où l’expérience de l’utilisateur ne transparait pas, et autorise un caractère autonome et rapide. Il faut de plus que les critères soient simples dans leur expression et utilisent des valeurs directement accessibles. Évaluation minimaliste : Contraintes de tâche Contraintes d’environnement Simplicité d’expression Évitement d’obstacles C3 = 1 Si collision 0 Sinon 20 septembre 2002 Génération de consignes : suivi simple
20
Sélection Croisement Mutation
Algorithme Initialisation Décodage Modèle du robot Évaluation Sélection Croisement Mutation Condition d’arrêt Opérateurs Sélection : proportionnelle à la valeur d’adaptation Croisement : échange la valeur de deux bit entre les parents avec la probabilité pc Opérateurs classiques. Sélection : méthode de la roulette russe avec reste stochastique Croisement : uniforme macroscopique Mutation : gène peut être réel ou binaire. Rajouter des petits dessins qui expliquent rapidement (croisement, mutation) Mutation : modifie la valeur d’un gène avec la probabilité pm 20 septembre 2002 Génération de consignes : suivi simple
21
Sélection Croisement Mutation
Algorithme Initialisation Décodage Modèle du robot Évaluation Sélection Croisement Mutation Condition d’arrêt Opérateur additionnel 1 – Constitution d’une liste des Pr meilleurs individus, toutes générations confondues 2 – Ré-introduction forcée de ces Pr individus dans la génération suivante Conservation des caractéristiques Rôle de cet opérateur : parer à la perte de solution d’une génération à la suivante. (aperçu de la première courbe). Il se passe en plusieurs étapes, et est basé sur les valeurs d’adaptation des individus : constitution d’une liste des pr meilleurs individus. Conservation de ceux-ci dans la génération suivante. Comparaison, après l’évaluation des solutions de cette génération, des nouveaux pr meilleurs avec la liste existante. Remise à jour si des individus présentent des meilleurs résultats que ceux enregistrés. Le profil résultant des nouvelles courbes d’évolution (montrer la nouvelle courbe) présente des caractéristiques surprenantes. Résultats : 1) Objectif atteint : conservation des caractéristiques. 2) Beaucoup plus de solutions émergent, quelle que soit la valeur de pr. 3) Résultats optimal pour pr = 5 (montrer les deux courbes de comparaison, best et moy) Sur la convergence : un profil original pour les évolutions obtenues. Débuts de convergence classique jusqu’à la 20ème génération. Mais, après : Pour les meilleurs, la croissance reprend de manière régulière (toujours en évolution au bout de 250 générations). Pour les moyennes, schéma de convergence inverse : au lieu de monter doucement jusqu’à la stabilisation à la valeur de convergence, les valeurs d’adaptation montrent une décroissance lente, d’autant plus amplifiée que l’évolution du meilleur est performante. Beaucoup plus d’évolutions permettent l’apparition d’une solution optimale Résultat optimal pour Pr = 5 20 septembre 2002 Génération de consignes : suivi simple
22
Sélection Croisement Mutation
Algorithme Initialisation Décodage Modèle du robot Évaluation Sélection Croisement Mutation Condition d’arrêt Conditions d’arrêt Atteinte du nombre de générations maximal Émergence d’une solution dont la valeur d’adaptation est maximale 20 septembre 2002 Génération de consignes : suivi simple
23
Résultats de simulation
20 septembre 2002 Génération de consignes : suivi simple
24
Conclusions sur le suivi en position sans manœuvre
Recherche fiable Solution systématique Temps de convergence réduits Algorithme adapté Pose du problème délicate Temps de mise en place très grand Recherche fiable : émergence systématique d’une solution Convergence rapide : 120 générations max. Donc, algorithme adapté, recherche évolutionnaire compétente. ATTENTION : pose du problème délicate (vérification des résultats physiques de la recherche) Temps pour déterminer les paramètres Limite d’utilisation : génération de consignes en boucle ouverte (adapté à la conception assistée par ordinateur On peut maintenant s’intéresser au cas plus complexe, ie le cas où le robot est contraint d’effectuer une manœuvre. 20 septembre 2002 Génération de consignes : suivi simple
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.