# Une représentation graphique pour l'optimisation topologique de structures par algorithmes génétiques

Belkacem Sid, François Peyraut, Matthieu Domaszewski

► To cite this version:

Belkacem Sid, François Peyraut, Matthieu Domaszewski. Une représentation graphique pour l'optimisation topologique de structures par algorithmes génétiques. 8e Colloque national en calcul des structures, CSMA, May 2007, Giens, France. hal-01495831

HAL Id: hal-01495831

https://hal.science/hal-01495831

Submitted on 26 Mar 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

Public Domain
Une représentation graphique pour
l'optimisation topologique de structures par
algorithmes génétiques

Belkacem Sid*— François Peyraut**— Matthieu Domaszewski*

*Laboratoire M3M

Université de Technologie de Belfort-Montbéliard
90010 Belfort, France

{belkacem sid, francois.peyraut, matthieu.domaszewski}@utbm.fr

**Laboratoire LERMPS

RÉSUMÉ Une approche graphique d'optimisation topologique de structures par algorithmes génétiques est proposée dans ce travail. Le principe consiste à construire la structure à l'aide d'un squelette et de chair. Deux types de variables sont considérés dans cette approche : les points de contrôle des courbes cubiques de Bézier constituant le squelette et les épaisseurs de chaque courbe constituant la chair. Cette représentation permet d'éviter l'apparition de damiers et d'éléments déconnectés dans les topologies optimales. Une technique de calcul en deux phases, proposée dans ce travail, permet un gain notable du temps de calcul. Un code de calcul en langage MATLAB est développé et testé sur des exemples 2-D. Les résultats obtenus sont comparés avec d'autres méthodes et avec le code ANSYS.

ABSTRACT. A graphical approach for structural topology optimization using genetic algorithm is proposed in the paper. This method uses a graph representation by Bézier curves and mass distribution in finite element model. Two groups of variables are considered: control points of Bézier curves and thickness values for each curve. This new technique avoids the formation of one-node connected hinges and checkerboard patterns in optimal topology design. The numerical program is developed using MATLAB language and tested on benchmark 2-D problem of topology optimization. Results are compared with other methods and with the results using ANSYS code.

MOTS-CLÉS : optimisation topologique, algorithmes génétiques, représentation graphique

KEYWORDS: structural topology optimization, genetic algorithm, graphical representation
# 1. Introduction

Les algorithmes génétiques (Goldberg, 1989) ont prouvé leur efficacité en optimisation dans différents domaines. Cependant, cette efficacité est fortement liée à un choix judicieux des paramètres de l'algorithme. Parmi tous ces paramètres, le codage est généralement considéré comme étant le plus important. En effet, le codage est basé sur la représentation des solutions, représentation qui doit décrire au mieux le problème traité. En optimisation topologique des structures continues, la représentation est souvent binaire puisqu'elle s'appuie généralement sur la présence ou l'absence de matière. Ce principe a été largement adopté (Jensen, 1992, Jakiela et al., 2000, Kane et al., 1996, Wang et al. 2004). Cependant, la représentation binaire souffre de plusieurs limitations dont la plus importante concerne les défauts de connectivité et la dépendance par rapport au maillage. La réparation de ces défauts participe à la dégénérescence des chromosomes, ce qui conduit à l'inefficacité de l'algorithme génétique.

Dans cet article, nous proposons une approche pour l'optimisation topologique de structures, mais en utilisant un algorithme génétique. Ce dernier est basé sur une représentation graphique par courbes de Bézier proposée à l'origine par Tai et al. (2000). Cette représentation graphique permet de dépasser la limitation de la représentation par tableau binaire 'Bit-array' concernant la connectivité des structures solutions. Notre travail a consisté à étendre et généraliser les travaux de Tai et Chee. Le but visé est l'amélioration des performances de l'algorithme génétique tout en conservant l'idée force de Tai et Chee qui permet d'assurer la connectivité dans les structures générées. La méthode, implémentée dans un code de calcul écrit en langage MATLAB, a été testée sur des problèmes 2D et comparée avec les résultats obtenus par la méthode d'homogénéisation (Sigmund, 2001) et avec le code industriel ANSYS.

# 2. Optimisation par algorithmes génétique

Les algorithmes génétiques adoptent le principe de l'évolution darwinienne des populations biologiques (Goldberg, 1989). Une population composée de N individus, codés en chaînes de bits, est initialisée aléatoirement au début de l'algorithme. La population évolue au cours des générations en appliquant à chaque génération, sur une population intermédiaire prise par sélection, l'opérateur génétique de croisement et l'opérateur génétique de mutation. Les opérateurs génétiques, dont la tâche est l'exploration des zones admissibles et l'exploitation de ces zones dans le but de la recherche de l'optimum global, génèrent une nouvelle population plus performante que la population de la génération précédente. L'évaluation des performances des individus de la population fait appel à un module d'analyse par la méthode des éléments finis. Un critère d'arrêt, généralement basé sur un nombre maximal de générations, met fin au processus de calcul.
### 3. Formulation d'un problème d'optimisation topologique

