compatible with entirely shock{free transonic ow elds or to produce ow elds ... satisfactory, though all the mathematical conditions are perfectly satis ed. As a ..... written in ANSI C programming language, while the aerodynamic analysis code .... in Proceedings of the 4th International Conference on Genetic Algorithms,.
Investigating a Parallel Breeder Genetic Algorithm on the Inverse Aerodynamic Design I. De Falco, A. Della Cioppa, R. Del Balio and E. Tarantino Research Institute on Parallel Information Systems (IRSIP) National Research Council of Italy (CNR) Via P. Castellino, 111 80131 Naples - Italy
Abstract. Breeder Genetic Algorithms represent a class of random
optimisation techniques gleaned from the science of population genetics, which have proved their ability to solve hard optimisation problems with continuous parameters. In this paper we test a parallel version of this technique against a sequential Breeder Genetic Algorithm on a typical inverse design problem in Aerodynamics, the problem of an aerofoil geometry recover starting from a target pressure distribution. Our results show that Parallel Breeder Genetic Algorithms are well suited for applications in Aerodynamics.
Keywords: Breeder Genetic Algorithms, Aerodynamic Design, Parallel Genetic Algorithms.
1 Introduction There are two problems in Aerodynamics: the analysis and the design [1, 2]. The former (direct problem) consists in describing a ow eld given the geometry of the object, whereas the latter (inverse problem) requires to nd the geometry of the object causing the given ow eld. As an example of the second class of problems, we may be asked to determine the shape of an aerofoil when we are assigned a given surface pressure distribution. Furthermore, the design may be subject to constraints allowing the aerodynamic shape to achieve some extremely important features: the aerofoil is sometimes imposed to be compatible with entirely shock{free transonic ow elds or to produce ow elds with minimumentropy generation, minimumnoise generation or uniform surface heat ux, and so on. There are some mathematical models used for the shape design which are based on partial dierential, integral and algebraic equations. It may sometimes happen, however, that the result of an inverse design based on the above models is a shape which is mathematically acceptable yet it is not physically meaningful and cannot be manufactured; this is, for example, if the lower and the upper surfaces of the aerofoil cross over (` sh tail shapes') or never meet (open trailing edge shapes). Another keypoint in the inverse design methodologies is that an aerofoil obtained even by mathematical models has the desired characteristics only at the design conditions, but if just one of them (angle
of attack, free stream Mach number, : : :) changes then the shape will have to be changed. Furthermore, in some case, the result of the design may be a mildly concave shape, partially covered by the supersonic ow. In this case (`hanging shock') even at the project operating point the aerodynamic eciency will not be satisfactory, though all the mathematical conditions are perfectly satis ed. As a consequence of all of the above, it is well known to people working in aerodynamic eld that it is more appropriate to draw an almost shock{free shape even at the design conditions, provided that this shock does not increase signi cantly at o{design conditions. Although skilful engineers are capable of producing successful shapes when considering one operating condition, diculties arise especially when the problem consists in more operating conditions. In such a case the problem shows all its diculty, so optimisation methods are needed to help the designer. Many optimisation techniques have been proposed and used by researchers [3, 4]. A basic feature for a numerical optimisation algorithm to be considered of interest is its robustness, because only in this case it may be a key factor for the development of aerodynamic optimisation methods. During last years Genetic Algorithms (GAs) [5, 6] have been more and more widely applied in many and very dierent application elds, ranging from the scienti c to the commercial and the industrial ones, and they have proved their ability in eciently solving very dierent problems. Therefore they are being applied also in the inverse design problem. Some features of the GAs (the use of objective function rather than derivatives or any auxiliary knowledge, the use of probabilistic transition rules instead of deterministic ones, the search from a population of points rather than a single point) make them very robust and therefore attractive for aerodynamic applications. Good results have been obtained by applying GAs to the aerodynamic design problem [7, 8], much better than those achieved by using gradient{based techniques. Nonetheless, the current state of the art is not fully satisfactory. In fact, two problems are to be faced. The rst is represented by the huge computation times required by all techniques (GAs included) to nd good solutions, due to the need of performing lots, say thousands, of evaluations each one is, in this eld, very time{consuming. The second is given by the huge width of the search space. For typical real problems, even not too dicult, at least about twenty variables are to be taken into account, many of them being real variables varying in large admissible ranges, so the search algorithm has to choose among billions of billions of possible solutions. Because of this, new heuristic optimisation techniques are welcome capable of performing ecient searches and reducing the execution times. One more point to be focussed is that such a technique should, if possible, be easily parallelisable, so as to take advantage of the nowadays widely available parallel computers, with the aim to further reduce the search time. In the last years Muhlenbein and Schlierkamp{Voosen proposed an approach called Breeder Genetic Algorithms (BGAs) [9, 10, 11] which can be seen as a recombination between Evolution Strategies (ESs) [12] and GAs. In fact BGAs use truncation selection which is very similar to the (; ){strategy in ESs and the search process is mainly driven by recombination making BGAs very similar
to GAs. It has been proved that BGAs can solve problems more eciently than GAs due to the theoretical faster convergence to the optimum [10] and they can, like GAs, be easily written in a parallel form, so we wish to test them on the inverse design. The paper is organised as follows. Section 2 describes the BGAs. In section 3 the problem faced is described in detail and in section 4 the Parallel BGA (PBGA) is depicted. Section 5 reports our experimental results with the comparison of a sequential and a parallel version of BGAs on the above problem. Finally, section 6 contains our conclusions and foreseen future work in this area.
2 Breeder Genetic Algorithms The BGAs are based on the concepts of evolution of species and selection typical of GAs; however they dier in the fact that the evolution of the population is `driven' by the breeding mechanism. This consists in the selection, at each generation, of the T % best elements within the current population of N elements (T % is called truncation rate and its typical values are within the range 10% to 50%). These elements are let free to mate randomly, without roulette wheel selection, so that they generate a new population of N ? 1 elements. The former best element is then inserted in this new population, and the cycle of life continues. By doing so, the best elements are treated as `super-individuals' and mated together, hoping that this can lead to a tter population. These concepts are taken from other sciences and mimic animal breeding. Another feature of BGAs is the fact that they represent solutions as sequences of real numbers, rather than sequences of bits or integers, so they allow a representation of a phenomenon much closer to the reality than discrete GAs. A BGA can be formally described by: BGA = (P0 ; N ; T ; ?; ; A; )
(1)
where P0 is the initial random population, N the population size, T the truncation threshold, ? the recombination operator, the mutation operator, A the tness function and a termination criterion. Typical recombination operators are the Discrete Recombination (DR), the Extended Line Recombination (ELR) and the Extended Intermediate Recombination (EIR) [10]. DR mixes the alleles in the sequences and can only generate corners in the hypercube de ned by the sequences, whereas ELR and EIR generate a new allele by means of a linear combination of the corresponding alleles and can generate respectively any point on the lines connecting the corresponding vertices and in the volume of the hypercube de ned by the sequences. Typical mutation operators are discrete and continuous BGA mutation schemes. A wider explanation of these operators can be found in [10].
3 The test problem faced We have chosen a typical inverse design problem, known in literature as Europt T4 problem, as a test for our technique. Given a surface pressure distribution Cp, at a pre xed operating condition, the inverse problem faced consists in reaching the aerofoil con guration with the xed Cp distribution at the same operating condition. The closer we get to this goal con guration, the better the technique. In this work, the BGAs technique has been employed for the reconstruction of the Korn Aerofoil for subsonic inviscid ow starting from the NACA64A410 aerofoil (Fig. 1). The operating conditions considered for the design task are the following: M = 0:75 and angle of attack1 equal to zero, where M is the Mach number2. The objective function used for our inverse problem is the classical referred to in literature for this kind of problems de ned as follows: Obj (x) =
I
?
Cp(x; s) ? Cpt (s) 2 ds
(2)
where Cp and Cpt are respectively the current and the target pressure distribution at the operating condition and s is the arc length along the Cp shape
. The tness function of a generated aerofoil is proportional to the inverse of the objective function (2) so the problem becomes a typical maximisation problem and a tness of in nite value would mean that the two Cp shapes are absolutely identical.
3.1 Aerofoil geometric representation The representation of the aerofoil geometry is a very important issue for these problems. Usually, researchers working in the eld of the aerodynamic design use either a representation given in points modifying the geometry by means of a set of ad hoc modi cation functions or a B-spline representation [13] consisting in a set of points which control the curve (the aerofoil) geometry. The latter representation seems better because it allows to generate curves in a general way and, if it is needed, permits to x some control points and move the remaining ones allowing a local optimisation.This is the reason why we have used it de ning a closed curve with a set of m control points. Such a curve varies as a function of a parameter called degree of the curve (the higher the degree the softer the curve, without spikes, and the farther the shape from the control points). If we let these control points slightly move within given ranges, we will obtain new curves, so new aerofoils. The parameters to be optimised are, thus, the positions of these control points. The angle of attack is the angle between the segment connecting the Trailing with Leading Edges and the direction of the freestream. 2 The Mach number is de ned as the ratio between the ow velocity V and the sound velocity c at the same point.
1
0.08 TARGET (NACA64A410 Airfoil) INITIAL (KORN Airfoil) 0.06
0.04
y/c
0.02
0
-0.02
-0.04
-0.06 0
0.2
0.4
0.6
0.8
1
x/c
Fig. 1. The initial and target airfoil. For our problem we have de ned a set of control points both for the upper and the lower aerofoil shape B0 = fB10 ; : : :; Bm0 g and the following variation has been allowed W = fW1 ; : : :; Wm g. Hence, the variation law that has been de ned for each control point is the following:
Bix = Bi0x + Wix ; Biy = Bi0y + Wiy
(3) The aerofoil shape has been de ned using two open B-spline curves of degree 4 with 9 control points for both the upper and lower surface. The initial and nal points, i.e. B10 = (0:0; 0:0) and B90 = (1:0; 0:0), have been xed on both the curves for closing the aerofoil and the remaining ones are let free to move. So, we have 14 control points corresponding to 28 coordinates to be optimised. The variations Wix and Wiy of each control point are in the range [?0:04; 0:04]. This is a very general approach because no speci c knowledge of the desired nal shape has been used, dierently from other approaches which allow a dierent range for each point. Hence, we have computed the vertices of the polygon which de nes the NACA64A410 aerofoil geometry using it as the initial polygon for the genetic optimisation.
4 A parallel BGA version The high computation time, required by both the ow eld solver for the evaluation of the goodness of each pro le and the high number of evaluations needed by classical GAs or BGAs to explore huge search spaces, leads to exploit explicit parallelism. Many researches have been eected on GAs with the aim to design eective parallel approaches [14, 15, 16]. The motivation behind the studies of parallel
versions is twofold. The rst goal is to reduce the processing time necessary to reach an acceptable solution and the second is to nd better solutions with respect to the sequential version. Among the parallel approaches introduced, the coarse{grained model [17], usually implemented on distributed MIMD computers, seems to be the most interesting. In this approach, the population should be divided into a few subpopulations and a migration process is used to send some individuals from one subpopulation to another. In this context we have implemented a simple parallel version which consists of a set of four classical BGAs, running in parallel, each assigned to a dierent processing element in a completely connected topology, thus the local searches are linked together allowing, in each generation, an exchange of the current best individuals among all processes. From the Computer Science point of view, there is not a unique de nition to measure the performance of parallel algorithms, so researchers adopt dierent criteria to evaluate the goodness of their algorithms. The performance evaluation becomes even more dicult for the probabilistic search strategies. Since in a previous paper [18] we have tested the BGA on the same problem and we have found the best sequential version in terms of the optimal set of the genetic parameters (population size N , truncation rate T , : : :), in this work the approach adopted consists in designing a parallel version starting from the optimal set of values found. Consequently, a set of NProc processes with a population size Np equal to N =NProc is allocated on the parallel system. We will adopt two criteria for the performance evaluation: at parity of the nal solution and of the number of evaluations. The pseudo{code of a generic local search process is delineated in the following: Procedure Breeder Genetic Algorithm begin randomly generate an initial population of Np individuals; evaluate goodness of each individual; while (termination criterion not ful lled) do save the best individual in the new population; select the best T % individuals; for i = 1 to Np ? 1 do randomly select two elements among the T %; recombine them so as to obtain one ospring; perform mutation on the ospring; evaluate goodness of the ospring; od send the current best individual to the master process; broadcast the current best individual; exploit the received solutions; update variables for termination; od end
Initial Population
PBGA
Wix,Wiy
B-spline
Aerofoil
Module
Flow Field
Cp
Solver
Physical requirements
Fig. 2. The cascade of the systems employed. The master process is simply a collector of the current local best solutions of the `slave' processes and saves the best element at each generation. As regards the exploitation of the received solutions, these replace the worst elements (in our case 3 elements) in each local population. The overall system is illustrated in Fig. 2.
5 Experimental results We have made preliminary sets of experiments for the sequential BGA in order to nd the best values for the control parameters and the best combination for the genetic operators [18]. The results have led to a BGA version with EIR and continuous mutation operators, which de nes the recombination interval [?; 1 + ] equal to 0:25 and a which speci es the mutation interval equal to 0:5. The population size is N = 120 and the truncation rate T = 10%. All the tests have been performed on a parallel machine, the Meiko Computing Surface 2. It is a distributed global memory architecture in which every processing element has more CPUs, and its own local memory system. We have used for the parallel implementation the Parallel Virtual Machine (PVM) as message{passing paradigm among the nodes. It should be pointed out that a oat representation has been chosen for the variables involved and, as a consequence, the resulting possible con gurations of the search space are ' 10163. BGA codes have been written in ANSI C programming language, while the aerodynamic analysis code is an inviscid full potential ow eld solver written in FORTRAN 77. A decomposition of the population size N has been eected, so each process has Np = 30 with the same truncation percentage, so 3 elements are selected for mating. Due to the approximations, a tness values of about 100; 000 has been xed as stop criterium. This value represents the minimum tness value representative of shapes satisfying the problem. In Fig. 3(a), the evolution process in terms of maximum and average tness over 10 runs is depicted. Comparing the BGA and the PBGA at parity of the nal solution, the speedup in terms of ratio of sequential and parallel convergence time is equal to 6:15. This value has been computed neglecting the time due to the message passing because the time consumed by the BGA and by the ow eld solver is much higher. On the other hand, the ratio between the total number of evaluations performed by the BGA and by the PBGA is equal to 1:54. These
results prove that while for the rst speedup it is possible to obtain good values and `super{speedups' for the second the gain is not comparable to the rst one. From the genetic point of view it is interesting to evaluate the migration eects in the evolution process by comparing the BGA and the PBGA at the same number of evaluations. In Fig. 3(a) it can be noted that the nal solution of the PBGA shows always higher quality. It should also be pointed out that this solution has been obtained in a quarter of the time required by the BGA. Note that the comparison should be done against a BGA with a population size equal to 30 and that, as said, the BGA employed with N = 120 outperforms the above, so the results obtained are even more meaningful from the parallel point of view. These results have a very important implication in the industrial applications, like that under consideration. In fact, the nal aim in this context is to design aircraft wings, so it should be desirable to obtain a solution as close as possible to the physical requirements for both in{ and o{design conditions in the lowest possible time. Fig. 3(b) and Fig. 3(c) report respectively the initial, the target and the computed aerofoils and the relative distributions of the pressure coecient Cp obtained by the BGA and the PBGA in the best execution.
6 Conclusions and future work In this work we have applied a parallel version of the Breeder Genetic Algorithms to a typical design problem in Aerodynamics, the inverse problem for aerofoil optimisation. The parallel algorithm consists in a simple coarse{grained model constituted by four BGA processes which exchange local best individuals. Performance of the parallel algorithm is shown in terms of speedup at parity of the nal solution and of the number of evaluations. All the experiments have evidenced the eectiveness and the eciency of the parallel approach to BGAs. As concerns our foreseen future work in this area, we wish to perform further tests with BGAs on multi-objective constrained problems. Furthermore we aim to implement a more sophisticated parallel approach to face harder problems.
References 1. G. N. Vanderplaats, Numerical Optimization Techniques for Engineering Design: with Applications. Mc Graw Hill, New York, 1984. 2. G. S. Dulikravich, \Aerodynamic Shape Design and Optimization," Tech. Rep. 910476, AIAA Paper, Jan. 1991. 3. P. D. Frank and G. R. Shubin, \A Comparison of Optimization{based Approaches for a Model Computational Aerodynamic Design Problem," Boeing Computer Serv., Apr. 1990. 4. J. A. van Egmond, \Numerical Optimization of Target Pressure Distributions for Subsonic and Transonic Airfoil Design," in Proceedings of AGARD Conference on Computational Methods for Aerodynamic Design (Inverse) and Optimization, no. 463, ref. 17, Mar. 1990.
5. J. H. Holland, Adaptation in Natural and Arti cial Systems. MIT Press, 1975. 6. D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley, Reading, Mass., 1989. 7. S. Obayashi and S. Takanashi, \Genetic Optimization of Target Pressure Distributions for Inverse Design Methods," in Proceedings of the 12th AIAA Computational Fluid Dynamics Conference, San Diego, CA, Jun 19-22 1995. 8. I. De Falco, R. Del Balio, A. Della Cioppa and E. Tarantino, \A Parallel Genetic Algorithm for Transonic Airfoil Optimisation," in Proceedings of the IEEE International Conference on Evolutionary Computing, Perth, University of Western Australia, Australia, pp. 429{434, 1995. 9. H. Muhlenbein and D. Schlierkamp-Voosen, \Analysis of Selection, Mutation and Recombination in Genetic Algorithms," Neural Network World, vol. 3, pp. 907{ 933, 1993. 10. H. Muhlenbein and D. Schlierkamp-Voosen, \Predictive Models for the breeder Genetic Algorithm I. Continuous Parameter Optimization," Evolutionary Computation, vol. 1, no. 1, pp. 25{49, 1993. 11. H. Muhlenbein and D. Schlierkamp-Voosen, \The Science of Breeding and its Application to the Breeder Genetic Algorithm," Evolutionary Computation, vol. 1, pp. 335{360, 1994. 12. T. Back, F. Homeister and H. Schwefel, \A Survey of Evolution Strategies," in Proceedings of the 4th International Conference on Genetic Algorithms, (R. K. Belew, L. B. Booker, eds.), pp. 2{12, M. Kaufmann Publisher, 1991. 13. D. E. Rogers, Mathematical Elements for Computer Graphics. Addison-Wesley, Reading, Mass., 1989. 14. R. Tanese, \Distributed Genetic Algorithms," in Proceedings of the 3rd International Conference on Genetic Algorithms, (J. D. Schaer, ed.), pp. 434{ 439, M. Kaufmann Publisher, 1989. 15. B. Manderick and P. Spiessens, \Fine{grained Parallel Genetic Algorithms," in Proceedings of the 3rd International Conference on Genetic Algorithms, (J. D. Schaer, ed.), pp. 428{433, M. Kaufmann Publisher, 1989. 16. H. Muhlenbein, M. Schomisch and J. Born, \The Parallel Genetic Algorithm as Function Optimizer," Parallel Computing, vol. 17, pp. 619{632, 1991. 17. E. Cantu{Paz, \A Summary of Research on Parallel Genetic Algorithms" IlliGAL Report, no. 95007, University of Illinois at Urbana{Champaign, USA, July 1995. 18. I. De Falco, R. Del Balio, A. Della Cioppa and E. Tarantino, \Breeder Genetic Algorithm for Airfoil Design Optimisation," in Proceedings of the IEEE International Conference on Evolutionary Computing, Nagoya, Japan, pp. 71{75, 1996.
(a) 140000
120000
100000
Fitness
80000
60000
40000 BGA Best BGA Average PBGA Best PBGA average
20000
0 0
5
10
15
20 Generation (b)
25
30
35
40
0.08 TARGET COMPUTED (SEQUENTIAL) COMPUTED (PARALLEL) 0.06
0.04
y/c
0.02
0
-0.02
-0.04
-0.06 0
0.2
0.4
0.6
0.8
1
x/c (c) -1.5 TARGET COMPUTED (SEQUENTIAL) COMPUTED (PARALLEL) -1
Cp
-0.5
0
0.5
1
1.5 -0.2
0
0.2
0.4
0.6
0.8
1
1.2
x/c
Fig. 3. The results obtained by means of the BGA and the PBGA.