Success-history based biology-inspired algorithms for global trajectory optimization

Biology-inspired algorithms are computationally efficient for real-parameter optimization. However, the search efficiency of such algorithms depends significantly on their ability in keeping the balance between exploration and exploitation when solving complex multimodal problems. A new technique for generating potential solutions in biology-inspired algorithms is proposed. The stated technique uses a historical memory of successful positions found by individuals to guide them in different directions, thereby improving their exploration and exploitation abilities. Thus, this paper describes the application of modified biology-inspired algorithms, namely the Firefly Algorithm, the Cuckoo Search Algorithm and the Bat Algorithm to global trajectory optimization problems. The problems are provided by the European Space Agency and represent trajectories of several well-known spacecraft, such as Cassini and Messenger. Firstly, modified versions of the listed heuristics as well as their original variants were evaluated on a set of various test functions. Then their performance was evaluated on two global trajectory optimization problems: Cassini-1 and Messenger. The experimental results obtained by them are presented and compared. It was established that success-history based position adaptation allows better solutions to be found with the same computational effort while solving complex real-world problems. Thus, the usefulness of the proposed position adaptation technique was demonstrated.


Introduction
One of the most important numerical optimization problems is the spacecraft global trajectory optimization problem (GTOP) [1]. The main objective of such problems is to find an optimal flight program, so that the spacecraft would achieve the desired orbit or speed and direction with respect to some object. These problems usually contain many variables and represent significant problems for classical optimization techniques because they are often defined as complex programs, involving significant computational resources.
Recently, the development of heuristic optimization methods, such as evolutionary algorithms or biology-inspired (swarm optimization) algorithms, and their modifications for solving the global trajectory problems have attracted more attention from the computational intelligence community [2]. It has been established that evolutionary and swarm optimization techniques are very effective in solving these complicated problems. However, their workability can still be improved as every search algorithm needs to address the exploration and exploitation of a search space [3]. A variety of ideas have been proposed to seek the balance between exploration and exploitation of biology-inspired and MIP IOP Conf. Series: Materials Science and Engineering 537 (2019) 052008 IOP Publishing doi: 10.1088/1757-899X/537/5/052008 2 evolutionary algorithms, which include parameter adaptation methods, population size control, island models and many others (for example, [4], [5]).
It is known that sometimes ideas used in one class of algorithms could be applied to alternative population-based optimizers [6]. For instance, one of the valuable ideas proposed for the differential evolution algorithm in [7] is to use an archive of potentially good solutions, which is limited in size and updated as the search proceeds. In this paper, a similar success-history based archive of potentially good solutions is applied to three biology-inspired algorithms, namely the Firefly Algorithm (FFA) [8], the Cuckoo Search Algorithm [9] and the Bat Algorithm [10]. Firstly, the performance of the developed modifications was evaluated on well-known benchmark optimization problems. Then to test the proposed technique on real-world problems, two global trajectory optimization problems (Cassini-1 and Messenger), provided by the European Space Agency (ESA) [11], were used.
The rest of the paper is organised as follows. In Section 2, a brief description of the listed biologyinspired algorithms is given. Then in Section 3, the proposed approach is introduced. Section 4 contains a definition and description of GTOP. The experimental results and discussion are provided in Section 5. Finally, Section 6 concludes the paper.

Biology-inspired algorithms
The Firefly Algorithm (FFA) [8], the Cuckoo Search Algorithm (CSA) [9] and the Bat Algorithm (BA) [10] were used for solving the global trajectory optimization problems. These biology-inspired algorithms are population-based heuristics, which were chosen due to their high performance on various optimization problems. The basic idea of the listed algorithms involves generating a set of potential solutions called individuals and moving them towards the global optima according to some rules established for a given algorithm.
In this section, brief descriptions of the considered population-based algorithms for solving the optimization problems to which the success-history based position adaptation technique was applied are presented.