La procédure d'optimisation consiste à définir la distribution optimale de la matière sur le domaine de conception. Cette distribution se traduit par l'absence ou la présence de la matière dans chaque élément fini. La solution optimale doit satisfaire certaines conditions technologiques ou fonctionnelles. Ces conditions se traduisent par des limitations, de type égalité ou inégalité, et le problème peut être formulé de la manière suivante :

$$ \text{Min : } f(x) \quad \text{Sous limitations :} \quad \begin{cases} g_i(x) \ge 0 & i = 1, \dots, I \\ h_j(x) = 0 & j = 1, \dots, J \end{cases} \qquad [1] $$

Les méthodes de pénalité sont souvent utilisées pour le traitement des limitations dans les problèmes d'optimisation par algorithmes génétiques. Elles consistent à introduire ces limitations dans la fonction objectif en pénalisant les performances des individus non admissibles. En adoptant la technique de Deb (Deb, 2000), le problème [1] prend la forme suivante :

$$ \text{Max : Fitness}(x) = \begin{cases} \frac{1}{f(x)} & \text{si : } x \in \tilde{\mathbb{E}} \\ \frac{1}{f_{\max} + \sum_{k=1}^{I+J} \max[0., -g_k(x)]} & \text{si non} \end{cases} \qquad [2] $$

$\tilde{\mathbb{E}}$ représente l'espace de solutions admissibles et $f_{\max}$ la fonction objectif de l'individu le moins bon parmi les individus représentant des solutions admissibles.

### 4. Représentation graphique

#### 4.1. Principe

Le principe de l'approche est de considérer la structure (Fig. 1a) comme composée de deux entités géométriques : le squelette et la chair. Le squelette est basé sur un schéma graphique composé d'un certain nombre de courbes de Bézier de degré trois (Fig. 1b). Chaque courbe connecte deux zones prédéfinies sur le domaine de conception. Ces zones sont appelées zones de support. Les éléments finis connectés entre eux par leurs côtés et disposés le long de l'abscisse curviligne des courbes forment le squelette. La chair, composée des éléments finis enrobant le squelette, complète la structure sans générer de damiers (Fig. 1c).
<figure><img src="image_1.png" /><figcaption>**Figure 1.** *Principe de la représentation graphique*</figcaption></figure>

Outre l'avantage de la connectivité des structures générées, cette approche permet un gain notable du temps de calcul. La recherche de la solution optimale peut en effet être réalisée en deux étapes. Dans la première, l'optimisation porte sur le squelette seulement. Lorsque le squelette optimal est obtenu, la deuxième étape commence avec pour objectif de trouver la distribution optimale de la chair. Sur ce point, notre approche, qui procède à l'ajout progressif de la matière, se démarque des méthodes d'optimisation topologique qui procèdent souvent à l'élimination de la matière pour la recherche de la solution optimale. Par ailleurs, notre méthode permet de gérer des connections directes (courbe 1- Fig. 1b) ou indirecte (courbe 3-Fig. 1b) entre zones de support. Elle permet aussi de distribuer la chair de manière non homogène, c'est-à-dire avec des couches d'épaisseur éventuellement variable autour du squelette (Fig. 1c). Ces améliorations permettent de conférer plus de souplesse au schéma graphique, ce qui permet de traiter une classe de problème d'optimisation topologique plus large et évite à l'algorithme génétique une convergence prématurée.

## 4.2. Codage

Les informations nécessaires pour la construction d'une structure basée sur le schéma proposé sont stockées dans un tableau représentant le codage de l'individu (tableau 1). Chaque courbe est constituée de plusieurs segments dont la position est repérée par une abscisse curviligne appelée 'coordonnée fin segment'. Deux autres variables caractérisent les segments : le type de chair et la valeur de la chair. Ces deux variables contrôlent la disposition de la chair autour de la courbe (à droite, à gauche ou des deux côtés) ainsi que la nombre de couches d'éléments.
<table><caption>Tableau 1. Chromosome</caption><thead><tr><th rowspan="2"></th><th rowspan="2">Pt départ</th><th colspan="6">Segment N°1</th><th rowspan="2">Pt arrivée</th></tr><tr><th>1er Pt contrôle</th><th>2ème Pt contrôle</th><th>Type chair</th><th>Valeur chair</th><th>Coordonnée fin segment</th><th>...</th></tr></thead><tbody><tr><td>Courbe 1</td><td>1</td><td>200</td><td>729</td><td>2</td><td>1</td><td>0.4</td><td>...</td><td>999</td></tr><tr><td>Courbe 2</td><td>999</td><td>549</td><td>201</td><td>3</td><td>1</td><td>0.3</td><td>...</td><td>950</td></tr><tr><td>Courbe 3</td><td>950</td><td>648</td><td>729</td><td>1</td><td>1</td><td>0.5</td><td>...</td><td>250</td></tr></tbody></table>

