Automatic satisfaction of constraints set in aircraft sizing ... - CiteSeerX

6 downloads 0 Views 335KB Size Report
due to the large number of degrees of freedom, it contains physically speaking ... From now, we will refer to this ForTran code as our evaluation function. ... Then, we compute the properties values on which our constraints are applied. We call.
6th World Congresses of Structural and Multidisciplinary Optimization Rio de Janeiro, 30 May - 03 June 2005, Brazil

Automatic satisfaction of constraints set in aircraft sizing studies C. Badufle, C. Blondel, T. Druot, M. Duffau Airbus France, Toulouse, France, [email protected] Universit´e Paul Sabatier, Department of Applied Mathematics, Toulouse, France

1. Abstract Aircraft sizing studies consist in determining characteristics of an aircraft, starting from a set of requirements. These studies can be summarized as global optimization problems under constraints, which express requirements. In this paper, we only consider the constraints satisfaction problem. Our aim is to automatically produce large amounts of design points satisfying all the constraints, despite frequent evaluation failures. This problem can potentially be solved in two ways: gradient-based methods and stochastic methods. We show that our dedicated implementation of genetic algorithms exhibits good results in terms of robustness and speed. We compare our genetic algorithms implementation with a gold standard method in constraints satisfaction: FSQP. Our results are very promising: genetic algorithms achieve convergence 80% of cases, and are fast compared to the time an engineer needs to exhibit such points, producing in average one admissible point every 15 minutes. 2. Keywords: aircraft sizing, constraints satisfaction, genetic algorithms, penalty methods, FSQP. 3. Introduction 3.1 Aircraft sizing studies Aircraft Sizing activity is basically an inverse problem. We know the performance that the system should achieve and we look for its physical characteristics. The studied system is an aircraft evolving in its environment. It is complex enough to make it impossible to express directly characteristics as a function of performance. For this reason, the core of Aircraft Sizing is necessarily an iterative process driving an evaluation function that quantifies the performance of a given aircraft configuration. The configuration has to be defined by a set of scalar driving parameters and its properties have to be quantified by a set of scalar values. The number of driving parameters gives the dimension of the design space while the number of properties gives the dimension of the property space. The actual design space is determined by validity intervals on the design parameters. The actual property space is determined by the set of constraints. The admissible set is the antecedent of the intersection between the image of design space and the property space.

Figure 1: Admissible set representation: The admissible set (in green) is the antecedent of the intersection (in blue) between the image of design space (dashed domain on the right) and the admissible property space (in red) 1

Some properties of great importance can act as cost functions. The necessity to find a simple answer to a complex problem has led many engineers to nest their evaluation function into a mono-criterion optimisation process under constraints. The main drawback of this approach is that it gives a limited view on compromise solutions, since it is obvious that the final product is never a mathematical optimum but an alchemic compromise. The multi-criteria approach is an answer to the research of compromise, but criteria formulation may change, or at least evolve, along the study duration. Finally, it appears to us that it could be interesting to uncouple the problem of research of optimum (or compromise) from the problem of admissible set extraction. From now, we only consider the constraints satisfaction problem. 3.2 Requirements satisfaction We decide to treat this constraints satisfaction problem as an optimization problem to give an initial structure for next steps of the global optimization. To choose the optimization process, we are inspired by the FSQP principle [1], namely to reach the admissible set before performing any optimization. Our aim is to automatically produce large amounts of design points satisfying the requirements, despite numerical noise introduced by the evaluation function. Moreover, as the design space is vast, due to the large number of degrees of freedom, it contains physically speaking meaningless design points, making the evaluation function sometimes fail. Two optimization method classes can be envisaged to solve this problem of constraints satisfaction: gradient methods, which are supposedly fast but non-robust against evaluation failures, and stochastic methods, which are supposedly slow but can allow failure handling, through some adaptations. We implemented a dedicated genetic algorithm method. As it could not directly handle constraints, we built a specific penalty function deduced from the constraints, applying linear penalties with physically meaningful thresholds. More details for the constraints handling by evolutionary algorithms can be found in [2, 3]. We compared our method to the FSQP gold standard in constraints satisfaction. We performed this comparison under the same constraints satisfaction problem. 4. Material 4.1 Architecture of the evaluation function To perform aircraft sizing, i.e. to assess the main characteristic parameters defining an aircraft, we use a complex and dense ForTran code. This code is composed of a set of modules, each one specific to a particular physical domain or to an aircraft element, for instance aerodynamics, structure, performance, nominal mission, or engines. The equations from Physics are formulated in their natural direction: from descriptive data to properties. From now, we will refer to this ForTran code as our evaluation function. This function has a few tens of scalar inputs, the Design Parameters, which are our degrees of ˆ to freedom, defined onto intervals. We call the design space X, which is extended to a wider space, X, ˆ get all necessary input values to run the calculation. X, the Detailed Parameters space, is typically of dimension 2 000. Then, we compute the properties values on which our constraints are applied. We call the property space Y . The calculation flow is represented in figure 2. 4.2 Numerical and computational aspects The practical implementation of the evaluation function brings two issues. First, the iterative resolutions, present in some modules to solve their internal equation systems, introduce numerical noise. Second, the vastitude of the design search space induces that values given to the evaluation function can be out of the definition space of some modules. The function makes possibly meaningless extrapolations. Because of the numerical complexity of the evaluation function, we have only little information on its mathematical properties. But, at least the function is not continuous, because of discrete variables, of possible evaluation failures and of the ForTran code itself (which contains a lot of goto). Consequently, we do not have any reliable gradient information also. We are currently working on 20 degrees of freedom, 2 of them are discrete variables. For each input parameter, we define a search interval. Our search space is thus a 20-dimensional hyperbox. We compute

