CAMELOT: Computational-Analytical Multi-fidElity Low-thrust Optimisation Toolbox

Computational-Analytical Multi-fidElity Low-thrust Optimisation Toolbox (CAMELOT) is a toolbox for the fast preliminary design and optimisation of low-thrust trajectories. It solves highly complex combinatorial problems to plan multi-target missions characterised by long spirals including different perturbations. To do so, CAMELOT implements a novel multi-fidelity approach combining analytical surrogate modelling and accurate computational estimations of the mission cost. Decisions are then made using two optimisation engines included in the toolbox, a single-objective global optimiser, and a combinatorial optimisation algorithm. CAMELOT has been applied to a variety of case studies: from the design of interplanetary trajectories to the optimal de-orbiting of space debris and from the deployment of constellations to on-orbit servicing. In this paper, the main elements of CAMELOT are described and two examples, solved using the toolbox, are presented.


Introduction
In recent years, electric (or low-thrust) propulsion has become a key technology for space exploration and its use has increased in both near-Earth and interplanetary missions.Electric propulsion systems have indeed the potential to provide shorter flight times, smaller launch vehicles, and increased mass delivered to destination when compared to high-thrust propulsion systems [30,35].
Multi-target missions using electric propulsion have been proposed in the literature [3,22] and they are typical problems of the Global Trajectory Optimisation Competition (GTOC) [32].The design of such missions requires the definition of the best sequence of targets to visit and, therefore, the solution of a combinatorial optimisation problem.An additional difficulty in solving large combinatorial problems is the need to evaluate the cost of the transfer between targets several times.To quickly solve these problems, it is, therefore, desirable to have a fast estimation for the cost of the transfer.When the model is expensive to evaluate, this estimation could be obtained through the use of surrogate models.
In this paper, the Computational-Analytical Multi-fidElity Low-thrust Optimisation Toolbox (CAMELOT), a toolbox that combines the elements required to quickly design a low-thrust multi-target mission, is presented.CAMELOT includes multi-fidelity estimation of the cost of low-thrust transfers, tools for the generation of surrogate models, a combinatorial optimisation solver and a single-objective global optimiser.The combination of these elements allows to design a wide range of multi-target mission using electric propulsion: from the design of interplanetary trajectories to the optimal de-orbiting of space debris and to the deployment of constellations.Abstract Computational-Analytical Multi-fidElity Lowthrust Optimisation Toolbox (CAMELOT) is a toolbox for the fast preliminary design and optimisation of low-thrust trajectories.It solves highly complex combinatorial problems to plan multi-target missions characterised by long spirals including different perturbations.To do so, CAMELOT implements a novel multi-fidelity approach combining analytical surrogate modelling and accurate computational estimations of the mission cost.Decisions are then made using two optimisation engines included in the toolbox, a singleobjective global optimiser, and a combinatorial optimisation algorithm.CAMELOT has been applied to a variety of case studies: from the design of interplanetary trajectories to the optimal de-orbiting of space debris and from the deployment of constellations to on-orbit servicing.In this paper, the main elements of CAMELOT are described and two examples, solved using the toolbox, are presented.
Two mission design applications of CAMELOT are presented: a multiple fly-by mission to the Atira asteroids and an Active Debris Removal mission to remove non-cooperative objects from Low Earth Orbit (LEO).
This paper starts with a description of the of the main tools of CAMELOT in Sect. 2. The two mission design applications are presented in Sect. 3 and the final remarks conclude this paper in Sect. 4.

CAMELOT
The main components of CAMELOT are: A description of the three components of CAMELOT is given in the following.The section ends with an explanation of the interaction between FABLE, MP-AIDEA, and AIDMAP.

