• Aucun résultat trouvé

7.3 Introduction au principaux algorithmes d’optimisation

7.3.2 Problèmes multi-objectifs

Un problème multi-objectifs est formulé comme [Collette and Siarry, 2002] : minx∈Rn (f1(x), f2(x), ..., fk(x)), k ≥ 2

gi(x) = 0, i = 1, ..., l hj(x) ≥ 0, j = 1, ..., m x ∈ S ⊂ Rn

(7.3.2)

Ce type de problèmes n’a pas solution unique mais une multitude de solutions situées sur un

front de Pareto, qui correspond aux meilleurs compromis entre les k fonctions objectifs.

La notation min du problème (7.3.2) correspond à l’identification de points minimaux au sens de Pareto, C’est-à-dire en utilisant un critère d’ordre partiel au sens de la dominance de Pareto, définie dans la définition 7.3.1.

Le but des algorithmes d’optimisation multi-objectifs est de déterminer le front de Pareto du problème [Collette and Siarry, 2002].

Définition 7.3.1. Un point x ∈ S solution de (7.3.2) domine au sens de Pareto une solution

y ∈ S si et seulement si ∀k, fk(x) ≤ fk(y) et ∃k tel que fk(x) < fk(y). Le front de Pareto est l’ensemble des points non dominés de S.

La figure 7.5 montre un exemple de front de Pareto. Les solutions possibles, en bleu, sont dominées par les points du front de Pareto, en rouge.

-12500 -12000 -11500 -11000 -10500 -10000 -9500 -9000 -8500 950 1000 1050 1100 1150 1200 1250 1300 1350 f2(x) f1(x) Possible solutions Pareto Front

Figure 7.5 – Exemple de front de Pareto

Pour déterminer le front de Pareto, des méthodes basées sur les algorithmes génétiques sont souvent utilisées.

Les individus de la population échantillonnées sur les fonctions objectifs sont classés suivant le critère de dominance décrit dans la définition 7.3.1. Ce sont les points qui dominent le plus

d’autres points qui sont choisis comme les meilleurs individus. Ensuite, les étapes habituelles de l’algorithme génétique sont réalisées.

Un autre approche basée sur les algorithmes évolutionnaire est couramment utilisée pour déterminer le front de Pareto. Cette fois, l’algorithme multi-objectifs est basé sur un autre type d’algorithmes évolutionnaire : le (λ, µ)-ES.

La population initiale est modifiée par des perturbations aléatoires de ses individus, suivant une loi de probabilité normale.

L’algorithme Pareto Archived Evolution Strategy (PAES) est un des algorithmes basés sur (λ, µ)-ES les plus utilisés [Knowles and Corne, 1999, Abraham et al., 2005, Deb and Kalyanmoy,

2001].

PAES démarre d’une population initiale aléatoire, générée autour d’un point initial choisi

par l’utilisateur. Les individus sont classés suivant le critère de dominance et sont sauvegardés. Ensuite, chaque individu i de la population génère un descendant m par perturbation aléatoire. Si m est dominé par i, m n’est pas conservé et i génère un nouveau descendant. Si m domine i, alors m est comparé aux autres points sauvegardés. Si m est dominé par un des points de la sauvegarde, m n’est pas conservé. Sinon, m est ajouté à la sauvegarde et tous les points dominés par m sont supprimés. Ces étapes se succèdent jusqu’à convergence vers le front de Pareto.

Conclusion

Nous utiliserons les algorithmes et méthodes numériques détaillées dans ce chapitre pour les applications pratiques proposées dans le chapitre suivant. Dans ces applications, nous utilisons en "boite noire" les outils de simulation, c’est pour cela qu’il est important de connaître le domaine de validité des méthodes. Nous utiliserons une toolbox d’optimisation, FAMOSA, développée à l’Inria par l’équipe de recherche Opale, qui dispose de la plupart des algorithmes décrits ici.

Chapitre 8

Applications

Ce chapitre est consacré aux applications pratiques du modeleur paramétrique. Nous présentons trois cas d’applications en utilisant différents solveurs numériques.

Le premier exemple porte sur l’optimisation de la forme d’un profil d’aile d’avion pour maximiser la finesse tout en imposant une valeur minimal pour la portance. Dans ce cas, le solveur fluide parfait avec couche limite XFOIL est utilisé.

Le deuxième exemple porte sur l’optimisation multi-objectifs de la forme d’un foil AC45. Nous cherchons à minimiser la traînée en maximisant la stabilité du foil. Le solveur fluide parfait

AVANTI, couplé à XFOIL est utilisé.

Une boucle d’optimisation automatique est proposée pour chacun de ces deux exemples.

La dernière application porte sur l’optimisation de la forme d’un bulbe de chalutier de pêche, pour minimiser la traînée totale de la coque. Pour ces simulations, nous utilisons le solveur RANS ISIS-CFD de la suite FINETM/Marine.

Les temps d’exécution donnés ont été mesurés sur un PC portable quatre cœurs HP Probook- 450 avec un Intel CoreR TM i7-4702MQ CPU 2.20GHZ, RAM 8.00 Go.

Les temps d’exécution de ISIS-CFD sont donnés pour 32CPU utilisés sur un cluster de calcul, doté au total de 144 processeurs Intel E5-2670 - 2.60 GHz - 8 cœurs, 4608 Go de mémoireR

vive.

8.1

Optimisation de forme d’un profil

Nous proposons une application du modeleur paramétrique à l’optimisation automatique de forme d’un profil d’aile d’avion.

Beaucoup d’études ont été menées sur les performances des profils d’ailes, notamment par le

National Advisory Committee for Aeronautics (NACA), et donc il existe de nombreux profils de

références. Les profils sont des formes utilisées dans des domaine d’applications très variés : ailes d’avions (avions de lignes, militaires, planeurs), éoliennes, hélices, turbines, foils, tuyères, ailerons automobiles, ect.

En fonction du domaine d’application, la forme d’un profil varie énormément. Il est intéressant de pouvoir proposer des outils d’optimisation de forme afin d’ajuster au mieux les performances d’un profil à l’application visée.

Dans cet exemple, nous avons réalisé une boucle d’optimisation automatique de forme complète, telle que décrite dans le chapitre 7. Le modeleur paramétrique a été couplé au solveur fluide parfait XFOIL ; décrit ci-dessous, et à la toolbox d’optimisation FAMOSA, développée à l’Inria par l’équipe de recherche Opale [El Majd et al., 2008, Duvigneau and Chandrashekar, 2012]. Le maillage d’XFOIL est généré automatiquement par le logiciel. Comme donnée d’entrée, il faut fournir à XFOIL un nuage de point ordonné distribué sur la surface du profil. Ce type de format est généré automatiquement par le modeleur paramétrique.

Nous avons ainsi pu réaliser des centaines de calculs de façon automatique pour converger vers des formes de profil optimales.