Industrial Applications of Genetic Algorithms:Optimization of a Porous Liner for Transpiration Cooling Using a Genetic Algorithm

Previous | Table of Contents | Next

GA PARTICULARS

For this project, only the basic reproduction, crossover, and mutation operators are used. The program allows the user to choose the probability of crossover and mutation. The reproduction operator is based on roulette wheel selection. Additionally, the single-point crossover operator is a random choice across the entire string of the three optimization parameters.

The porosity, capillary diameter, liner thickness, and channel height and width are the optimization parameters for this system. The coding scheme for the GA manipulates these parameters with the basic genetic operators in order to generate a near optimum solution for the coolant system design.

The most important variables of the design parameters are the porosity and capillary diameter. These two variables affect almost every factor used in developing the fitness function for transpiration cooling. Because of their important bond to one another, the capillary diameter and porosity are set as the first two parameters in the chromosome string. The channel height and width are placed at the third and fourth positions in the parameter string. The less influential liner thickness will be set as the final parameter in the string.

The GA is set up to allow the user to determine the number of bits in a binary system to be manipulated for each parameter. The range for each of the variables is also a user-defined input. The number of bits chosen for each parameter determines the precision of the parameter. This format is known as a multi-parameter, mapped, fixed-point coding scheme. Using a section of code similar to that of the multiparameter coding used in Goldberg’s text [8], the number of bits discretizes each parameter between the minimum and maximum values for that parameter. However, a limit of ten bits is set for each parameter to avoid excessive destruction of schemata under the crossover operator.

The fitness function can be described by the two primary concerns stated earlier in the proposal. In order to optimize the system, the genetic string must satisfy the constraints set by the pressure drop and the injection velocity. The pressure drop needs to remain as close to the minimum as possible without going below the range of stability. The injection velocity will need to remain low so that the capillary diameters remain realistic.

The computer model used to evaluate the input parameters consists of the following parts:

  1. The fluid properties for the combustion and coolant fluids
  2. The transport properties for the combustion gases
  3. The required coolant flowrate for adequate cooling of the chamber
  4. The chamber pressure and wall gas temperature conditions

Parts 1 and 2 listed above are attained from the ODE code. The coolant properties, chamber pressure, and wall gas temperature are constants set by the design team. The coolant flowrate properties are attained through the methods mentioned in the mass flow calculations section. A computer model of the thrust-chamber and nozzle assembly is created for use as the fitness function in the GA.

Using the computer model data presented in the previous paragraphs, the fitness function must be developed to optimize the porous liner for the thrust chamber. The format set up for this particular GA is a maximization function based on the pressure drop and injection velocity for the liner. The details for this maximization are given below.

The pressure drop constraint is a simple minimization function, g(x), with an additional upper limit constraint, Cmax. In other words, the optimum solution must remain below the maximum allowable pressure drop while remaining as close to the minimum mark as possible. The maximum and minimum allowable pressure drops were given in the previous section. The general equation for the minimization of a function under a maximization scheme is

where Cmax is the maximum value of the function g(x), g(x) is the function evaluation to be minimized, and f(x) is the resulting maximization function. Using this equation,

  If g(x)<Cmax, then f(x) is maximized as g(x) gets smaller
  If g(x)>Cmax, then f(x) is multiplied by a penalty function

In this case,

  g(x) = pressure drop
  Cmax = maximum pressure drop

The pressure drop must also be greater then 5%. Thus,

  If g(x)>5%, then f(x) is maximized as g(x) gets smaller
  If g(x)<5%, then f(x) is multiplied by a penalty function

The injection velocity constraint is a minimization problem as well with a specified upper limit. Once again, Equation (5.9) is used where,

  g(x) = injection velocity
  Cmax = maximum injection velocity

A conditional statement is set up to ensure that the injection velocity remains below the upper limit. So,

  If g(x)<Cmax, then f(x) is maximized as g(x) gets smaller
  If g(x)>Cmax, then f(x) is multiplied by a penalty function

Once each constraint’s function is determined, the functions are added together to analyze the best total fitness values. Fitness scaling for the various constraint functions is achieved via a weighting constant for each function evaluation. The weighting values will be determined through testing. The result is the fitness equation, Equation (5.10).

Following this evaluation, reproduction, crossover, and mutation are carried out in the usual manner. At the beginning of the program, the user is asked to enter a minimum number of generations to reproduce. The program will terminate under two conditions. The first is that the minimum number of generations is achieved and all of the fitness constraints specified in the pressure drop and injection velocity sections are satisfied. The second termination consideration is a hard-coded maximum number of generations set at one hundred.

Previous | Table of Contents | Next

Copyright © CRC Press LLC