FABLE
FABLE provides accurate cost estimations (ΔV) of orbital transfers realised with electric propulsion using multi-fidelity analytical approach and surrogate models.A set of low-fidelity tools can give a fast estimation of the cost of the transfer by means of the analytic control laws, as summarised in Table 1; the variation of orbital elements corresponding to each law is described in the first column.For example, the first row represents a transfer with variation of semimajor axis from the initial value a 0 to the final value a f .The other symbols in Table 1 are used to represent the other orbital elements: e is the eccentricity, i is the inclination, is the argument of the perigee, and Ω is the right ascension of the ascending node.The subscripts " 0 " and " f " are used to identify initial and final conditions, respectively.FABLE also includes novel analytical equations, developed by the authors, for the estimation of the cost of lowthrust transfers between circular orbits affected by the second-order zonal harmonic of the Earth's gravitational potential, J 2 .These novel equations provide ΔV and the control pattern to achieve a simultaneous variation of the semimajor axis a, inclination i, and right ascension of the ascending node Ω in a given time of flight.More details can be found in [8].
The higher fidelity approach computes ΔV of a trans- fer using the analytical propagator implemented in FABLE as model for the motion of the spacecraft.The analytical propagator is based on analytical formulas for the perturbed Keplerian motion, obtained from a first-order expansion, in the perturbing acceleration, of the variation of nonsingular equinoctial elements [36].Using these formulas, both osculating and averaged analytical propagations can be realised.FABLE includes perturbations due to zonal harmonics J 2 , J 3 , J 4 , J 5 , atmospheric drag (with an exponential atmospheric density model [7]), solar radiation pressure, third-body gravitational perturbation, and low-thrust propulsion.FABLE can also take into account eclipses using a cylindrical model for the Earth's shadow.Analytical solutions are available for constant low-thrust acceleration, constant tangential lowthrust acceleration, and constant acceleration in an inertial reference frame [36].The analytical model can be used in combination with a direct optimisation method and multiple shooting algorithm to define the optimal cost of low-thrust transfers.In the multiple shooting algorithm, the trajectory is segmented into legs that begin and end at On/Off control nodes, where On nodes define the switching point from null thrust to maximum thrust and Off nodes define the switching point from maximum thrust to null thrust.The state vectors corresponding to each node are determined by the optimisation process, being treated as optimisable variables [16].The vector of control parameters is completed by the azimuth and elevation of the thrust vector on each thrust arc.The On/Off control nodes segment the trajectory into a sequence of thrust and coast legs.A middle point is defined for each transfer and the state vector is forward-propagated on each of the legs from the departure point to the mid-point and back-propagated on each of the legs from the arrival point (that is, the asteroid nodal point) to the mid-point.Keplerian motion is considered on the coast legs, while on the thrust legs, the analytical model for the propagation of the orbital motion under low-thrust perturbation is used.
When multi-target missions are considered, the cost of the transfers between objects could have to be computed several times.To reduce the associated computational burden, FABLE can generate surrogate models of the transfers' cost to allow for a fast evaluation of complex trajectories.Surrogate models can be obtained using Kriging and the DACE toolbox [18] or Tchebycheff interpolation with sparse grid [23].
FABLE includes also tools for multi-fidelity optimisation of surrogate models.The optimisation is realised using the concept of co-Kriging and the maximisation of the expected improvement.The co-Kriging model allows one to build an approximation of a function that is expensive to evaluate using data from low-fidelity model of the function [10].The high-fidelity response Z HF ( ) at the design point is approxi- mated by multiplying the low-fidelity response Z LF ( ) by a scaling factor, , and a Gaussian process representing the difference between the high-and low-fidelity data, Z D ( ) [34]: In FABLE, the co-Kriging model is computed using ooDACE Toolbox [4].
The maximum expected improvement approach can be used to locate the minimum of the function by finding the point, where the likelihood of achieving an improvement, with respect to the current best function value, is maximised [14].The expected improvement EI is defined as where In the previous equation, ŷ( ) is the co-Kriging predictor, s( ) is its error, Φ and are the normal cumulative distribu- tion function and density function, and f min is the current best function value [14].
FABLE includes also astrodynamics tools for gravity assist, as shown in Sect.3.