The Firefly Algorithm
The Firefly Algorithm (FFA) [8] was developed by Xin-She Yang in 2007 and is inspired by the flashing behaviour of fireflies. Each candidate solution called a firefly is represented by its coordinates in the search space. The light intensity of a firefly is associated with its attractiveness, and such attraction provides the fireflies with the ability to subdivide into small groups and for each subgroup to swarm around local modes. This algorithm has been applied in continuous optimization and uses the following three idealized rules [8]:  all fireflies are unisex so that one firefly will be attracted to other fireflies regardless of their sex;  attractiveness is proportional to their brightness. Thus, for any two flashing fireflies, the less bright one will move towards the brighter one; if there is no firefly brighter than a particular one, it will move randomly;  the brightness of a firefly is affected or determined by the landscape of the objective function (for a maximization problem, the brightness can simply be proportional to the value of the objective function).
For simplicity, the attractiveness of a firefly is determined by its brightness, which in turn is associated with the encoded objective function.

The Cuckoo Search Algorithm
The Cuckoo Search Algorithm (CSA) is an optimization algorithm developed by Xin-She Yang and Suash Deb in 2009 [9]. It was inspired by the obligate brood parasitism of some cuckoo species by MIP IOP Conf. Series: Materials Science and Engineering 537 (2019) 052008 IOP Publishing doi:10.1088/1757-899X/537/5/052008 3 laying their eggs in the nests of other host birds. Similar to the FFA algorithm, the CSA heuristic also uses three idealized rules:  each cuckoo lays one egg at a time, and dumps its egg in a randomly chosen nest;  the best nests with a high quality of eggs will carry over to the next generations;  the number of available host nests is fixed, and the egg laid by a cuckoo is discovered by the host bird with a given probability (for simplicity, this last assumption can be approximated by the fraction of the nests which should be replaced by the new nests or in other words with the new random solutions).
For a maximization problem, the quality or fitness of a solution is proportional to the value of the objective function. The following simple representations are used: each egg in a nest represents a solution, and a cuckoo egg represents a new solution; the aim is to use the new and potentially better solutions (cuckoos) to replace a less good solution in the nests. Additionally, when generating new solutions, a Levy flight [12] is performed: the random walk via Levy flight is more efficient in exploring the search space as its step length is much longer in the long run.

The Bat Algorithm
Xin-She Yang proposed the Bat Algorithm (BA) in 2010 [10]: it was inspired by research on the social behaviour of bats, and thus, the BA heuristic is based on their echolocation behaviour. Bats use a type of sonar or echolocation to detect prey, avoid obstacles and locate their roosting crevices in the dark. They emit a very loud sound pulse and listen for the echo that bounces back from the surrounding objects.
The Bat Algorithm is similar to the Particle Swarm Optimization (PSO) algorithm [13]: here, each candidate solution called a bat is represented by its coordinates in the search space and velocity. Bats fly randomly with some velocity at the new position with a fixed frequency, varying wavelength and loudness to search for the global optima. They can automatically adjust the wavelength of their emitted pulses and adjust the rate of pulse emission, depending on the proximity of the global optima.
Furthermore, the loudness and the rate of pulse emissions have to be updated accordingly as the iterations proceed. The loudness decreases once a bat has found its prey or best coordinates, while the rate of pulse emission increases. Besides, the loudness can be chosen as any value of convenience. It is assumed that the loudness varies from a large positive number to a minimum constant value, which means that a bat has just found the global optima and stopped emitting any sound.

