Constrained Genetic Evolution Optimization
Besides a wide variety of ihc gradient-based optimization algorithms, truly remarkable results were obtained using an evolution type generic algorithm or GA 1168).(169).| 191J. The GA methods simulate the mechanics of natural genetics for artificial systems based on operations which arc the counter parts of the natural ones. They rely on the use of a random selection process which is guided by probabilistic decisions. In genera!, a GA is broken into three major steps: reproduction. crossover, and mutation An initial population of complete design variable sets are analyzed
according to some cost function. Then, this population is merged using a crossover methodology to create a new population. This process continues until a global minimum is found. Generally, the design variable set that corresponds to the minimum point of the cost function will be representative as having the most "succcssfur features of previous "generations" of designs in the optimization process.
Although the standard genetic algorithm (GA) is computationally quite expensive since it requires a large number of calls to the flow-field analysis code, the robustness of this algorithm and the case of its implementation have created a recently renewed interest in applying it for aerodynamic shape design (192)-(201). Nevertheless, the examples presented in these publications involve aerodynamic shape optimization with a small number of design variables that form a relatively compact function space. Solutions of such optimization problems would be considerably more efficient when using more common gradient search algorithms Moreover, none of the examples in these publications attempt to treat equality-type constrained optimization which represents the most difficult problem for a typical GA algorithm. The classical GA can handle constraints on the design variables, but it is not inherently capable of handling constraint functions (198) Most of the recent publications involving the GA and aerodynamic shape optimization have involved problems posed in such a way as to eliminate constraint functions. or to penalize the cost function when a constraint is violated. These treatments of constraints reduce the chance of arriving at the global minimum.
Probably the most attractive feature of the GA is its remarkable robustness since it is not a gradient-based search method The GA is exceptional at avoiding local minima, because it tests possible designs over a large design variable space Hence, the GA is especially suitable for handling a large number of design variables that belong to widely different engineering disciplines. thus making it particularly suitable for true ompkx multidisciplinary coptimization problems. Tire GA is especially suitable for the types of problems where the sensitivity derivatives might be discontinuous (I73J which is sometimes the problem in 3-D aerodynamic optimization The number of cost function evaluations per design iteration of a GA docs not depend on the number of design variables. Rather, it depends on the size of the initial population.
There are some subtleties associated with tlie GA that, if treated properly, greatly increases the effectiveness and usefulness of the method. One such subtlety involves the crossover procedure When two members of the population arc chosen for a crossover, their design variable sets arc generally encoded into strings called "chromosomes *. After a crossover has taken place, the "child" variable set is recovered by decoding its newly created chromosome string. When the design variables are floating-point numbers, as is usually the case, this coding and decoding process can introduce a loss of precision arising from numerical truncation on a finite precision computer. This is particularly true when the chromosome string format is defined by a "bit-string" (a base 2 number», and the operating language is FORTRAN A crossover method that preserves full precision in the design variables can be developed (202J by changing the format of the coded chromosome string and by the implementation of C and C++ as the operating language instead of FORTRAN. These languages allow bitwise shifting of floating point numerics and require no coding or decoding processes whatsoever The C++ language further allows object-oriented programming techniques that provide a platform for the truest genetic interaction of design variable sets. Equality and non-equality constraints can be incorporated by using RoSen’s projection method (202J.| 180). This improved GA could be used as a black box optimizer in aerodynamics, elasticity, heal transfer, etc, or in a multidisciplinary design optimization.