Professional Documents
Culture Documents
N 3686
Avril 1999
THME 4
apport de recherche
ISSN 0249-6399
optimum shape design in aerodynamics. The employed optimizer is a semi-stochastic method, more precisely a Genetic Algorithm GA. GAs are very robust optimization algorithms particularly well suited for problems in which 1 the initialization is not intuitive, 2 the parameters to be optimized are not all of the same type boolean, integer, real, functionnal, 3 the cost functional may present several local minima, 4 several criteria should be accounted for simultaneously multiphysics, e ciency, cost, quality, .... In a multi-objective optimization problem, there is no unique optimal solution but a whole set of potential solutions since in general no solution is optimal w.r.t. all criteria simultaneously ; instead, one identi es a set of non-dominated solutions, referred to as the Pareto optimal front. After making these concepts precise, genetic algorithms are implemented and rst tested on academic examples ; then a numerical experimentation is conducted to solve a multi-objective shape optimization problem for the design of an airfoil in Eulerian ow. Key-words: Optimization - Multi-Objective Optimization - Pareto front - Criterion of non inferiority - Genetic Algorithms - Euler Equations - Shape parametrization Parallel computing
INRIA, 2004 Route des Lucioles, BP. 93, 06902 Sophia Antipolis C dex-France
Unit de recherche INRIA Sophia Antipolis 2004, route des Lucioles, B.P. 93, 06902 Sophia Antipolis Cedex (France)
Tlphone : 04 92 38 77 77 - International : +33 4 92 38 77 77 Fax : 04 92 38 77 65 - International : +33 4 92 38 77 65
Optimisation multicrit re en m canique des uides num rique par Algorithmes G n tiques
de forme en a rodynamique. L'optimiseur utilis est une m thode semi-stochastique, plus pr cis ment un Algorithme G n tique AG. Les AG sont des algorithmes d'optimisation tr s robustes particuli rement adapt s aux probl mes o 1 l'initialisation n'est pas intuitive, 2 les param tres optimiser ne sont pas tous du m me type bool en, entier, r el, fonctionnel, 3 la fonctionnelle co t peut pr senter plusieurs minima locaux, 4 plusieurs crit res sont prendre en consid ration multiphysique, qualit , e cacit , co t, .... Dans un probl me d'optimisation multicrit re, il n'y a pas une solution optimale unique, mais un ensemble de solutions potentielles car en g n ral aucune solution n'est la meilleure vis- -vis de tous les crit res simultan ment ; on identi e alors un ensemble de solutions non domin es qui d nissent un front optimal de Pareto. Apr s avoir pr cis ces concepts, on met en uvre des algorithmes g n tiques et on les teste d'abord sur des exemples acad miques ; puis on conduit une exp rimentation num rique dans le cas de l'optimisation multicrit re d'un pro l d'aile plong dans un coulement eul rien. Mots-cl s : Optimisation - Optimisation multicrit re - Front de Pareto - Crit re de non-dominance - Algorithme g n tique - Equations d'Euler - Param trisation de forme - Calcul parall le
Contents
2.1 A de nition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 How do they work ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 The genetic operators . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 5
5 6 6
3.1 A general multi-objective problem . . . . . . . . . . . . . . . . . . . . . 8 3.2 A classical method to solve a multi-objective problem . . . . . . . . . . 8 3.3 Implementation by Genetic Algorithms . . . . . . . . . . . . . . . . . . 9 3.3.1 Ranking by fronts . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.3.2 An early experiment of application of GAs to a multi-objective problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.4 Nondominated Sorting Genetic Algorithms . . . . . . . . . . . . . . . . 11 4.1 Optimization problem from Scha er's doctoral dissertation . . . . . . . 14 4.2 A two-objective optimization problem . . . . . . . . . . . . . . . . . . . 16 4.3 A three-objective optimization problem . . . . . . . . . . . . . . . . . . 19 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 The 2D Euler ow solver . . . . . . Time integration . . . . . . . . . . Shape parametrization . . . . . . . The optimization problem . . . . . Mesh update procedure . . . . . . . Parallelization strategy . . . . . . . Results . . . . . . . . . . . . . . . . Coarse mesh results . . . . . . . . . 5.8.1 Parallel performance results 5.8.2 Numerical results . . . . . . 5.9 Fine mesh results . . . . . . . . . . 5.9.1 Parallel performance results 5.9.2 Numerical results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
25
25 27 28 29 30 31 32 32 32 32 35 35 36
6 Concluding remarks
RR n 3686
36
References
40
1 Introduction
In everyday's life, we commonly face multi-objective optimization problems such as buying a new television set compromising quality and low cost, or electing the optimal way to go to work minimizing both time spent and distance. In the aerospace engineering community, scientists try to build performant aircraft minimal weight, maximal security, ... at low cost. In economics, economists try to conciliate the utilities and the consumption of commodities to maximize the social welfare of each individual. The common part of these optimization problems is that they require several criteria to be taken into consideration simultaneously. In these cases, methods of single objective optimization are no more suitable. Multi-objective optimization should be considered instead. A large number of application areas of multi-objective optimization have been presented in the literature. The book of Cohon 1 is a good reference for a theoretical background on this subject. In a simple optimization problem, the notion of optimality is straightforward. We seek for the best the minimum or the maximum value of an objective function. In a multi-objective optimization problem, the notion of optimality is not so obvious. If we agree in advance that we cannot link the values of the di erent objectives i.e. if we refuse to compare apples and oranges, we must nd a new de nition of optimality, a de nition that accounts for all the criteria. Then, the concept of Pareto optimality arises : although, in general, no solution is best w.r.t. all the criteria simultaneously, there exist a set of solutions that are strictly better than the remaining ones in the whole search space when considering all the objectives simultaneously. This set of solutions is known as the Pareto optimal set or set of the non-dominated solutions . The complementary set of solutions is called the dominated solutions set. A solution belonging to the Pareto set is not better than another one belonging to the same set, they are not comparable. Each of them is called a feasible solution see for example 1 . The choice of a solution rather than another requires a thorough knowledge on the problem to be solved and a good knowledge of a lot of factors linked to the problem. Then, a solution chosen by a decision maker may be di erent from another decision maker's choice. There are two di erent ways to solve a mutli-objective optimization problem. The rst one is to make a linear combination of the di erent criteria with di erent weights and to minimize the resulting function. There are two main drawbacks with this method : 1 not all the solutions are found, 2 in a
penalty-function approach,
INRIA
the weights assigned to some criteria may not be suitable and the resulting function may lack signi cance. On the other hand, Genetic Algorithms GAs operate on an entire population of potential solutions potential, because they belong to the feasible space. Then, during the optimization, GAs explore the whole feasible space and build a database of solutions determining a cloud. Convergence occurs when the cloud no more evolves; then, its convex hull de nes the optimal Pareto set. In this paper, we present in Section 2 a brief presentation of GAs there are lot of references on GAs : D. Goldberg in 6 , Z. Michalewicz in 11 , .... In Section 3, we give a general de nition of a multi-objective optimization problem and its implementation by GAs. In Section 4, we apply GAs to three academic multi-objective optimization problems de ned by analytical functions. Finally, in Section 5, we demonstrate the use of GAs for solving a multi-objective optimization problem in CFD Computational Fluid Dynamics.
GAs operate simultaneously on an entire population of potential solutions also called chromosomes or individuals instead of producing successive iterates of a single element as do gradient-based methods such as steepest descent or one-shot methods ; the chromosomes are coded in binary strings ; the evolution operators make use of probabilistic rules ; the computation of the gradient of the cost functional is not necessary ; GAs have a greater potential to explore the whole search space and to climb the local maxima and to converge to the global optimum a
point to point method will generally stall in a local optimum ; GAs, as semi-stochastic methods, are frequently found more robust in the case of non di erentiable, multi-modal or non convex functions.
X X X X
RR n 3686
A population of chromosomes evolves in the course of successive generations toward the best individual, solution of the optimization problem. The population is submitted to three genetic operators : selection, crossover and mutation. The individuals can either survive, reproduce or die, according to their tness value which is related to the value of the cost functional to be optimized.
Selection operator According to its tness value, a chromosome may either reproduce, survive or die. There are two types of selection :
Roulette-wheel : a tness value is assigned to each individual. A biased roulettewheel is simulated. Each current string in the population has a roulette wheel slot sized in proportion to its tness. In order to create a new population, the weighted roulette-wheel is spun n times, where n is the population size. In the case of a maximization problem, it is clear that the individual associated with greater roulette-wheel slot size will have more chances to survive or reproduce than others see Fig. 1. Tournament : the most popular strategy is the binary tournament, also called two-point tournament. It consists in picking at random two individuals in the population and in comparing them. The best one is stored and both are reintroduced in the population. This procedure is started again until a new population of appropriate size has been obtained.
needed to increase diversity among the population. It is applied with a probability pc, close to 1. Two individuals are selected at random for crossing over. Then, an integer k is chosen at random, between 1 and l , 1 l is the string length of the chromosomes and k is the position of crossover. Two new strings called the o springs are created by swapping all bits between positions k + 1 and l inclusively see Fig. 2.
Mutation operator A mutation operator is needed because important genetic information 1's or 0's at special locations may occasionaly be lost as a result of selection and crossover. It is introduced with a very small probability pm close to 0.001 and applied at the bit level ; it consists in changing a 1 resp. 0 into a 0 resp. a 1.
INRIA
fitness value : 169 fitness value : 576 fitness value : 64 fitness value : 361 1170
14,4%
30,9%
1 3 5,5%
4 2
49,2%
1 k
Parent 1 Parent 2
1
Crossover
2
offspring 1 offspring 2
RR n 3686
A general multi-objective optimization problem consists of a number of objectives to be optimized simultaneously and is associated with a number of inequality and equality constraints for a theoretical background, see for example the book of Cohon 1 . Such a problem can be stated as follows : Minimize or Maximize fi x i = 1; ; N
j x = 0 j = 1; ; M subject to : g hk x 0 k = 1; ; K The fi are the objective functions, N is the number of objectives, x is a vector whose p components are the design or decision variables.
In a minimization problem, a vector x1 is said to be partially less than another vector x2 when : 8i fix1 fix2 i = 1; ; N and there exists at least one i such thatfix1 fix2 We then say that solution x1 dominates solution x2 . For example, in the case of minimization of 2 criteria,
f1 x1 f1x2 and f2 x1 f2 x2 or f1 x1 f1 x2 and f2x1 f2 x2
A common di culty with a multi-objective optimization problem is the con ict between the objectives : in general, none of the feasible solutions is optimal w.r.t. all the objectives. Then, a solution of the Pareto set is a solution which o ers the least objective con ict. One of the most classical methods is the method of objective weighting,
INRIA
used in the 1900's by the welfare economists see Cohon 1 . The multiple objective functions fi x are combined in one function F x such that :
It is clear that the preference given to one objective can be modi ed by changing the corresponding weight. On the other hand, the fact that we weight all the objectives implies the waste of a lot of informations. The only advantage of such a method is that an objective can be controlled by comparing it to another one and that the obtained optimum belongs to the optimal Pareto set. The main drawbacks are that we do not nd all the solutions, and that it is possible to give some weights that are totally illogical with the studied optimization problem. Other classical methods where the objectives are weighted are described, for example, by Srinivas and Deb 20 .
i=1
10
INRIA
11
Once the individuals have been ranked by fronts, they are assigned the following dummy tness values :
The nondominated sorting procedure makes use of a selection method by ranking which emphasizes the optimal points. The sharing technique or niche method is used to
12
Before performing the selection step on the available population of solutions, we rst identify the non dominated individuals according to the criteria as explained in paragraph 3.1. These individuals de ne front 1. The probability of reproduction of these individuals is very high. We then assign the same dummy tness fi to the non dominated individuals i of front 1 generally, the dummy tness fi is equal to 1. To maintain the diversity, the dummy tness of the individuals is then shared : it is divided by a quantity proportional to the number of individuals around it, according to a given radius. If the individual has numerous neighbours, a large number of similar solutions exist and the tness value is split in order to favor diversity in the next generation. We call this phenomenon a niche and it is quanti ed as follows :
X X
mi =
M X j =1
Shdi; j
where i is the index of the individual, M is the number of individuals belonging to the current front; Shd is the sharing function which is a linear decreasing function of d de ned by :
INRIA
13
Sh0
= 1
share share
share is the maximum phenotypic distance allowed between any two individuals to become members of a niche. Its value is problem-dependent and must be assigned by the user. In 8 , Goldberg proposes to implement an adaptive niching scheme to overcome the limitations of xed sharing schemes. di; j is the distance between two individuals i and j . In some multiobjective optimization problems, the Hamming distance is used. It is a genotypic at the string level distance and it consists in counting the number of di erent bits in the two strings, divided by the string length. Such a distance has beem used in electromagnetic system design optimization see 12 and in problems of nding an optimal distribution of active control elements in order to minimize the backscattering of a re ector in computationnal electromagnetics see 5 . In this case, the Hamming distance has an actual signi cance because the bits 1 and 0 do not correspond to a real coding but to the fact that the control elements are active or not. When working with binary-coded real-values, the Hamming distance may be biased because two neighbouring solutions may have a very important Hamming distance e.g : 0111 and 1000 correspond to 7 and 8, which are neighbours but their Hamming distance is maximal !. Then, in these cases, a phenotypic at the real parameter level distance is used, the Euclidian distance, of the form :
xik , xj k 2 max k , min k k=1 np is the number of parameters de ning the chromosomes i and j ; xik is the real value of parameter k of chromosome i; maxk = i=1 max xi and ;;M k mink = i=1 min xi , M is the number of individuals belonging to the ;;M k current front. Then after a niche has been isolated and treated for each individual of the current f front, we assign a new dummy tness value, namely i . m
RR n 3686
i
v u np uX di; j = t
14
X
X X
After the above sharing has been performed, the non dominated individuals are temporarily ignored from the population. For the new current front, we rst assign to the each individual belonging to this front the same dummy tness which is the minimum of the fi found in the previous front. mi We iterate this process until all the population has been visited. As a dummy tness value has now been assigned to each individual in the population, selection, crossover and mutation can be applied in the usual manner. The corresponding owchart of the method is presented in Fig. 4 closely inspired from 20 .
Remark : In the case of a minimization problem, the population is sorted by assigning a greater dummy tness to the best individuals : the individuals of front 1 have a greater tness than the individuals of front 2 that, in turns, have a greater tness than the individuals of front 3, and so on ; as a result, the Pareto optimization becomes a maximization.
Analytical solution The technique consists in minimizing the function f x = f1 x+ 1 , f2x in which 2 0; 1 is a parameter. Thus, a parametric representation of the optimal Pareto set is obtained by solving :
15
front = 1
Is population classified ? gen = gen + 1 Yes Reproduction according to dummy fitness Crossover Mutation Is gen < gen_max ? No Stop
No
Assign a new dummy fitness Ignore temporarily the current non dominated individuals
Yes
front = front + 1
RR n 3686
16
Solution by GA The decision variable x has been coded in a binary string of length equal to 24 the accuracy is then equal to 10,6. Working with a population of 20 chromosomes, setting the probability of crossover to pc = 0:9, the probability of mutation to pm = 0:05 and share = 0:2, an elitist strategy and a 2-point tournament have been employed.
Fig. 5 represents the two objectives in the decision space function of the variable x after the rst generation. The Pareto front takes place in the interval x 2 0; 2 : while J2 is decreasing to its minimal value, J1 is increasing from its minimal value a certain number of trade-o points appear between the two extreme optima. Fig. 6 depicts the evolution of the population in the objectives plane from the rst generation to the last one. It is clear that the optimal Pareto set is located between f1 2 0; 4 and f2 2 0; 4 . So, after 30 generations, all the individuals have converged in the region x 2 0; 2 see Fig. 7. The optimal Pareto set is shown in Fig. 8.
70 60 50 J1(x) and J2(x) 40 30 20 10 0 -6 -4 -2 0 x 2 4 6 First generation J1(x) J2(x)
We now consider two academic analytical functions depending on two parameters. We seek for the solutions minimizing simultaneously f1 and f2 : with x; y 2 ,5; 5 ,5; 5
INRIA
17
10
15
20
25
30
35
40
Figure 6: Evolution of the population in the objectives plane from the rst generation to the last one.
4 3.5 3 2.5 2 1.5 1 0.5 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4
x, f1(x) x, f2(x)
1.6
1.8
Figure 7: Convergence of the population after 30 generations to the region where there exist trade-o s between the two objectives x 2 0; 2 .
RR n 3686
18
4 3.5 3 2.5 2 1.5 1 0.5 0 0
0.5
1.5
2.5
3.5
Figure 8: Optimal Pareto set after 30 generations. There are 473 individuals on the Pareto front. Note that individuals are rather uniformely distributed on the Pareto front.
Analytical solution As previously, the technique is to minimize f x; y = f1x; y + 1 , f2 x; y in which 2 0; 1 is a parameter. Thus, the parametric representation of the optimal Pareto front is obtained by solving : 8 @f x; y = 0 2 x , 1 + 21 , x , 4 = 0 x = 4 , 3 @x @f x; y = 0 2y , 3 + 21 , y , 2 = 0 y = 2 + :
Solution by GA The decision variables x and y have both been coded in a binary string of length equal to 27 the accuracy is then equal to 10,7. Working with a population of 26 chromosomes, setting the probability of crossover to pc = 0:9, the probability of mutation to pm = 0:08 and share = 0:8, an elitist strategy and a selection by 2-point tournament have been used.
Fig. 9 represents the two objectives f1 and f2 in the decision space x; y. Fig. 10 depicts the evolution of the population in the objectives plane from the rst generation to the last one. It is clear that the optimal Pareto set is located between f1 2 0; 10 and f2 2 0; 10 . After 100 generations, we obtain the optimal Pareto set shown on Fig.
INRIA
19
11. There are 218 individuals on the set. The optimal individuals, functions of f1 and f2 , are shown on Fig. 12-a and 12-b. The GAs solution is the same as the analytical solution : x varies in 1; 4 and y varies in 2; 3 .
Remarks
1. If we do not apply the non dominated sorting GA technique see section 3.4 1 i.e. if the tness values of the individuals are of the form fi = rank of i , the population converges towards only two solutions of the Pareto front. This result is presented on Fig. 13. 2. The notion of Pareto equilibrium originates from game theory, originally introduced in economics. Games are usually classi ed in two types : cooperative games and non-cooperative games. Pareto games are cooperative, which means that the players co-operate in the evolution process. Inversely, Nash and Stackelberg games are non-cooperative which means that there is no communication between the players, although each player's strategy depends on the others. In his interesting thesis, Sefrioui 19 illustrated the three di erent types of equilibrium Pareto, Nash and Stackelberg by means of academic examples.
Now, we consider three academic analytical functions depending on two parameters. The objective is to minimize simultaneously the following three functions : with x; y 2 ,2; 2 ,2; 2
Analytical solution Here, the technique is to minimize f x; y = f1x; y + f2x; y+ f3 x; y in which ; ; 2 0; 1 are parameters such that + + = 1 . The optimal Pareto front is thus obtained by solving :
@f x; y = 0 2 x + 2 x + 2 x , 1 = 0 x= @x @f x; y = 0 2 y , 1 + 2 y + 1 + 2 y = 0 y = , : @y
then, xopt 2 0; 1 and yopt 2 ,1; 1 , that means, f1opt 2 0; 5 ; f2opt 2 1; 6 ; f3opt 2 2; 4 .
RR n 3686
20
Function f1(x,y)
24 22 20 18 16 14 12 10 8 6 4 2 0 0 1 2 3 4 55 4 3 2 0 1
Function f2(x,y)
25
20
15
10
0 0 1 2 3 4 55 4 3 2 1 0
21
Figure 10: Evolution of the population in the objectives plane from the rst generation to the last one 100 generations.
10
10
Figure 11: Optimal Pareto set after 100 generations. There are 218 individuals fairly uniformely distributed on the front.
RR n 3686
22
15 )
opt
15
opt opt 2
,y
opt
f (x
0 4 2 y
opt
f (x 4 2 0 0 x
opt
,y
10
10 5 0 4 2 y
opt
4 2 0 0 x
opt
Figure 12: The optimal individuals are plotted for f1 and f2 after 100 generations.
10 9 8 7 Criterion f2 6 5 4 3 2 1 0 0 1 2
Figure 13: Pareto set without sharing. There are only two solutions.
INRIA
3 4 Criterion f1
23
Solution by GA The decision variables x and y have both been coded in a binary string of length equal to 26 the accuracy is then equal to 10,7. Working with a population of 40 chromosomes, setting the probability of crossover to pc = 0:9, the probability of mutation to pm = 0:05 and share = 12:, an elitist strategy and a selection by 2-point tournament have been used.
Fig. 14 depicts the evolution of the population in the objectives space from the rst generation to the last one. We note that the optimal Pareto set is bounded by the intervals f1 2 0; 5 , f2 2 1; 6 and f3 2 2; 4 . Fig. 15 provides the representation of f1 ; f2 and f3 for the optimal solutions as well as the Pareto set as obtained after 100 generations ; this set is made of 1692 individuals. Finally, Fig. 16 depicts the optimal individuals xopt ; yopt.
Evolution of the population in the criteria set
12 10 8 6 4
Figure 14: Evolution of the population from the rst to the 100th generation.
RR n 3686
24
4 f (x,y) f (x,y)
6 4 2
0 2 2 0 0 y 2 1 x 1
0 2 1 0 y 1 1 0 x 2 1
2.5 2 2 2 10 5 f (x,y)
2
4 2 0 0 f1(x,y)
Figure 15: The optimal individuals for each criterion and the Pareto set in the space of the objectives.
INRIA
25
~ T ~ @ @ !T @W + r ~ :F ~ W = 0 ; W = ; U ; E ; r = @x ; @y 1 @t ~ W = F1W ; F2W T is the vector of convective uxes whose components where F are given by : 0 u 1 0 v 1 B u2 + p C B uv C C B C F1W = B B C ; F W = B 2 2 @ uv A @ v +p C A uE + p vE + p
RR n 3686
26
~ = u; vT is the velocity vector, E is In the above expressions, is the density, U the total energy per unit of volume and p denotes the pressure which is obtained using 1 kU ~ k2 where p = 1:4 is the ratio the perfect gas state equation p = p , 1E , 2 of speci c heats. The ow domain is assumed to be a polygonal bounded region of IR2. Let h be a standard triangulation of . A vertex of the mesh is denoted by Si, and the set of its neighboring vertices by N Si. At each vertex Si , a control volume Ci is constructed by joining the middle of the edges fSi; Sj g for Sj 2 N Si with the centroids of the triangles sharing Si as a common vertex ; see Fig. 17. The boundary of Ci is denoted by @Ci , and the unit vector of the outward normal to @Ci by ~i . The union of all these control volumes constitutes a dual discretization of .
The spatial discretization method adopted here uses a nite volume upwind formulation. Brie y speaking, for each control volume Ci associated with a vertex Si, one has to solve for ni one-dimensional Riemann problems at the control volume boundary, ni being the number of neighbors of Si. The spatial accuracy of the Riemann solver depends on the accuracy of the interpolation of the physical quantities at the control volume boundary. For rst order accuracy, the values of the physical quantities at the control volume boundary are set equal to the values in the control volume itself. An extension to second order accuracy can be performed via a
Monotonic Upwind Scheme for Conservative Laws MUSCL technique of Van Leer 21 . It consists in providing the Riemann solver with an interpolated value, taking into account some gradient of the physical quantities. One can use a nite element gradient P1 -Galerkin computed on a particular triangle, or an averaged nodal gradient, which is taken as a particular average of the nite element gradients on the set of triangles sharing a given vertex.
j G1 I
G2
INRIA
27 1
ZZ @W ~ x + @t C
i
X
@Ci ,w
j 2N Z Si @Cij
~ W :~ F id
+
~ W :~ F id
Z
@Ci ,1
~ W :~ F id
=0
2
where @Cij = @Ci @Cj ; ,w and ,1 respectively denote the wall boundary and the downstream upstream boundary. A rst order nite volume discretisation of 1 is : 1 = Win+1 , Win + t
j 2N Si
3 4
Upwinding is introduced here in the computation of Eq. 4 by using Roe's 17 approximate Riemann solver thus computing F as follows: ~ ~ 5 F Wi; Wj ; ~ij = FWi + FWj :~ij , j AR Wi; Wj ; ~ij j Wj , Wi 2 2 ~ where AR is Roe's mean value of the ux Jacobian matrix @ FW :~ @W . Following the MUSCL technique 21 , second order accuracy is achieved in Eq. 4 via a piecewise linear interpolation of the states Wij and Wji at the interface @Cij see Fig. 18 : ~ ij = W ~ i + 1 r ~W ~ i:S~ ~ ji = W ~ j , 1 r ~W ~ j :Si~Sj W 6 i Sj ; W 2 2
~ T ~ = ;U ~W ~ i is obtained by averaging where W ; p . An averaged nodal gradient r the P1 -Galerkin gradients computed on each triangle of Ci. Finally, the Van Albada limitation procedure 4 is introduced in the interpolation 6 in order to preserve the monotony of the approximation . As stated earlier, we are only interested here in steady solutions to the Euler equations. Therefore, time integration is only introduced as an arti ce to set up an iterative solution algorithm and it must be as e cient as possible regardless of time accuracy. For this purpose, an implicit formulation that allows the use of large pseudo-time steps
RR n 3686
@Cij
~ W :~ F id
; ~ij =
Z
@Cij
~id
28
- +
I
ij
W
ij
and ji on an edge f i j g
W S ;S
is adopted. Assuming that W ~ x; t is constant over Ci in other words, a mass lumping technique is applied to the temporal term, we obtain : dW 7 volCi i + W i = 0 ; i = 1; ; Nv dt where Wi = W x ~i; t, Nv is the number of control volumes, and : W i =
j 2N Si
where , = ,w ,1. Applying a rst order linearization to the ux W n+1 yields the Newton-like formulation 4 : volCi + J W n W n+1 , W n = , W n 9 tn where J W n denotes the associated Jacobian matrix. At each time step, the above linear system is approximately solved using Jacobi relaxations. The population of individuals represent airfoil shapes. Following a strategy already adopted by several authors 10 - 14 - 15 - 16 , the shape parametrization procedure is based on B zier curves. A few control points are enough to represent the whole shape and the smoothness properties of B zier curves permits to avoid non feasible shapes by the crossover operator. A B zier curve of order n is de ned by the Bernstein polynomials Bn;j :
@Ci ,
~ W :~ F id
8
B t =
n X i=0
29
where t 2 0; 1 ; Pi = xi ; yi are the coordinates of the control points. In this work, a B zier representation of order 8 has been used : 2 xed points, P0 and P8, and 7 control points.
xt =
8 X 8 X
i=0 i=0
: yt =
Two B zier curves are de ned for the upper and lower surfaces respectively ; the points P0 = 0; 0 and P8 = 1; 0 corresponding to the leading and trailing edges of the airfoil are xed. All the values xi 2 0; 1 are xed, and only the ordinates y1; ; y7 upper surface and y9; ; y15 lower surface are allowed to vary see Fig. 19. Before coding a chromosome in a binary string, it is de ned by a vector in IR14 : chromosome = y ; y15 | 1; z ; y7; y | 9; z Moreover, we have used a geometrical constraint on the ordinates : the yi's vary on intervals of the form mini ; maxi ; this has a direct implication on the search space. The parameters constituting the chromosomes are then coded as binary strings for decoding a binary string into the real parameters see, for example, the book of Michalewicz 11 pp. 18-20.
max 4 max 5
upper
lower
y y
2
y 6 y
1
min 4 min 5
y 7
1
x 10 x0 x2 y
x3
max 12
x4
x5
x6
x7 y y
9 8
14
13
y10 y
11
12
min 12
Figure 19: Representation of an airfoil using control points of B zier the yi's.
First, we evaluate a subsonic Euler ow at a Mach number equal to 0.2 and an incidence equal to 10:8 on a
high-lift pro le see Fig. 20 ; we calculate the pressure, P1.
30
Second, we evaluate a transonic Euler ow at a Mach number equal to 0.77 and an incidence equal to 1 on a
low-drag pro le see Fig. 20, and we calculate the pressure P2. The objective is to minimize simultaneously the two following cost functionals : Z 8 J1 W = P W , P12 d at Ma = 0:2 and = 10:8
: J2 W =
P W , P22 d
at Ma = 0:77 and = 1
We want to nd all the pro les existing between the low-drag pro le and the highlift pro le. For each chromosome determining the pro le of an airfoil , we evaluate the two Euler ows at the two previously mentioned regimes. On Fig. 21 we visualize the steady iso-mach lines on the two pro les corresponding to the two ow regimes.
0.1 0.08 0.06 0.04 0.04 0.02 0 -0.02 -0.02 -0.04 -0.06 -0.08 0 0.2 0.4 0.6 0.8 1 -0.04 -0.06 0.02 0 0.08 0.06
0.2
0.4
0.6
0.8
Once a new shape has been determined, the overall computational mesh has to be updated prior to a new ow calculation. In this work, an unstructured dynamic mesh is represented by a pseudo structural model where a ctitious linear spring is associated with each edge connecting two vertices Si and Sj . The vertices located on the downstream and upstream boundaries are held xed while the new positions of those points located on the wall boundary are determined from shape parametrization procedure. Then, the new position of the interior vertices is determined from the solution of a displacement driven pseudo structural problem via a Jacobi iterative procedure performed on appropriate static equilibrium equations. This procedure is adapted from the work presented in Farhat and Lanteri 3 for unsteady ow simulation on dynamic meshes.
INRIA
31
One important concern related with the use of GAs in shape optimum design is the computational e ort needed. In hard problems, GAs require large populations and this translates directly into higher computational e ort. In the case of the multi-objective optimization problem considered here, we have to solve for two Euler ows for each individual, which means that the computational e ort is very high. One of the main advantages of GAs is that they can easily be parallelized. At each generation, the tness values associated with each individual can be evaluated in parallel. We will not go into the details for the parallelization strategy we have adopted as this is not the major topic of this report. A complete description can be found in 10 . In brief, we have employed a two-level parallelization strategy : the rst level is the parallelization of the ow solver, which combines domain partitioning techniques with a message-passing programming model where calls to the MPI library are used. The second level is the parallelization of GAs. We have chosen to exploit the notion of process groups which is one of the main features of the MPI environment. Two groups are de ned, each group being responsible for the evaluation of the criteria for one individual, and each group contains the same number of processes. Then, two individuals are taken into account in parallel.
RR n 3686
32
The reference pro le is a NACA0012 airfoil. Results have been obtained using a coarse and a ne mesh of the NACA0012 airfoil. The coarse mesh is composed of 1351 nodes and the ne one is composed of 14498 nodes. On Fig. 22, we visualize the steady iso-mach lines at the two di erent regimes for both meshes.
The ow solver For each ow simulation, steady-state is assumed to be reached when the initial normalized density residual has been reduced by a factor 103. At each pseudo time-step, the linear system solution is interrupted when the residual has been reduced to one percent of the initial value. The GA Results have been obtained with a population of 40 individuals, setting the probability of crossover to pc = 0:8, the probability of mutation to pm = 0:007 and share = 0:7. The selection operator was chosen to be the binary tournament with an elitist strategy.
5.7 Results
33
Figure 22: Top-left : ne mesh - highlift regime. Top-right : ne mesh - lowdrag regime. Bottom-left : coarse mesh - highlift regime. Bottom-right : coarse mesh lowdrag regime.
RR n 3686
34
Table 1: Parallel perfomance results on the SGI Origin 2000 system Coarse mesh calculations and one process group
0.4
0.3
0.2
0.1
0.1
0.2
0.3
0.4
0.5
0.6
Figure 23: Evolution of the individuals in the objectives plane, from the rst generation to the last one 100 generations.
INRIA
35
0.5
0.4
0.3
0.2
0.1
0.1
0.2
0.3
0.4
0.5
0.6
Figure 24: The optimal Pareto set with 131 individuals uniformly distributed, after 100 generations.
The complete optimization process required 51 generations and, for Ng = 2 groups and Np = 8 processors, 22 hours on the SGI Origin 2000 system. We have decided to compare the parallel performances between coarse and ne meshes, for only 10 generations, for the same data. Results are given in Tab. 3. Table 3: Parallel perfomance results on the SGI Origin 2000 system Fine and coarse mesh calculations, two process groups
Np Total Flow Coarse mesh 8 18 min 43 sec 13 min 56 sec Coarse mesh 16 17 min 26 sec 11 min 50 sec Fine mesh 8 3 h 58 min 20 sec 3 h 9 min 46 sec Fine mesh 16 1 h 50 min 5 sec 1 h 24 min 56 sec
The coarse mesh optimization has required 772 cost functional evaluations for the 10 generations, while for the ne mesh, 702 cost functionals have been evaluated. As previously, we note that on the coarse mesh, it is not worth to use a lot of processors.
RR n 3686
36
Clearly, the situation is more favorable for the ne mesh calculations; a quasi-ideal speed-up is obtained when switching from 8 to 16 processors.
0.4
J2
0.3
0.2
0.1
0.1
0.2
0.3 J1
0.4
0.5
0.6
Figure 25: Evolution of the individuals in the objectives plane, for both runs on the two meshes 51 generations and 3918 evaluations for the ne mesh and 100 generations and 7730 evaluations for the coarse one.
6 Concluding remarks
The multi-objective optimization with Genetic Algorithms is independent of the decision makers : GAs work with a population of points, and they are able to nd the Pareto optimal solutions simultaneously ; in e ect, they collect a kind of database
INRIA
37
0.5
0.4
J2
0.3
0.2
0.1
0.1
0.2
0.3 J1
0.4
0.5
0.6
Figure 26: Optimal Pareto sets; the one obtained with the nest mesh 51 generations and 51 individuals is dominating the one obtained with the coarse mesh 100 generations and 131 individuals.
0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -1.2
0.5
1.5
2.5
3.5
Figure 27: A sample of pro les between high-lift and low-drag, obtained with the ne mesh.
RR n 3686
38
informative of the dynamics of the system. Then, whatever option is elected by the decision maker subsequently to the fabrication of the database, the optimal solution of the corresponding problem can be found on the Pareto front. Indeed, the common practice, in multi-objective optimization, is to x some weights in order to combine linearly the objectives and to optimize only one function. Then, a wrong weighting may drive any optimization process toward wrong answers. Usually, the weights tuning is an expensive cut-and-try empirical procedure that implies necessarily a large number of optimization runs before reaching satisfactory results. Identifying the Pareto set permits to avoid this disadvantage. In some multi-objective optimization problems, we do not succeed in obtaining all the feasible optimal solutions. The few points we obtain are optimal solutions but the trade-o s between the objectives are lacking. A procedure of sharing technique with a classi cation by fronts is then necessary to obtain the diversity between the optimal solutions all along the Pareto front. In our rst approach on multi-objective optimization, we have studied only one sharing method, inspired by Srinivas and Deb 20 . But this technique has been improved, developped in many other optimization problems, for example by Goldberg and Richardson in 7 , Deb and Goldberg in 2 who have used the tournament selection because it puts more controlled selection pressure and faster convergence characteristic. Oei and al. propose in 13 another niching technique. More recently, Goldberg 8 has proposed an adaptive niching scheme whose the objective is to overcome the limitations of xed sharing methods. Further investigation of these tecniques is currently undergone. The multi-objective optimization is used in optimum design when the problem is to nd the di erent shapes of airfoils at di erent speeds. The optimal solutions of the Pareto front represent a family of shapes for the di erent mach numbers, corresponding to di erent weighted cost functionals. In 15 , Poloni gives results concerning to the geometric transition from low-drag to high-lift airfoils.
References
1 J.L. Cohon. Multiobjective programming and planning. Academic Press, 1978. 2 K. Deb and D.E. Goldberg. An investigation of niches and species formation in genetic function optimization. In J.-D. Scha er, editor, Third international conference on Genetic Algorithms, pages 4250. Morgan Kaufmann, 1991.
INRIA
39
3 C. Farhat and S. Lanteri. Simulation of compressible viscous ows on a variety of mpps: computational algorithms for unstructured dynamic meshes and performance results. Comp. Meth. in Appl. Mech. and Eng., 119:3560, 1994. 4 L. Fezoui and B. Stou et. A class of implicit upwind schemes for Euler simulations with unstructured meshes. J. of Comp. Phys., 84:174206, 1989. 5 R. Glowinski, J. Periaux, M. Sefrioui, and B. Mantel. Optimal backscattering of a re ector by means of genetic algorithms. In J.-A. D sid ri et al., editor, Third ECCOMAS Computational Fluid Dynamics Conference and Second ECCOMAS Conference on Numerical Methods in Engineering, pages 251257. John Wiley & Sons, 1996. Conference computational methods in applied sciences. 6 D.E. Goldberg. Genetic Algorithms in search, optimization and machine learning. Addison Wesley Company Inc., 1989. 7 D.E. Goldberg and J. Richardson. Genetic algorithms with sharing for multimodal function optimization. In Second international conference on Genetic Algorithms : Genetic Algorithms and their applications, pages 4149. Morgan Kaufmann, 1987. 8 D.E. Goldberg and L. Wang. Adaptive niching via coevalutionary sharing. In C. Poloni D. Quagliarella, J. P riaux and G. Winter, editors, Genetic Algorithms and evolution strategies in engineering and computer science, pages 2138. John Wiley & Sons, 1997. 9 J. Horn and N. Nafpliotis. Multiobjective optimization using the niched pareto genetic algorithm. In First IEEE conference on evolutionary computation, IEEE world congress on computational intelligence, volume 1, 1994. 10 N. Marco and S. Lanteri. A two-level parallelization strategy for genetic algorithms applied to shape optimum design. Technical Report 3463, INRIA, 1998. 11 Z. Michalewicz. Genetic Algorithms + data structures = evolution programs. Springer Verlag, 1992. Arti cial intelligence. Genetic Algorithms in engineering and computer science. 12 E. Michielssen and D.S. Weile. Electromagnetic system design using genetic algorithms. In M. Gal n G. Winter, J. P riaux and P. Cuesta, editors, Genetic Algorithms in engineering and computer science, pages 345368. John Wiley & Sons, 1995.
RR n 3686
40
13 C.K. Oei, D.E. Goldberg, and S.J. Chang. Tournament sele`ction, niching and the preservation of diversity. Technical Report 91011, IlliGAL Report, University of Illinois at Urbana-Champaign, Illinois Genetic Algorithms Laboratory, Urbana, 1992. 14 J. P riaux, M. Sefrioui, B. Stou et, B. Mantel, and E. Laporte. Robust genetic algorithms for optimization problems in aerodynamic design. In M. Gal n G. Winter, J. P riaux and P. Cuesta, editors, Genetic Algorithms in engineering and computer science, pages 371396. John Wiley & Sons, 1995. 15 C. Poloni. Hybrid GA for multi-objective aerodynamic shape optimization. In M. Gal n G. Winter, J. P riaux and P. Cuesta, editors, Genetic Algorithms in engineering and computer science, pages 397415. John Wiley & Sons, 1995. 16 D. Quagliarella. Genetic algorithms applications in computational uid dynamics. In M. Gal n G. Winter, J. P riaux and P. Cuesta, editors, Genetic Algorithms in engineering and computer science, pages 417442. John Wiley & Sons, 1995. 17 P.L. Roe. Approximate riemann solvers, parameters vectors and di erence schemes. J. of Comp. Phys., 43:357371, 1981. 18 J.D. Scha er. Some experiments in machine learning using vector evaluated genetic algorithms, 1984. Unpublished doctoral dissertation, Vanderbilt University, Nashville TN. 19 M. Sefrioui. Algorithmes volutionnaires pour le calcul scienti que : application l' lectromagn tisme et la m canique des uides num riques. PhD thesis, University of Paris VI and Laforia, 1998. 20 N. Srinivas and K. Deb. Multiobjective optimization using non-dominated sorting in genetic algorithm. Evolutionary Comput., 23:221248, 1995. 21 B. Van Leer. Towards the ultimate conservative di erence scheme V : a secondorder sequel to Godunov's method. J. of Comp. Phys., 32:361370, 1979.
INRIA
Unit de recherche INRIA Sophia Antipolis 2004, route des Lucioles - B.P. 93 - 06902 Sophia Antipolis Cedex (France)
Unit de recherche INRIA Lorraine : Technople de Nancy-Brabois - Campus scientique 615, rue du Jardin Botanique - B.P. 101 - 54602 Villers ls Nancy Cedex (France) Unit de recherche INRIA Rennes : IRISA, Campus universitaire de Beaulieu - 35042 Rennes Cedex (France) Unit de recherche INRIA Rhne-Alpes : 655, avenue de lEurope - 38330 Montbonnot St Martin (France) Unit de recherche INRIA Rocquencourt : Domaine de Voluceau - Rocquencourt - B.P. 105 - 78153 Le Chesnay Cedex (France)
diteur INRIA - Domaine de Voluceau - Rocquencourt, B.P. 105 - 78153 Le Chesnay Cedex (France)
http: www.inria.fr
ISSN 0249-6399