un algorithme de nelder-mead globalisé et borné pour les problèmes de l'ingénieur : gbnm

35
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

Upload: yasuo

Post on 25-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

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 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

Page 2: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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.

Page 3: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

)(fmin xx

nx

Page 4: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

réflexion/expansion

contractions

plus haut coût

(2 variables, n=2)

plus bas coût

Page 5: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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é

Page 6: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

Page 7: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Prise en compte des bornes

Prise en compte de bornes par projection :

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

Si xi < xi min xi = xi min (i = 1, n)

Si xi > xi max xi = xi max (i = 1, n)

Page 8: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Dégénérescence (2)

Critères :

Cas 1 Cas 2

Si

ou Si

simplexe dégénéré

c1

c2

c1

c2

2

ii

n1

c

])c,...,cdet([

1ii

cmin

Page 9: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Test d’optimalité sur les bornes

Ex. : Fonction test de Rosenbrock bidimensionnel

2122

12 x1xx100y 20,0x,x 21

- fonction uni-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

min

Page 10: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Test d’optimalité sur les bornes (2)

0 2 4 6 8 10 12 14 16 18 200

2

4

6

8

10

12

14

16

18

20

12

3

4

5

6

7=8=9

simplexe initial

Point de convergence, mais pas un minimum

Sans test d’optimalité :

UN TEST D’OPTIMALITÉ EST NÉCESSAIRE !

Page 11: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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 !)

Page 12: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Globalisation : recherche du minimum global

Point de vue Ré-initialisation : GBNM Évolutionnaire :

Pas de recherche locale

“Hybridation” Recherche globale/locale

1

1 112

3

2 2

3

3

2 3

1

1

2

23

3

Page 13: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

Page 14: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Estimation de la probabilité de ne pas avoir échantillonné un point (x)

)(pN1)(p

N

1i xx

i1T

i2/12/ni 2

1exp

det2

1)(p xxΣxx

Σx

Noyaux de Parzen gaussiens

N = nombre de points déjà échantillonnésn = dimension (nombre de variables)

probabilité d’avoir échantillonné un point

p(x)p(x)

xmin xmax

(x)= H – p(x)H

xH

Page 15: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

2n

21

0

0

Σ 2min

jmaxj

2j xx

= matrice de covariance

= paramètre qui contrôle l’étalement des gaussiennes

Estimation de la probabilité de ne pas avoir échantillonné un point (x) (2)

Dans les exemples présentés on utilisera = 0,01, ce qui veut dire qu’un écart-type de la gaussienne couvre 20% du domaine.

Page 16: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Ré-initialisation probabilisée

pour le calcul de la probabilité pi , on ne garde

comme xi que les points initiaux

maximisation de 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

Page 17: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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 initiauxnb_random_points = 1000 10 1

motif régulier (grille) aléatoire

Ré-initialisation probabilisée (2)

Page 18: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Articulation de :• 3 tests de

convergence :- Small- Flat- Degenerated

• 3 formes de ré-initialisation :

- Probabilistic- Large Test- Small Test

GBNM

Globalized Bounded

Nelder-Mead Method

Page 19: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

Page 20: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Applications : Fonctions tests multi-modales bidimensionnelles (3)

4 minima 6 minima 3 minima

f1 f2 f3

Page 21: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Fonctions tests multi-modales bidimensionnelles (4)

 

Probabilité de ne PAS trouver un des minima locaux (500 analyses ; 01,0 ; 1.000 essais)

nb_random_points P_erreur f1 P_erreur f2 P_erreur f3 1

(re-initialisation aléatoire) 0,9913007 0,99886339 0,501544

2 0,9838697 0,9989873 0,424360

3 0,9678721 0,9987674 0,268126

10 0,9175351 0,9998730 0,096556

20 0,9226868 0,9999903 0,036700

50 0,9691897 0,9999766 0,007000

1000 0,9936665 0,9999956 0,006995

Par la suite, on utilisera nb_random_points = 10

Page 22: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Fonction test de Griewank (n = 12)(fonction très multi-modale)

n

1i

in

1i

2n1 i

xcosx

n4001)x,...,x(F

i 1000,1000xi

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] :

-20 -15 -10 -5 0 5 10 15 20-1

-0.5

0

0.5

1

1.5

2

min

Page 23: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Fonction test de Griewank (n = 12)

Comparaison : GBNM / Algorithme Evolutionnaire (EA)

(*) 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 : 1ˆn1 * xx

GBNM avec nb_random_points = 10

5.000 appels de la fonction coût.

fmin (moyenne)

écart type fmin

Probabilité de trouver le min. global

GBNM -0,8106 0,2520 9/100

EA(*) 1,9028 0,6423 0 (**)