MP-AIDEA
Multi-population Adaptive Inflationary Differential Evolution Algorithm (MP-AIDEA) is a single-objective global optimiser based on the combination of differential evolution (DE) [26] with local search and local and global restart procedures [8].The performance of the DE is strongly influenced by the setting of its two parameters, the differential weight F and the crossover probability CR, whose best settings are heavily problem dependent [5,11].In MP-AIDEA, these parameters are automatically adapted during the optimisation.The DE is run until the population contract below (1) a given threshold.When the contraction condition is satisfied, the DE is stopped and the algorithm decides whether to start or not a local search from the best individual of the population.This decision is taken based on the relative position of the best individual of the population with respect to the basin of attraction of previously detected local minima.The aim is to enable a transition from the current minimum to a neighboring one and to avoid multiple detections of the same local minima.If a local search is realised from the best individual of the population, the population is then locally restarted in a hypercube around the detected local minimum and the DE is started again.The dimension of the search space in which to locally restart the population is automatically adapted during the optimisation process.If no local search is realised, the population is restarted globally in the whole search space at a given distance from the clusters of local minima already detected.The local minima detected during the optimisation are saved in an archive of minima that allows to characterise the landscape of the function being minimised.MP-AIDEA has been extensively tested over more than 50 test functions, including difficult academic test functions and real-world test problems.Results have shown that the algorithm is averagely very efficient, being always in the first four positions in the ranking obtained comparing its results to those of others algorithms [8].

AIDMAP
The Automatic Incremental Decision Making and Planning Algorithm (AIDMAP) is a single-objective incremental decision-making algorithm for the solution of complex combinatorial optimisation problems such as tasks planning and scheduling.AIDMAP works modeling discrete decisionmaking problems into a decision tree, where nodes represent the possible decisions, while links/edges represent the cost associated with those decisions.AIDMAP incrementally builds the decision tree from a database of elementary building blocks.These blocks represent a phase or leg of the mission.Using this approach eases the transcription of the problem into a tree-like topology.In addition, by incrementally building the decision tree, it is possible to prune the search space like proposed in [1,21].The decision tree is incrementally grown or explored by a set of virtual agents (VAs).The resulting decision tree is then evaluated by the VAs using a set of deterministic or probabilistic heuristics.The deterministic heuristics in AIDMAP are derived from classical Branch-and-Cut [13], while the probabilistic heuristics are bio-inspired and mimic the evolution of the slime mold Physarum polycephalum, a simple single cell organism endowed by nature with a simple but powerful heuristic that can solve complex discrete decision-making problems [12,20,33].
Unlike Branch-and-Cut that uses a set of deterministic branching and pruning heuristics, the Physarum algorithm uses probabilistic heuristics to decide to branch or prune a vein.Branches are never really pruned, but the probability of selecting them may fall to almost zero.The mechanism of Physarum is analogous to the most commonly known Ant Colony Optimisation algorithm [12].A more detailed description of the Physarum is given in [27].
AIDMAP has been extensively tested on a variety of Travelling Salesman and Vehicle Routing problems, providing good results [7,19,27].

Interaction between components of CAMELOT
The interaction between the three components of CAMELOT can be realised in different ways.Two possible examples are represented in Fig. 1.In Fig. 1a, AIDMAP uses an impulsive model for the cost of the transfer between objects to define a sequence of objects to visit and associated times.The output of AIDMAP is a list of IDs of the objects to visit and the dates of the encounters.This solution is given as input to MP-AIDEA that globally optimises the dates of the encounters.The output of MP-AIDEA is then transcribed in a low-thrust transfer by FABLE and locally optimised.An example of mission design using this approach is presented in Sect.3.1 and is taken from [6]. Figure 1b shows instead an example in which FABLE is used as the first step for the design of the mission.FABLE is used to generate a surrogate model for the cost of the low-thrust transfer between all the pairs of objects in the database and for different values of the time of flight and initial mass of the spacecraft.This model is then used by AIDMAP to find the optimal sequence of objects to visit.An example of mission designed using this approach is presented in Sect.3.2 and is taken from [7].

Applications
CAMELOT can be applied to different mission design problems.Here, a multiple asteroid fly-by mission and a multiple active debris removal mission are presented.These two scenarios were developed within two mission studies published by the authors in [6] and [7].

