Précédent : Logiciels Remonter : Projet PRISME, Géométrie,
Algorithmes et Suivant : Actions
industrielles
La structure de localisation utilisée comporte plusieurs niveaux. Le niveau le plus bas contient la triangulation de Delaunay de tous les points, ensuite chaque niveau contient la triangulation d'un échantillon aléatoire des points du niveau précédent. La localisation d'un nouveau point est effectuée en marchant dans une triangulation afin de déterminer le plus proche voisin du nouveau point à ce niveau ; puis la marche reprend à partir de ce voisin au niveau inférieur. L'utilisation d'échantillons assez petits (1 %) garantit un faible coût mémoire ; la marche et l'utilisation du plus proche voisin pour changer de niveau assurent une localisation rapide de la requête [35].
Nous avons conçu et implanté un algorithme qui calcule l'union d'un ensemble de polygones par division et fusion. Le choix du schéma de division-fusion est guidé par le souci d'éviter de calculer toutes les intersections présentes à l'intérieur de cette union : ne sont calculées que celles qui interviennent, à une étape quelconque de la récursion, sur le bord de l'union courante de l'ensemble de polygones présents. Bien que cet algorithme ait une complexité quadratique dans le pire des cas (et qu'il n'existe pas d'algorithme asymptotiquement meilleur), nous avons expérimentalement démontré son efficacité en pratique. Un soin particulier a été apporté à l'analyse de la complexité algébrique de cet algorithme.
La bibliothèque d'algorithmes géométriques
CGAL (Computational Geometry
Algorithms Library) (voir ,
) a
vu son développement poursuivi cette année avec notamment la
programmation de structures de données et d'algorithmes de
triangulation dans le plan qui sont disponibles dans la version
0.9.
Nous avons également débuté la programmation des triangulations dans l'espace ainsi que des applications à la reconstruction, destinées à être intégrées dans une prochaine version.
En ce qui concerne les applications à la reconstruction, nous nous sommes concentrés cette année sur les alpha-formes . Étant donné un ensemble de points qui échantillonne la surface de l'objet, nous cherchons à construire de façon automatique un maillage triangulaire qui approxime la forme de l'objet.
Nous nous basons sur les alpha-formes qui dérivent de la triangulation de Delaunay et peuvent être calculées efficacement.
Les algorithmes de reconstruction en 2D et 3D font partie de la bibliothèque support de CGAL et ont été implantés en C++ avec une interface MOTIF et OPENINVENTOR.
Travail réalisé en collaboration avec Franco Preparata de Brown university.
Dans le cadre de la triangulation de Delaunay pour des métriques convexes, nous avons mis au point un nouveau schéma de perturbation afin de résoudre les problèmes de dégénérescences. Le principe est simple : plutôt que de perturber les données du problème, et donc de résoudre le problème pour des données légèrement différentes, on préfère perturber la définition du problème et résoudre un problème légèrement différent sur les données originales.
Dans le cas de la triangulation de Delaunay on peut opérer en faisant varier la métrique associée. Perturber la définition du problème plutôt que les données présente essentiellement deux avantages. Tout d'abord la perturbation ne dépend plus d'une numérotation des points et donc le résultat calculé est également indépendant de cette numérotation. Ensuite les calculs sont en général beaucoup plus simples [29].
Les algorithmes randomisés incrémentaux présentés dans la
section ont
une simplicité qui les rend intéressants pour l'implantation.
Malheureusement, ils ne savent en général pas traiter les cas
dégénérés. Ceci est dû à la formulation même du problème et non
aux techniques algorithmiques. Nous avons reformulé un de ces
problèmes, celui de l'enveloppe convexe, pour tenir compte de ces
cas dégénérés.
Dans le formalisme des algorithmes randomisés, il y a des
objets, des régions définies par ces objets, et une relation de
conflit entre objets et régions. Un algorithme randomisé qui
utilise la méthode du graphe d'influence construit l'ensemble des
régions définies qui ne sont en conflit avec aucun des objets
donnés. Pour l'enveloppe convexe, les objets sont des points de
, et les régions des demi-espaces bornés
par d points. Lorsque les points sont en position dégénérée, une
région peut être définie par tous les d-uplets des n points qui
la bordent. Le nombre de régions sans conflit devient
au lieu de
si
les points sont en position générale, et ces régions ne
fournissent plus la solution au problème. En définissant les
régions de manière plus précise, on peut garder une
correspondance entre régions sans conflit et la solution du
problème.
Travail réalisé en collaboration avec G. Liotta, université de Rome et R. Tamassia et F. Preparata, université de Brown
Pour calculer le signe exact d'un déterminant, et plus généralement d'une expression algébrique à variables entières (comme la cosphéricité), nous nous sommes intéressés à une méthode qui calcule cette expression modulo plusieurs nombres premiers. Nous décrivons une nouvelle méthode pour déduire le signe de cette expression en simple précision. Cette méthode est plus rapide que la reconstruction classique qui utilise la reconstruction en précision multiple.
Le théorème des restes chinois assure qu'en calculant une expression modulo un nombre suffisant de nombres premiers entre eux, sa valeur est connue de façon exacte. Typiquement, le processus de reconstruction d'un nombre à partir de ses résidus se fait à l'aide d'un calcul multiprécision. Nous avons montré [18] que le signe de ce nombre peut être calculé de façon exacte en simple précision (les nombres intervenant dans les calculs ont la même taille que celle des entrées). Une étude de performance a montré que cette approche est plus rapide que ses homologues exacts. Bien que non-adaptative, elle peut être complémentée par des filtres flottants. Nous étudions aussi la réalisation de tels filtres avec une arithmétique d'intervalles.
Travail réalisé en collaboration avec I. Emiris, Projet SAFIR, et V. Pan, City University of New-York.
Dans le cadre de la régularisation de structures géométriques, nous avons adapté nos résultats sur le calcul modulaire pour produire l'arrondi exact de constructions géométriques élémentaires.
Plus spécifiquement, la méthode de calcul du signe d'un entier représenté par ses résidus modulaires peut s'interpréter comme fournissant le résultat avec une erreur relative inférieure à 1. Elle peut s'étendre pour fournir une précision relative inférieure à l'arrondi de la machine, assurant ainsi un arrondi exact de la quantité en question. Idem pour un nombre rationnel. Nous n'avons pas encore étudié l'utilisation de ces techniques numériques dans un cadre plus vaste d'arrondi de structures géométriques, où le problème est alors de gérer les interactions entre les différents arrondis de façon à préserver la planarité (ou d'autres propriétés géométriques) du plongement de cette structure.
On appelle expansion flottante une suite de nombres flottants classés par ordre de valeur absolue décroissante dont la somme est la valeur de l'expansion. Les expansions flottantes permettent un calcul exact sur les nombres flottants qui n'utilise que les opérateurs flottants usuels (supposés satisfaire les propriétés de la norme IEEE 754).
Nous avons mis au point de nouveaux algorithmes pour la
multiplication en temps au
lieu de
où n est le nombre de mots
utilisés dans les expansions en entrée. Ces algorithmes nous
permettent surtout un meilleur contrôle des données pour éviter
des rappels de mémoire répétés.
Nous avons utilisé ces méthodes pour le calcul de déterminants. Bien que moins rapides que le calcul modulaire, ces méthodes présentent l'avantage de ne pas être limitées aux calculs sur les entiers. On obtient des résultats raisonnables pour des déterminants de dimension inférieure à huit.
Nous nous sommes particulièrement attachés cette année à
l'amélioration des performances et de la robustesse du logiciel
de placement d'antennes. Ce logiciel [17] calcule une section plane
de la différence de Minkowski de deux polyèdres convexes
(voir ).
L'étude des cas dégénérés (faces parallèles dans les polyèdres de départ, contacts multiples entre deux polyèdres...) a été achevée. Nous terminons également l'étude systématique des tests numériques intervenant dans l'algorithme. Tous les tests se ramènent à l'évaluation de prédicats d'orientation, donc de déterminants, sur des entrées qui sont elles-mêmes le résultat de calculs sur les données. Il s'agit de choisir soigneusement la façon d'exprimer les tests pour obtenir des entrées de plus petit degré possible dans les déterminants. Des méthodes de calcul exact du signe de déterminants sont ensuite utilisées, ce qui permet d'évaluer les prédicats de façon exacte en double précision pour des données en simple précision.
La visualisation de l'espace admissible pour un instrument
nécessite le calcul de l'union de régions polygonales. Une
méthode naïve avait été utilisée dans la première version du
prototype. Cette année, un nouvel algorithme
(section ) a été évalué,
ce qui a permis d'améliorer la rapidité du logiciel.
Une méthode de placement simultané de deux objets a également
été développée. Elle s'inspire de méthodes développées dans le
projet dans le cas plan () et les adapte
au problème présent : placement avec deux degrés de liberté en
translation, sous des contraintes tri-dimensionnelles. Ce
perfectionnement permet à l'utilisateur de choisir une position
pour l'instrument courant qu'il désire placer sur la paroi, en
anticipant sur le placement de l'instrument suivant : la
visualisation de l'espace admissible pour ces deux objets rend
possible le choix d'une position garantissant l'existence de
positions admissibles pour l'instrument suivant.
L'algorithme général de reconstruction a été conçu l'année dernière et consiste à assembler les objets géologiques selon leurs proximités grâce aux diagrammes de Voronoï.
L'extension de l'algorithme de reconstruction, de la dimension 2 (coupes géologiques) à la troisième dimension a nécessité la programmation de nombreux algorithmes géométriques : diagramme de Voronoï 3D, triangulation de polyèdres non convexes, intersections de surfaces polygonales et volumes polyédriques ; ainsi que la construction de structures de données permettant des accès faciles et rapides aux différents éléments géométriques et topologiques de notre modèle.
De nombreux modèles, fournis par le B.R.G.M, dont ceux de
Morges (Alpes françaises) (figure ) et du
massif Armoricain, ont ainsi été reconstruits. Le logiciel
développé est actuellement utilisé par des géologues du
B.R.G.M.
Figure: Reconstruction
du sous-sol de Morges.
Travail effectué dans le cadre du programme GEOFRANCE 3D, en collaboration avec M. Guillen et M. Courrioux, Département Géophysique et Imagerie Géologique du BRGM (Bureau de Recherche Géologique et Minière) d'Orléans et M. Perrin, École des Mines de Paris.
La calibrage des robots parallèles permet d'augmenter la précision de positionnement de l'organe terminal à partir de mesures effectuées sur le manipulateur. Un état de l'art nous a permis de recenser les différentes modélisations de ce type de robot et d'en dégager les paramètres susceptibles d'avoir l'influence la plus importante sur la précision du robot. Puis, les méthodes de calibration existantes ont fait l'objet d'une comparaison en vue d'en dégager points forts et points faibles. Des simulations effectuées avec certaines de ces méthodes nous ont montré l'importance de l'influence du bruit de mesures sur les résultats obtenus. Plusieurs algorithmes ont retenu notre attention (Innocenti, Murareci) et ont fait l'objet d'une reprogrammation en vue d'une amélioration et d'une prise en compte des erreurs de mesures. Ceci nous a permis d'imaginer une méthode originale, limitant volontairement la mobilité du manipulateur, pour déterminer de façon symbolique les paramètres géométriques du robot. Elle s'oppose aux méthodes numériques (quasi-totalité des méthodes existantes dans la littérature) et ne nécessite pas de mesures externes ce qui en simplifie considérablement l'utilisation. Cette méthode est en cours d'implantation.
D'autre part, nous avons élaboré une méthodologie originale de conception des robots parallèles. Dans une première étape, les paramètres définissant la géométrie du robot sont regroupés pour constituer l'espace des paramètres dans lequel un point représente une géométrie unique de robot : des méthodes géométriques permettent alors de déterminer toutes les régions de l'espace des paramètres (donc toutes les géométries de robot) où certains critères de performance sont satisfaits [15]. Dans une deuxième étape, on procède à l'intersection des régions obtenues pour les différents critères, ce qui conduit à une région finale dans laquelle doit se situer le point représentatif du robot optimal, s'il existe. La troisième étape utilise le fait que la région finale est en général petite : elle est donc discrétisée et en chaque point on vérifie si le robot correspondant satisfait le cahier des charges en évaluant ces performances à l'aide des algorithmes présentés dans le paragraphe précédent.
Cette méthodologie a été implantée dans l'outil logiciel DEMOCRAT [14,24] qui réalise automatiquement les trois étapes. La description du cahier des charges nécessaire à l'étape finale est faite à l'aide d'un langage de type C où des instructions supplémentaires ont été définies pour permettre l'évaluation des performances les plus courantes. Cet outil permet de déterminer s'il existe un ou des robots optimaux et établit automatiquement une fiche descriptive directement utilisable pour la réalisation. Il a été utilisé dans le cadre de diverses applications industrielles.
Nos contacts avec le milieu médical ont montré que les
opérations de chirurgie minimalement invasive nécessitaient des
mouvements de faible amplitude mais de grande précision, par
exemple pour positionner la tête d'un endoscope. De tels
mouvements sont réalisables avec un mini-robot. Les contraintes
imposées par ce type de tâche sont toutefois importantes : le
robot est soumis à des forces importantes lors de la pénétration
de l'endoscope et son diamètre doit être de l'ordre du
centimètre. Mais ces contraintes sont typiquement celles
auxquelles les robots parallèles répondent : nous avons donc
décidé d'étudier et de développer un robot à trois degrés de
liberté [25,26]
dont le prototype MIPS à actionneurs magnétiques est présenté en
figure . Ce type de
robot pourrait être aussi utilisé pour des tâches
d'inspection.
Figure: Mini-robot MIPS : diamètre 1,1 cm, charge
maximum de 500 grammes