SYNTHÈSE GÉOMÉTRIQUE DE MANIPULATEURS P-~RALLÈLES DE TOPOLOGIE STAR PA4R ALGORITHME GÉNÉTIQUE ALAIN TREMBLAY DÉPARTEMENT DE GÉNIE MÉCANIQUE ÉCOLE POLYTECHNIQUE DE MONTRÉAL &MOIRE PRÉSENTÉ EN VUE DE L:OBTENTION DU DIPLÔME DE MAÎTRISE È s SCIENCES XPPLIQUÉES (GÉNIE MÉCANIQUE) NOVEMBRE 1999
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
SYNTHÈSE GÉOMÉTRIQUE DE MANIPULATEURS P-~RALLÈLES DE
TOPOLOGIE STAR PA4R ALGORITHME GÉNÉTIQUE
ALAIN TREMBLAY
DÉPARTEMENT DE GÉNIE MÉCANIQUE
ÉCOLE POLYTECHNIQUE DE MONTRÉAL
&MOIRE PRÉSENTÉ EN VUE DE L:OBTENTION
DU DIPLÔME DE MAÎTRISE È s SCIENCES XPPLIQUÉES
(GÉNIE MÉCANIQUE)
NOVEMBRE 1999
National Library 1+1 of Canada Bibliothèque nationale du Canada
Acquisitions and Acquisitions et Bibliographie Services services bibliographiques
395 Wellington Street 395. rue Wellingtm OnawaON KlAON4 OnawaON K1AON4 Canada Canada
The author has granted a non- exclusive Licence allowing the National Libray of Canada to reproduce, loan, distribute or seil copies of this thesis in microform, paper or electronic formats.
L'auteur a accordé une licence non exclusive permettant à la Bibliothèque nationale du Canada de reproduire, prêter, distribuer ou vendre des copies de cette thèse sous la forme de microfiche/fiim, de reproduction sur papier ou sur format électronique.
The author retains ownership of the L'auteur conserve la propriété du copyright in this thesis. Neither the droit d'auteur qui protège cette thèse. thesis nor substantial extracts fiom it Ni la thèse ni des extraits substantiels may be printed or othewise de celle-ci ne doivent être imprimés reproduced without the author's ou autrement reproduits sans son permission. autorisation.
ÉCOLE POLYTECHNIQUE DE MONTRÉAL
ce mémoire intitulé:
SYNTHÈSE GÉOMÉTRIQUE DE MANIPULATEURS P.~RALLÈLES DE
TOPOLOGIE STAR PAR ALGORITHME GÉNÉTIQUE
présenté par: TREMBLAY Alain
en vue de l'obtention du diplôme de: Maîtrise ès sciences appliquées
a été dûment accepté par le jury d'examen constitué de:
XI. CLOUTIER Guy, Doctorat, président
h l . BARON Luc, Ph-D., membre et directeur de recherche
M. hl-AYER René, Ph.D., membre
REMERCIEMENTS
J e suis redevable au professeur Luc Baron, qui a supervisé mes travaux de
recherche, pour sa patience durant les longues heures de discussion, ses suggestions
stimulantes, son excellent encadrement et le soutien permanent qu'il m'a apporté
durant toute la période de recherche.
Je tiens à exprimer ma reconnaissance à l'École Polytechnique de Montréal pour
leur aide financière.
Je veux aussi remercier ma copine Chantal. mes parents et ma famille pour leur
patience et leur encouragement.
Ce mémoire présente la synthèse géométrique de manipulateurs parallèles de
topologie Star par algorithme génétique. L'objectif principal de ce travail est de
démontrer qu'en modifiant de façon automatique avec un algorithme génétique
la géométrie d'une topologie de manipulateur parallèle spécifique, il est possible
d'optimiser la forme de l'espace d e travail ainsi que les propriétés cinématiques
locales et globales de ce manipulateur.
Le premier chapitre de ce mémoire présente les définitions de base et les no-
tions générales nécessaires à la compréhension des chapitres suivants. Il contient
6galement une revue de la littérature sur la synthèse de manipulateurs robotiques
sériels et parallèles. Par la suite. un ensemble de vingt paramètres est défini afin
de décrire les différentes géométries possibles de manipulateurs parallèles de même
topologie que le manipulateur Y Star, c'est-à-dire la classe de topologie Star. Puis,
les équations des modèles géométriques directs et inverses sont présentées pour un
manipulateur générique de cette classe. La méthode des octrees est utilisée afin
de déterminer l'aspect de chaque design, c'est-à-dire le plus grand domaine exempt
de toute singularité à l'intérieur de l'espace de travail du manipulateur. L'algo-
rithme génétique, c'est-à-dire la technique d'optimisation utilisée pour effectuer la
synthèse géométrique de manipulateurs parallèles de topologie Star. est présenté
au c h p i tre suivant. On y retrouve notamment les différentes opérations effectuées
par l'algorithme génétique, la description des critères de performance ainsi qu'un
schéma expliquant la structure de l'algorithme génétique ainsi que la plate-forme
logiciel développée.
L'algorithme génétique utilisé dans ce travail évalue chaque nouveau design
de manipulateur par rapport à quatre critères de performance soit le volume de
I'aspect, le rapport de dextérité, le rapport de forme e t une combinaison linéaire
des trois premiers critères. Le rapport de dextérité est la proportion de l'aspect
ayant une dextérité supérieure à 25%. Le rapport de forme est le ratio entre le
\.olume de la plus grande boîte inscrite à l'intérieur de l'aspect sur le volume de la
plus petite boîte le contenant.
Ce travail présente les résultats de trois exécutions d'un algorithme génétique.
Xous avons constaté que pour deux exécutions d'un algorithme génétique a partir
de populations initiales identiques, les populations de designs n'évoi~ent pas de la
même façon et convergent après vingt générations vers des designs améliorés signifi-
cativernent différents mais avec sensiblement les mêmes performances pour chaque
critère. 11 y a aussi convergence vers des mêmes limites maximales de critères de
performance pour un algorithme génétique exécuté pour deux populations initiales
différentes. Les résultats de chaque esécution de l'algorithme génétique utilisé
dans ce travail démontrent qu'après seulement quelques générations, la population
actuelle contient des designs de manipulateurs avec des performances nettement
supérieures i celles du Y Star.
vii
La limitation principale de notre algorithme génétique est qu'il ne tient pas
compte des collisions entre les différentes composantes de manipulateur, ce qui a
pour effet de surestimer la grandeur de l'aspect des différents manipulateurs. De
plus, une discrétisation plus fine des paramètres permettrait sans doute d e trouver
des designs ayant des critères de performance améliorés.
Finalement, nous avons constaté qu'il est possible avec un algorithme génétique
de n'évaluer qu'un très petit pourcentage de l'espace total de recherche et, tout de
même, obtenir des designs améliorés selon les critères de performance choisis. Par
exemple, pour une population de cent manipulateurs, il est possible après seulement
vingt générations (soit 2000 manipulateurs considérés) d'obtenir des manipulateurs
ayant des performances supérieures à celles du Y Star, et ceci, parmi un espace de
recherche de 9.9 x 1 0 ~ ~ manipulateurs possibles.
viii
ABSTRACT
This t hesis presents the geometrical synt hesis of Star parallel manipulators of
Star-like topology with a genetic algorithm. The main goal of this work is to
demonstrate that it is possible to optimize the workspace as well as some local and
global kinematic properties, by modifying the geometry of a specific topology of
parallel manipulator in an automatic way with a genetic algorithm.
The first chapter presents the basic definitions and the general concepts requi-
red in the foregoing chapters. It also contains a literature survey of the synthesis of
serial and parallel robotics manipulators. Aftenvards, a set of twenty parameters
is defined in order to describe the different possible geometries of parallel manipu-
lators with the same topology as the Y Star manipulator, Le.! the Star topological
class. Then, the equations of the direct and inverse kinematic models are presented,
for a generic manipulator of this class. The octrees method is used to determine
the aspect of each design, which is the largest volume without singularity within
the manipulator's workspace. The next chapter presents the genetic algorithm,
mhich is t.he optimization tool of this thesis. This chapter presents the different
operations esecuted by the algorithm, as well as the description of performance
criteria and the software platform.
Our genetic algorithm evaluates each new design of manipulators according
to four performance cri teria: the aspect volume, the dexterity ratio, the shape
ratio and a weighted average of the first three criteria. The dexterity ratio is the
proportion of the aspect having a dexterity higher then 25%. The shape ratio is
the ratio between the side length of the largest box completely inscribed within the
aspect on the side length of the smalIest box completely containing the aspect.
Chapter -5 presents the results of three executions of Our genetic algorithm. It
shows that tm-O executions of Our genetic algorithm from identical initial population
does not evolve in the same way. In fact, they converge, after twenty generations to
different improved designs but with approximately the same level of performance
indices. The genetic algorithm also converges to the same maximum of perfor-
mance criteria, when executed for two different initial populations. The results
of each esecution of the genetic algorithm demonstrate that after only a few ge-
nerations. the fina1 population contains designs of manipulators wit h much higher
performances then those of the Y Star manipulator.
The main limitation of our genetic algorithm is that it does not consider links
collisions, which tends to overestimate the size of the aspect of the different ma-
nipulators. The increase of the resolution on parameters would also improve Our
algorithm in finding designs with even better performances.
Finally, we demonstrated that with our genetic algorithrn, it is possible to eva-
luate very few designs amongst the total search space in order to obtain improved
dcsigns. For a population of one hundred manipulators, it is possible to obtain
manipulators with higher performances then those of the Y Star, only after twenty
x
generations (i-e., 2000 manipulators considered) among a search space of 1 x lOZ3
(E) et sphbrique (S). Une chaîne cinématique peut être simple ou complexe et
ouverte ou fermée. Une chaîne cinématique simple est une chaîne cinématique ne
contenant que des corps ayant un degré de connectivité plus petit ou égal à deux.
(a) hélicoïdal
(c) prismatique
(b) rotoïde
(d) cylindrique
(e) planaire ( f ) sphérique
Figure 1.1 - Couples cinématiques inférieurs et symboles
Le degré de connectivité d'un corps est défini comme le nombre de corps qui lui est
connecté par des couples cinématiques inférieurs. Il siiffit qu'un seul corps d'une
chaîne cinématique ait un degré de connectivité supérieur à deux pour que la chaîne
entière soit déclarée complese plutôt que simple. Comme le montre la figure 1.2,
les chaînes cinématiques possédant au moins une boucle cinématique fermée sont
dites fermées, autrement elles sont ouvertes.
1.1.2 Manipulateur sériel et parallèle
En général, un manipulateur est un système mécanique visant à accomplir des
t Aches de manipulation [2]. Le tableau 1.1 présente une classification des manipula-
(a) MS (simple et ouverte) (b) enchaînement (simple et fermée)
(c) arborescent (complexe et ouverte) (d) 'IF (complexe e t fermée)
(e) hybride (complese et fermée)
Figure 1.2 - Classification des chaînes cinématiques
teurs selon les différents types de chaîne cinématique et du degré de connectivité de
leurs composantes. Ces types de manipulateurs sont aussi indiqués à la figure 1.2.
Le tableau 1.1 montre par exemple qu'un M P est. une chaîne cinématique com-
pIese et fermée avec deux corps dont le degré de connectivité est supérieur à 2
(ci > 2. i = 1. 2) et toutes les autres corps avec un degré de connectivité égale à 2
(ci = 2. i > 2). Ce type de connectivité force la présence d'au moins deus boucles
cinématiques fermées en parallèle: de là le nom de ce type de manipulateur.
Tableau 1.1 - Classification des manipulateurs chaîne
cinématique Simple
cmaz 5 2
Complexe cm, > 2
Par opposition, un manipulateur sériel, c'est-à-dire MS se compose d'un en-
semble de corps connectés en série par des couples cinématiques inférieurs, habi-
tuellement des couples à 1 DDL soit: prismatiques ou rotoïdes [38]. C'est le plus
simple de tous les manipulateurs robotiques et il apparaît comme sous-ensemble
des manipulateurs robotiques plus compleses. De nos jours, un grand nombre de
designs de hlSs sont utilisés dans l'industrie. On peut citer' par esemple, I'indus-
trie automobile et alimentaire où ils effectuent notamment des opérations d'assem-
blage. d'emballage e t de manutention (voir Fig. 1.3). Ces manipulateurs sont utiles
et adéquats pour des tâches industrielles simples et variées de petite et moyenne
précision sur un large espace de travail. Ils ne peuvent cependant pas réaliser cer-
taines tâches plus difficiles et complexes comme le transport et la manipulation des
charges lourdes et les tâches d'assemblage et de montage de grande précision. Une
esplication possible de ceci est que chaque moteur doit déplacer? hormis la charge
utile. la structure mécanique et les moteurs situés en aval de ce dernier.
Ouverte
sériel
I
Fermée Ti-W
I arborescent sans boucle 1 hybride 1 q 3 2, i > m
Type Enchaî-
Connectivité c, = 1, i = 1,2 q = 2 , i > 2
Note: ci est le degré de connectivité du corps i.
Connectivité cl = 2, Vi
parallèle
nement
c, = 2: i > 2 >_ 2, i = 1,-..,m
c, > 2, i = 1>2
Figure 1.3 - Applications de manipulateurs sériels
Un autre type de manipulateur est le manipulateur parallèle: appelé dans ce
mémoire MP. Un MP est composé de deux corps principaux, une base e t une plate-
forme mobile, couplés par trois ou plusieurs chaînes cinématiques simples que l'on
appelle jambes. Une seule articulation par jambe est habituellement actionnée e t
mesurée. alors que les autres articulations sont laissées libres (voir Fig. 1.2d). Les
MPs sont particulièrement intéressants parce qu'ils possèdent des caractéristiques
complémentaires aux ivISs. Ils peuvent être utilisés dans des situations où les ca-
ractéristiques des M S s ne peuvent satisfaires les esigences de l'application. En
général. les hfPs peuvent supporter une plus grande charge utile e t possèdent
12
une meilleur précision de positionnement que les hiISs de grandeurs équivalentes.
Comme pour un MS, il est possible d'obtenir des deplacements rapides avec un
kIP en réduisant sa masse. Cependant, les MPs possèdent une rigidité structurelle
supérieure qui leurs permet, même avec des membrures légères, de maintenir une
précision de positionnement supérieure. Les MPs sont aussi dotés d'un espace de
travail réduit comportant plus de problèmes de singularités et d'obstructions que
les MSs.
Les applications des MPs sont de plus en plus diversifiées. Comme premier
exemple, on peut citer l'utilisation d'une plate-forme de Stewart-Gough dans les
simulateurs de vol fabriqués par la compagnie CAE Electronique Inc. de Montréal
(voir Fig. 1.4). Pour cette application, l'utilisation d'un M P est le meilleur chois
Figure 1.4 - Plate-forme de Stewart-Gough et simulateur de vol
possible puisque celui-ci a une très grande rigidité e t un rapport charge utile/masse
d u manipulateur très élevé.
Les hIPs se retrouvent notamment dans l'industrie pour effectuer des opérations
d'assemblage ainsi que pour supporter et mouvoir des pièces sur lesquelles il faut
réaliser certaines opérations d'usinage et de soudage par exemple. On peut aussi
mentionner qu'à l'heure actuelle, la conception de machines-outils à commandes
numériques à partir de MPs est en pleine progression (voir Fig. 1.5).
Figure 1.5 - Machine-outil à commandes numériques à architecture parallèle
1.1.3 Degré de liberté
Un degré de liberté (DDL) exprime la possibilité de positionnement ou d'orien-
tation d'un corps par rapport à un certain axe [4]. Pour les manipulateurs, le
nombre cle DDLs est associé à la plate-forme mobile ou effecteur (E , ) .
1.1 -4 Modèle géométrique
Designons par
le vecteur des coordonnées articulaires (CAS) d'un manipulateur a n degrés de
liberté, ainsi que
les coordonnées cartésiennes (CCs) de son Ef. Ces coordonnées peuvent définir la
position d'un point &/ou l'orientation de l'Er par rapport à un repère de base.
Tel que montré à la figure 1.6' le modèle géométrique direct (MGD) d'un ma-
nipulateur consiste à déterminer les CCs {xi}; de l'El pour des valeurs des CAS
( q , ) Y données. Le modèle géométrique inverse (MGI) consiste à déterminer les
C-1s {qi}? dii manipulateur pour des CCs {xi}; données. En d'autres termes,
ceci revient a déterminer la configuration du manipulateur correspondant à une
position et une orientation donnée de l'EF
1.1.5 Espace de travail
L'espace de travail (I4') d'un manipulateur est l'ensemble des coordonnées car-
tésiennes atteignables par 1'Ej du manipulateur. Pour le hIS à poignet sphérique, la
représention de l'espace de travail I V est habituellement simplifiée par le découplage
de la partir positionnement et l'orientation ce qui permet de représenter d'abord
Figure 1.6 - Relation entre l'espace articulaire et l'espace de travail
en 3D les possibilités de positionnement (l'espace atteignable du centre du poi-
gnet) et ensuite, l'espace atteignable en orientation de 17Ej. Dans le cas des MPs.
il y a habituellement couplage entre orientation et translation ce qui force une
représentation en 6D. Il faut alors utiliser des coupes et des projections de l'espace
de travail IV. afin de ramener CV à des représentations graphiques en 3D [8! 261.
L'espace de travail CC' en 6D est ramené à u n espace en 3D dans le cas d'un M P
en translation 3D, c'est-à-dire un manipulateur dont ISEj ne produit que des mou-
vements de translation avec une orientation constante. L'espace de travail IV des
kISs et 31Ps est limité par trois facteurs:
- les limites de débattements des articulations:
- les intersections des composantes:
- les limites des courses des actionneurs.
1.1.6 Matrice jacobienne et singularité
L a matrice jacobienne (J) d'un manipulateur est une matrice d'influence qui
exprime la relation entre les vitesses articulaires 4 du manipulateur et le torseur
de vitesse t [wT vTIT de l'Er: où t est composé du vecteur vitesse angulaire w
et d u vecteur vitesse v de l'origine du référentiel attaché à l'Et
En général, cette relation de vitesse d'un système mécanique peut être exprimée
par:
At = Bq,
où A est la matrice jacobienne parallèle et B est la matrice jacobienne sérielle.
Dans le cas des hlSs, la matrice jacobienne parallèle A est toujours la matrice
identité et donc la matrice jacobienne J, est donnée par
Dans le cas des manipulateurs pleinement parallèle (exemple les plate-formes
de Stewart-Gough)? la matrice jacobienne sérielle B est toujours diagonale. alors
que la matrice jacobienne parallèle est non-triviale. L'inverse de B esiste en autant
que les éléments de la diagonale sont non nuls. Ainsi. la matrice jacobienne des
manipulateurs pleinement parallèle est donnée par
Dans le cc= des manipulateurs parallèles, ni la matrice jacobienne parallèle B,
ni la matrice jacobienne sérielle A ne sont triviales et il est nécessaire de travailler
directement avec les deux matrices jacobiennes A et B.
Une singularité survient pour une configuration de manipulateur où le nombre
de DDLs de l'El est différent de la dimension de l'espace de travail dans lequel il
évolue [Il]. Pour chercher les configurations singulières d'un MP, on peut entre
autres utiliser une méthode analytique fondée sur l'étude des matrices jacobiennes
parallèles et sérielles du manipulateur [381. Les types de singularités sont résumés
dans le tableau 1.2.
1.1.7 Topologie et paramètres géométriques
Dans ce mémoire, la topologie est la description sous-forme de graphe des struc-
tures de chaînes cinématiques d'un manipulateur à l'aide de différents couples ci-
nématiques. L a topologie fait abstraction de la géométrie de la chaîne.
Les paramètres géométriques décrivent un manipulateur à sa position initiale
ainsi que la position et l'orientation des ses couples cinématiques. Les paramètres
géométriques procurent quelques informations sur la forme des composantes. Par
Tableau 1.2 - Classification des t m e s de sinaularité Type de singularité
Parallèle
Sérielle
Parallèle/ Sérielle
Structurelle
1 Equation 1 Caractéristiques
~- -
Det (B)=O
Det(A)=O et Det (B) =O
1 Il est possible de déplacer la ' plate-forme mobile alors que les articulations motorisées sont bloquées. Il n'est pas possible d'engendrer certaines vitesses de la plate-forme mobile. Les singularités sérielles représentent les limites de l'espace de travail. Il est possible de déplacer de manière infinitésimale la plate-forme mobile alors que les articulations motorisées sont bloquées et inversement. Il apparaît pour des dimensions particulières des manipulateurs. Pour des configurations articulaires particulières, le MGD admet une infinité de soiutions.
esemplc, deux couples cinématiques liés par une composante définissent la longueur
de celle-ci.
1.1.8 Configuration
Dans ce mémoire, la configuration d'un manipulateur est un vecteur q qui
contient tous les CAS du manipulateur et qui permet de définir la position et
I'orientation de tous les corps le constituant' c'est-&-dire les jambes, l'El et la base.
1. i -9 Synthèse géométrique
Dans le cadre de ce mémoire. la synthèse géométrique est le choix des valeurs
cles parimètres géométriques d'un manipulateur afin d'optimiser ses performances
globales, c'est-à-dire sur tout le domaine de son espace de travail W .
1.1.10 Mode d'assemblage
La notion d e mode d'assemblage est associée aux différentes solutions du MGD.
Ainsi, pour un vecteur de CAS connu, il peut y avoir plusieurs solutions au MGD,
chacune représente un mode d'assemblage différent. Pour les manipulateurs sériels,
il existe toujours une seule solution au MGD, et donc, ceux-ci ne possèdent qu'un
seul mode d'assembIage. Par contre, les manipulateurs Stewart-Gough peuvent
avoir jusqu'à 40 solutions réelles distinctes au MGD [13]' et ainsi' posséder 40 modes
d'assemblage.
1.1.11 Mode de fonctionnement
La notion d e mode de fonctionnement est associée a u s différentes solutions du
AIGI. -linsi, pour une CC connue, il peut y avoir plusieurs solutions au MGI,
chacune représentant un mode de fonctionnement différent. Pour les manipula-
teurs sériels à sis articulations rotoïdes. il esiste jusqu'à 16 solutions distinctes au
LJIGI. c'est-à-dire les différentes configurations d u manipulateur que l'on appelle
mode de fonctionnement. Pour les manipulateurs pleinement parallèles, la matrice
jacobienne sérielle B est diagonale. Chaque terme Bii de celle-ci est associé à une
jambe du manipulateur. Un mode de fonctionnement est dans ce cas l'ensemble
cles configurations du manipulateur pour lesquelles les {Bi*}; ne changent pas de
signe. ni ne s'annulent.
1.1.12 Aspect
Tel que défini par Chablat [Il], les aspects sont les plus grands domaines de
l'espace de travail bV exempt de toute singularité. L'ensemble des aspects d'un
manipulateur peut être obtenu en soustrayant de l'espace de travail I.V les confi-
gurations singulières. Dans ce mémoire, nous utiliserons la notion d'aspect afin de
caractériser la plus grande partie de l'espace de travail TV qui est parcourable par
r E J .
1.1.i3 Octree
Ln reprisentation octree [II] est obtenue en divisant récursivement Iiespace
occupé par un objet en huit cellules de tailles égales appelées octant. 11 existe
trois catégories d'octants: noir qui indique que l'octant est à l'intérieur de l'objet.
blanc qui précise qu'il est à l'extérieur de I'objet et gris, quant il y a occupation
partielle de l'octant par l'objet. Ainsi, la modélisation d'un volume est réalisée par
iin cnsemble de cubes de tailles différentes. Les plus petits cubes étant proches
de la frontière de l'objet, leur taille définit la précision de l'octree. Cette méthode
originalement proposée par Meagher [25] est particulièrement bien adaptée pour la
représentation de volumes complexes et pour réaliser des opérations booléennes sur
ces volumes. Nous allons l'utiliser pour la détermination des espaces de travail W.
1.2 Travaux Précédents
Dans la littérature, il existe un très grand nombre de travaux qui présentent
toute une variété de stmcture de MPs 126, 281. Dans ce mémoire, nous nous
intéressons aux différentes méthodes qui ont permis de générer ces nouveaux designs
de manipulateurs parallèles. Cette section présente quelques-unes des méthodes
utilisées pour la synthèse géométrique et topologique de MPs, autres que la simple
intuition ou éclair de génie (291.
Le hlanta et le Kanuk (voir Fig. 1.7) sont deus nouveaux manipulateurs paral-
Figure 3.8 - 1" et Se modes opérationnels du Y Star
(a) 3" mode opérationnel (b) 4' mode opérationnel
Figure 3.9 - 3' et il" modes opérationnels du Y Star
3.4 Aspect
Dans ce rn6moire. iin <aspect est défini comme étant le plus grand domaine de
l'cspace de travail esempt de toute singularité. Ainsi? à l'intérieur de ce domaine,
(a) 5' mode opérationnel (b) 6" mode opérationnel
Figure 3.10 - .se et 6e modes opérationnel-s du Y Star
il est possible d'effectuer des trajectoires continues sans danger de passer par une
singularité [Il] .
Les manipulateurs de la classe Star sont dit non cuspidau puisqu'il ne peuvent
pas changer de mode d'assemblage sans franchir de singularité. 11 y a donc passage
par une singularité parallèle en changeant de mode d'assemblage tout comme il y
;i passage par une singularité se rie il^ on changeant de mode opérationnel. Le plus
grand domaine esempt de toute singularité pour un manipulateur de la classe Star
est donc le plus grand espace associé à un des modes opérationnels et situé dans
l 'un ou lZaut.re des modes d'assemblage. En ce qui concerne le Y Star, il y a deus
caspects symétriquement identiques, c'est-à-dire le 1" mode opérationnel de chacun
des dciis modes d'assemblage, dont I'un deux étant illustré à la figure 3.8a.
(a) ïe mode opérationnel (b) 8' mode opérationnel
Figure 3.11 - re et ge modes opérationnels du Y Star
3.5 Effets de la variation d'un paramètre géométrique sur l'espace de
travail
hlême doté d'un outil rapide d'évaluation et d'affichage de l'espace de travail
d'un manipulateur. il est très difficile pour un concepteur de modifier les paramètres
géométriques d'un design pour obtenir de meilleurs performances dans l'espace de
travail IV. La forme de IjV pour un kIP est souvent très cornpiese et ne peut être
caractérisée par des équations simples. Il est alors impossible de faire des relations
entre la modification de paramètres géométriques et l'effet sur l'apparence de W .
Pour s'en convaincre, nous proposons de modifier quelques paramètres géométriques
et tenterons d'observer les effets sur l'espace de travail I.V du \- Star.
La première modification est la variation de l'angle w2, c'est-à-dire l'inclinaison
de la 2' vis par rapport a u plan x-9 de A. L a figure 3.12 illustre l'espace de travail
67
du le' mode d'assemblage pour des valeurs de w2 = {60°, 30". - 30"- - 60").
Apparemment. la forme de l'espace de travail demeure symétrique par rapport au
(a ) w2 = 60" (b) w2 = 30"
( c ) u;, = -30" ( d ) ~2 = -60"
Figure 3.12 - Effet de la variation du paramètre géométrique w2 sur CV du 1" mode d 'ass e m t lag e
plan vertical passant par l'axe de la 2' vis. Le volume de l'espace de travail est
augmenté pour w2 > O et reste sensiblement le même que celui du Y Star pour
u2 < O : mais tend vers une forme allongée. Aussi, pour w2 = -30" et w2 = -GO0:
I'E! peut descendre sous le plan horizontal en absence d'obstruction mécanique.
La deuxième modification est la variation de l'angle 72, c'est-à-dire la rotation
de la 2" vis par rapport à l'a,~e z de A. On obsen-e sur la figure 3.13a que lorsque
f i - (a) % = 15' (b) % = 60"
( c ) Y:! = 90' (d) = 165O
Figure 3.13 - Eflet de la variation du paramètre géométrique 7 2 sur IV du le' mode d'assemblage
deus vis sont très rapprochées. l'espace de travail est alors plus petit et tend à
se situer au-dessus de l'autre vis. Pour des angles -12 = 60° et 7~~ = 165"' on
observe une protubérance au-dessus de la 2e vis. Finalement. lorsque la valeur de
l'angle 2 se rapproche de celle du Y Star (voir Fig. 3.13c), l'espace de travail est
encore similaire à celui du Y Star, mais avec une partie tronquée encore un fois
au-dessus de la 12" vis.
Les deus modifications précédentes montrent bien que même en faisant varier
uniquement un paramètre géométrique à la fois, il est extrêmement difficile de
prévoir la variation de l'espace de travail. Il est impensable qu'un concepteur
puisse optimiser le design de manipulateurs par rapport à un ou même plusieurs
critères de performance s'il doit simultanément considérer les vingt paramètres
géométriques. Il est ainsi nécessaire d'utiliser une méthode plus systématique, que
nous appelons synthèse géométrique, pour optimiser les paramètres géométriques
afin d'obtenir des caractéristiques spécifiques sur I V .
CHAPITRE 4
SYNTHÈSE GÉOMÉTRIQUE DE MANIPULATEURS
PARALLÈLES DE TOPOLOGIE STAR
Ce chapitre présente l'implantation d'un algorithme génétique (AG) pour la
synthèse géométrique de MPs de topologie Y Star. Le design d'un manipulateur
exige l'utilisation de programmes d'évaluation pour mesurer les performances de
chaque design. Les modifications géométriques sont déterminées arbitrairement sur
le design dans l'espoir d'améliorer ses performances. Ce processus est extrêmement
long et pénible puisqu'il est contrôlé complètement par l'intuition et l'expérience
du concepteur. Donc, un outil d'optimisation multi-critères tel qu'un AG est hau-
tement désirable pour y a r r i~e r . La particularité de ce travail est qu'un AG utilise
plusieurs critères de performance simultanément lors de la considération d'une po-
pulation de designs potentiels.
Il est à noter que ce chapitre a déjà fait l'objet d'une publication et d'une pré-
sentation à la conférence IEEE internationale sur la robotique et l'automatisation
qui a eu lieu à Détroit en Mai 1999 [do] et d'un séminaire à l'École Polytechnique
de hlontréal.
4.1 Critères de performance
La synthèse de MPs requiert l'évaluation d e chaque design potentiel dans le
bii t d'établir la conformité de ses performances avec les spécifications. Malheu-
reusement. les indices de performance (volume de l'espace de travail. mobilité,
rigidité, singularité. etc.) ne peuvent, en général, être dérivés puisque disponibles
uniquement sous une forme non-dérivable. Ainsi, nous sommes limités à utiliser
des techniques d'optimisation qui ne dépendent pas des dérivés de ces indices,
mais seulement de leurs évaluations. Les méthodes habituelles d'optimisation [15]
basées sur le gradient ne peuvent, par conséquent, être utilisées ici. D'ailleurs,
les critères de performance globaux, tels que le de T V ou la proportion
de T T ' ayant une dextérité supérieure à un certain seuil, par exemple, requièrent
tous deus une discrétisation de I,V qui empêche l'utilisation de techniques comme
celles mentionnées dans Liu [23].
Les critères de performance permettent de calculer les indices de chacun des
manipulateurs de la classe Star. Ces indices de performance sont utilisés par l'AG
dans le but d'effectuer une sélection naturelle des manipulateurs les plus promet-
tciirs. Dans cette étude? nous n'utilisons que quatre critères de design: le volume
d'iin domaine de Cf', le rapport de forme, le rapport de dextérité et une combinai-
son linéaire des trois premiers critères. Ces critères sont maintenant présentés en
clétails.
4.1.1 Volume d'un domaine de l'espace de travail
Le volume d'un domaine de l'espace de travail CV, dénoté u,, de chaque ma-
nipulateur de la classe Star est mesuré par le biais de sa partition en octrees [l l].
Tout d'abord, il faut choisir une boîte initiale suffisamment grande pour contenir
t.otalement W. Ensuite, il faut déterminer la profondeur de I'octree qui contien-
dra un domaine de IV choisi pour ensuite diviser la boite en plus petits cubes de
dimension égale à ceux du dernier niveau de l'arbre. La notion de domaine de W
est utilisée ici parce que pour un IV, il est possible de représenter soit un espace
d'assemb1age (espace associé à un mode d'as~ernbiage)~ soit un espace opérationnel
(espace associé à un mode opérationnel) ou la totalité de II;. Le MG1 doit ensuite
être évalué a u centre de chaque petit cube et si sa solution correspond à une po-
sition possible de l q dans II;: il est ajouté dans l'octree. Finalement, le volume
d u domaine de LC' est calculé par le volume de tous les petits cubes ajoutés dans
I'octree. à savoir de tous ceux qui sont entièrement inclus dans I V .
L a résolution sur la définition d'un domaine de IV peut être augmentée en
modifiant la profondeur de l'arbre. Le domaine de LI/' considéré pour chaque mani-
pulateur évalué dans la classe Star est l'aspect? c'est-à-dire le plus grand domaine
exempt de singularité. L'aspect du Y St.ar est le 1"' mode opérationnel d u 2' mode
d',assemblage de son 1.t' tel qu'illustré à la figure 4.1. En théorie, les dctis modes
d'assemblage doivent être identiques: c'est pourquoi il devrait - avoir un aspect
par mode d'assemblage. Cependant? il y a une petite différente de volume entre les
deux aspects calculés a cause de la résolution sur la définition ce qui fait que l'aspect
du 1- Star se situe sous les vis. Le volume de l'aspect du Y Star est de 288086 u3
Figure 4.1 - Aspect d u Y Star pour un octree de profondeur 5
(unité" pour un arbre de profondeur 5 (calculé en 16 secondes) et de 284576 u3
pour un arbre de profondeur 6 (calculé en 127 secondes). Le fait d'ajouter un
niveau de profondeur à I'octree ne diminue le volume calculé que de 1.2% pour
11 1 secondes supplémentaires de calculs. L a différence de temps de calculs est trop
significative pour une si petite augment,ation de résotution sur le volume de l'as-
pect. ckst pourquoi les aspects de tous les manipulateurs dc la classe Star seront
6vaIués pour des octrees de profondeur 5.
Il n'y a pas d'rinité aux valeurs de volumes d'aspect parce que lcs dimensions
74
des designs évalués sont non-dimensionnels (largeur de la vis 1 choisie à 150 unités).
4.1.2 Rapport de forme
Le rapport de forme, dénoté p j , est défini comme
linner P j = - leu ter
OU linne, est la largeur de la plus grande boîte inscrite à l'intérieur d u domaine
de IV et lmt, est la largeur de la plus petite boîte contenant complètement le
même domaine (voir Fig. 4.2).
/ domaine de I V
Figure 4.2 - Boaes caractérisant le rapport de forme
Ce critère procure une information sur la forme du domaine de W. Il peut être
très utile pour le design d'un manipulateur exigeant une forme spécifique de I p V . Par
escmple. pour une opération d'assemblage nécessitant des mouvements équivalents
de l'EI dans toutes les directions.
-- 13
Pour le Y Star (voir Fig. 4.1), le rapport de forme de l'aspect de CV est de
16.1%, soient Lin,,, = 25 u et lm,, = 150 u. Le rapport de forme d u 2' mode
d'assemblage est le même que celui de son aspect puisque celui-ci couvre 97.8% du
volume de tout l'espace du 2' mode d'assemblage.
4.1.3 Rapport de dextérité
Le rapport de destérité, dénoté pd, d'un design est défini comme la proportion
d'un domaine de PV ayant une dextérité supérieure à un minimum requis que nous
choisissons égale à 25%. La dextérité d'un design de manipulateur. dénotée K (J,))
est definie comme le nombre de condition de la matrice jacobienne J, évalué lorsque
l'Ef est positionné au centre d'une boîte, c'est-à-dire:
où j est le numéro du mode opérationnel du domaine étudié. O,,, et a,, sont les
valeurs singulières minimum et maximum de J,.
Les valeurs de destérité de O et 1 représentent respectivement un point de
singularité et d'isotropie. Précédemment, il a été mentionné qu'un domaine de IV
etait construit à partir de petites boîtes de la plus petite dimension dans I'octree,
soit Ic volume u,,,- Par hypothèse. la destérité de tous les points à l'intérieur d'une
petite boîte est égale à ta dextérité en son centre. L a figure 4.3 permet de vérifier
wsmms4xonz 1-C~~R~EDEDEXIERITE DEMERTE w CENTRE DECHAOUEP~CCWE I
Figure 4.3 - Validation de l'hypothèse de d e d é r i t é au centre des petits boites
cette hypothèse. La courbe illustre la dextérité lorsque l'El du manipulateur k' Star
se déplace selon l'axe z (de z = - 100 à z = 100) pour x = O et y = O. La courbe de
destérité est une fonction monotone. car il n'y a pas de variation subite de destérité
entre les centres de deux boîtes adjacentes sauf à proximité d'une singularité, c'est-
a-dire entre z = -6.25 et z = 6.25. Ces variations subites ne sont cependant
pas considérées puisque seuls les boîtes avec une dextérité supérieure à 25% sont
conservées.
La proportion du domaine de I I ï qui a une dextérité supérieure à 25% est
calculée par l'équation suivante:
où z?d est le volume des petites boites ayant une dextérité supérieure à 25% e t v,
est rappelé être le volume de l'aspect de W.
Ce critère permet d'évaluer le niveau de précision de positionnement d e 17Ef.
une singularité, le manipulateur est imprévisible e t I1E1 est instable. Près d'une
singularité, la de-uténté est faible et alors cette endroit doit être évité. Le rapport
dc dextérité ne fournit pas d'information quant à la distribution des singularités
à l'intérieur d u domaine de IV. Ceci pourrait faire l'objet d'un autre critère d e
performance. Notre étude sera cependant basée sur les aspects qui sont les plus
grands domaines d e W exempts de toute singularité. 11 n'y aura donc pas de point
de singularité e t d e zone de faible dextérité A l'intérieur des espaces étudiésl mais
uniquement des zones d'excellente, e t de bonne dextérité-
4.1.4 Combinaison linéaire
Le critère de combinaison linéaire utilise une moyenne pondérée des trois pre-
miers critères. II permet de conserver les manipulateurs de la classe Star qui
pcrforment bien selon les trois critères simultanément et empêche de conserver uni-
c~ucrnent les manipulateurs spécialisés selon un seuI critère. Ainsi, la combinaison
linéaire, dénotée pt est définie telie que
avec k, = 1.179 x 1 0 ~ ~ ü3: k2 = 0.54 et k3 = 2. Ces constantes sont calculées à
partir des performances du Y Star (voir Tab. 4.1) de façon à accorder une impor-
tance égale à chaque critère et obtenir une valeur de p = 1. Il est intéressant de
noter que plusieurs manipulateurs de la classe Star auront un indice de combinaison
linéaire supérieure à 1. Ceci ne constitue pas un problème en soi puisque p = 1
n'est pas ici une limite, mais plutôt une valeur unitaire attribuée à la performance
du 1- Star pour fin de comparaison. Les constantes kit k2 et k3 de l'équation (4.4)
peuvent être modifiées, afin d'accorder plus d'importance à un critère plutôt qu'un
autre.
Tableau 4.1 - Indices de performance du Y Star
1 Rapport de forme 1 pf 1 0.167 1 aucune 1
Critère Volume d'un domaine de CV Ramort de dextérité
1 Combinaison linéaire 1 p 1 1 1 aucune 1
Notation
UW
DA
Valeur 288086 0.601
Unité u3
aucune
4.2 Synthèse géométrique
L a synthèse géométrique de MPs de topologie St.ar est ici effectuée avec l'aide
d'un .4G. Les AGs opèrent de façon analogue a u mécanisme génétique biologique
ct la théorie de sélection naturelle de Darwin [6] .
Les AGs sont des techniques d'optimisation stochastiques puissantes [lï] e t
sont considérés ici comme un outil d'optimisation pour la synthèse géométrique
de MPs de topologie Star. L7AG utilisé permet d'améliorer les performances de
manipulateurs par rapport à un ou plusieurs critères de performance à la fois. Ceci
peut être fait de façon totalement automatique, autrement dit sans avoir recours à
l'intuition d'un concepteur. De plus, cet outil permet de considérer des solutions
qui semblent bizarres a priori, mais qui peuvent être prometteuses à plus long
terme.
Les .\Cs comptent une multitude d'applications. Il y a notamment l'extraction
de lignes à partir d'une image [6] et le contrôle d'une main robotisée à quatre doigts
pour saisir et manipuler des objets [14]. Les AGs sont aussi utilisés pour contrôler
1.1 navigation d'un robot mobile entre des obstacles [34], pour l'optimisation des
dimensions des poutres [16] et pour permettre de déterminer toutes les solutions du
XIGI d 'un manipulateur sériel [ i l . Ces quelques applications sont plutôt diversifiées
mais, clans tous les cas, les AGs semblent bien solutionner le problème dans des
situations oir il est difficile ou impossible d'utiliser les techniques d'optimisation
traditionnelles. basées sur le gradient. afin de maximiser l'atteinte des performances
spécifiées au cahier de charge.
Les ,AGs permettent une amélioration progressive d'une population de génotypes
par reproduction, évaluation des indixidus et application de la sélection naturelle à
chacune des générations. Cette méthode permet donc le mouvement d'une popu-
lation de solutions vers plusieurs optima simultanément. Les AGs sont donc bien
adaptés pour résoudre des problèmes de synthèse de mécanismes complexes comme
les manipulateurs parallèles où plusieurs solutions doivent être simultanément con-
sidérées et itérativement améliorées à partir d'un ensemble de candidats potentiels.
Les parties intéressantes de bons designs peuvent être ainsi recombinées par croi-
sement avec les parties intéressantes de d'autres afin d'en obtenir potentiellement
de meilleures.
Les caractéristiques de chaque individu sont codées sous forme d'un génotype
sur lequel trois opérations sont possibles, c'est-à-dire: le croisement, la mutation
et la sélection naturelle. Dans notre cas, le croisement et la mutation serviront à
générer et modifier de nouvelles géométries de manipulateurs, alors que la sélection
naturelle classera les designs de manipulateurs selon différents critères de perfor-
mance et consewera les meilleurs individus. Ci-dessous. nous discutons du co-
dage/décodage, du croisement. du mécanisme de mutations et de la sélection na-
ti~rclle.
Le génotype d'un manipulateur est le codage de ses phénotypes: et corres-
pond i une représentation par chaîne de nombres binaires. Un phénotype est une
caractéristique physique d'un individu et est considéré ici comme un paramètre
géométrique. Le codage nécessite la discrétisation de chaque paramètre selon une
résolution prédéfinie entre deux valeurs limites. Pour le design de MPs de la classe
Star, le génotype de chaque individu est une série de trois nombres entiers à 32 bits
soit un total de 96 bits. Comme discuté au chapitre 2, nous utilisons 20 paramètres
géométriques ou phénotypes pour définir la géométrie d'un manipulateur. Ceux-
ci sont extraits d'un génotype, dénoté G,: comme illustré ci-dessous où gi est un
nombre binaire qui représente la partie du génotype associé a un phénotype pi-
Le décodage consiste à estraire du génotype tous Ies phénotypes. L'équation
générale de décodage est de type:
52
où gimtn et gimax sont les limites minimum et maximum désirées d'une partie du
génotype gi associée à un phénotype pi- Dans notre cas, l'équation générale de
décodage devient:
où % (modulo) est une opération qui consiste à conserver uniquement le reste de
la division du terme de gauche par celui de droite pour que gi soit compris entre
gimi, et gi,,,, ri est la r6solution de pi et pimi, est la. valeur minimum possible de pi.
Ainsi, la partie du génotype gi peut avoir des valeurs entre gi,,, et gi,,,, mais après
conversion par l'équation (4.6)' les valeurs de pi seront comprises entre les limites
minimum et maximum choisies, c'est-à-dire entre pimin et pi,,, .
Le codage consiste à transformer les phénotypes en parties du génotype G,.
L'équation générale de codage est donc de type:
Dans notre cas: l'équation générale de codage devient:
Le tableau 4.2 contient toutes les données nécessaires pour effectuer le décodage
rt le codage du génotype G,,. Un gi utilise 4 bits du génotype G, lorsque gi,,, <
Tableau 4.2 - Données relatives à chaque phénotype
16 et utilise 5 bits lorsque 15 < gi,,, < 32. Le nombre de possibilités d'un
phénotype pi équivaut à (gimal + 1). En tout, 88 bits sont utilisés sur un total de 96
cre qui donne. pour les limites imposées dans le programme sur chaque paramètre
géométrique. un total de n:!, (g imaz + 1) = g3 x 116 x 12' x 13* x 21' = 9.9 x 10" pos-
sibilités de géométries différentes pour la classe Star. Une recherche directe des
individus Ies plus performants de la classe signifierait d'évaluer tous les manipu-
lateurs. Pour un temps moyen d'évaluation de 21 secondes par manipulateur. il
faudrait 3.1 x l@15 années pour évaluer tous les manipulateurs à l'aide d'un pen-
84
tiiim TI (350 hIHz) avec 128M de mémoire vive.
Le tableau 4.2 résume la correspondance entre les phénotypes et génotypes
,îssociés aux 20 paramètres géométriques des manipulateurs de la classe Star, dont
Ies équations de décodage sont:
7 2 =(g1 % 11) x l 5 + 15
W.L = ( 9 2 % 13) x 15 - 90
~2 = (93 % I l ) x 15
X I = (g4 % 21) x 10 - LOO
y1 = (g5 % 21) x 10 - 200
5 2 = (96 % 21) x 10 - 100
y2 = (9; % 21) x 10- 100
~g = (gg % 13) x 1 5 - 9 0
.UJ = (99 % I l ) x 15
q~ = (glo % 9) x 15
22 = (gll % 21) X 10 - 100
x3 = (912 % 21) X 1 0 - 100
g3 = (g,3 % 21) X 10 - 100
23 = (gl-, % 21) X 10 - 100
L'équation (4.9) montre que l'angle ;f* varie de 15" à 165" par incrément de 15".
11 existe 11 valeurs possibles pour cet angle et donc l'angle - j j 2 peut être représenté
par un nombre à 4 bits (2' = 16 possibilités). Les cinq possibilités supplémentaires
ne sont jamais considérées puisque la valeur de l'angle serait alors hors 1irnit.e.
D'autres paramètres de design pourraient être considérés. par exemple. en dé-
finissant la position d'un point sur chacune des vis et ainsi réduire la possibilité
que Ies vis soient concourantes. Nous n'étudions pas dans ce travail toute la classe
des MPs de topologie Star, mais seulement une projection de celle-ci sur un sous-
ensemble de 20 paramètres géométriques. De plus, nous ne considérons pas les
obstructions entre les différentes composantes qui pourraient survenir pendant le
mouvement d'un manipulateur. Ce problème peut quelqries fois être éliminé a
posteriori par le concepteur en ajustant la forme des composantes afin d'éviter
l'obstruction des composantes. Ces ajustements pourraient éventuellement être
inclus dans l'-AG.
Dans un -AG, le choix de la taille de la population initiale est important puis-
qu'une population trop petite diminue la capacité de l'AG à couvrir adéquatement
l'espace de recherche. D'un autre côté, une population trop large augmente si-
gnificativement le temps requis par IXG pour évaluer les performances de tous
les nouveaux individus dans une génération ce qui résulte en une recherche in-
efficace (311. Pour plus de commodité de programmation, nous avons choisi de
maintenir constant à 100 le nombre d'individus de cette population, c'est-à-dire le
manipulateur Y Star et 99 autres designs générés aléatoirement. Sur un ordina-
teur pentium 11 (350 MHz) avec 128M de mémoire vive: le temps de calculs moyen
requis pour évaluer Ies 100 individus d'une population est approximativement de
35 minutes. ce qui est tout à fait acceptable pour une tâche de design.
4.2.2 Croisement
L'évolution d'une population de manipulateurs d'une génération à l'autre est ob-
tenue par reproduction des meilleurs individus basé sur leurs capacités de survivre
A la sélection naturelle. La reproduction est réalisée par le croisement du génotype
de deus parents pour obtenir le génotype de d e u enfants. Telle qu'illustrée à la fi-
gure 4.4. l'opération de croisement consiste à intervertir la partie finale du génotype
cles parents à un site de croisement choisi aléatoirement, afin de former le génotype
d ~ s enfants. Lors de l'opération de croisement, il est possible qu'une partie de
1 Parenu ~énotype Génotype Enfants
Père ) 0 1 0 1 1 1 0 h k d 0 1 0 1 1 I O : O ~ Garqon 1 1 1
Site de .-e croissement
1 1
I 1
Ancienne génehtion
Mère
I l
Nouvelle génération
O 0 1 1 1 1 1 : O Fille
Figure 4.4 - Opération de croisement
génotype gi soit coupée en partie. Dans ce cas, la valeur du phénotype associé
a u nouveau gi obtenu après le croisement peut être différente de sa valeur avant
le croisement. Il est aussi possible de limiter l'algorithme génétique à effectuer le
croisement uniquement entre deux parties de génotypes. Il y a ainsi plus d'une
f q o n de déterminer les sites de croisement ce qui peut faire l'objet de travaux
futurs.
4.2.3 Mutation
La mutation est l'inversion aléatoire d'un bit dans le génotype d'un enfant
durant l'opération de reproduction des individus de la population actuelle. La
mutation peut produire des mouvements dans l'espace de recherche dans toutes
les directions. ce qui permet possiblement de sortir d'un optimum local et de se
diriger potentiellement vers une région plus prometteuse. Cette manière d'obtenir
de nouvtlIcs solutions n'implique pas de calcul sur des différences locales? comme
88
des techniques basées sur le gradient, mais plutôt sur des différences imposées
stochastiquement. La probabilité de mutation doit être petite de façon à laisser la
po pulât ion s'améliorer majoritairement par croisement.
4.2.4 Sélection naturelle
L a sélection naturelle est réalisée sur une population en conservant les indivi-
dus les plus prometteurs basés sur leurs aptitudes. Dans ce travail, l a première
génération débute avec une population de 100 manipulateurs générés aléatoirement,
à laquelle est ajoutée 100 nouveaux manipulateurs générés par reproduction. Pour
consen-er la population constante, nous appliquons la sélection naturelle sur les
100 manipulateurs résultants. en les ordonnant par ordre décroissant selon chacun
des quatre critères de performance, e t ne consemons que les 25 premiers mani-
pulateurs non-identiques selon chacun des quatre critères. ,Afin de maintenir une
diversité suffisante dans la population, il est nécessaire de s'assurer que les 100 ma-
nipulateurs soient tous différents. Il est bien connu en biologie qu'une population
manquant de diversité génétique peut produire des individus qui ne surviveront
PCV à la sélection naturelle et finiront par disparaître.
4.2.5 Algorithme génétique
L a structure de l'-AG utilisé dans ce mémoire est résumé à la figure 4.5. L'algo-
rit hme créc une population initiale de 100 manipulateurs engendrés aléatoirement,
et pour chacun des manipulateurs, détermine l'aspect d e ' V , puis évalue les indices
de performance. Ensuite, il classe les manipulateurs e n ordre décroissant selon le
premier critère, c'est-à-dire le volume de l'aspect. Ensuite, 100 nouveaux mani-
pulateurs sont générés par reproduction des 100 manipulateurs de la population
actuelle. Les manipulateurs ayant les plus grands volumes d'aspect ont plus de
chances de se reproduire que ceux ayant de faibles volumes d'aspect.
Le chois des individus lors de la reproduction (voir à l'annexe B) est effectué
en sommant tout d'abord le volume de l'aspect des 100 individus de la popula-
t,ion classés par ordre décroissant de volume d'aspect. Par la suite, pour chaque
individu à sélectionner, un nombre aléatoire est tiré entre O et 1 puis est multiplié
par le volume total des aspects. Finalement. il faut sommer à nouveau le vo-
lume d'aspect des individus jusqu'à ce que la somme soit la plus rapprochée, mais
sans la dépasser, de la proportion du volume des aspects calculée précédemment.
L'individu sélectionné est celui correspondant au dernier volume d'aspect sommé.
-Après l'évaluation de l'aspect des 100 nouveaux individus. les 200 manipulateurs
de la génération actuelle sont clssés par ordre décroissant selon chacun des quatre
critères de performance. Puis, on conserve les 25 premiers individus selon le volume
de l'aspect, puis les 25 premiers individus? non-identiques ails 25 déjà choisis. selon
le deilsière critère, c'est-à-dire le rapport de dextérité, et ainsi de suite jusqu'au
qiiatrièriie critère, de façon à obtenir une population résultante de 100 individus
cliffércnts. Cette population est utilisée pour créer une nouvelle génération où
90
Ies opérations de reproduction, 17évaIuation, le clcassement e t la sélection naturelle
seront recommencées.
1 Po~uIation initiale 1
Nouvelle génération
1 Générer aléatoirement 1 1 100 manipulateurs
1
Générer IO0 manipulateurs par croissement et mutation
t [ Evaluation & Classification
1 Ordonner les 200 manipulateurs 1 par rapport à chaque Aère de 1 performance
1
1 Sélection naturelle 1 1 Conserver les 25 individus les 1 1 plus prometteurs pour chacun 1 1 des 4 critères de performance 1
1
Figure 4.5 - Structure de l'algortthme génétique
Il a été mentionné qu'un manipulateur de la classe Star peut travailler dans
l'un ou l'autre de ses deus modes d'assemblage, puisque ceus-ci sont séparés par
une zone de singularités. Il ne faut donc pas évaluer les indices de performance
pour l'ensemble de 1.V. De plus, il peut y avoir jusqu'à huit espaces opérationnels
5 l'intérieur de chaque espace d'assemblage. Pour se déplacer d'un espace opéra-
tionnel à un autre, l'Er doit aussi passer par une singularité bien que les espaces
opérationnels peuvent être superposés. Nous choisissons ici d'évaluer les critères
de performance pour l'aspect de I V (voir Fig. 4.6) qui est le plus grand domaine
de It' exempt de singularité.
1 16 domaines exempts de toute singularité ]
aspect = plus grand domaine n Figure 4.6 - Choix du domaine de TI:
4.3 Plate-forme logiciel
Les résultats présentés dans ce mémoire sont obtenus en utilisant deux pro-
grammes écrits en C++ sous Linux Redhat 6.0. Le premier programme, nommé
genetique. cpp, exécute un AG et l'autre: nommé animation. cpp, affiche les résultats
de l'.AG. c'est-à-dire un squelette 3D de tout manipulateur de la classe Star: son
aspect ainsi que ses indices de performance.
Le programme genetique-cpp ne requiert que deus informations pour son esé-
ciition soit: lc nom du fichier dans lequel les résultats de l'AG seront sauvegardés:
et le nombre de générations maximum a réaliser. Les résultats sauvegardés pour
chaque génération sont les informations sur le meilleur et le pire des manipulateurs
pour chacun des quatre critères de performance.
Le menu principal du programme animation.cpp (voir Fig. 4.7) offre plusieurs
options. L'option 1 a c h e uniquement le squelette 3D d'un manipulateur, l ' o p
tion 2 affiche e t sauvegarde un domaine de W de manipulateur en permettant de
choisir l'affichage d'un espace opérationnel? d'un espace d'assemblage ou la tota-
lité de IV. L'option 3 combine les deux premières options en affichant à la fois
**************************************************** * PROGRAMME DE VISUALISATION DE ROBOTS PARALLELES * * GENERES PAR ALGORITHME GENENETIQUE UTILISANT * * LE LOGICIEL DE SIMULATION GRAPHIQUE XANIMATE n * * * MENU PRINCIPAL * * -------------- * * * * 1 - Robot * * 2 - Volume de t r a v a i l * * 3 - Volume de t r a v a i l + r o b o t * * 4 - Octree * * 5 - Octree + r o b o t * * 6 - aspect * * 7 - aspect + r o b o t Y