## 5. Application numérique

La méthode proposée a fait l'objet d'une implémentation informatique dans l'environnement de programmation Matlab. Nous avons validé notre approche à l'aide d'un benchmark classique d'optimisation topologique. Le domaine de conception et les conditions aux limites sont représentés sur la figure 2(a). Le domaine est discrétisé en 20×60 éléments finis de contraintes planes avec une épaisseur de 1mm. Le matériau considéré est homogène, élastique et isotrope, avec un module d'Young E égal à 100 GPa et un coefficient de Poisson v égal à 0.3. La fonction objectif f utilisée pour traiter cet exemple est la compliance. Les limitations portent sur le volume (volume optimal souhaité inférieur ou égal à 20 % du volume initial).

Une population de 100 individus est générée aléatoirement au début de l'algorithme. La convergence nécessite moins d'une centaine de générations et donne le résultat attendu (Fig. 2(b)). Notre solution a été également comparée avec succès avec celle obtenue par la méthode d'homogénéisation (Sigmund, 2001) (Fig. 2(c)) et avec celle obtenue avec le code de calcul industriel ANSYS (Fig. 2(d)).

<figure><img src="image_2.png" /><figcaption>Figure 2. (a) modèle mécanique - Solution par : (b) algorithme génétique (c) homogénéisation (d) ANSYS</figcaption></figure>
## 6. Conclusions

Une approche graphique pour l'optimisation par algorithmes génétiques a été proposée dans ce travail. La méthode est basée sur une représentation graphique dont le principe est de connecter les surfaces des conditions aux limites par un schéma graphique composé par des courbes de Bézier d'ordre trois. Ce nouveau codage est exonéré des défauts du codage classique en tableau binaire. En effet, les structures générées, solutions possibles du problème, sont complètement connectées. De plus, ce type de codage ne permet pas l'apparition de damiers ou d'éléments flottants. Enfin, ces caractéristiques sont maintenues dans toutes les générations malgré l'intervention des opérateurs de croisement et de mutation.

Cette méthode, que nous avons validée dans le cadre d'un problème de contraintes planes en élasticité linéaire, est par ailleurs prometteuse pour une utilisation en mécanique non linéaire. En effet, les techniques classiques par densité ne sont pas encore pleinement efficaces dans ce domaine en raison d'un mauvais conditionnement de la matrice de raideur tangente dans les zones à faible densité. L'approche que nous proposons devrait éviter ce problème car le squelette et la chair, constitutifs de la structure, possèdent une densité maximum. Par conséquent, dans notre approche, les zones de faible densité, qui posent problème en mécanique non linéaire, n'existent pas.

## 7. Bibliographie

- Goldberg D.E., *Genetic Algorithms in Search, Optimization and Machine Learning*, Addison-Wesley, 1989.

- Jensen E., *Topological Structural Design using Genetic Algorithms*, PhD. Thesis (1992) Purdue University.

- Jakiela M., Chapman, C. Duda J., Adewuya A. and Saitou K., "Continuum structural topology design with Genetic Algorithms", *Comput. Methods Appl. Mech. Engrg*, 186, 2000, p. 339-356.

- Kane C., Schoenauer M., "Topological Optimum Design using Genetic Algorithms", *Control and Cybernetics*, 25(5), 1996, p. 1059-1088.

- Wang S.Y., Tai K., "Structural topology optimization using genetic algorithms with bit-array representation", *Computer Methods in Applied Mechanics and Engineering*, 2004, In press.

- Tai K., Chee T.H., "Design of structures and compliant mechanisms by evolutionary optimization of morphological representations of topology", *ASME Journal of Mechanical Design*, 122, 2000, p. 560-566.

- Sigmund O., "A 99 line topology optimization code written in Matlab", *Struct Multidisc Optim*, 21, 2001, p. 120-127.

- Deb K., "An efficient constraint handling method for genetic algorithms", *Computer Methods in Applied Mechanics and Engineering*, 186(2-4), 2000, p. 311-338.