50.000 appels de la fonction coût.

fmin (moyenne)

écart type fmin

Probabilité de trouver le min. global

GBNM -0,9992 0,0025 89/100

EA(*) -0,4607 0,1947 23/100 (**)

10.000 appels de la fonction coût.

fmin (moyenne)

écart type fmin

Probabilité de trouver le min. global

GBNM -0,9688 0,0454 17/100

EA(*) 0,4194 0,1568 0 (**)

Page 24: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Prise en compte des contraintes parpénalisation linéaire adaptative

m

1iiip )(g,0max)(f,F xxλx m

λx ,Fp

Soit le problème :

0)(gi x

nS x)(fmin xx

m,1i .q.t

f(x) est modifiée par pénalisation :

problème sans contraintesx

min

Page 25: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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.

i

0),(gmaxs iki

1ki x

00i (stabilisé)... i

1ji

ji ...

bestx

),(F),(F kbestp

kp λxλx

Page 26: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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).

i

i

Page 27: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Applications aux composites

Séquence d’empilement de couches

= orientationtion des fibres = ?

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.

Page 28: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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)

90,0i

GPa 0,31 GPa 4,5 G

GPa 10 EGPa 45 E

12

12

2

1

0,5 GPa 12 G

xy

xy

Page 29: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

Maximisation de Ex : plaque composite stratifiée

Paramètres stabilisés de pénalisation :

en 44 (min) à 431 (max) analyses, avec s = 1

18,124,6

2

1

100 analyses 200 analyses 500 analyses

P lus hau t E x adm issib le

type.ecmoyenne [G Pa]

P robab . de trouver un op tim um

adm issib le

P lus hau t E x adm issib le type.ecmoyenne

[G Pa]

P robab . de trouver un op tim um

adm issib le

P lus hau t E x adm issib le

type.ecmoyenne [G Pa]

P robab . de trouver un op tim um

adm issib le

G B N M 0,086214,4906 47/100 0,00595302,41 97/100 0,00005311,14 99/100 E A (*) 0,328713,9060 47/100 0,20902502,41 56/100 0,09654550,14 70/100

(*) taille de la popu lation = 20 ; p robab ilité de m utation = 0 ,2 ; p robab ilité de cro isem en t = 0 ,4

Page 30: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

c o n t r a i n t e s

s é q u e n c e d ' e m p i l e m e n t E x [ G P a ] G x y [ G P a ] x y

s9,54/1,50/1,43/6,36 1 4 , 5 4 1 2 , 0 0 0 , 5 0

s5,39/2,46/7,57/7,41 1 4 , 5 3 1 2 , 0 0 0 , 5 0

s8,57/1,39/2,45/0,43 1 4 , 5 3 1 2 , 0 0 0 , 5 0

s9,53/4,47/9,34/5,48 1 4 , 5 3 1 2 , 0 0 0 , 5 0

s2,54/4,35/4,45/7,49 1 4 , 5 3 1 2 , 0 0 0 , 5 0

s1,35/5,45/1,52/9,51 1 4 , 5 3 1 2 , 0 0 0 , 5 0

s6,43/0,45/8,38/7,57 1 4 , 5 2 1 2 , 0 0 0 , 5 0

Page 31: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

90,0i

GPa 0,35 GPa 5 GGPa 5 EGPa 115 E

12

12

2

1

MPa94SMPa100Y

MPa50YMPa895XMPa964X

c

t

c

t

C/10x20

C/10x5,0o6

2

o61

mm125,0ti

Page 32: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

contraintes :

- critère de rupture de Hoffman

- coef. de dilatation thermique :

théorie classique des stratifiés et flambement linéaire

Maximisation de la charge critique de flambement (2)

C/1x10

C/1x10 o-6

y

o-6x

Page 33: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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

4048,00598,00062,0

3

2

1

500 analyses 1000 analyses 2000 analyses

P lus haut facteur de sécurité au flambement

admissible type.ecmoyenne

P robab. de trouver un optimum

admissible

P lus haut facteur de sécurité au flambement

admissible type.ecmoyenne

P robab. de trouver un optimum

admissible

P lus haut facteur de sécurité au flambement

admissible type.ecmoyenne

P robab. de trouver un optimum

admissible

GBNM 0513,04260,1 89/100 0145,04883,1 89/100 0125,04959,1 97/100

EA(*) 0134,04557,1 77/100 0073,04806,1 85/100 0035,04919,1 92/100

(*) taille de la population = 50 ; probabilité de mutation = 0,15 ; probabilité de croisement = 0,5

Page 34: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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.

Page 35: Un algorithme de Nelder-Mead globalisé et borné pour les problèmes de l'ingénieur : GBNM

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.