Multiple asteroids fly-by mission
The first example of application of CAMELOT is the design of a mission to visit the Atira asteroids [6].Atira asteroids are Near-Earth Asteroids (NEAs) with both perihelion and aphelion within the orbit of the Earth (aphelion Q < 0.983 AU), also called Inner-Earth Objects (IEOs).The distribution of the known NEAs population in the a-e plane is shown in Fig. 2, with the Atira asteroids represented by black triangles.
The first Atira object was discovered in 2003 and, as of December 2014, only 14 asteroids were counted in this group.Many more objects are expected to exist in the same region of the Solar System.However, inner Solar System asteroids are difficult to detect because of the limitations of ground-based survey: telescopes can only search on the night side of the Earth, where the Sun is not in the field of view.
The proposed mission visits the Atira asteroids by making use of an electric propulsion system.To maximise the scientific return of the spacecraft, the mission is optimised to visit the maximum possible number of asteroids of the Atira group.The encounters with the asteroids are realised through a series of fly-bys at the nodal points of their orbits.This strategy allows avoiding out-of-plane maneuvers for the change of inclination; the 14 Atira asteroids have inclination ranging from 0 • to 30 • [6].The design of the mission is divided into three phases: 1. identification of the optimal sequence of asteroids to visit and of the optimal departure and arrival dates using AIDMAP and an impulsive Lambert model for the transfer; 2. refinement of the optimal solution identified by AID-MAP using MP-AIDEA; 3. translation of the identified impulsive optimal solution into a low-thrust optimal trajectory using FABLE.
In the first step, AIDMAP is used to find the optimal sequence of asteroids to visit and the optimal departure and arrival dates, considering a 10 year mission time span from 01 January 2020 to 01 January 2030.The trajectories between asteroids are composed of sequences of conic arcs linked together through discrete, instantaneous events.Each conic arc is the solution of a Lambert problem, which is solved to compute the ΔV required for the transfer to reach each asteroid at its nodal point.The arrival conditions are defined by the passage of the asteroids through their nodal points and the departure conditions are identified, on the departure orbit, by a minimum and maximum value for the time of flight to reach the nodal point [6].AIDMAP identifies 133,761 possible sequence of asteroids.A filtering process is applied to find solutions with different sequences of targeted asteroids.After the filtering, 14 unique solutions visiting six asteroids and 57 unique solutions visiting five asteroids are found.The best solution found by AIDMAP, that is the one characterised by the maximum number of asteroid visited and the lowest total ΔV, has six fly-bys based on the following sequence of asteroids visited: . The total ΔV cost, obtained from a Lambert model, is 3.77 km/s and the transfer time is 8.4 years.More details about this solutions are given in Table 2.
The best solution identified by AIDMAP is then further optimised using MP-AIDEA.For the additional optimisation, a local window of 10 days is allocated around the departure dates defined by AIDMAP to find better departures dates that result in a lower total ΔV .Results are reported in Table 3, showing a reduction of 0.16 km/s in the total ΔV with respect to the results, as presented in Table 2.
In the last phase of the design process, FABLE is used to optimise the low-thrust transfers between the pairs of asteroids, using the direct optimisation method, as presented in Sect.2.1.In this example, the vector of control parameters does not include the elevation angles, since the transfers are always planar.The initial acceleration is set at = 10 −4 m∕s 2 , equivalent to a thrust of T = 0.07 N applied to a 700 kg spacecraft.The specific impulse considered is Isp = 3000 s.It is assumed that the spacecraft is injected into an interplanetary orbit, which allows it to realise the first fly-by without switching on the engine.After the first fly-by, the engine can be switched on to achieve the remaining five fly-bys.The results of the optimised low-thrust transfers are reported in Table 4 and shown in Fig. 3, where the thrust legs are in black and the coast legs are in grey.
After the last fly-by, the spacecraft is moved on an parking orbit with lower perihelion (0.725 AU).This allows the spacecraft to move to inner regions of the solar systems to search for new NEAs.Two strategies to realise this transfer are considered.In the first one, the low-thrust engine is used to alternate coast and thrust arc so as to reach the final parking orbit with the minimum ΔV ; in the second case, the spacecraft is moved on an orbit that intersect the Earth's one, so that a gravity assist with the Earth can be obtained.Both these transfer options are shown in Fig. 4.
In the first case, the transfer is realised in 422 days and requires ΔV = 1.8 km/s (Fig. 4a).The transfer realised through gravity assist with the Earth takes 565 days, but requires ΔV = 1.31 km/s (Fig. 4b).
The thrust profile for the trajectory defined in Figs. 3 and  4a is shown in Fig. 5, where the variation of semimajor axis; the azimuth angle , and a switching function defining the coast (0) and thrust (1) arcs are represented.

