An Adaptive Penalty Approach for Constrained Genetic-Algorithm Optimization Khaled Rasheed Department of Computer Science Rutgers, The State University of New Jersey New Brunswick, NJ 08903, USA
[email protected] ABSTRACT In this paper we describe a new adaptive penalty approach for handling constraints in genetic algorithm optimization problems. The idea is to start with a relatively small penalty coefficient and then increase it or decrease it on demand as the optimization progresses. Empirical results in several engineering design domains demonstrate the merit of the proposed approach.
1 Introduction Genetic Algorithms (GAs) (Goldberg 1989) are search algorithms that mimic the behavior of natural selection. GAs attempt to find the best solution to some problem (e.g., the maximum of a function) by generating a collection (“population”) of potential solutions (“individuals”) to the problem. Through mutation and recombination (crossover) operations, better solutions are hopefully generated out of the current set of potential solutions. This process continues until an acceptably good solution is found. GAs have many advantages over other search techniques, including the ability to deal with qualitatively different types of domains, such as continuous variable domains, discrete or quantized variable domains, or mixed-type variable domains. One of the most common methods for using GAs in continuous-variable constrained optimization problems is the use of a penalty function. Thus, assuming the original problem was: minimize f (x) subject to : gi (x) 0 i = 1; :::; l hj (x) = 0 j = 1; :::; m where
x is a vector of real numbers.
f (x) is called the objective function. gi (x) and hj (x) are called the inequality constraints and the equality constraints respectively.1
The penalty method will map this problem to: minimize f (x) + p(x) where p( x) is called the penalty function. Several forms of penalty functions have been proposed in the GA literature. A thorough survey can be found in (Michalewicz 1996). These include: 1. Rejection of infeasible solutions (the death penalty). 2. Using a mapping function so that all feasible solutions will have fitness values that are better than the fitness value of any infeasible solution (Powell and Skolnick 1993). 3. Using one or more multiplicative coefficients (as will be discussed shortly). The first two approaches can make the search extremely difficult in non-convex feasible regions especially if the optima are near the infeasible region. A common form of the penalty function is: p(x) = C ( li=1 max(gi (x); 0) + mj=1 jhj (x)j) That is, the penalty function consists of a penalty coefficient C multiplied by the sum of constraint violations. It is difficult to decide how to set the penalty coefficient. If the coefficient is to be fixed, then it has to be large enough to ensure that a feasible solution is found (if one exists). On the other hand, if the coefficient is too large, it could force the search into the feasible region too harshly, with the result that not enough exploration is done. This paper presents a new adaptive penalty method. It uses a novel technique for computing penalties which makes sure that the penalty coefficient is neither too large nor too small at
P
P
1 In practice, equality constraints are usually converted to inequalities by introducing a numerical threshold. For example, hj ( x) = 0 may be replaced by hj ( x) where is a small constant
j
j
any stage of the optimization. The idea is to start with a relatively small penalty coefficient and increase it whenever the search seems to give too little attention to feasibility (if the point with highest fitness in the GA population is infeasible). The penalty coefficient may also decrease if the search seems to give too much attention to feasibility (if all the points in the GA population are feasible). This is done to insure proper search of the regions adjacent to constraint boundaries as in many cases the optima may lie there. We demonstrate the merit of our method in the GA optimization of realistic continuous-variable engineering design domains. In such domains (such as the two explored in Section 3) a design is represented by a number of continuous design parameters, so that potential solutions are vectors (points) in a multidimensional vector space. Determining the quality (“fitness”) of each point involves the use of a simulator that computes relevant physical properties of the artifact and summarizes them into a single measure of merit. We also demonstrate the utility of the proposed approach in a benchmark domain that have been used in several engineering design optimization studies (Powell and Skolnick 1993). The remainder of this paper first presents a more detailed description of the new penalty method. We then present a number of experiments to demonstrate the utility of our penalty method realistic engineering tasks. We conclude the paper with a discussion of related efforts and future work.
2 GA Architecture GADO, the GA used in this research is described in detail in (Rasheed et al. 1997, Rasheed 1998). Each individual in the GA population represents a parametric description of an artifact, such as an aircraft, or a process, with each parameter taking on a value in some continuous interval. The fitness of each individual is based on the sum of a proper measure of merit computed by a simulator (such as the takeoff mass of an aircraft), and a penalty function if relevant (such as to impose legal limits on the permissible noise of an aircraft). Operators are applied to elements of the population via some selection scheme. Here selection was performed by rank (rather than via the actual value of the fitness function on each individual) because of the wide range of fitness values caused by the use of a penalty function — rank selection prevents the first discovered evaluable/feasible points from dominating the population. A steady state GA model is used, in which existing points in the population are replaced by newly generated points via some replacement strategy. The replacement strategy used here takes into consideration both the fitness and the proximity of the points in the GA population, with the goal of selecting for replacement a point that both has low fitness and is relatively close to the point being introduced. The GA stops when either the maximum number of evaluations has been exhausted or the population completely loses diversity and practically converges to a single point in the search space. The GA architecture also includes a screening module
(SM) and a diversity maintenance module (DMM) (Rasheed and Hirsh 1997) which can both be turned on or off. The SM saves time by preventing the GA from evaluating points that are close to previously encountered bad points. It uses a case based learning technique to do this. The DMM maintains diversity by preventing the GA from evaluating candidate point which are extremely close to previously evaluated points. The DMM also attempts to restore diversity through a re-seeding operation if severe loss of diversity is detected in the early stages of the optimization. The following section describes the adaptive penalty approach in detail.
3 Adaptive penalty function One of the novel and very convenient features of GADO is its ability to adjust the magnitude of the penalty coefficient depending on situation. If this feature did not exist, the user would have to specify a single penalty coefficient to be used over the entire course of optimization and it is difficult to come up with a penalty coefficient that is good for all stages of optimization. It is better to use a modest penalty in the initial stages to insure adequate sampling of the search space and then gradually increase the penalty to force the optimization to converge to a feasible solution. This is exactly what GADO does, by dynamically changing the penalty coefficient on demand. The initial penalty coefficient is one of the external parameters. Its default value should be computed as follows: if the measure of merit is expected to range between V and 10 V where V is a power of ten, then the initial V .2 penalty coefficient will be set to 100 GADO keeps track of two key individuals of the population: 1. The point that has the least sum of constraint violations. 2. The point that has the best fitness value. These two points are compared at intervals equal to twice the GA population size.3 If both points are the same then the penalty coefficient is assumed adequate, otherwise the penalty coefficient is increased to make the two points have equal fitness values. This increase is important in order to force the search towards feasibility, or else the search may wander deeply into an infeasible region with tempting objective function values. We impose a multiplicative limit on the allowed increase of the penalty coefficient at each increment to prevent abrupt changes that may be unnecessary. This limit is one of the parameters, its default value is two. 2 It is assumed that the numerical magnitude of the constraints is comparable to that of the measure of merit. If this is not true then it may be useful to use a different method for computing the initial penalty coefficient to reflect this fact. The goal is to make the product of the initial penalty coefficient and the sum of constraint violations small compared to the measure of merit. 3 The interval should not be too small as this may lead to unnecessary increases of the penalty coefficient.
Table 1 Aircraft Parameters to Optimize No. Parameter 1 exhaust nozzle convergent length 2 exhaust nozzle divergent length 3 exhaust nozzle external length 4 exhaust nozzle radius(r7) 5 engine size 6 wing area 7 wing aspect ratio 8 fuselage taper length 9 effective structural t/c 10 wing sweep over design mach angle 11 wing taper ratio 12 Fuel Annulus Width
Another feature is that GADO decreases the penalty coefficient if at some stage the population contains no infeasible points. The intuition behind this feature is that sometimes the best solutions are at the border of constraint violations. If in the coarse of pushing the optimization towards feasibility the penalty coefficient gets too high, these points will be very hard to reach as the search will approach them single sided. If the penalty coefficient is to be decreased, it is divided by the fourth root of the multiplicative limit described above. Thus, if the penalty coefficient gets too small, it can grow back to a reasonable value relatively fast.
62.5945
45.0132
engineScale=1.45576 wing_area(m^2)=420.307 wing_aspect_ratio=1.57715 fuselage_taper_length(m)=35.1625 wing_t_over_c=0.0301626 fuel_annulus_width(m)=0 passenger_cabin_radius(m)=1.3716 structure_annulus_width(m)=0.3048 fuselage_mid_length(m)=27.432 fuselage_diameter(m)=3.3528 wing_sweep(rad)=1.21421 wing_root_chord(m)=32.6495 wing_span(m)=25.7466 v_tail_sweep(rad)=0.785398 v_tail_root_chord(m)=11.5935 v_tail_taper_ratio=0.33 v_tail_semi_span(m)=3.85483 v_tail_t_over_c=0.03 nacelle_length(m)=11.5824 nacelle_inlet_diameter(m)=0.85344 engine_diameter(m)=1.10633 wing_sweep_over_design_mach_angle=1.15949 wing_taper_ratio=0
17.5813
0
-12.8733
0
12.8733 5.53123
4 Experimental Results To evaluate the adaptive penalty method we applied it to design problems in two modern engineering design domains: the conceptual design of supersonic transport aircraft, and the design of supersonic missile inlets, as well as a benchmark engineering design domain: a three-stage membrane separation process. It should be noted that the superiority of the GADO optimization approach to traditional optimization methods (including gradient based methods) in these domains has already been established in (Rasheed 1998). In this research we focused on the effect of the proposed penalty method on the GA performance, rather than the overall GA behavior. This section discusses our results in these domains.
4.1 Supersonic Transport Aircraft Design Our first domain concerns the conceptual design of supersonic transport aircraft. We summarize it briefly here; it is described in more detail in (Gelsey et al. 1996). Figure 1 shows a diagram of a typical airplane automatically designed by our software system. The GA attempts to find a good design for a particular mission by varying the aircraft conceptual design parameters in Table 1 over a continuous range of values. The GA evaluates candidate designs using a multidisciplinary simulator. In our current implementation, the GA’s goal is to minimize the takeoff mass of the aircraft, a measure of merit commonly used in the aircraft industry at the con-
1.6764 0
Figure 1 Supersonic transport aircraft designed by our system (dimensions in feet) ceptual design stage. Takeoff mass is the sum of fuel mass, which provides a rough approximation of the operating cost of the aircraft, and “dry” mass, which provides a rough approximation of the cost of building the aircraft. A complete mission simulation requires about 1/5 second of CPU time on a DEC Alpha 250 4/266 desktop workstation. The aircraft simulation model used is based on both implicit and explicit assumptions and engineering approximations and since it is being used by a numerical optimizer rather than a human domain expert, some design parameter sets may correspond to aircrafts that violate these assumptions and therefore may not be physically realizable even though the simulator does not detect this fact. For this reason a set of constraints has been introduced to safeguard the optimization process against such violations. In particular, a penalty function approach was used to incorporate the effect of constraint violations into the optimization: the penalty function was added to the takeoff mass value returned by the simulator and the resulting sum was the quantity that the optimizer actually minimizes (which therefore also serves as the fitness value assigned to each point of the GA popula-
240
’GADO_Aircraft’ ’GADO_Aircraft_fixed_penalty’
230
Take off mass(ton)
220
210
200
190
180
170
0
Figure 2
1000
2000
3000 Evaluations
4000
5000
6000
Effect of adaptive penalty in the Aircraft Design Domain
tion). The specific penalty function was simply a large constant multiplied by the sum of the amounts of constraint violation for all the violated constraints. The presence of constraints induced a partition of the search space into three mutually exclusive regions: 1. Unevaluable points: These are points that represent designs that violate the model assumptions so much that the simulator cannot complete the simulation process to produce any significant information. For such points a very large fictitious takeoff mass is generated as the value of the objective function. 2. Infeasible evaluable points: These are points that represent unrealizable aircrafts but the type and extent of model violation is moderate enough for the simulator to complete its work and report the constraint violation information. As described above, a penalty function is added to the takeoff mass returned by the simulator to account for the model violation. 3. Feasible points: The simulator succeeds in evaluating the take off mass for such points and no violations occur in the process. The penalty function for these points is zero. Ten random populations of 60 points each were generated, and for each population the GA was allowed to proceed for
6000 iterations (an iteration denotes one call to the simulator, which takes, on average, 0.2 seconds) once with the adaptive penalty method and once with a large fixed penalty coefficient. The results of our experiment are shown in Figure 2. The graph plots the measure of merit (takeoff mass) of the best point found so far against the number of iterations. Each curve represents the average of the runs from the ten starting populations. The solid curve represents the average of the ten runs of GADO with the default parameters (which entails the use of the adaptive penalty method) and the dotted curve represents the average of the runs with the parameters adjusted so that a large fixed penalty coefficient is used.4 The figure demonstrates how the adaptive penalty method improved the overall performance of the GA. The figure shows an early advantage for the large fixed coefficient approach which is not surprising. The large penalty coefficient pushes the search towards the feasible region more rapidly than the small initial penalty coefficient used in the adaptive penalty method. However, the greedy nature of the fixed penalty approach quickly catches up and degrades its performance.
4 We also tried small fixed penalty coefficients but this did not work because there are infeasible points with very attractive objective values in this domain and the other two domains as well. The feasible regions were never found.
’GADO_Missile’ ’GADO_Missile_fixed_penalty’
Total pressure recovery
0.4
0.38
0.36
0.34
0.32
0
Figure 3
200
400
600
800
1000 1200 Evaluations
1400
1600
1800
2000
Effect of adaptive penalty in the Missile Inlet Design Domain
Table 2 Inlet Parameters to Optimize Param Definition 1 initial cone angle 2 final cone angle xd axial location of throat rd radial location of throat xe axial location of end of “constant” cross section 3 internal cowl lip angle Hej height at end of constant cross section Hfk height at beginning of constant internal cross section
4.2 Supersonic Missile Inlet Design Our second domain concerns the design of inlets for supersonic and hyper-sonic missiles. We summarize it briefly here; it is described in more detail in (Zha et al. 1997). The missile inlet designed is an axisymmetric mixed compression inlet that cruises at Mach 4 at 60000 feet altitude. Minimum manufacture cost for this inlet is critical, and therefore, techniques such as boundary layer bleed and variable geometry are not used — the performance of the inlet thus relies solely on the aerodynamic design of the rigid geometry, such as the extent of external and internal compression, contraction ratio, inlet start throat area, throat loca-
tion, shock train length, and divergence of sub-sonic diffuser. The simulator used in this domain is a program called “NIDA” which was developed at United Technology Research Center (UTRC) as an inlet analysis/design tool (Haas et al. 1992). The eight design parameters (all continuous valued) are given in Table 2, with coordinates given in terms of axial (x) and radial (r) positions. The objective of the optimization is to minimize the total pressure recovery, a quantity that is commonly used to measure the performance of inlets. As in the aircraft domain, our experiments consist of GA runs both with the adaptive penalty method and with the large fixed coefficient, starting from five random initial populations. In this domain each population consists of 20 random individuals. For each population the GA was allowed to proceed for 2000 iterations (an iteration denotes one call to the simulator, which, on average, takes six seconds). The results are shown in Figure 3, which plots the measure of merit (total pressure recovery) as a function of iteration number. Once again, a significant amount of improvement was realized by using the adaptive penalty method.
4.3 Benchmark domain In this domain the GA attempts to optimize the design of a Three-stage membrane separation process using a mathematical programming model. The problem has 13 continuous domain design variables and 13 inequality constraints. Thus the space is partitioned into feasible and infeasible points.
145
’GADO_Benchmark’ ’GADO_Benchmark_fixed_penalty’
140 135
Measure of merit
130 125 120 115 110 105 100 0
Figure 4
5000
10000
15000
20000
25000 30000 Evaluations
35000
40000
45000
50000
Effect of adaptive penalty in the benchmark domain
All points are evaluable. A more detailed description of this domain can be found in (Sandgren 1977). Optimization in this domain proved to be very difficult for conventional numerical optimizers and traditional GAs (Powell and Skolnick 1993). The main reason for this difficulty was the fact that 11 out of the 13 inequality constraints are active at the global optimum. Thus an intelligent constraint handling approach is very important. Experiments were done using five random starting populations. The results are shown in Figure 4. Again, it is clear in this domain how much the adaptive penalty method enhanced the performance in this domain.
5 Final Remarks A new adaptive penalty method for constrained GA optimization has been presented. Experimental results demonstrated the merit of using the new method in the domains of aircraft design, missile inlet design and the design of a membrane separation process. Several research efforts have applied genetic algorithms to engineering design optimization problems in a variety of domains, including control system design (Kundu and Kawata 1996), architectural and civil engineering design (Gero et al. 1997, Rosenman 1997), VLSI design (Lienig and Thulasiraman 1993), mechanical design (Chapman and Jakiela 1996, Deb 1997) and aircraft design (Obayashi et al. 1997).
The idea of using a dynamic penalty coefficient was discussed in (Smith and Tate 1993). A dynamic approach was proposed and tested in a combinatorial optimization problem (the unequal area facility layout problem). The approach is similar to the one proposed in this paper in the sense that it takes the objective function value of the most feasible individual found and the best objective function value into consideration. The main drawback in that approach was that the penalty coefficient keeps changing continuously (may be every function evaluation) which makes it very difficult and costly to use a rank based selection method. Another drawback was that the approach was to some extent problem specific. The new adaptive penalty method contributed a lot of improvement to the GA optimization. The idea of starting with a relatively small initial penalty coefficient and increasing it or decreasing it on demand proved to be very good. We plan to conduct further investigations regarding the choice of the initial penalty coefficient. We also plan to test the proposed penalty approach in other constrained optimization domains.
Acknowledgments I thank Haym Hirsh for his invaluable assistance in this research. I also thank all members of the HPCD project, especially Andrew Gelsey, Donald Smith, and Keith Miyake. This research was partially supported by NASA under grant
NAG2-817 and is also part of the Rutgers-based HPCD (Hypercomputing and Design) project supported by the Advanced Research Projects Agency of the Department of Defense through contract ARPA-DABT 63-93-C-0064.
References
Rasheed, Khaled (1998). GADO: A genetic algorithm for continuous design optimization. Technical Report DCS-TR-352. Department of Computer Science, Rutgers University. New Brunswick, NJ. Ph.D. Thesis, http://www.cs.rutgers.edu/shehata/thesis.ps.
Chapman, C. D. and M. J. Jakiela (1996). Genetic algorithmbased structural topology design with compliance and topology simplification considerations. Journal of Mechanical Design 118(1), 89–98.
Rasheed, Khaled and Haym Hirsh (1997). Using case-based learning to improve genetic-algorithm-based design optimization. In: Proceedings of the Seventh International Conference on Genetic Algorithms. Morgan Kaufmann.
Deb, Kalyanmoy (1997). Geneas: A robust optimal design technique for mechanical component design. In: Evolutionary Algorithms in Engineering Applications. pp. 497–514. Springer-Verlag.
Rasheed, Khaled, Haym Hirsh and Andrew Gelsey (1997). A genetic algorithm for continuous design space search. Artificial Intelligence in Engineering 11(3), 295–305. Elsevier Science Ltd.
Gelsey, Andrew, M. Schwabacher and Don Smith (1996). Using modeling knowledge to guide design space search. In: Fourth International Conference on Artificial Intelligence in Design ’96.
Rosenman, M. A. (1997). The generation of form using an evolutionary approach. In: Evolutionary Algorithms in Engineering Applications. pp. 69–86. Springer-Verlag.
Gero, John S., Vladimir A. Kazakov and Thorsten Schinier (1997). Genetic engineering and design problems. In: Evolutionary Algorithms in Engineering Applications. pp. 47–68. Springer-Verlag. Goldberg, David (1989). Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley. Reading, Mass. Haas, M., R. Elmquist and D. Sobel (1992). NAWC Inlet Design and Analysis (NIDA) Code, Final Report. UTRC Report R92-970037-1. Kundu, Sourav and Seiichi Kawata (1996). AI in control system design using a new paradigm for design representation. In: Fourth International Conference on Artificial Intelligence in Design ’96. Lienig, Jens and K. Thulasiraman (1993). A genetic algorithm for channel routing in VLSI circuits. Evolutionary Computation 1(4), 293–311. Michalewicz, Zbigniew (1996). Genetic Algorithms + Data Structures = Evolution Programs. Springer-Verlag. New York. Obayashi, S., Y. Yamaguchi and T. Nakamura (1997). Multiobjective genetic algorithm for multidisciplinary design of transonic wing platform. Journal of Aircraft 34(5), 690–693. Powell, D. and M. Skolnick (1993). Using genetic algorithms in engineering design optimization with nonlinear constraints. In: Proceedings of the Fifth International Conference on Genetic Algorithms. Morgan Kaufmann. pp. 424–431.
Sandgren, E. (1977). The utility of nonlinear programming algorithms. Technical report. Purdue University. Ph.D. Thesis. Smith, Alice and David Tate (1993). Genetic optimization using a penalty function. In: Proceedings of the Fifth International Conference on Genetic Algorithms. Morgan Kaufmann. pp. 499–503. Zha, G.-C., D. Smith, M. Schwabacher, K. Rasheed, A. Gelsey, D. Knight and M. Haas (1997). High performance supersonic missile inlet design using automated optimization. Journal of Aircraft 34(6), 697.