# Trajectory Optimization using HGGA with Binary Tags

This section presents the implementation of the HGGA with binary tags to the space trajectory optimization problem. A space mission from Earth to Jupiter is first considered as a case study. The results presented in this section were first published in reference [5].

## Earth–Jupiter Mission using HGGA

The Earth-Jupiter mission is optimized using the HGGA and the results are compared to other known solutions in the literature. The design variables and their given upper and lower bounds are listed in Table 9.9. In this test, it is assumed that the maximum number of fly-bys is 2. Hence the chromosome has 2 genes for the fly-by planets; each gene carries the planet identification number (the planet identification number ranges from 1 to 8 for all the planets in the solar system as shown in Table 9.9). Each of these two genes has a tag. If both tags have a value of 1, then the two genes are hidden and that solution has no fly-bys. If one gens is hidden and one is active, then the solution has one fly-by and the fly-by planet identification number is the value of that gene. The same concept is applied regarding the DSMs. In this test case it is assumed that the maximum number of DSMs in each leg is 2. Since the maximum number of fly-bys is 2 then the maximum number of legs is 3, and hence the maximum number of DSMs is 6. For each DSM, we need to compute the optimal time (TD) at which this DSM occurs. A gene and a tag are added for each DSM time TD, and hence there are 6 genes and 6 tags for TD, (i = 1 ■ ■ ■ 6) in this mission. Note that if a fly-by is hidden, then its leg disappears and the DSMs in that leg automatically become hidden. Note also that even if a fly-by exists, a DSM in its leg can be hidden depending on the value of its own tag. Each DSM is an impulse represented by a vector of three components (it has the units of velocity). So, the chromosome will have genes for 6 x 3 = 18 scalar components of the DSMs. Note that these 18 genes are grouped in groups of three genes since each three are the components of one DSM vector; hence if one DSM is hidden then its 3 genes get hidden together. Table 9.9 shows the ranges for 6 DSMs, each has 3 components. The Time Of Flight (TOF) in each leg is also a variable; there is a gene for each TOF in the mission. Hence in this Jupiter mission, we have 3 genes for the TOFs. Note that there are no tags associated with the TOF genes since the state of each gene (hidden or active) is determined based on the fly-by tags. If a fly-by exists then there is an active gene for a TOF associated with it. There is at least one TOF in a mission; this case of only one TOF corresponds to the case of no fly-bys. To complete a fly-by maneuver, we need to calculate the optimal values for the normalized altitude h of the spacecraft above the planet as well as the plane angle 7] of the maneuver. Hence, two genes for the altitudes and two genes for the

Table 9.9: Lower and upper bounds of Earth-Jupiter problem.

 Design Variable Lower Bound Upper Bound planet of Fly-by #1 1 (Mercury) 8 (Neptune) planet of Fly-by #2 1 8 Epoch of DSM (TD,). /' = 1 • ■ ■ 6 0.1 0.9 DSM, vector (km/s), i 1 ■ • • 6 [-5,-5,-5] [5.5,5] TOF, (days), i = 1 • • • 3 80 800 Flyby altitudes ft,, i = 1 • • • 3 0.1 10 Flyby angle (rad) t),.j 1 • • • 3 0 2 к Departure Impulse (km/s) [-5,-5,-5] [5.5,5] Flight Direction Posigrade Retrograde Departure Date 01 Sep.2016 30 Sep.2016 Arrival Date 01 Sep.2021 31 Dec.202!

angles are added. Similar to the TOF variables, no tags are needed for the It and 7] genes. There are also 6 genes for the departure impulse, flight direction, the arrival date and the departure date.

Due to the high computational cost of evaluating the fitness of a solution and hence the high computational cost of searching for the optimal solution, the problem is usually solved in two steps [49]. The first step is to assume no DSMs in the trajectory, and this step is called zero-DSM. In the second step, the fly-by planets sequence is obtained from the first step, and held fixed, to search for the optimal values of the remaining variables; this step is called the Multi Gravity Assist with Deep Space Maneuvers (MGADSM). Each of the two steps has an element of the architecture to be optimized: the first step optimizes the sequence of fly-bys and the second step optimizes the number of DSMs in each leg. This two-step approach is detailed in reference [49], and has shown to be computationally efficient. The number of generations and population size are selected to be 100 and 300, respectively.