2

Figure 2: Evaluation function architecture. also 20 properties, all continuous variables. Concerning the shape of the admissible set, we have no a-priori information, but the design space and the evaluation function are so complex that we cannot assume that the admissible set is convex or connected. From now, we consider the evaluation function as a black box. 4.3 Existence of points satisfying all the requirements Before starting our study, we knew the admissible set was not empty because engineers currently working on the problem exhibited such a point, satisfying all the requirements. To collect more information about the admissible set shape, we decided to try finding other admissible points without using any constraints satisfaction method. This would also give us a first guess of the difficulty to reach the admissible set. We used a Monte Carlo method by performing a uniform random sampling inside the search interval of each variable. Then, we simply applied the evaluation function on these design parameters and checked the constraints values. Among 100 000 computed points, 54 073 were evaluable, and none of them satisfied all the constraints. Thus, finding admissible points is not trivial, and the contraints satisfaction method will have to be adequately fitted. 5. Methods 5.1 Problem formulation and resolution method choice As described in the introduction, we have to solve an inverse problem which cannot be treated analytically. There are mathematical tools allowing to deal with inverse problems. Among them, there are response surfaces, that we decide not to use. As we cannot assume smoothness or even continuity of our

3

evaluation function, response surface can be inadequate. Moreover, the large dimension of the problem (20 dimensions) makes it computationally unrealistic for response surfaces. We decided to solve the inverse problem as an optimization problem using a penalty method. We called X our design search space of dimension n. Suppose we have p continuous variables and n − p discrete variables. We note: X = [l1 , u1 ] × . . . × [lp , up ] × {lp+1 , lp+1 + 1, . . . , up+1 } × . . . × {ln , ln + 1, . . . , un }

(1)

Let g be the expansion function, to get from the Design Parameters to all the Detailed Parameters, and let h be the practical evaluation function. ˆ g : X → X;

ˆ →Y h:X

(2)

Let f be our evaluation function (see in figure 2): f : X ⊂ Rn x

→ Y ⊂ Rq 7 → f (x) = h(g(x))

(3)

Then, we introduced our penalty function. Let ε : Y → R be a criterion on constraints satisfaction: ε has global minima at all admissible design points. The optimization problem to be actually solved is:   x ∈ X ⊂ Rn f : X → Y ⊂ Rq (4) min ε(f (x)) where x∈X  ε:Y →R We had three main requirements to choose the optimization method to solve our constraints satisfaction problem: it had to be robust against possible evaluation failures and manage discrete variables. At last, we wanted a homogeneous sampling of the admissible set, preferably with a quite uniform distribution of feasible points in the admissible set. Consequently, we chose to implement genetic algorithms, because they allow design points population management, which could fulfil our needs. 5.2 Penalty function build-up As classical genetic algorithms cannot manage constraints, we had to implement a penalty function whose minimization would lead to the admissible set. First, as constraints were simple or double inequalities, we transformed each constraint to give them the same formulation. Let (f (x))i be the ith component of the vector f (x) ∈ Y ⊂ Rq , n1 the number of double bounds inequalities, n2 the number of upper bound inequalities and n3 the number of lower bound inequalities, then n1 + n2 + n3 = q. Let ξ(x) be the vector containing in its components ξi the new expressions of the constraint applying on f (x). ξ ∈ Rs where s = 2n1 + n2 + n3 . Indeed, we had:

• li ≤ (f (x))i

≤ ui



  ξ2i−1 = li − (f (x))i ≤ 0 

for i = 1, . . . , n1

ξ2i = (f (x))i − ui ≤ 0 (5)



(f (x))i

• li ≤ (f (x))i

≤ ui



ξn1 +i = (f (x))i − ui ≤ 0