Multiple active debris removal mission
The second example of application of CAMELOT is the design of a mission to de-orbit non-cooperative large satellites from Low Earth Orbit (LEO).The recent growth of space debris population represents a collision threat for satellite and manned spacecraft in Earth orbit.Recent studies have concluded that regions within LEO have already reached a critical density of objects which will eventually lead to a cascading process known as the Kessler syndrome [17].
In this example, a single servicing spacecraft equipped with electric engine is used for the de-orbiting of large satellites from the region between 800 and 1400 km in LEO.Two removal approaches are considered: • multi-target delivery of de-orbiting kits that are activated to reduce the perigee of the orbits of the targets; • low-thrust fetch and de-orbit using the single-towing spacecraft.
The possible targets to be removed are selected from the catalogue of the current objects in LEO regularly maintained by the North American Aerospace Defence Command (NORAD).Using the NORAD catalogue, 721 objects in the range 800-1400 km and characterised by Radar Cross Section greater than 1 are found [7].The potential 721 target objects are then further selected based on two main criteria: the rate of the drift of the right ascension of the ascending node due to the second zonal harmonic of the gravity, J 2 , and the Criticality of Spacecraft Index (CSI) [28].
The change of the right ascension, when performing a transfer between two satellites, is realised by changing the semimajor axis of the servicing spacecraft and taking advantage of the dependence on the altitude of the natural rate of nodal regression due to J 2 [25].Smaller inclination orbits are more favorable for adjustment of the right ascension realised by changing the semimajor axis [7]; therefore, the group of object with lower possible inclination is selected.
A further classification of objects with low inclination is realised based on the Criticality of Spacecraft Index (CSI).The Criticality of Spacecraft Index expresses the environmental criticality of objects in Low Earth Orbit taking into account the physical characteristics of a given object, its orbit, and the environment, where this is located [28].The CSI is not computed for each of the potential targets, but the location in the inclination-perigee/apogee space of the considered objects is compared against the location, in the same space, of the most critical objects, as reported in [28].Figure 6 shows the perigee and the apogee altitudes of the 721 objects characterised by h p > 800 and h a <1400 km as a function of the inclination.It can be compared with Fig. 8 in [28] to see that the 25 circled objects in Fig. 6 are in the same region as the 100 most critical objects in terms of CSI.These 25 objects are the ones selected for this application.
Once the database of objects is defined, the identification of the optimal sequence of targets to be removed is realised using AIDMAP and a surrogate model of the cost (ΔV) of the transfer of the low-thrust servicing spacecraft between objects, obtained using FABLE.More details about the low-thrust transfer model can be found in [7].FABLE is used considering the perturbations coming from J 2 and atmospheric drag and continuous thrust (no interruption of thrust because of eclipses).It is assumed that the engine has specific impulse I sp = 1600 s and thrust magnitude T = 0.1 N. The initial mass of the servicing spacecraft is 1000 kg.As an example, Fig. 7 shows the variation of a and Ω during the transfer between two target objects, realised in a time of flight of 42 days.The required variation of the right ascension is obtained by moving the spacecraft to a lower semimajor axis orbit and exploiting the different drifts of Ω at different values of a.
Figure 8 shows, instead, examples of transfers relative to the fetch and de-orbit case.Figure 8a shows the variation of perigee altitude of the servicing spacecraft during the de-orbit and the subsequent orbit raising phase.The shorter orbit raising time is due to the fact that, when the perigee reaches 300 km, the servicing spacecraft disposes of the target object and this results in a lower mass, and an increased acceleration, in the raising phase.The de-orbiting is realised using continuous negative tangential acceleration, while the orbit raising is performed with continuous positive tangential acceleration.
The tools implemented in FABLE allow to realise the de-orbiting also increasing the eccentricity of the orbit, applying a negative tangential thrust at apogee and a positive tangential thrust at perigee.The variation of perigee and apogee altitude is shown in Fig. 8b.In this case, the re-entry conditions of the target are different from the ones obtained de-orbiting with continuous tangential acceleration because of the increased eccentricity of the re-entry orbit (the flight path angle at re-entry increases from ≈ 0 • to 1.5 • ).
For the multi-target delivery of de-orbiting kits strategy, the sequence of transfers characterised by the lower total time of flight is reported in Table 5.Ten satellites, identified in Table 5 by their NORAD ID, can be serviced  in less than 1 year.The quantity m 0 is the initial mass for the transfer and m f is the mass at the end of the transfer.The final mass m f accounts for the propellant consumption and for a drop in mass corresponding to the attachment of the 175 kg de-orbiting kit to the serviced satellite.ToF represents the time of flight required to realise the transfer between objects.
When the servicing spacecraft is used to fetch and deorbit a non-cooperative satellite, the results presented in Table 6, for a mission with total time of flight of 353 days, are found.In this case, three satellites can be removed from LEO.
Table 7 reports the orbital elements at epoch (30 May 2015) of the debris removed by the de-orbiting kits and fetch and de-orbit strategies.
An application of the multi-fidelity optimisation of surrogate models described in Sect.2.1 can be considered by looking at one of the transfers between targets computed for the de-orbiting by means of de-orbiting kits.In particular, let us consider as an example the transfer from object 39015 to object 40343.A surrogate model of ΔV required to realise this transfer, using different times of flight and different initial masses of the spacecraft, is shown in Fig. 9a.This surrogate model is generated using Kriging and the Matlab DACE tool by sampling uniformly the parameter space.The surrogate model obtained is then used by AIDMAP for the definition of the optimal sequence of satellite to de-orbit.
A rigorous and time-consuming sampling of the expensive high-fidelity model is not necessary, however, if the aim is only to locate the minimum cost of the transfer.In this case, an analytical model for the cost of the transfer between two satellites can be used as a low-fidelity representation of the problem.The low-fidelity model makes use of the analytical laws in Table 1.A co-Kriging model of the function is then build using data from the low-fidelity model and few data points from the higher fidelity model.The co-Kriging representation of the cost of the transfer, obtained using 20 low-fidelity points and three expensive higher fidelity points, is shown in Fig. 9b.
The point, where the expected improvement is maximised, is then located using MP-AIDEA.The high-fidelity function is evaluated in the point of maximum expected improvement, the co-Kriging surrogate model is computed again and the process is repeated.The representation of the expected improvement at the first step of the iterative procedure is shown in Fig. 10a.The iteration stops after three runs, corresponding to three additional sampling in the most promising area (high time of flight and low spacecraft mass), when the expected improvement is lower than a pre-defined value.The Co-Kriging surrogate model at the end of the iterative process is shown in Fig. 10b.The