Proposed approach
The success-history based position adaptation technique (SHPA) for improving the search diversity of biology-inspired algorithms was introduced in [14]. The key concept of the proposed technique can be described as follows.
First of all, the initial population (the set of potential solutions called individuals and represented as real-valued vectors with length D, where D is the number of dimensions) for a given biology-inspired algorithm is randomly generated. Additionally, the external archive for best found positions is created: its maximum size |A| is chosen by the end-user, and at the beginning it is empty.
For each individual, the best found position by a given individual, or in other words the local best position, in the search space is saved. Initially, the local best for each individual is its current coordinates. If later an improved position is discovered, then it will be used as the local best and the previous one will be stored in the external archive.
Later, when individuals change their position in the search space according to the formulas given for the considered biology-inspired algorithm, they can use the individuals stored in the archive with some probability pa. Therefore, the position adaptation strategy of success-history based potential solutions depends on the operators used by the population-based algorithm, probability pa and MIP IOP Conf. Series: Materials Science and Engineering 537 (2019) 052008 IOP Publishing doi:10.1088/1757-899X/537/5/052008 4 maximum archive size |A|. If the probability pa is set to 0, then the standard version of the chosen biology-inspired algorithm is executed (the external archive is not used).
The process of the external archive update can be described with the following pseudo-code for a minimization problem: A is the external archive |A| is the external archive size The current number of individuals stored in the archive is k The individuals stored in the archive are A i , where i = 1,…,k N is the population size The individuals in the population are P j , j = 1,…,N The local best for each P j is local j  Let us consider the modification of the Bat Algorithm [10]. As was mentioned in the previous section, each i-th individual from a population of size N in the Bat Algorithm is represented by its coordinates xi = (xi1, …, xiD) and velocity vi = (vi1, …, viD), where D is the number of dimensions of the search space. The following formulas are used for updating velocities and locations/solutions in the BA approach: (1) In these formulas, t and (t + 1) are the numbers which indicate the current and the next iterations, x * is the currently best found solution by the whole population, and fi is the frequency of the emitted pulses for the i-th individual. Thus, with the probability pa, instead of x * the randomly chosen individual Ai from the external archive (if it is not empty) will be used. It is done with the expectation that individuals will move in multiple directions and, therefore, will be able to find better solutions.
For the FFA and CSA algorithms, the archive is used in a similar way: with probability pa the current point of attraction x * is changed to a stored solution Ai. To be more specific, in the CSA approach individuals are sorted according to the objective function. Then the worst ones are removed from the population and new individuals instead of them are generated using the external archive with a given probability pa.
On the other hand, in the FFA approach a firefly or individual moves towards another firefly or individual if the latter has a better objective function value (the latter is more attractive) [9]. While using the proposed technique for the FFA approach, the firefly can also be moved towards individuals from the external archive A with a given probability pa.

Spacecraft global trajectory optimization
Trajectory optimization problems are difficult to solve because function calculation involves the computation of a complex dynamical system. Usually these problems are formulated so that the objective function value is the amount of propellant needed to achieve the desired goal. While the optimized values are planet visiting times, the trajectories obtained in such a way are commonly not very good. A more complicated method is to involve deep space manoeuvres (DSM), providing the opportunity to achieve better trajectories, but complicating the problem: the number of local minima increases, as well as the search space sensitivity.
Various optimization methods were used for solving the global trajectory problems, including population-based algorithms (Particle Swarm Optimization, a differential evolution algorithm and others) [15]. Let us consider two global trajectory problems provided by ESA, namely Cassini-1 and Messenger. Each of these problems is aimed at optimizing the flight trajectories of well-known missions [11].
The first problem Cassini-1 is a simplified version of the Cassini spacecraft mission. The objective of this mission is to reach Saturn, be captured by its gravity and be taken into an orbit. The planetary fly-by sequence considered is Earth, Venus, Venus, Earth, Jupiter and Saturn (like the one used by the Cassini spacecraft). The Cassini-1 problem has 6 parameters, which are presented in table 1. As has been mentioned, the second solved problem is the Messenger problem. This trajectory optimization problem represents a rendezvous mission to Mercury (the Messenger mission) modelled as an MGA-1DSM problem [11]. The defined optimization problem has 18 parameters, which are shown in table 2 taken from [11]. The optimization goal for the Messenger problem consists in the minimization of the required propellant amount.

Experimental results
In this section, a description of the conducted experiments and obtained numerical results is presented. First of all, the effectiveness of the proposed approach while solving test optimization problems is demonstrated. Then the results for the global trajectory optimization problems achieved by the biology-inspired algorithms with the success-history based adaptation technique are shown.

