350 likes | 637 Views
Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM. Marco Luersen - Centre Fédéral d’Education Technologique du Paraná CEFET-PR - Brésil - Doctorant au Lab. de Mécanique – INSA de Rouen Rodolphe Le Riche
E N D
Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM Marco Luersen - Centre Fédéral d’Education Technologique du Paraná CEFET-PR - Brésil - Doctorant au Lab. de Mécanique – INSA de Rouen Rodolphe Le Riche – CNRS URA 1884 et SMS, Ecole des Mines de Saint Etienne
Motivation Caractéristiques des problèmes d’optimisation en conception mécanique : • plusieurs optima locaux • variables bornées • calcul de sensibilités souvent laborieux, coûteux où n’existent pas • temps de calcul limité à quelques milliers d’analyses de la fonction coût optimisation globale souhaitée, mais sa faisabilité est incertaine.
La méthode de Nelder-Mead classique • Proposée par Nelder & Mead (1965) • (variables continues) • Méthode d’ordre zéro : ne requiert pas le calcul du gradient • Méthode rapide, relativement aux méthodes d’ordre zéro • Méthode locale
La méthode de Nelder-Mead classique (2) • Basée sur la comparaison des valeurs de la fonction aux (n+1) sommets d’un simplexe • Le minimum est cherché en modifiant le simplexe à travers des opérations : réflexion, réflexion/expansion et contractions réflexion plus haut coût réflexion/expansion plus bas coût contractions (2 variables, n=2)
La méthode de Nelder-Mead classique (3) Inconvénients : • S’applique à des problèmes sans bornes • Dégénérescence du simplexe (perte d’une dimension), est un cas d’échec de la méthode • Méthode locale : s’arrête quand un minimum local est trouvé
Amélioration de la méthode de Nelder-Mead • Prise en compte des bornes • Détection des simplexes dégénérés et ré-initialisation • Test d’optimalité sur les bornes
Prise en compte des bornes • Prise en compte de bornes par projection : Si xi < xi min xi = xi min (i = 1, n) Si xi > xi max xi = xi max (i = 1, n) Dégénérescence • Dans le domaine ré-initialisation au point courant • Si la dégénérescence est sur les bornes on l’accepte
Dégénérescence (2) Cas 1 Cas 2 • Critères : c2 c2 c1 c1 Si ou Si simplexe dégénéré
Test d’optimalité sur les bornes Ex. : Fonction test de Rosenbrock bidimensionnel min • fonctionuni-modale • le minimum se trouve en x1= x2=1 • sans le test d’optimalité, souvent la recherche s’arrête sur les bornes (point x1= x2=0) car dégénérescence sur les bornes
Test d’optimalité sur les bornes (2) Sans test d’optimalité : 3 4 6 2 1 simplexe initial 5 7=8=9 Point de convergence, mais pas un minimum UN TEST D’OPTIMALITÉ EST NÉCESSAIRE !
Test d’optimalité sur les bornes (3) • les conditions de Kuhn et Tucker ne sont pas applicables : fonctions pas dérivables • conditions de point-col numériquement non vérifiables • test d’optimalité : une recherche locale, avec un «petit» simplexe initial • on considère que le simplexe initial est plus petit que le bassin d’attraction • coût : pour la fonction de Rosenbrock : ~20% (ça marche toujours !)
1 2 2 1 3 3 Globalisation : recherche du minimum global Point de vue Ré-initialisation : GBNM Évolutionnaire : 1 2 1 1 1 3 2 2 2 3 3 “Hybridation” Recherche globale/locale 3 Pas de recherche locale
Globalisation par ré-initialisation probabilisée • chaque fois q’un minimum local est trouvé il est enregistré • le prochain point initial est choisit de tel sorte à ne pas échantillonner des régions déjà connues : visiter différents bassins d’attraction, sans connaître le nombre de redémarrages à priori • travail à coût fixé • redémarrage avec une caractéristique aléatoire-biaisée
f (x)= H – p(x) H probabilité d’avoir échantillonné un point p(x) xmin xH xmax W p(x) Estimation de la probabilité de ne pas avoir échantillonné un point f(x) Noyaux de Parzen gaussiens N = nombre de points déjà échantillonnés n = dimension (nombre de variables)
Estimation de la probabilité de ne pas avoir échantillonné un point f(x) (2) S = matrice de covariance a = paramètre qui contrôle l’étalement des gaussiennes Dans les exemples présentéson utilisera a = 0,01, ce qui veut dire qu’un écart-type de la gaussienne couvre 20% du domaine.
Ré-initialisation probabilisée • pour le calcul de la probabilité pi , on ne garde comme xi que les points initiaux • maximisation de f par tirage aléatoire de nb_random_points : parmi nb_random_points aléatoires, trouver celui qui a la plus haute probabilité de n’avoir pas été échantillonné auparavant
Ré-initialisation probabilisée (2) • si nb_random_points=1 : aléatoire • si nb_random_points=grand : motif régulier (si on connaît le nb. de redémarrages grille) • si nb_random_points petit, > 1 (3 à 10) : aléatoire/biaisée Points initiaux nb_random_points = 1000 10 1 motif régulier (grille) aléatoire
GBNM Globalized Bounded Nelder-Mead Method Articulation de : • 3 tests de convergence : • Small • Flat • Degenerated • 3 formes de ré-initialisation : • Probabilistic • Large Test • Small Test
GBNM – Résumé (sans prise en compte de contraintes) • Caractéristiques des recherches locales : vitesse, précision Nelder-Mead • Amélioration de la méthode de N-M : • Prise en compte de bornes par projection • Détection et traitement des dégénérescences du simplexe pendant la recherche • Test d’optimalité sur les bornes • Globalisée par ré-initialisation stratégie hybride en série : local-global
Applications : Fonctions tests multi-modales bidimensionnelles (3) f1 f2 f3 4 minima 6 minima 3 minima
Fonctions tests multi-modales bidimensionnelles (4) Par la suite, on utilisera nb_random_points= 10
Fonction test de Griewank (n = 12)(fonction très multi-modale) min le minimum global est –1, et se trouve en xi=0 Graphique de la fonction de Griewank uni-dimensionnel (n=1) dans le domaine [-20,20] :
Fonction test de Griewank (n = 12) Comparaison : GBNM / Algorithme Evolutionnaire (EA) GBNM avec nb_random_points = 10 (*) probabilité de croisement = 0,5 ; prob. de mutation = 0,15 ; taille de la population = 500 (**) critère pour considérer que le EA converge sur le minimum global :
Prise en compte des contraintes parpénalisation linéaire adaptative Soit le problème : • f(x)est modifiée par pénalisation : • problème sans contraintes
Prise en compte des contraintes parpénalisation adaptative (2) Les sont actualisés à chaque itération de N-M, Si , mise à jour de . s = incrément de pas. ... (stabilisé)
Prise en compte des contraintes par pénalisation adaptative (3) Interprétation de la pénalisation adaptative linéaire : • Un Lagrangien généralisé, qui possède un point-col plus souvent que les Lagrangiens ordinaires ; • Mise à jour des : un gradient à pas fixe pour maximiser la fonction duale, calcul du gradient approché ; • Convergence possible pour des finis (contrairement aux pénalisations quadratiques).
Applications aux composites • Séquence d’empilement de couches • Critères : • - max (Ex, Ey, Gxy, charge de rupture, charge de flambement, etc.) • - min (def. x, def. y, coef. dilatation thermique, etc.) • Contraintes : - Ex, Ey, Gxy, rupture, def. x, def. y, coef. dilatation thermique, etc.
Applications aux composites Maximisation du module d’élasticité Ex min (1 – Ex/Ex_ref) • plaque composite symétrique et équilibrée à 16 couches • 4 variables : les orientations des fibres : • matériau : verre-époxyde • contraintes : • utilisation de la théorie classique des stratifiés (CLT)
Maximisation de Ex : plaque composite stratifiée Paramètres stabilisés de pénalisation : en 44 (min) à 431 (max) analyses, avec s = 1
Maximisation de Ex : plaque composite stratifiée (2) Exemples d’optima locaux possibles trouvés par le GBNM, 2000 évaluations de la fonction coût, 1 exécution
Maximisation de la charge critique de flambement • plaque rectangulaire simplement supportée • 48 couches, • symétrique et équilibré, • chargement de membrane : Nx et Ny • matériau : carbone-époxyde
Maximisation de la charge critique de flambement (2) • contraintes : - critère de rupture de Hoffman - coef. de dilatation thermique : • théorie classique des stratifiés et flambement linéaire
Maximisation de charge critique de flambement 48 couches : 12 variables Paramètres stabilisés de pénalisation : en 116 (min) à 978 (max) analyses, avec s = 0,001
Conclusions GBNM : un algorithme pratique pour les problèmes de l’ingénieur : • travail à coût fixé : nombre d’analyses défini a priori ; • globalisation par ré-initialisation probabilisées, pour ne pas échantillonner des régions déjà connues, sans connaître le nombre de redémarrages à priori ; • Nelder-Mead amélioré pour les recherches locales : • méthode d’ordre zéro, locale et sans bornes vitesse, précision ; • détection et ré-initialisation en cas de dégénérescence ; • prise en compte des bornes par projection et des contraintes par pénalisation adaptative ; • test d’optimalité, sur les bornes.
Conclusions (2) • La stratégie la plus robuste de ré-initialisation probabilisée est un compromis entre ré-initialisation aléatoire et ré-initialisation à intervalles réguliers ; • Pour les problèmes de taille moyenne à bas coût, la méthode GBNM a une plus haute précision que les algorithmes évolutionnaires ; • La globalisation par ré-initialisation probabilisée n'est pas restrictive à l’algorithme de Nelder-Mead. Elle peut être appliquée à d’autres optimiseurs locaux.