Conclusions
In this paper, CAMELOT, a toolbox for the design and optimisation of multi-target low-thrust trajectories mission, has been presented.The three main components of CAMELOT, FABLE, MP-AIDEA, and AIDMAP have been described.The toolbox is applied to two case studies, the design of an interplanetary trajectory to visit the Atira asteroids and the design of a mission to de-orbit multiple non-cooperative objects from LEO. Results show that CAMELOT can solve different space problems in an efficient way while remaining easily adaptable to different applications.Future works for the improvement of CAMELOT will include the development, in FABLE, of surrogate models for the estimation of the cost of low-thrust transfer between any two orbits, for both Earth and interplanetary transfers.The toolbox will also be modified to allow for the online generation of the surrogate model during the optimisation with MP-AIDEA: the evaluations of an high-fidelity expensive function done by the global optimiser will be used to generate a surrogate model, used by the optimiser itself in combination with the high-fidelity model.Additional features will be included to account for uncertainty in ephemerids, engine characteristics, and boundary conditions.

Fig. 1 Fig. 2
Fig. 1 Example of interactions between the components of CAMELOT.LT = Low-Thrust

Fig. 3 Fig. 4
Fig. 3 Trajectory for multiple fly-by of the Atira asteroids

Fig. 5 Fig. 6
Fig. 5 Semimajor axis, azimuth angle and switching function for the mission

Fig. 7 Fig. 8
Fig. 7 Variation of a and Ω during the transfer between two target objects for the multi-target delivery of de-orbiting kits.a Semimajor axis.b Right ascension of the ascending node

Fig. 9 Fig. 10
Fig. 9 Surrogate models of the cost of the transfer from object 39015 to object 40343.a Kriging surrogate model.b Co-Kriging surrogate model

Table 1
Low-fidelity analytical control laws for the variation of orbital elements implemented in FABLE

Table 2
Best solution obtained with six-visited asteroids using AID-MAP with Lambert model

Table 4
Summary of the results for the low-thrust trajectory

Table 5
Sequence of removed satellite for servicing spacecraft delivering de-orbiting kits