• Aucun résultat trouvé

4.1.2 Études préliminaires sur la planification de mouvements . . . 92 4.2 Architecture de planification interactive . . . 93 4.2.1 Choix d’un planificateur suivant le besoin de l’utilisateur . . . 97 4.2.2 Planificateur interactif basé sur une méthode RDT . . . 99 4.2.3 Génération de commandes et description de l’interaction . . . 106 4.3 Implémentation en C++ . . . 115 4.3.1 Organisation . . . 115 4.3.2 Planification de trajectoire . . . 116 4.3.3 Génération de commande d’efforts artificiels pour l’interface haptique . . . 118 4.4 Tests comparatifs . . . 119 4.4.1 Scènes de test utilisées . . . 120 4.4.2 Résultats obtenus . . . 120 4.5 Conclusion . . . 124

4.1

Introduction et motivations

4.1.1 Introduction et problématique

Dans la simulation présentée en fin de chapitre3, un utilisateur humain est amené à tester des séquences de montage et de démontage de pièces mécaniques en environnement virtuel. Il dispose pour cela d’une interface haptique lui permettant de manipuler une pièce mécanique tout en ressentant les efforts résultant des contacts avec le reste de l’environnement et d’un système de visualisation immersive lui procurant une vision réaliste du problème à résoudre. Lors de chaque phase d’un assemblage, le cerveau de l’utilisateur est

amené à résoudre un problème qui peut être assimilé à un problème de planification de la trajectoire d’un corps rigide mobile dans un espace comportant des obstacles fixes.

Nous avons remarqué, au cours de la mise en place d’un tel système, que dans certains cas de scènes complexes, l’utilisateur peut ne pas aisément trouver de chemin sans collision et avoir besoin d’aide : Dans un cas classique d’assemblage mécanique, deux éléments sont juxtaposés et liés par une ou plusieurs liaisons complètes. Dans ce contexte, l’utilisateur est amené à manipuler séquentiellement chaque pièce à assembler de manière à l’amener dans une configuration particulière permettant l’établissement des liaisons requises pour son maintien. Lors de l’approche de la configuration requise, la pièce manipulée est très souvent au contact d’autres pièces assimilables à des obstacles. De plus, dans le cas de pièces insérées, le guidage vers la configuration finale est réalisée grâce à un suivi du contact contre l’obstacle. L’utilisation de détecteurs de collision discrets, comme VPS [59], avec des interfaces haptiques ne permet pas à l’utilisateur de déplacer les pièces manipulées dans des configurations où elles sont en contact réel avec les obstacles. Etant donné que les configurations proches de la configuration finale sont souvent détectées comme étant en état de collision leur ralliement est donc interdit par la procédure de calcul de retour d’effort précitée. Dans le but d’assister l’utilisateur lors de ces opérations de montage et de démontage et d’améliorer l’ergo- nomie de manipulation, il est utile de lui fournir des informations issues d’un planificateur automatique de mouvements.

4.1.2 Études préliminaires sur la planification de mouvements

La première partie de ce travail est le choix du type et de l’architecture du planificateur de trajectoire. Nous avons décrit dans [114] que dans une application de réalité virtuelle, le maintien d’une interaction temps réel entre l’utilisateur et le monde virtuel est primordial, ce qui induit une contrainte forte au niveau des programmes utilisés. De plus, dans le contexte de la manipulation de composants, la définition d’une solution optimale d’un point de vue d’un planificateur n’est pas nécessairement souhaitable d’un point de vue du manipulateur. En effet, l’utilisateur ne souhaite pas forcément faire appel à un planificateur dans des cas où son immersion lui permet de résoudre simplement son problème, mais il peut en revanche solliciter une aide dans des cas précis et pouvoir agir sur la proposition de trajectoire qui lui est présentée.

En prenant en compte cette contrainte de “temps réel” dans le choix du planificateur, nous avons conclu que l’utilisation d’un planificateur de trajectoire « classique » analogue à ceux présentés en partie2.2ne pouvait répondre à nos besoins :

. Les planificateurs globaux consomment beaucoup de ressources et, bien que très efficaces théoriquement, sont en pratique trop lents pour une utilisation dans des applications en temps réel.

. Les planificateurs locaux ne sont pas satisfaisants dans un espace de dimension 6 car ils sont confrontés à des problèmes liés aux minima locaux.

. Les planificateurs probabilistes sont peu fiables car, convergeant de manière probabiliste, ils ne peuvent garantir un résultat en temps fini. De plus, dans un contexte où l’espace de travail comporte d’importantes zones libres, ce type de planificateur peut consommer beaucoup de temps de calcul avant de converger.

Dans notre contexte, l’immersion de l’utilisateur dans une scène virtuelle lui donne un point de vue général ce qui lui permet généralement de trouver la meilleure façon d’aborder le problème comme expliqué dans [100] et ainsi de focaliser le planificateur sur un espace de recherche moins étendu, accélérant ainsi sa vi- tesse de convergence et influençant fortement le résultat final. En ce sens, nous pouvons dire que le cerveau humain et un planificateur automatique de trajectoire peuvent coopérer de manière à réduire le temps néces- saire à l’obtention d’un chemin solution. Dans cette optique, nous avons décidé d’implémenter une solution qui permet à un planificateur et à un utilisateur de dialoguer en temps réel et de s’influencer mutuellement. Le développement d’un tel planificateur capable d’interagir avec un utilisateur humain diffère quelque peu de celui d’un planificateur classique de par les contraintes fortes imposées par son utilisation en simulation interactive.

Si on prend en compte le nombre de dimensions ainsi que la nature irrégulière de l’environnement, les planificateurs de type probabiliste semblent les plus adaptés. Ils comportent néanmoins une composante aléatoire donnant des résultats peu fiables au niveau du temps de calcul nécessaire à la convergence vers un chemin solution. Ce défaut caractéristique des méthodes probabilistes est connu pour être accentué dans le cas d’espaces de travail comportant des passages étroits ou de très grandes portions d’espace libre. Or, c’est typiquement le cas rencontré lors de tâches de montage (ou de démontage). En effet, on y observe générale- ment une configuration initiale (finale) entourée d’un très grand espace libre d’obstacle et une configuration finale (initiale) fortement contrainte. Pour remédier à ce problème, certaines méthodes introduisent un biais dans la méthode probabiliste à l’aide d’études partielles locales ou globales [89,90].