Vers l’optimisation des assemblages
Les outils de simulation développés au laboratoire et plus particulièrement au sein du projet permettent de prédire la tenue mécanique d’une configuration d’assemblage donnée. Ces outils permettent de quantifier l’impact de la modification des paramètres du procédé de pose d’assemblages sur la tenue mécanique de celui-ci. Lors de ses travaux de thèse, S. Fayolle [Fay08] a mis en place une modélisation du rivetage auto-poinçonneur. De manière à démontrer l’influence de la géométrie des outils sur la tenue mécanique, il a réalisé une « optimisation manuelle » du procédé en jouant sur la forme de la bouterolle, utilisée comme outil inférieur dans le procédé de rivetage autopoinçonneur. Les résultats obtenus montrent l’intérêt d’optimiser le procédé d’assemblage. Sur cet exemple cependant, une seule variable a été considérée et l’optimisation a été réalisée de manière manuelle. Une optimisation automatique de la chaine virtuelle de simulation (pose du point d’assemblage et modélisation de la tenue mécanique) constituerait un apport majeur en terme d’efficacité et d’utilisation dans un cadre industriel. L’objectif final serait donc de réaliser une boucle d’optimisation automatique (Figure 1-3) capable de travailler sur plusieurs paramètres du procédé afin d’améliorer au maximum la tenue mécanique.
Les algorithmes évolutionnaires (AE)
Ces approches sont directement inspirées de la théorie de l’évolution de Darwin. Elles sont basées sur le principe selon lequel la vie est une compétition où seuls les mieux adaptés se reproduisent et survivent. La terminologie utilisée dans ce type d’algorithmes est empruntée au vocabulaire de la biologie. On parlera de sélection, de croisement et de mutation. Les AE utilisent la notion de population d’individus, dans laquelle chaque individu représente une solution potentielle. Ces méthodes sont très robustes et permettent d’aborder des problèmes dont la fonction peut être non continue et mal connue. En revanche elles peuvent être très gourmandes en temps de calcul. En effet, la fonction coût doit souvent être évaluée en un grand nombre de points pour obtenir l’optimum. Ces méthodes ont vu le jour dans les années 60, avec les travaux de Holland [Hol62], [Hol75]. Elles ont ensuite connu un large développement et sont actuellement des méthodes très utilisées. On distingue deux types d’algorithmes évolutionnaires adaptés à notre problématique :
• Les algorithmes génétiques (AG) qui se basent sur une représentation binaire des individus.
• Les stratégies d’évolution (SE) qui se basent sur une représentation en nombres réels et de dimension fixe des individus.
En effet les algorithmes génétiques et les stratégies d’évolution sont relativement bien adaptés à notre cadre de travail sur l’optimisation des assemblages et l’identification de paramètres de lois rhéologiques.
a) Stratégie d’évolution (SE) : La principale caractéristique qui différentie les AG des SE est le type de représentation, de codage, des variables d’optimisation. Pour les AG les variables d’optimisation sont codées en binaire, pour les SE les variables d’optimisation sont représentées dans l’espace des réels. A chacun de ces deux types de codage est associée une algèbre spécifique. Dans la suite on focalise la description de ce type de méthode sur les algorithmes à stratégie d’évolution. On définit tout d’abord le vocabulaire spécifique, puis ensuite le déroulement général d’un algorithme par SE sera décrit.
– Vocabulaire des algorithmes à stratégie d’évolution
• Individu : un individu correspond à un jeu de variables d’optimisation.
• Population : une population est un ensemble d’individus.
• Evaluation : calcul de la fonction coût associée à un individu.
• Opérateurs génétiques : ensemble d’opérations appliquées aux individus (sélection, croisement, mutation).
• Sélection : opérateur qui sélectionne les individus destinés au croisement.
• Croisement : opérateur d’obtention d’un nouvel individu à partir des individus sélectionnés.
• Mutation : opérateur de modification, de perturbation d’un individu.
• Actualisation de la population : sélection de la nouvelle population à partir de l’ancienne et des enfants.
• Génération : une génération est un cycle complet comprenant les opérateurs génétiques, la génération d’une population enfants et l’actualisation de la population.
La méthode générale d’un algorithme à stratégie d’évolution est présentée par l’organigramme de la Figure 1-6. Les étapes sont détaillées dans la suite :
– Initialisation de la population : La population initiale est générée dans le domaine d’optimisation. Le nombre d’individus est fixé par l’utilisateur. Cette génération peut être soit aléatoire, soit suivre des règles d’échantillonnage comme les méthodes Latin Hyper Cube [Tan93].
– Évaluation de la population : L’évaluation de la population est une étape qui peut devenir coûteuse si le temps d’évaluation de la fonction coût est important.
– La sélection : La sélection permet de choisir, parmi toute la population, les individus qui seront à l’origine de la génération suivante. Il existe plusieurs méthodes. Les plus utilisées sont la sélection par tournoi et la sélection proportionnelle.
• La sélection par tournoi :La sélection par tournoi consiste à choisir le meilleur individu parmi un sous-ensemble de la population. On répète cette opération autant de fois que le nombre d’individus souhaité. Cette méthode présente l’intérêt d’être facilement ajustée en jouant sur le nombre q d’individus participant au tournoi. Plus q est grand, plus la pression de sélection est forte.
• La sélection proportionnelle : Cette méthode, introduite en 1989 [Gol89], est la plus utilisée. Elle reproduit un jeu de casino : la roulette russe. Cette roulette comporte autant de cases que d’individus. Si toutes les cases ont la même taille il y aura équiprobabilité de sélection de l’un ou l’autre des individus. Cette méthode favorise les individus les plus forts mais laisse une chance à tous les individus. Cependant, si la pression sélective est trop élevée, on risque une perte de la diversité.
– Le croisement : Cette étape est facultative pour les SE, et n’est pas toujours présente dans la génération de nouveaux individus. La représentation par des nombres réels des individus rend les règles de recombinaison simples.
• La recombinaison discrète : On choisit par sélection deux parents dans la population. Chaque composante du nouvel individu est alors créée en choisissant aléatoirement la valeur de l’un des deux parents.
• La recombinaison intermédiaire
• La recombinaison globale discrète et globale intermédiaire : La recombinaison est identique à celle présentée ci-dessus, à la seule différence que pour chaque composante du vecteur des variables d’optimisation un nouveau couple de parents est choisi.
– La mutation gaussienne : L’opérateur de mutation est toujours présent dans les SE. Il est le principal opérateur d’exploration et est le garant de la recherche globale. Le principe de la mutation gaussienne est d’ajouter un bruit gaussien centré sur les variables que l’on souhaite faire muter. (0, ) i i x x N = + σ (1.11) Toute la difficulté réside dans le bon choix de la valeur de σ , σ étant la variance la loi normale centrée N. La mutation auto-adaptative propose de faire évoluer cette grandeur avec l’individu. Ainsi, les individus ayant une bonne valeur de σ effectueront des mutations réussies et seront donc plus compétitifs. Cette grandeur σ évolue en suivant les mêmes opérateurs que les variables d’optimisation. La mutation auto-adaptative a été proposée par Rechenberg [Rec73] et Schwefel [Sch81]. Cette méthode présente l’avantage de ne pas ajouter de paramètre de réglage de l’algorithme, et permet en plus d’assurer à la fois l’aspect global de la recherche et une bonne efficacité de la recherche locale lors de la convergence vers la solution.
– Le remplacement (Sélection de la nouvelle population) : Il existe deux stratégies de remplacement : L’une qui consiste à sélectionner les meilleurs individus parmi les enfants et les parents. Cette méthode est élitiste et peut conduire à une concentration de tous les individus dans un minimum local, la recherche n’est alors plus globale. L’autre consiste à sélectionner les meilleurs individus uniquement parmi les enfants. Cette méthode est plus robuste pour les environnements très accidentés, mais elle peut conduire à une diminution de la performance. Cette méthode reste cependant intéressante pour sortir d’un minimum local.
– Aspect global de la recherche : Les méthodes à direction de descente présentées précédemment sont des méthodes de recherche locale. En revanche, les méthodes évolutionnaires sont des méthodes dites globales. Cet aspect global est garanti par l’opérateur de mutation gaussien. Pour la mutation suivant une loi gaussienne, un individu est susceptible d’être muté, déplacé, dans tout point de l’espace avec une probabilité non nulle, et donc de détecter un minimum global très étroit. Cependant, cette convergence hypothétique globale n’est assurée que pour un nombre infini de générations. La solution obtenue ne pourra jamais être définie avec certitude comme « LE » minimum global du problème d’optimisation.
b) Les algorithmes génétiques (AG) : Les algorithmes génétiques sont très proches des algorithmes par stratégie d’évolution. La différence fondamentale se situe dans la représentation des individus qui se fait de manière binaire. Contrairement aux SE, les AG peuvent résoudre des problèmes où les variables d’optimisation sont non continues, le codage binaire étant discret. De plus, les opérateurs associés sont adaptés au codage binaire.
Objectifs généraux de la plateforme MOOPI
Deux axes principaux sont à différentier pour définir les objectifs du développement de la plateforme MOOPI. Le premier axe concerne les objectifs d’utilisation de la plateforme MOOPI et le second axe les objectifs d’évolutivité de la plateforme.
Objectifs « utilisation » L’objectif « utilisation » est double : Le premier volet est de proposer un outil capable de résoudre un problème d’optimisation dont la fonction coût est évaluée par un logiciel indépendant. Un second volet est de mettre en place un outil dédié à l’identification de paramètres matériaux par analyse inverse. La solution proposée, pour répondre à ces deux objectifs, devra être capable d’exploiter les logiciels développés au sein du projet MONA LISA pour la modélisation des assemblages, mais aussi les logiciels développés au CEMEF : Forge et CimLib®.
Objectifs « évolutivité » La plateforme MOOPI a pour principale vocation de proposer un éventail de méthodes d’optimisation, et d’exploiter différents logiciels pour le calcul de la fonction coût. Outre les méthodes d’optimisation proposées pour atteindre l’objectif « utilisation », la structure devra être capable d’accueillir d’autres méthodes d’optimisation et d’analyse d’expériences numériques. Il devra en être de même pour la gestion des logiciels, la solution proposée devra donc pouvoir s’adapter au plus large panel possible de logiciels. L’intégration des ces méthodes devra se faire avec un investissement minimum en terme de programmation pour les nouveaux utilisateurs.
Implémentation de l’algorithme EGO
L’algorithme Efficient Global Optimisation (EGO) a été décrit au paragraphe 2.3 du chapitre 1. On propose ici de s’attarder sur les aspects liés à l’implémentation de cet algorithme dans la plateforme, ainsi qu’à l’implémentation de la surface de réponse par krigeage. La première chose à noter est que le schéma de communication avec l’extérieur de l’explorateur est respecté, l’explorateur n’a accès qu’à la base de données des calculs. Cet organigramme fait apparaître deux nouveaux blocs, le krigeage et l’algorithme d’optimisation par Stratégie d’Evolution (SE). L’enchainement des opérations se fait dans l’ordre suivant :
• Construction de l’opérateur de krigeage sur la base des points maîtres.
• Calibration de l’opérateur de krigeage.
• Exploitation de la surface de réponse : maximisation du critère de l’Expected Improvement (EI), la recherche des coordonnées de ce point est réalisée grâce à la communication entre la surface de réponse par krigeage et l’algorithme d’optimisation pas stratégie d’évolution.
• Le point maximisant l’EI est ajouté à la base de données.
|
Table des matières
Introduction
Chapitre 1 Optimisation dans le cadre de la modélisation par éléments finis des procédés d’assemblage
1 Assemblages par déformation plastique : contexte d’optimisation
1.1 Définition
1.2 Contexte industrie
1.3 Vers l’optimisation des assemblages
2 Bibliographie
2.1 Généralités sur l’optimisation
2.2 Analyse de sensibilité par plans d’expériences
2.3 Méthodes d’optimisation pour fonctions objectif coûteuses
2.4 Bilan
3 Optimiser avec un métamodèle par krigeage
3.1 Le krigeage ordinaire
3.2 Exploration et exploitation de surfaces de réponse par Krigeage
3.3 Algorithme EGO
4 Proposition d’extension parallèle de l’algorithme EGO
4.1 Enjeux et intérêts d’une telle extension
4.2 Différentes approches
4.3 Exploitation des propriétés du krigeage pour la parallélisation
5 Conclusion
Chapitre 2 MOOPI un outil d’optimisation dédié aux calculs éléments finis
1 Conception – Développement de la plateforme MOOPI
1.1 Objectifs généraux de la plateforme MOOPI
1.2 Analyse des objectifs
1.3 L’environnement CimLib®
1.4 Architecture logicielle retenue – environnement objet
1.5 Gestion des calculs – exploitation des ressources de calcul
1.6 Evolutivité de la plateforme
2 Implémentation de l’algorithme EGO
2.1 Implémentation du krigeage
2.2 Implémentation de l’algorithme de minimisation par stratégie d’évolution
2.3 Construction de l’algorithme EGO parallèle (EGO-p)
2.4 Critère d’arrêt et robustesse de l’algorithme
3 Validations et analyse des performances de la plateforme MOOPI
3.1 Définition de fonctions coût de référence
3.2 Test de la plateforme MOOPI
3.3 Apport du krigeage anisotrope
3.4 Apport de l’extension parallèle de l’algorithme EGO
3.5 Comparaison des performances avec l’algorithme SE-Meta
3.6 Bilan des tests de la plateforme MOOPI
4 Conclusion
Chapitre 3 Optimisation numérique d’un point d’assemblage : application au procédé de clinchage
1 Préambule à la modélisation des procédés d’assemblage mécanique
1.1 Comportement élasto-plastique
1.2 Le modèle d’endommagement de Lemaitre
1.3 Précisions sur le couplage comportement-endommagement
2 Définition d’un cas de référence
2.1 Modélisation du clinchage par éléments finis
2.2 Vers l’optimisation d’un assemblage par clinchage
3 Analyse de sensibilité
4 Optimisation de la tenue mécanique
4.1 Définition du problème d’optimisation – fonction coût
4.2 Résultats
4.3 Impact sur la tenue en cisaillement (Axe X)
5 Conclusion
Chapitre 4 Identification de paramètres matériaux par analyse inverse
1 Identification de paramètres matériaux par analyse inverse
1.1 Définition de l’analyse inverse
1.2 Intégration dans la plateforme MOOPI
2 Le modèle direct
2.1 Définition du modèle direct
2.2 Hypothèses relatives aux aspects numériques de la résolution du modèle
3 Identification à partir d’observables globales
3.1 Essai de traction – Mesure de l’observable force/déplacement
3.2 Construction d’une fonction coût adaptée au problème d’adoucissement/rupture
3.3 Etude de sensibilité par rapport aux paramètres du modèle
3.4 Vers l’exploitation de mesures plus riches : mesure de striction
3.5 Application : identification des paramètres matériaux des tôles d’aluminium pour le clinchage
4 Conclusion
Chapitre 5 Identification : apport des mesures de champs
1 Exploitation des mesures de champs pour l’identification
1.1 Recalage par éléments finis (REF)
1.2 L’erreur en relation de comportement
1.3 L’écart à l’équilibre
1.4 L’écart à la réciprocité
1.5 La méthode des champs virtuels
1.6 Choix d’une méthode
2 Exploitation des mesures de champs
2.1 Données disponibles
2.2 Pilotage de simulations éléments finis avec des mesures de champs
2.3 Construction d’une fonction coût adaptée aux mesures de champs en grandes déformations
3 Etude de sensibilité par surface de réponse
3.1 Cas de référence – essai virtuel
3.2 Sensibilité par rapport aux paramètres de la loi d’écrouissage
3.3 Sensibilité par rapport aux paramètres de la loi d’évolution de l’endommagement ductile de Lemaitre
4 Identification des paramètres matériaux d’un acier DC04
4.1 Données expérimentales : prétraitement – filtrage
4.2 Identification des paramètres d’écrouissage
4.3 Identification des paramètres de la loi d’évolution de l’endommagement
4.4 Bilan de l’identification des paramètres de l’acier DC04
5 Conclusion
Conclusion générale et perspectives
Télécharger le rapport complet