for i = n1 + 1, . . . , n1 + n2



ξn1 +i = li − (f (x))i ≤ 0

for i = n1 + n2 + 1, . . . , q

Then, we introduced the function S to be applied to ξi , i = 1, . . . , s:  0 if ξi ≤ 0 S(ξi ) = ξi otherwise

(6)

If a constraint ξi is not satisfied, then S(ξi ) returns an estimation on how much the constraint is violated, else it is null. 4

The smoothness of S is not required as genetic algorithms do not regard gradients. Finally, the global penalty function is a weighted sum of componentwise penalties. These weights, λi ≥ 0, i = 1, . . . , s are set to ensure homogeneous contributions of all constraints. Our final penalty function is: ε(f (x)) =

s X

λi .S(ξi (x))

(7)

i=1

5.3 Genetic algorithms implementation For the sake of the good exploration of the admissible set and of the variety of admissible points, we decided to implement the Non dominated Sorting Genetic Algorithm (N.S.G.A.) method, described by Collette [4]. In addition to the standard fitness, this method sorts the population depending on the distance to the closest design point in the population. Consequently, the individuals do not tend to aggregate. Our genetic algorithm implementation was done with the following specifications: - Each gene represents one degree of freedom, thus each individual is composed of 20 genes. - The initial population is composed of 50 individuals, whose genes are obtained from uniform randomized sampling inside respective bounds. - Reproduction is done by mixing genes of two population subsets: the first one is containing the best individuals, the second one is containing a random sample of the current population. As a result, we get one child per crossing of two individuals. The number of children is also 50, the crossed population size is thus between 50 and 100 individuals once clones are removed. - Selection of individual xj is done according to its fitness Fj , inversely proportional to its penalty value ε(f (xj )). If several points have the same penalty value, they are allocated the same fitness. Then, as we want to explore uniformly the admissible set, the fitness is weighted according to the distance to points in the population. Thus the final fitness fj for the j th individual is:

fj =

Fj mj

where

mj =

K X

Sh(d(j, k))

(8)

k=1