Performance evaluation of the proposed adaptation technique
In this study, the following 10 benchmark problems taken from [16] were used in experiments: the Rotated Discus Function, the Different Powers Function, the Rotated Rosenbrock's Function, Schwefel's Function, the Rotated Ackley's Function, the Rotated Griewank's Function, the Rotated Katsuura Function, the Rotated Lunacek bi-Rastrigin Function, the Rotated Weierstrass Function and Rastrigin's Function. These benchmark functions were considered to evaluate the robustness of the chosen biology-inspired algorithms with and without the proposed adaptation technique and to compare the obtained results.
As has already been mentioned, for experiments the following three biology-inspired algorithms were used: the Firefly Algorithm, the Cuckoo Search Algorithm and the Bat Algorithm. For each test function and dimension, 51 independent program runs were performed (this number was chosen due to the experimental settings given in [16]), and the dimensionality of the search space was set to D = 10 and D = 30. The population size was equal to 100 and each program run stopped if the number of function evaluations was equal to 10000D. The maximum archive |A| size was set to 50, and the probability to use the external archive varied from pa = 0 to pa = 0.75 with step 0.05. In a case where pa was equal to 0, the external archive was not used.
In the next three tables, the results obtained by the biology-inspired algorithms listed above are presented. The following notations are used in these tables: "+" means that the algorithm with a certain probability pa was better compared to the original algorithm (without the external archive) according to the Mann-Whitney statistical test with significance level p = 0.01 [17]. Similarly, "-" means that algorithm with the archive was worse, and "=" means that there was no significant difference between their results. Thus, in these tables the first row indicates the probability values, while the first column contains the function number (from 1 to 10) and the dimensionality (10 and 30).      Furthermore, the best version of the biology-inspired algorithms (without the external archive or with it and the chosen probability pa) was determined for each problem f and number of variables D according to the Friedman test [18]. The obtained results are presented in the sixth table. Each cell in this table contains the probability pa of the best variant of the biology-inspired algorithm, and it is equal to 0 if the external archive was not used. Thus, it was concluded that the position adaptation technique of success-history based potential solutions significantly increases the workability of the FFA approach: improvements were achieved for all test functions and dimensions according to the Mann-Whitney statistical test with significance level p = 0.01. Additionally, the higher values of the probability pa allow better solutions to be found more frequently. According to the obtained results, the Cuckoo Search Algorithm like the Firefly Algorithm demonstrates better results with the probability pa greater than 0.55, while the Bat Algorithm shows statistically significant improvements using the external archive with a much smaller probability pa (less than 0.5).

Global trajectory optimization problems
For every global trajectory optimization problem tested, 25 program runs of the algorithm have been performed. During each program run, the population size of the biology-inspired algorithm (with and without the external archive) was set to 5000, and the total computational resource was set to 10 6 for the Cassini-1 problem and D•10 6 for the Messenger problem.
The best found solution for Cassini-1 problems as well as the worst solution found by algorithms are presented in table 7. Besides, the mean value and the standard deviation (SD) of the obtained results are also demonstrated. In addition, the following notations are used in this table: pa = 0 means that the external archive was not used during calculations, otherwise, it was used with a given probability pa, which was chosen according to the previously conducted experiments. Thus, it is obvious that the proposed approach improves the biology-inspired algorithms' ability to find better solution for the Cassini-1 problem. The best, the worst, the mean and even the standard deviation values obtained by the modified algorithms were much better than the corresponding values obtained by the original versions. It should be noted that improvements were achieved for all modifications compared to the original algorithms according to the Mann-Whitney statistical test with significance level p = 0.01.
The Messenger GTOP appeared to be the most complicated, and for this problem only suboptimal solutions were found. The obtained results are demonstrated in table 8, with the same notations being used. Again, results obtained by the modified heuristics with the success-history based position adaptation were better. Considering the results, it can be concluded that the proposed approach significantly improves the workability of the biology-inspired algorithms and it can be successfully used to solve this class of global trajectory optimization problems. The time required to perform one run of the algorithm for the Cassini-1 problem is less than 5 minutes and for the Messenger problem is approximately 30 minutes.

Conclusions
In this paper, the position adaptation of success-history based potential solutions for biology-inspired algorithms was proposed. This technique modifies the coordinate update procedure by changing the direction of their attraction. Despite the simplicity of such an approach and its little computational overhead, it allowed significant improvements for all three methods used in the experiments. Moreover, no performance loss was observed in any of the experiments, and for the FFA with pa greater than 0.55, there were improvements for all the experiments.
Thus, it was concluded that the proposed approach improves the biology-inspired algorithms' ability to find better solutions. For all test problems, regardless of the chosen probability pa the modified versions demonstrated better results than the original ones for all test functions with the same amount of computational effort.
As for the global trajectory optimization problems, biology-inspired algorithms modified by the success-history based position adaptation technique were able to find significantly better solutions than their original versions. Therefore, the effectiveness of the proposed approach was demonstrated on complex real-world optimization problems.