Résumé Partner's Day : impression 3D, une révolution en marche - NextFormation
Optimisation bayésienne par méthodes SMC
1. Optimisation bayésienne par méthodes SMC
Romain Benassi Julien Bect Emmanuel Vazquez
SUPELEC
21 mars 2012
Mascot Num 2012
Bruyères-le-Châtel, France
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 1 / 27
2. Introduction
Contexte
Optimisation globale ⇒ nombreuses applications dans l’industrie :
Conception d’une voilure d’avion (Forrester et al. 2008)
Optimisation de la forme des conduits d’admission d’un moteur de
voiture (Villemonteix et al. 2007)
etc.
Fonctions à optimiser coûteuses à évaluer (appel à des programmes
informatiques avec des durées d’exécution importantes)
Exemples d’optimisation de formes en CFD
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 2 / 27
3. Introduction
Optimisation bayésienne 1/2
Soit
f : X ⊆ Rd → R,
avec X compact et d ∈ N
Objectif : trouver x ∗ = argmaxx ∈X f (x ) et M = f (x ∗ )
f ne peut être évaluée qu’un nombre limité de fois N
évaluations non bruitées
gradient de f non disponible
Choix d’une approche bayésienne pour résoudre le problème
⇒ f est vue comme une réalisation d’un processus aléatoire ξ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 3 / 27
4. Introduction
Optimisation bayésienne 2/2
Après n évaluations
information disponible : Fn = (X1 , ξ(X1 ), . . . , Xn , ξ(Xn ))
objectif : maximiser MN = ξ(X1 ) ∨ . . . ∨ ξ(XN )
Nouveau point d’évaluation Xn+1 choisi à l’aide d’un critère
d’échantillonnage ρn (construit à partir de Fn )
¯
Xn+1 = argmax ρn (x ),
¯
x ∈X
ρn peut être évalué rapidement
¯
Exemples de critères :
probabilité d’amélioration (Kushner 1964)
amélioration moyenne (Expected Improvement) (Mockus et al. 1978)
entropie de l’optimiseur (IAGO) (Villemonteix et al. 2008)
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 4 / 27
5. Introduction
Expected Improvement (EI)
Stratégie optimale sur un horizon d’un pas :
Xn+1 = argmin En [M − Mn+1 | Xn+1 = x ]
x ∈X
= argmax En (ξ(Xn+1 ) − Mn )+ | Xn+1 = x ,
x ∈X
Expected Improvement (EI)
avec En l’espérance conditionnelle relative à Fn
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 5 / 27
14. Approche plug-in
Problème : Comment choisir ξ ?
⇒ processus ξ choisi dans une classe de processus gaussiens paramétrés
par θ ∈ Θ (p.ex. processus avec moyenne constante mais inconnue et
covariance exponentielle avec portée inconnue)
Approche plug-in
θ est estimé par maximum de vraisemblance
EI plug-in :
˜
ρn (x ; θ) = En ˜
ξ x ; θ − Mn ,
+
˜
avec θ estimé par MV
Avantage : existence d’une expression analytique de l’EI
pour ξ gaussien
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 9 / 27
15. Approche plug-in
EI et processus gaussiens
Si ξ est gaussien (θ fixé) :
ρn (x ; θ) = En (ξ (x ) − Mn )+ | θ | θ = sn (x ) [uΦ(u) + Φ′ (u)]
avec
ˆ
u = ξn − Mn /sn (x )
ˆ
ξn (x ) = En [ξ(x ; θ)] (prédicteur par krigeage)
ˆ
sn (x ) écart type a posteriori de ξn (x ) − ξ(x ; θ)
Φ fonction de répartition de la loi normale centrée réduite
Il est facile de calculer ρn !
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 10 / 27
16. Approche plug-in
Problème avec l’approche plug-in
Fonctions trompeuses
Le terme fonctions trompeuses caractérise une fonction pour laquelle
un design initial mal choisi peut conduire à une très mauvaise
estimation des paramètres du processus par MV
L’utilisation d’une approche plug-in conduit parfois à sous-estimer
largement l’erreur de prédiction :
⇒ problème pour l’optimisation par EI
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 11 / 27
17. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
18. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
19. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
20. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
21. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
22. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
23. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
24. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
25. Approche plug-in
Exemple : Fonction trompeuse
1
0.5
0
−0.5
−1
−1 −0.5 0 0.5 1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 12 / 27
27. Approche complètement bayésienne
EI complètement bayésien
Utilisation d’un critère EI complètement bayésien (Williams et al. 2003,
Osborne et al. 2009, . . .)
⇒ choix d’un a priori sur θ
Critère d’échantillonnage EI complètement bayésien :
Xn+1 = argmaxx ∈X ρn :=
¯ ρn (x ; θ) dπn (θ) ,
θ∈Θ
où πn est la loi a posteriori de θ, et
ρn (x ; θ) := En ((ξ(Xn+1 ) − Mn )+ | Xn+1 = x ; θ),
Approche plus robuste qu’une approche plug-in (Benassi et al. 2011)
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 14 / 27
36. Approche complètement bayésienne
Limites de l’approche complètement bayésienne
À chaque étape, on choisit une nouvelle évaluation
Xn+1 = argmaxx ∈X ρn :=
¯ ρn (x ; θ) dπn (θ)
θ∈Θ
Questions
1 Comment calculer l’intégrale apparaissant dans ρ ?
¯n
2 Comment maximiser ρn ?
¯
Nous proposons un nouvel algorithme apportant une réponse à ces deux
questions, de façon simultanée, à l’aide d’une approche SMC (Sequential
Monte Carlo) originale
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 16 / 27
37. Approche complètement bayésienne
Limites de l’approche complètement bayésienne
À chaque étape, on choisit une nouvelle évaluation
Xn+1 = argmaxx ∈X ρn :=
¯ ρn (x ; θ) dπn (θ)
θ∈Θ
Questions
1 Comment calculer l’intégrale apparaissant dans ρ ?
¯n
2 Comment maximiser ρn ?
¯
Nous proposons un nouvel algorithme apportant une réponse à ces deux
questions, de façon simultanée, à l’aide d’une approche SMC (Sequential
Monte Carlo) originale
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 16 / 27
38. Approche complètement bayésienne
Limites de l’approche complètement bayésienne
À chaque étape, on choisit une nouvelle évaluation
Xn+1 = argmaxx ∈X ρn :=
¯ ρn (x ; θ) dπn (θ)
θ∈Θ
Questions
1 Comment calculer l’intégrale apparaissant dans ρ ?
¯n
2 Comment maximiser ρn ?
¯
Nous proposons un nouvel algorithme apportant une réponse à ces deux
questions, de façon simultanée, à l’aide d’une approche SMC (Sequential
Monte Carlo) originale
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 16 / 27
39. Approche complètement bayésienne
Principe de base de notre algorithme (Benassi et al. 2012)
Idée 1 (voir, p. ex., Gramacy et al. 2011)
Un échantillon pondéré Tn = {(θn,i , wn,i ) ∈ Θ × R, 1 ≤ i ≤ I}, distribué
selon πn , est utilisé pour approcher ρn :
¯
I
wn,i ρn (x ; θn,i ) →I ρn (x )
¯
i=1
Idée 2
À chaque θn,i est associé un (petit) nombre de points candidats
{xn,i,j , 1 ≤ j ≤ J} tels que, pour une valeur de i particulière, les xn,i,j
soient « bien réparties » (les zones où ρn est grand)
Nous considérons un ensemble pondéré Gn de couples (θ, x )
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 17 / 27
40. Approche complètement bayésienne
Description de l’algorithme
Initialisation
À l’étape n,
Tn0 , qn0
Choix de Xn+1 et évaluation de
Démarginalisation
ξ(Xn+1 )
Gn
Les θs sont « déplacés » Tn+1 qn+1
Évaluation
Génération des x s à partir d’une
loi instrumentale qn
Repondération/ Construction
Rééchantillonnage/ de
qn+1
Déplacement
θ x
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 18 / 27
42. Expériences numériques
Choix des a priori
ξ est choisi gaussien avec :
une moyenne constante mais inconnue
une covariance de Matérn anisotrope de paramètres
(σ 2 , ν, ρ1 , ρ2 , . . . , ρd )
Approche complètement bayésienne ⇒ un a priori doit être affecté à
tous les paramètres inconnus
une loi impropre uniforme sur R est associée à la moyenne
la valeur de régularité ν est fixée à 5/2
un a priori de Jeffreys est utilisé pour σ 2
des a priori lognormaux indépendants sont affectés aux portées ρi
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 20 / 27
43. Expériences numériques
La fonction test
Fonction Branin (optimisation en dimension deux)
15
−50
10 −100
−150
x2
5 −200
−250
0 −300
−5 0 5 10
x1
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 21 / 27
44. Expériences numériques
Simulations : itération 1
Fonction Branin
répartition des θs et des x s
15 x 10
−9
0.5 7
−50 6
0
5
10 −100 −0.5
4
ρ2
−1 3
−150
x2
−1.5 2
1
5 −200 −2
−2 −1.5 −1 −0.5
−250 ρ1
0 −300 15
−5 0 5 10
x1
10
x2
plan d’expérience initial de 5
4 points
nombre de θ : 100 0
−5 0 5 10
x1
100 x pour chaque θ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
45. Expériences numériques
Simulations : itération 2
Fonction Branin
répartition des θs et des x s
15 x 10
−11
0 8
−50
−0.5
6
10 −100
ρ2
−1
4
−150
x2
−1.5
2
−200 −2
5
−2 −1.5 −1 −0.5
−250 ρ1
0 −300 15
−5 0 5 10
x1
10
x2
plan d’expérience initial de 5
4 points
nombre de θ : 100 0
−5 0 5 10
x1
100 x pour chaque θ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
46. Expériences numériques
Simulations : itération 3
Fonction Branin
répartition des θs et des x s
15 x 10
−13
16
0
−50 14
−0.5 12
10 −100 10
ρ2
−1 8
−150 6
x2
−1.5
4
−2
5 −200 2
−2.5 −2 −1.5 −1 −0.5
−250 ρ1
0 −300 15
−5 0 5 10
x1
10
x2
plan d’expérience initial de 5
4 points
nombre de θ : 100 0
−5 0 5 10
x1
100 x pour chaque θ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
47. Expériences numériques
Simulations : itération 5
Fonction Branin
répartition des θs et des x s
15 x 10
−15
2.5
−50
−1 2
10 −100 −1.5 1.5
ρ2
1
−150
x2
−2
0.5
5 −200 −2.5
−2.5 −2 −1.5 −1 −0.5
−250 ρ1
0 −300 15
−5 0 5 10
x1
10
x2
plan d’expérience initial de 5
4 points
nombre de θ : 100 0
−5 0 5 10
x1
100 x pour chaque θ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
48. Expériences numériques
Simulations : itération 9
Fonction Branin
répartition des θs et des x s
15 x 10
−23
7
−50 −0.5 6
5
−100 −1
10 4
ρ2
−1.5 3
−150
x2
2
−2
1
5 −200
−2 −1.5 −1
−250 ρ1
0 −300 15
−5 0 5 10
x1
10
x2
plan d’expérience initial de 5
4 points
nombre de θ : 100 0
−5 0 5 10
x1
100 x pour chaque θ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
49. Expériences numériques
Simulations : itération 13
Fonction Branin
répartition des θs et des x s
15 x 10
−30
2.5
−50 −1
2
10 −100 −1.5 1.5
ρ2
1
−150
x2
−2
0.5
5 −200 −2.5
−2 −1.5 −1
−250 ρ1
0 −300 15
−5 0 5 10
x1
10
plan d’expérience initial de x2
5
4 points
nombre de θ : 100 0
−5 0 5 10
x1
100 x pour chaque θ
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
50. Expériences numériques
Simulations : itération 17
Fonction Branin répartition des θs et des x s
−36
x 10
15 −1.5 5
4
−50 −2
3
−100
ρ2
10 −2.5
2
−150
x2
−3 1
5 −200 −2.2 −2 −1.8 −1.6 −1.4 −1.2
ρ1
−250
15
0 −300
−5 0 5 10
x1
10
plan d’expérience initial de
x2
4 points 5
nombre de θ : 100
0
100 x pour chaque θ −5 0
x1
5 10
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
51. Expériences numériques
Simulations : itération 21
Fonction Branin répartition des θs et des x s
−40
x 10
15
−2.2 8
−50
−2.4 6
−100
ρ2
10 −2.6
4
−2.8
−150
x2
2
−3
5 −200 −2.4 −2.2 −2 −1.8 −1.6
ρ1
−250
15
0 −300
−5 0 5 10
x1
10
plan d’expérience initial de
x2
4 points 5
nombre de θ : 100
0
100 x pour chaque θ −5 0
x1
5 10
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 22 / 27
52. Expériences numériques
Comparaison 1/2
Comparaison entre approche bayésienne et approche plug-in
Approche bayésienne
I = 100 valeurs considérées pour les θ
J = 100 valeurs de x pour chaque valeur de θ
design initial de 4 points (deux fois la dimension)
Approche plug-in
θ estimé à chaque itération par MV
recherche exhaustive sur LHS fixé pour obtenir Xn+1
LHS de taille I × J
design initial de 20 points (dix fois la dimension)
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 23 / 27
53. Expériences numériques
Comparaison 2/2
0 EGO
log10 (max f − Mn )
15 EI+SMC
−50 −2
10 −100
−4
x2
−150
−200 −6
5
−250
0 20 40 60
0 −300 nombre d’évaluations de la fonction
−5 0 5 10
x1
Comparaison de l’erreur moyenne
Fonction Branin au maximum (moyenne sur
100 expériences)
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 24 / 27
55. Conclusions
Conclusions
Resultats
Notre nouvel algorithme complètement bayésien calcule efficacement
le critère EI
Le choix, à chaque nouvelle itération, d’un ensemble (petit mais bien
choisi) de points candidats permet une maximisation efficace du
critère
Travail en cours
Tests en dimensions supérieures (bons résultats pour les dimensions
de 1 à 6)
Applications à des problèmes d’optimisation dans le domaine de la
conception de systèmes électroniques
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 26 / 27
56. Conclusions
References
This talk is based on the following two papers :
Romain Benassi, Julien Bect, Emmanuel Vazquez, Bayesian optimization using
sequential Monte Carlo, Learning and Intelligent OptimizatioN (LION 6), Paris,
France, Jan 16-20 [clickme]
Romain Benassi, Julien Bect, Emmanuel Vazquez, Robust Gaussian Process-Based
Global Optimization Using a Fully Bayesian Expected Improvement Criterion,
Learning and Intelligent OptimizatioN (LION 6). Selected Papers. , Lecture Notes
in Computer Science, vol. 6683. 2011. [clickme]
Benassi, Bect, Vazquez (SUPELEC) Optimisation bayésienne par SMC 21 mars 2012 27 / 27