K is the number of individuals in the crossed population, d(j, k) is the distance between individuals indexed by j and k, Sh is a function depending on the distance between two individuals and on a reference distance σshare defining an estimate of the minimum distance we want between individuals. It is represented in figure 3. ( Sh(d(i, j)) =

1− 0



d(i,j) σshare

2

if d(i, j) < σshare otherwise

(9)

- Mutation strategy has to be done by a specific function. Considering that dx = ε(f (x)) is an estimate of the distance to the admissible set, the mutation probability is calculated through a function P , depending on dx . The function P has to satisfy 3 basic properties: – P (0) = 0: if the distance to the admissible set is null, then the point has reached it, there is no reason to mute any gene. The mutation probability is then 0. – P (dx ) > 0 when dx → 0+ : if dx is not null, even in the neighbourhood of 0, we have to mute to increase chances to reach the admissible set. – P constant for one given dmax : The mutation probability must increase towards a threshold because the probability to mute shall not increase once a certain distance from the admissible set is reached. 5

Figure 3: Sh function representation. We choose a piecewise linear function satisfying these three propositions, which is continuous, except in zero. This function is represented in figure 4. This mutation function is defined with three parameters, a distance threshold T above which the mutation probability remains constant, and a low and a high probability parameters, Lp and Hp , which define the slope of the function. Thus, we have:   0 P (dx ) = L +  p Hp

Hp −Lp dx T

if dx = 0 if 0 < dx ≤ T if dx ≥ T

Lp ≤ Hp Hp ≤ 1

(10)

Figure 4: Mutation function representation. - Algorithm convergence is obtained when all population points have reached the admissible set, i.e. max ε(f (x)) = 0. x∈P opulation

6. Results In test phases, the calculations were stopped after 50 generations. It is worth noting that the evaluation of one design point takes typically 5 seconds. The calculation time for one generation was roughly five minutes and it took globally six hours for the overall calculation. Calculations were computed on an 6

Ultra SPARC III machine at 1.2 GHz. 6.1 Optimization of the mutation function parameters We chose two values for the threshold applied on the constraints satisfaction criterion ε, T : 1 and 3. Then, we chose three different values for the high probability parameter Hp , 50%, 25% and 5%. The 1 low probability parameter Lp depended on the high probability parameter, its value was either Hp or 5 1 Hp . Thus, we performed a comparison, based on convergence speed, on twelve different configurations 10 for the mutation function parameters, all calculations started with the same initial population. The figure 5 illustrates the convergence speed of the algorithm for two different sets of the mutation function parameters, exihibiting completely different behaviours, depending on the parameters choice.

T = 1, Hp = 50% and Lp = 5%

T = 3, Hp = 5% and Lp = 0.5%

Figure 5: Comparison of convergence depending on mutation function parametrisation. For two distinct parametrisations, we plotted the evolution of the average of the distance to the admissible set, showing highly differing behaviours of the optimization process. Among all these configurations, we had to find a trade-off between solution globality and convergence speed. We chose the parametrisation showing the fastest convergence speed, with sufficient globality. The selected mutation function parameters were: T = 3, Hp = 5% and Lp = 1%. 6.2 Success rate With this set of mutation function parameters, we tested our algorithm on 10 different initial populations. After the 50 generations, in 8 cases, at least one point reached the admissible set, and all points in the population were admissible in 5 cases. 6.3 Comparison with FSQP We compared genetic algorithms with a gradient based-method: FSQP. This choice was natural as FSQP was designed to first exhibit an admissible point. We used FSQP with its constraints satisfaction mode [5], with no objective function. The main problem we had to deal with was about discrete degrees of freedom. As the algorithm could not manage them, we split the process in two steps. First, FSQP considered all degrees of freedom continuous. This process did not make the calculation fail, and it allowed also FSQP to get a “gradient” relative to these discrete degrees of freedom using finite differences. After this first pass results, we rounded the discrete degrees of freedom values to the nearest integers, and then, ran another FSQP optimization, but this time, discrete variables were fixed to these values and not optimized anymore. To make an objective comparison between our genetic algorithm and FSQP methods on their efficiency to reach the admissible set, first, we built a random initial population with 50 design points to run genetic algorithms. Then, we performed successively as many FSQP constraints satisfaction using as starting point each individual of the initial genetic algorithm population.

7

It took nearly 2h10 for the genetic algorithms to produce one admissible point and 3h15 to converge, i.e. having 50 points admissible. In the first pass results, FSQP produced 11 admissible points in nearly 3h50. With these 11 points, we built 16 new starting points for the second step of our FSQP constraints satisfaction method. And finally we got 16 points satisfying the constraints with fixed discrete degrees of freedom values obtained in the first step. So, FSQP produced 16 admissible points out of 50 starting design points in 5h40 of calculation. If we consider the success rate as the ratio of the number of admissible points over the number of points to optimize, the success rate was 100% for genetic algorithms, and 32% for FSQP. In this context, genetic algorithms showed more robustness than FSQP which is not really surprising. In addition, if we consider the efficiency as the ratio of the number of admissible points over the time needed to produce them, we had an efficiency of 15.4 points per hour for genetic algorithms, and of 2.8 points per hour for FSQP concerning this test case. (see results in table 1). Table 1: Test case numerical results. Genetic algorithms 3.25 50 100% 15.4

Convergence time (h) Admissible points (out of 50) Success rate (adm point/initial point) Efficiency (adm point/h)

FSQP 5.66 16 32% 2.8

7. Conclusion In this paper, we presented a novel method to automatically produce large amounts of admissible design points in the context of aircraft sizing. In addition, this is done in a relatively short time frame, compared to the time engineers need to exhibit a single admissible point. Our results are very promising: genetic algorithms are successful 80% of cases, producing in average one admissible point every 15 minutes. Moreover, in this aircraft sizing context, genetic algorithms show more robustness but also, more surprisingly, higher productivity than a gold standard dedicated method: FSQP. Our next step will be to improve the success rate of our algorithm, by increasing population size and maximising population dispersion. The step after is to perform a mono-criterion optimization under contraints, i.e simultaneously global optimization of one figure of merit with constraints satisfaction. 8. References [1] Lawrence C. T. and Tits A. L. A computationally efficient feasible sequential quadratic programming algorithm. SIAM J. Optimization, volume 11, number 4, pages 1092-1118, 2001 [2] Craenen B. G. W., Eiben A. E. and Marchiori E. How to handle constraints with evolutionary algorithms. In L. Chambers, The Practical Handbook of Genetic Algorithms: Applications, 2nd edition, volume 1, pages 341-361. Chapman & Hall/CRC, 2001 [3] Eiben A. E. Evolutionary algorithms and constraints satisfaction: Definitions, survey, methodology, and research directions. In L. Kallel, B. Naudts, and A. Rogers, editors, Theoretical Aspects of Evolutionary Computing, Natural Computing series, pages 13-58. Springer, 2001 [4] Collette Y., Siarry P. Multiobjective optimization, Eyrolles, pages 130-137, 2003 [5] Zhou J. L., Tits A. L., Lawrence C. T. User’s Guide for FFSQP Version 3.7: A FORTRAN Code for Solving Constrained Nonlinear (Minimax) Optimization Problems, Generating Iterates Satisfying All Inequality and Linear Constraints, Tech. Rep. SRC TR-92-107r2, 1997

8

Suggest Documents