18
The Kessler Run: On the Design of the GTOC9 Challenge Dario Izzo * and Marcus M¨ artens * Advanced Concepts Team, European Space and Technology Center (ESTEC), Noordwijk, The Netherlands. Faculty of Electrical Engineering, Mathematics and Computer Science, Delft University of Technology Delft, The Netherlands. Abstract As organizers of the 9th edition of the Global Trajectory Optimization Competition we were tasked to design a challenging trajectory opti- mization problem to be solved during the du- ration of one month. We gave ourselves the goal to create a problem which was accessi- ble enough for newcomers, deep enough for experts, unconventional in its objective func- tion and which allowed for a real-time format of the competition. This document describes our design process from the initial idea up to the final form. We document some of our ex- periments conducted to learn about the solu- tion landscape of an earlier simplified version of the problem and show how this exploration helped us in tuning the problem parameters to create a balanced and challenging task. 1 Introduction The Global Trajectory Optimization Compe- tition (GTOC) started in 2006 [10] with the * Corresponding author. E-mail: [email protected] Figure 1: The GTOC trophy as of May 2017. intent to attract interest in the fascinating and difficult problem of optimizing interplanetary trajectories and to advance its methods. The winners are presented with a trophy they will keep up to the following edition (see Figure 1) and are asked to organize the following edition according to their own schedule and rules. During the years, private citizens, aca- demic institutions and companies have com- peted in the various editions making GTOC an established and prestigious event. The GTOC web portal [6] collects and presents various re- sources and features an exhaustive collection of scientific publications related to the various competitions, which shows how it has stimu- 1

The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

The Kessler Run: On the Design of the GTOC9Challenge

Dario Izzo∗ and Marcus Martens†∗Advanced Concepts Team, European Space and Technology Center (ESTEC),

Noordwijk, The Netherlands.†Faculty of Electrical Engineering, Mathematics and Computer Science, Delft University of Technology

Delft, The Netherlands.

AbstractAs organizers of the 9th edition of the GlobalTrajectory Optimization Competition we weretasked to design a challenging trajectory opti-mization problem to be solved during the du-ration of one month. We gave ourselves thegoal to create a problem which was accessi-ble enough for newcomers, deep enough forexperts, unconventional in its objective func-tion and which allowed for a real-time formatof the competition. This document describesour design process from the initial idea up tothe final form. We document some of our ex-periments conducted to learn about the solu-tion landscape of an earlier simplified versionof the problem and show how this explorationhelped us in tuning the problem parameters tocreate a balanced and challenging task.

1 IntroductionThe Global Trajectory Optimization Compe-tition (GTOC) started in 2006 [10] with the

∗Corresponding author. E-mail:[email protected]

Figure 1: The GTOC trophy as of May 2017.

intent to attract interest in the fascinating anddifficult problem of optimizing interplanetarytrajectories and to advance its methods. Thewinners are presented with a trophy they willkeep up to the following edition (see Figure1) and are asked to organize the followingedition according to their own schedule andrules. During the years, private citizens, aca-demic institutions and companies have com-peted in the various editions making GTOC anestablished and prestigious event. The GTOCweb portal [6] collects and presents various re-sources and features an exhaustive collectionof scientific publications related to the variouscompetitions, which shows how it has stimu-

1

Page 2: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

lated the research in this field.As winners of the 8th GTOC, organized by

the Jet Propulsion Laboratory [19, 13], we ac-cepted the honour (and burden) to organize thefollowing edition: GTOC9. Starting from ourexperience with the complexity of the designof multiple debris removal missions [12] wedecided to design the GTOC9 problem aroundthat scenario, trying to leverage on the under-explored challenges that the differential mo-tion of the right ascension of the ascendingnode (RAAN) introduces when multiple de-bris have to be selected for removal.

This document describes the trajectoryproblem chosen and its evolution as we tunedits various parameters to ensure a challengingand interesting event. It is organized as fol-lows: Section §2 introduces our main goals indeveloping the challenge. The following Sec-tion §3 presents the finalized formal mathe-matical description of the problem. Section §4describes the results of a dry-run we made ona simplified (and preliminary) version of theproblem and the lessons learned from that ex-ploration of the solution landscape. We thenconclude in Section §5 discussing briefly thedesign of the real-time aspect of the event.

2 Problem Requirements

When we started thinking about the GTOC9challenge, we defined a set of goals by inher-iting some from previous editions organizersand some from our own view on what GTOCscan (and should) be:

1. From a mathematical point of view, theproblem has to be a global optimizationproblem with multiple local minima. Itscomplexity has to make it highly unlikely

for the different participants to producethe same solution so that the final spreadof returned trajectories should be as di-verse as possible.

2. The objective function needs to be un-usual in the sense that many of the prob-lem details should be perceived as novelto ensure that no participant has a clearadvantage because he has worked onsome similar issues before.

3. The development of novel ideas and useof original algorithms should give a com-petitive advantage with respect to thereuse of well established methods. Nostandard approach should be immediatelyapplicable and different strategies shouldbe equally likely to return promising so-lutions.

4. The mission design problem to be tack-led should go beyond being an academicexercise, and aim for real world relevance

5. The entry level for participation shouldbe as low as possible, allowing explo-ration of the problem at different levelsof complexity by participants with differ-ent levels of expertise and effort investedwithin the given time span of 4 weeks.

6. The problem solutions have to be easilyand objectively verifiable.

7. A clear winner has to be declared soonafter the competition ends.

8. If possible, the competition formatshould be innovated.

We thus started from these objectives to de-sign an active debris removal mission, rely-ing on the knowledge that some instances of

2

Page 3: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

this trajectory design problem map to com-plex variants of the Travelling Salesman Prob-lem and thus belong to the class of NP-hardproblems (nondeterministic-polynomial com-plexity) [12].

While a number of scientists addressed, alsorecently, the problem of the design of missionsable to remove multiple debris at once [4, 2, 5,18, 12] (to name just a few of the works con-sulted), we had the impression that there wasstill a good amount of space for improvementleft in this specific area of trajectory design. Inparticular, the combinatorial problem of debrisselection (i.e. the problem of selecting whatpieces of debris to remove from a potentiallylarge set) was far from being explored satisfac-torily, especially for long removal sequences.Considering long sequences imposes a quiteinteresting challenge, since the differential J2effect results in the evolution of a complexRAAN distribution. From these thoughts, thebasic idea for the GTOC9 problem was born.

3 The Kessler RunTo construct a scenario where the removal oflong chains of multiple debris is relevant, wethought to look into a possible future sce-nario where the Kessler Syndrome [16] trig-gered a significant damage to an important,and crowded, orbital environment such as thatof the Sun-synchronous satellites. The follow-ing storyline emerged:“It is the year 2060 and the commercial ex-ploitation of Low Earth Orbits (LEOs) wentwell beyond the trillion of Euros marketsize. Following the unprecedented explosionof a Sun-synchronous satellite, the Kessler ef-fect triggered further impacts and the Sun-synchronous LEO environment was severely

compromised. Scientists from all main spaceagencies and private space companies iso-lated a set of 123 orbiting debris pieces that,if removed, would restore the possibility to op-erate in that precious orbital environment andprevent the Kessler effect to permanently com-promise it. You are thus called to design aseries of missions able to remove all criticaldebris pieces while minimizing the overall cu-mulative cost of such an endeavour.”1

Finally, we decided to name the competi-tion “The Kessler Run” after a famous StarWars [20] nonsensical quote from Han Soloclaiming his ship, the Millennium Falcon, did“The Kessel run in less than 12 parsecs”.2

Formal Problem DefinitionWe report here parts of the original docu-ment [11] containing the official description ofthe problem which was made public and sentto all 69 teams who registered to GTOC9 bythe 1st of April 2017.

Design n missions able to cumulatively re-move M = 123 orbiting space debris movingalong Keplerian orbits perturbed by the meanJ2 effect as detailed in Appendix A. Figure 2shows a visualization of those orbits whileFigure 3 presents the histograms for their or-bital parameters.

One mission is a multiple-rendezvousspacecraft trajectory where a subset of size Nof the M orbiting debris is removed by the de-livery and activation of N de-orbit packages.In between debris visits, the spacecraft dy-namics are Keplerian and subject to the full

1The decision to target 123 debris was, at this stage,purely arbitrary. Merely the result of keyboard proxim-ity (the same way some people pick passwords such as“QWERTY”.

2https://www.youtube.com/watch?v=nmyvFEkJSE4

3

Page 4: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

Figure 2: Visualization of the M orbits ofthe M debris at some fixed epoch. Theearth is visualized as the transparent bluesphere. See also https://youtu.be/zvxZx-QnqQ0

J2 perturbation. The equations of motion arereported in Appendix A. The following costfunction needs to be minimized:

J =n∑i=1

Ci =n∑i=1

[ci + α (m0i −mdry)

2](1)

where Ci is the cost charged by the contractedlauncher supplier for the i-th mission and itis composed of a base cost ci (increasing lin-early during the competition time frame) anda term α (m0i −mdry)

2 favouring a lighterspacecraft. At the beginning of the i-th mis-sion, m0i denotes the (total) spacecraft massandmdry its dry mass. Each kg of launch masssaved thus results in a discount over the mis-sion cost (but also in a less capable spacecraft).

The i-th mission starting epoch is denotedwith tsi and its end epoch with tfi . A mis-sion starts with a launch delivering, at tsi , onespacecraft at a chosen debris and ends when all

the N de-orbit packages on-board have beendelivered and activated. An orbiting debris isconsidered as removed if: a) its position andvelocity vector at some epoch t coincides withthe spacecrafts position and velocity vectorand b) the spacecraft stays in proximity of thedebris for the following tw ≥ 5 [days] whiledelivering and activating a de-orbit package ofmass mde = 30 [kg].

Afterwards, the spacecraft is free to igniteits propulsion system again and leave towardsthe next debris (note that only in-between de-bris transfers the spacecraft is subject to thefull J2 perturbation and its dynamics is de-scribed by the equations of motion reportedin Appendix A. During the removal opera-tions (i.e. for a time tw) the position and ve-locity of the spacecraft must be consideredto be those of the debris as computed by theephemerides).

The basic cost ci of each mission (i.e. notincluding the α term), increases linearly dur-ing the competition month and is computed asfollows:

ci = cm +tsubmission − tstarttend − tstart

(cM − cm)

where tsubmission is the epoch at which the i-thmission is validated and tend and tstart are theend and the beginning epochs of GTOC9. Theminimal basic cost cm is 45 MEUR, while themaximum cost cM is 55 MEUR. Each orbitingdebris not removed by any of the missions isconsidered, at the end of the competition, re-moved by a dedicated launch with a fixed costof cpenalty = 55.0018 MEUR

Spacecraft

Each spacecraft’s initial massm0 is the sum ofits dry mass, the weights of theN ≥ 1 de-orbit

4

Page 5: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

Figure 3: Histograms for the various orbital parameters of the M debris orbits.

Figure 4: Histogram for all differential RAANdrifts between pairs of debris.

packages to be used and the propellant mass:m0 = mdry+Nmde+mp. All spacecraft havea dry mass of mdry = 2000 [kg] and a max-imum initial propellant mass of mp = 5000[kg]. Less propellant may be used, in whichcase the launch costs will decrease. Each de-orbit package has a fixed weight of mde = 30[kg].

Allowed Manoeuvres

The only manoeuvres allowed to controlthe spacecraft trajectory are instantaneouschanges of the spacecraft velocity, its magni-tude being denoted by ∆V . After each suchmanoeuvre, the spacecrafts mass needs to beupdated by Tsiolkovsky’s equation:

mf = mi exp

(−∆V

ve

),

where ve = Ispg0. A maximum of 5 impul-sive velocity changes are allowed within eachtransfer (leg) between two successive debris,excluding the departure and arrival impulse.

Operational Constraints

The debris removal operations during each ofthe multiple-rendezvous trajectories are com-plex and demand some control over the sched-ule of the debris visits:

1. The overall time between two successivedebris rendezvous, within the same mis-

5

Page 6: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

sion, must not exceed 30 days. Thus, ifthe arrival epoch at a debris a is ta andthe arrival to the next debris b is tb, thentb − ta ≤ ∆tR = 30 [days].

2. Different missions cannot be operated inparallel and a time of at least ∆tM = 30[days] must be accounted for betweenany two consecutive missions so that tfj +30 ≤ tsi [days] if tsi > tsj for all i 6= j.

3. All mission events (arrivals, departures,maneuvers) have to take place in an al-lowed time window. Thus, for everyevent happening at epoch tevent, it hasto hold that 23467 ≤ tevent ≤ 26419[MJD2000] (corresponding to a windowof 8 years).

4. The osculating orbital periapsis rp mustnot be smaller than rpm = 6600000[m]. For simplicity, this condition is onlychecked immediately after arrival, depar-tures and at deep space manoeuvres, butnever in-between those events.

Table 1 summarizes the values of the prob-lem constants and parameters used for GTOC9and for the simplified version of the problem,which we introduce in the following section.

4 Preliminary SolutionSpace Analysis

A concern in the design of a GTOC challengeis to ensure that the parameters of the selectedproblem are well balanced to provide an in-teresting experience. It seemed necessary forus to gain some insight into possible solution

value (simple version) unitsα 2.0 · 10−6 (0.0) MEUR/kg2

cm 45 (55) MEURcM 55 (55) MEUR∆tR 30 days∆tM 30 daystw 5 daysmde 30 kgmdry 2000 (1000) kgmp 5000 (2000) kgrpm 6600000 mµ 398600.4418 · 109 m3/sec2

J2 1.08262668 · 10−3 −req 6378137 mIsp 340 (492) secg0 9.80665 m/sec2

Day 86400 secYear 365.25 days

JD = MJD2000 + 2451544.5 −−MJD = MJD2000 + 51544 −−

Table 1: Problem constants and conversions.The values in parenthesis were used during adry-run and were later adjusted. JD is the Ju-lian date. MJD the Modified Julian Date andMJD2000 the Modified Julian Date 2000.

landscapes and an idea about the general com-plexity of the problem to be able to make in-formed choices on the parameters. Thus, weperformed an internal one week long dry-runon a simplified version of the problem.

The Simplified Problem

During our dry-run, we neglected thequadratic and mass dependent term of theobjective function by setting α = 0. We

6

Page 7: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

also considered a fixed cost for each launchindependent of the time of submission bysetting cm = cM , effectively ignoring thecompetitive aspect of the problem to rewardearly submissions. Based on these decisions,the cost function in Eq.(1) reduces to its sim-plified version indicated with an underscoreS: JS = n, that is to minimize the number ofmissions needed for a complete removal of alldebris.

During our preliminary exploration, we alsorelaxed the constraints on the total time offlight, by having 23467 ≤ tevent ≤ 27119, ef-fectively giving a 10 year time window to findsolutions. The set of the M = 123 orbitingdebris was also generated with a different dis-tribution of orbital parameters (one of the out-comes of the dry-run was to introduce a morechallenging set of debris orbits). To furthersimplify, we restricted the trajectories to avoidany deep space maneuvers and thus having thespacecraft only thrust at departure and arrivalof debris. The launching systems defined byIsp,mdry and mp were also different than inthe final description (compare Table 1). Apartfrom these modifications, the basic challenge,i.e. finding a favorable combination of debrisremoval sequences, remained still the same.

A Set Cover Problem?Consider the set S of all possible missions (i.e.multiple debris removal missions) that can beflown with the given spacecraft. The simpli-fied problem is easily mapped to a set coverproblem (see Appendix B) with some addi-tional constraints: the universe U is the setof debris, while each valid mission within thetime constraints defines a subset S ∈ S con-taining the debris it removed. As each debriscan only be removed once, a disjoint set cover

problem has to be considered and sets of con-flicting missions (i.e. mission overlapping intime or violating the ∆tM time gap) must notbe part of the solution. This can be incorpo-rated in the integer linear programming (ILP)formulation of the set cover problem (see Ap-pendix B) by adding additional inequality con-straints, as detailed later.

We conclude that the simplified GTOC9problem maps onto a disjoint set cover prob-lem, whose solution results in the selectionof a minimal amount of non-conflicting validmissions. Due to the NP-hardness of setcover and ILPs in general, the computationalcomplexity of the simplified problem is al-ready high and brute force approaches are un-likely to be a feasible option. Clearly, it isimpossible to compute the entire set S, andeven if it was possible the dimensionality ofthe corresponding set cover problem would bemuch too large to be directly solvable. Con-sequently, if one wants to follow this solutionstrategy, one has to reduce the problem-sizeto a small collection of subsets S reflectingpossible debris removal sequences. Since eachsubset in S will correspond to an actual mis-sion, we will interchangeably talk about sub-sets and missions, using S also as a notionfor a collection of missions with the follow-ing, vaguely defined, qualities:

1. Each debris should be removed at leastonce by some element of S .

2. There should be as little conflicting mis-sions in S as possible.

3. S needs to be small enough to support afast convergence of an integer linear pro-gramming solver.

4. S should be large enough to allow for theexistence of good solutions.

7

Page 8: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

5. The size of each set in S should be aslarge as possible since removing moredebris within a few missions is morecost-effective than removing only a smallamount of debris by a high number ofmissions.

6. S should also contain short missionssince they are less likely to overlap andthus avoid constraint violations by mak-ing it easier to assemble disjoint sets forthe final solution.

Some of these qualities are plainly contra-dictory and while the quality of the solutionrises and falls with S, it is far from trivial togenerate a favorable collection of such mis-sions.

We implemented a beam search algorithmto construct the elements of S which wecall single mission beam search: BS. Beamsearch [3], [21] is a tree search algorithmwhich has been established as a helpful build-ing block for solving past GTOCs [14]. Thestrength of beam search is that it allows to in-spect large search spaces created by combi-natorial decisions by ranking partial solutionsand exploring only the most promising further.

By defining a beam width bw, only the bwbest partial solutions are maintained at eachlevel of the tree while all others are pruned.Each of those bw solutions is than expandedto compute multiple possible next steps (e.g.the next transfer to all reachable space de-bris) to generate the next level of the searchtree, which will be pruned down to the high-est ranking bw solutions again. Adjusting thebeam width bw thus allows to balance solutionexploration versus a given computational bud-get. A beam width of bw = 1 correspondsto a greedy search which only picks the op-timal (partial) solution at each step. An un-

limited beam width bw = ∞ corresponds toa breadth-first search that would exhaustivelyexplore all possible combinatorial decisions.

Incremental Searches

Before using the BS to construct S and thussolve the resulting set cover instance, we firstused BS, by comparison, to generate full so-lutions to the simplified problem. Beginningwith the set of 123 debris as target set U , BSis used (starting at a random debris and at theearliest possible epoch) to remove the largestpossible subset S1 of debris. Afterwards, BSis called again on the reduced set of targetsU\S1 to generate S2, starting again from a ran-dom debris and at an epoch accounting for the∆tM gap between missions. This approach isreferred to as incremental BS.

Figure 5 shows the score distribution of var-ious full solutions created by multiple runsof a greedy search (incremental BS with abeam width of 1) and incremental BS witha beam width of 30, denoted by BS30. Thegreedy search produces solutions with JS =19.5(±2.87) on average. Its best solutionscores JS = 15, but only 1 out of 1000 runswas able to discover such a solution. A smallbeam width of 30 is already enough to im-prove the quality: BS30 produces solutionswith JS = 14.5(±1.71). The top solution withJS = 12 appeared only once out of 1000 runs.

Although it is possible to increase the beamwidth further in the hope to find better solu-tions, it comes at a higher computational costand does not address a fundamental flaw of theincremental approach: While more and moredebris getting removed, efficient transfers be-tween the remaining set of debris are becom-ing increasingly difficult to find. This diffi-culty arises because of the ascending nodes

8

Page 9: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

15 16 17 18 19 20 21 22 23 24total numbers of missions

0

50

100

150

200

250

300

350

400

450

12 13 14 15 16 17total numbers of missions

0

50

100

150

200

250

300

350

400

450

Figure 5: Score JS (total numbers of missions) achieved by 1000 different runs of (left) incre-mental greedy search and (right) incremental BS with bw = 30.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24number of mission

02468

1012141618202224

num

ber o

f rem

oved

deb

ris

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17number of mission

02468

1012141618202224

num

ber o

f rem

oved

deb

ris

Figure 6: Number of debris removed per mission in 1000 different runs of (left) incrementalgreedy search and (right) incremental BS with bw = 30. The black crosses mark the biggestpositive outliers, i.e. a trajectory that would be most likely part of the final solution.

movement. Consequently, removing debriswithout a look-ahead strategy or some globalperspective leaves debris clouds with evenlydistributed RAANs, resulting in the average∆V cost per transfer to increase tremendously.

Figure 6 shows the number of debris re-moved per successive mission in 1000 runs ofthe incremental greedy search and the incre-mental BS30. It is clear to see how the averagelength of the removal sequences decreases asthe debris cloud becomes thinner. Note howthis is the result of the search algorithm used,not a fundamental property of the problem so-lution. The globally optimal solution is, in-stead, expected to have no correlation betweenlaunch date and number of debris removed per

mission.

Set Cover Beam Search

The issue of the thin debris cloud disappearsif we take the set cover approach and thus usebeam search no longer incrementally, but al-ways on the complete debris cloud to gener-ate a potentially overlapping and conflictingset of mission candidates S. We grid the re-maining time window for missions at b differ-ent time epochs and run, starting at each ofthose epochs, BS for each of the 123 startingdebris, returning the k best trajectories to geta high quality sample of possible trajectories.This results in 123 · b · k missions constituting

9

Page 10: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

our collection S which is subsequently used tocreate a disjoint set cover problem instance.

Once we have the set cover instance, anILP-solver can be applied to determine theoptimal solution by selecting non-conflictingmissions with disjoint removal sequences.However, our first attempts to solve the com-plete problem via this approach failed due tothe large problem dimension which was un-suitable for the ILP solver we used: SCIP [9].Thus, it was necessary to create instances ofset cover which were still solvable in practice.

The Hybrid Strategy

Since the issue of thin debris clouds becomesonly critical at the late stages of the incremen-tal searches, we opted for a hybrid strategy ap-plying first an incremental BS to reduce thesize of the debris cloud and, finally, solvingthe remaining, lower dimensional disjoint setcover problem. In particular, we find the first4 missions by incremental BS with a beamwidth of bw = 100, removing 21, 19, 20 andfinally 11 debris. This leaves 52 debris to beremoved and reduces the available time win-dow by 1533 days (accounting for the ∆TMtime gap between missions). We divided theremaining time window equally into b = 300epochs (which is roughly one new missioneach 7 [days]) and started BS from each ofthese epochs and for each of the remaining de-bris as a start debris, returning the k = 2 bestmissions out of each run. Consequently, weconsidered 31200 missions, and thus an S with31200 subsets defining the disjoint set coverproblem.

To ensure a feasible final solution, we haveto account for mission conflicts (i.e. missionsthat overlap in their time of flight or violate the∆tM time gap). The direct way to approach

this is to introduce one constraint for each pair(xi, xj) of possible (conflicting) missions, al-lowing at most one of them to be selected(xi + xj ≤ 1). Given the large amount of setscreated, we quickly realized that constructingthis amount of constraints makes our set coverinstances intractable. Thus, we had to relaxour constraints as followed: once again, wedivided the remaining time window, but thistime equally in c epochs t∗1, . . . , t

∗c . For any

epoch t, let E(t) ⊆ S be the collection ofsubsets from S whose corresponding missiontakes place at t (accounting for the ∆tM timegap in between missions as well). Then, wecan substitute the pairwise intermission con-straints by a constant number of c constraints:∑

j:Sj∈E(t∗i )

xj ≤ 1 ∀i ∈ 1, . . . , c

As a consequence of these new constraints,we might find invalid solutions, i.e. missionswhich overlap at epochs in between those se-lected c epochs. However, increasing c al-lows to minimize the amount of possible over-lap while balancing the feasibility of the setcover instance by keeping the number of con-straints low. We decided to set c to 200, whichrestricted the maximum possible overlap formission times to roughly 10 [days]. As it turnsout, the trajectories found by BS are most ofthe time stable enough to be moved a few daysto the past or the future without compromisingthe set of removed debris. Thus, a violation ofthese new and softer constraints was (most ofthe time) repairable by some simple post pro-cessing of the selected trajectories.

To summarize, our hybrid strategy con-structs a set cover instance of 31200 vari-ables and 252 constraints. To solve thisinstance, we used a non-commercial solver

10

Page 11: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

named SCIP [9]. SCIP deploys pre-solvingtechniques by default before it tries to find theoptimal solution for the LP relaxation. Thispre-solving step simplified the instance to con-tain only 11355 variables and 233 constraints.

SCIP returned a solution corresponding toan ensemble of 11 missions when tasked withthe disjoint set cover variant of the problem,which is already a slight improvement to theresults obtained by incremental BS. However,after softening the problem to a basic set coverproblem, a solution of only 10 missions wasgenerated. There were only 4 debris removedmultiple times within those missions. Threeout of these defects could be repaired by sim-ply dropping the last leg of a mission, as theywere (coincidentally) removed as last debris.Only one debris was part of the middle legsof two missions. By exchanging one deorbit-ing of this debris by a deep space maneuverand applying some manual adjustments, thisdefect could be repaired as well. Additionally,due to the softer constraints, some missions inthe solution generated were still conflicting asthey had a gap ∆tM smaller than 30 [days].After these conflicts were repaired by movingthe conflicting missions a few days apart whilemaintaining their removal sequences, it was fi-nally possible to obtain a valid solution remov-ing all 123 debris with only 10 missions. Thenumber of removed debris for those missionswas 21, 19, 20, 11, 11, 8, 7, 10, 7 and 9 debrisat last, which shows that the thin debris cloudproblem was successfully mitigated followingthis approach.

Figure 7 shows a visualization of the hybridstrategy and the resulting full solution. Thegridded search that was used to create the setsfor each remaining debris at nearby epochs isvisible as the black area at the upper right cor-ner.

An additional trick that was deployed to al-low for better solutions was to have the lastdebris of some of the fixed 4 missions be vari-able. For example, if the last leg of the firstmission could go to two possible debris, a orb, we saved two versions of this mission, onewith the last leg to a and one to b. How-ever, we left a and b as valid targets for latersearches, artificially increasing the density ofthe remaining debris cloud. The sets of allpossible combinations of those optional debriswere used in the set cover problem as specialvariables, which could be picked without in-creasing the objective function while we stillaccounted for overlapping missions. The iso-lated horizontal lines of dots visible in Fig-ure 7 show these debris, which were still partof the search in the set cover stage of our hy-brid strategy, but were selected by the solverto be removed as part of the earlier missions.

Lesson LearnedThe dry-run provided us the necessary feed-back in terms of problem complexity and suit-ability for a GTOC to realize a number of im-portant properties on the problem and its po-tential solutions. Firstly, we had reasons to be-lieve that most solutions would be compressedin the JS = 9− 11 area which would then re-sult in assigning the victory to the team sub-mitting that score the earliest. We also did notwant the final competition days to be spent toimprove some top solution from (say) 9 to 8.So we decided to add the quadratic term (α >0) to the objective function and thus intro-duced an interesting trade-off between heavyand light spacecraft and, at the same time,have the score not directly linked to the num-ber of submitted missions. We liked the ideathat solutions with more missions could poten-

11

Page 12: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

Figure 7: Visualization of the full solution found by the hybrid strategy together with all possi-ble debris removals generated for its construction. Vertical axis: id of removed debris, orderedin sequence of removal by the found solution. Horizontal axis: epoch in MJD. Each black dotmarks the epoch of a possible removal of the corresponding debris as returned in one the runsof BS. Each colored line corresponds to one mission of the full solution. The first four missions(lower left corner) are found by incremental BS, picking the missions with the longest removalsequences out of 1000 runs. The remaining 6 missions were selected by solving the set coverproblem. The set of possible missions S was built considering only the remaining debris.

12

Page 13: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

tially score better than solutions with less mis-sions.

A second change we made to the problemwas to create a debris cloud with a larger av-erage ∆V per transfer between debris pairs.This was done by enlarging the spread of in-clinations, semi-major axes and eccentricities.We tried to tune this change such that it wouldbe difficult to find a solution shorter than 12missions while obtaining a good score.3 Thenumber of debris M = 123, proved of suf-ficient complexity, since exhaustive searchesin the trajectory space were infeasible and theproblem needed to be reduced in size beforeglobal solvers like SCIP could be applied todirectly find solutions. Since our set-cover so-lution was taking 7.57 years to remove all de-bris, we now could also decide on the windowsfor the entire removal sequence and fixed it to8 years. Finally, we choose the values for cm,cM and α so that the total cost increase duringthe competition of a solution with 12 missionswould roughly cover the cost of one launchof a heavy spacecraft, i.e. ≈ 110MEUR. Bydoing so, we ensured that a team submittingits solution on the last day and cutting downthe number of missions by one, while approx-imately keeping the same overall ∆V needs,would likely win over an early submission.

5 A real-time competition

One of the defining aspects of our challengewas certainly the on-line submission system,used for the first time for a GTOC event, whichallowed for a very different (and hopefully en-joyable) experience. We had this idea in mind

3A hint for this could be found in the competitionsubtext: Can you do it in less than 12 parsec?

from the very beginning, as well as the aware-ness of the challenges and risks that codingan automated validation system brings forth inthe field of optimal control and trajectory opti-mization. Fortunately we are also the creatorsand maintainers of the Kelvins on-line plat-form [7] which was created with the intend tohost both data-mining competitions (for whichthe verification is a more standardized task)and algorithmic competitions (for which theverification has to planned case-by-case).

At the very beginning, we looked into au-tomated validation of low-thrust trajectories,only to realize that we could not develop codereliably validating trajectories without mak-ing use of a detailed thrust profile (result-ing in large files), or introducing tolerancesthat would be deemed as unacceptable. For-tunately the challenge we had in mind forGTOC9 was suitable also for a spacecraftpowered by chemical propulsion and we thusdecided to delay our study on automated vali-dation of low-thrust trajectories and set-up theproblem around that type of spacecraft.

A real-time competition set-up offers alsonew opportunities for the problem itself.While we were rather “conservative” in ourfinal choice, we discussed the possibility ofintroducing a game theoretical aspect in thecompetition with teams having the possibilityto influence past and future decisions of otherteams (think for example of set-ups where thedebris population is shared and needs to becollectively cleaned, etc.), or to go against spe-cific teams at the cost of losing resources, thuscreating the possibility of team coalitions, etc.Since possible team interactions were some-what hard to predict, we were afraid that thesedynamics could negatively impact the experi-ence of some participants. Moreover, mak-ing the objective function dependant on the

13

Page 14: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

decision of all participating teams rather thanhaving it fixed for each team would make ithard to study the problem in isolation. Asa consequence, we refrained from this idea,but allowed for teams to get an early sub-mission bonus and access to a leader-board.The leader-board provided real-time informa-tion on the current ranking of all teams and,perhaps even more importantly, reliable in-formation about possible values of the objec-tive function and the number of submissionsthat were used to obtain it. It turned out thatour decisions on cm and cM were not game-breaking but just enough to motivate the teamsto keep their trajectories updated and visible toall, creating an engaging race throughout thewhole month of the competition.

6 Concluding remarks

The 9th edition of the Global Trajectory Opti-mization Competition turned out to be a greatsuccess, mostly thanks to the many teams whoregistered and worked hard on the challengewe created. Designing such a problem andmaking sure that our on-line submission sys-tem would be prepared for it, was a challengewe faced with great enthusiasm. We hope thatthe lessons we learned as organizers will be ofuse to future similar endeavours.

Looking back at our initial objectives, webelieve we managed to achieve most of themsatisfactorily and to provide the communitywith a new, complex and relevant benchmarkin the field of interplanetary trajectory opti-mization.

Acknowledgements

Several people were involved in a preliminarybrainstorming about the problem and in thelater testing of the Kelvins web site and sub-mission workflow. They actively and passion-ately proposed ideas and modifications whichhelped greatly, some of which found their wayin the final problem set-up. We thank LuısF. Simoes, Diego Escorial Olmos, Chit HongYam, Stefano Campagnola, Alessio Meretaand Martin Nisser. Stefano Campagnola, nowworking at JPL, participated only in very pre-liminary discussions and later we agreed (withgreat sadness) to exclude him as to avoid therisk of unintentional leaks to possible partici-pants.

A Dynamics

Equations of Motion

Each spacecraft dynamics is described, be-tween two manoeuvres, by the following setof Ordinary Differential Equations (ODEs):

x = −µxr3

1 + 3

2J2( reqr

)2 (1− 5 z

2

r2

)y = −µy

r3

1 + 3

2J2( reqr

)2 (1− 5 z

2

r2

)z = −µz

r3

1 + 3

2J2( reqr

)2 (3− 5 z

2

r2

)that describe a Keplerian motion perturbed bymain effects of an oblate Earth, i.e. J2. Notethat between an arrival and a departure eventthe spacecraft is co-orbiting with the debrispiece and hence its position and velocity isnot described by the above equations, but co-incides with the debris’ orbit.

14

Page 15: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

Debris EphemeridesEach debris orbit is defined by the valuest0, a, e, i,Ω0, ω0,M0 as read from the file dis-tributed on the competition starting day (allfiles can be downloaded from the official por-tal [6]). At any given epoch t the position andvelocity vectors of each debris piece must becomputed by updating its osculating Keplerianelements using the mean motion and the pre-cession rates and then converting, as in the Ke-plerian case, the updated osculating elementsto position and velocity. Note that by doing sowe are neglecting the velocity component de-riving from Ω and ω, for the purpose of thiscompetition this is deemed as appropriate as itremoves complexity from the equations with-out introducing any significant change on thesearch space landscape.

The procedure detailed below (assumesconsistent units everywhere) shows all neces-sary equations.

1 - Computation of the Osculating Keple-rian Parameters

After having defined the mean motion n =õa3

, the semilatus rectum p = a(1− e2) andthe precession rates:

Ω = −3

2J2

(reqp

)2

n cos i

ω =3

4J2

(reqp

)2

n(5 cos2 i− 1)

compute the right ascension of the ascendingnode Ω from:

Ω− Ω0 = Ω(t− t0),

the argument of perigee ω from:

ω − ω0 = ω(t− t0),

and the mean anomaly from:

M −M0 = n(t− t0)

2 - Computation of Position and Velocity asin the Keplerian Case

The Kepler’s equation is used to compute theeccentric anomaly E from the mean anomaly:

E − e sinE = M

while the true anomaly θ can be obtained fromthe relation:

tanE

2=

√1− e1 + e

tanθ

2,

compute the flight path angle γ from:

tan γ =e sin θ

1 + e cos θ,

the norm of the radius vector from:

r =a(1− e2)1 + e cos θ

,

and the velocity norm from:

v =

√2µ

r− µ

a.

The Cartesian coordinates of the positionvector r and velocity vector v can then becomputed from:

15

Page 16: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

x = r[cos(θ + ω) cos Ω−

− sin(θ + ω) cos i sin Ω]

y = r[cos(θ + ω) sin Ω+

+ sin(θ + ω) cos i cos Ω]

z = r[sin(θ + ω) sin i]

vx = v[− sin(θ + ω − γ) cos Ω−

− cos(θ + ω − γ) cos i sin Ω]

vy = v[− sin(θ + ω − γ) sin Ω+

+ cos(θ + ω − γ) cos i cos Ω]

vz = v[cos(θ + ω − γ) sin i]

B The Set Cover ProblemThe set cover problem (sometimes denoted asset covering problem) was one of the original21 NP-complete problems proposed in thelandmark paper4 of Richard Karp [15]. It is adecision problem which asks, whether a set ofelements can be “covered” by selecting k sub-sets of those elements out of given collectionof those subsets. Formally, let the universeU = 1, 2, . . . , n be a set of n elements, k

4Richard Karp introduced the concept of poly-nomial reducibility into the newly developing fieldof computational complexity theory. Thanks to thismethodology, NP-completeness of thousands of prob-lems have been proven. Richard Karp received the high-est award in computer science, the Turing Award, 1985for his contributions to the theory NP-completeness.

be an integer and S = S1, S2, . . . , Sm a col-lection of subsets Si ⊆ U for i = 1, . . . ,m,m > k. The set cover problem is to decide,whether there is a sub-collection C ⊆ S of sizek such that the universeU can be written as theunion of all sets in C :

U =⋃S∈C

S.

In its optimization variant, the set cover prob-lem is asking for the smallest number kto cover U completely. Karp showed bypolynomial-time reduction from the k-Cliqueproblem that there cannot be a polynomialtime algorithm for solving the set cover prob-lem if NP 6= P , an unproven conjectureof long history in mathematics [1]. Giventhe common belief that this conjecture holds,solving large instances of the set cover prob-lem with the means of nowadays computa-tional power can be regarded as extremelytime-consuming up to the point of intractabil-ity. This does not rule out the possibility,that special cases of the problem may be solv-able, though set cover showed itself as a par-ticularly difficult problem among the NP-complete problems we know about. Underthe assumption that NP 6= P , there existsno constant factor approximation of k for theset cover problem. In fact, it has been shownthat approximating set cover within a factor of(1 − α) lnn for arbitrarily small α > 0 is al-ready NP-hard [17].

The best known (polynomial) approxima-tion algorithm for the problem is a greedy al-gorithm, which iteratively selects the subset Sithat covers the maximum of still uncovered el-ements of U . Despite its simplicity, it can beshown that this algorithm achieves an “opti-mal” approximation with respect to the giveninapproximability results [8].

16

Page 17: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

Integer Linear Programming For-mulationThe set cover problem can be reformulated asthe following integer linear program (ILP):

minm∑i

xi

subject to: xi ∈ 0, 1 ∀i = 1, . . . ,m∑j:v∈Sj

xj ≥ 1 ∀v ∈ U

Each variable xi corresponds to the subsetSi being selected or not. The first constraintensures xi to be binary, while the second con-straint ensures that each element from U iscovered by at least one subset Si. If we mod-ify this constraint to∑

j:v∈Sj

xj = 1 ∀v ∈ U

we enforce each element of U to be coveredexactly once. This variant is called the disjointset cover problem, since it demands that thesolution sets are mutually disjoint.

References[1] Scott Aaronson. P=?NP. In Open

Problems in Mathematics, pages 1–122.Springer, 2016.

[2] Brent W Barbee, Salvatore Alfano,Elfego Pinon, Kenn Gold, and DavidGaylor. Design of spacecraft missionsto remove multiple orbital debris objects.

In Aerospace Conference, 2011 IEEE,pages 1–14. IEEE, 2011.

[3] Roberto Bisiani. Beam search. Ency-clopedia of Artificial Intelligence, 2(5),1987.

[4] Vitali Braun, A Lupken, S Flegel, J Gel-haus, M Mockel, C Kebschull, C Wiede-mann, and P Vorsmann. Active debrisremoval of multiple priority targets. Ad-vances in Space Research, 51(9):1638–1648, 2013.

[5] Max Cerf. Multiple Space DebrisCollecting Mission-Debris Selection andTrajectory Optimization. Journal ofOptimization Theory and Applications,156(3):761–796, 2013.

[6] ESA. The GTOC portal. https://sophia.estec.esa.int/gtoc_portal/. Accessed: 2017-05-01.

[7] ESA. Kelvins - ESA’s advanced con-cepts competition website. https://kelvins.esa.int. Accessed: 2017-05-01.

[8] Uriel Feige. A threshold of ln n for ap-proximating set cover. Journal of theACM (JACM), 45(4):634–652, 1998.

[9] Gerald Gamrath, Tobias Fischer, Tris-tan Gally, Ambros M. Gleixner, Gre-gor Hendel, Thorsten Koch, Stephen J.Maher, Matthias Miltenberger, Ben-jamin Muller, Marc E. Pfetsch, Chris-tian Puchert, Daniel Rehfeldt, Sebas-tian Schenker, Robert Schwarz, Fe-lipe Serrano, Yuji Shinano, StefanVigerske, Dieter Weninger, Michael

17

Page 18: The Kessler Run: On the Design of the GTOC9 Challengesophia.estec.esa.int/gtoc_portal/wp-content/uploads/2017/05/gtoc9_act.pdf · synchronous LEO environment was severely compromised

Winkler, Jonas T. Witt, and JakobWitzig. The SCIP optimization suite 3.2.Technical Report 15-60, ZIB, Takustr.7,14195 Berlin, 2016.

[10] Dario Izzo. 1st ACT global trajectoryoptimisation competition: Problem de-scription and summary of the results.Acta Astronautica, 61(9):731–734, 2007.

[11] Dario Izzo. Problem description forthe 9th Global Trajectory OptimisationCompetition, May 2017.

[12] Dario Izzo, Ingmar Getzner, DanielHennes, and Luıs F. Simoes. Evolvingsolutions to TSP variants for active spacedebris removal. In Proceedings of the2015 Annual Conference on Genetic andEvolutionary Computation, pages 1207–1214. ACM, 2015.

[13] Dario Izzo, Daniel Hennes, MarcusMartens, Ingmar Getzner, KrzysztofNowak, Anna Heffernan, Stefano Cam-pagnola, Chit Hong Yam, Naoya Ozaki,and Yoshihide Sugimoto. GTOC8: Re-sults and methods of ESA advanced con-cepts team and JAXA-ISAS. AAS 16-275, presented at the 26th AAS/AIAASpace Flight Mechanics Meeting, Napa,CA, arXiv preprint arXiv:1602.00849,2016.

[14] Dario Izzo, Daniel Hennes, Luıs F.Simoes, and Marcus Martens. Designingcomplex interplanetary trajectories forthe global trajectory optimization com-petitions. In Space Engineering, pages151–176. Springer, 2016.

[15] Richard M Karp. Reducibility amongcombinatorial problems. In Complex-

ity of computer computations, pages 85–103. Springer, 1972.

[16] Donald J Kessler and Burton G Cour-Palais. Collision frequency of artifi-cial satellites: The creation of a de-bris belt. Journal of Geophysical Re-search: Space Physics (1978–2012),83(A6):2637–2646, 1978.

[17] Dana Moshkovitz. The projection gamesconjecture and the NP-Hardness of lnn-approximating set-cover. Theory ofComputing, 11(7):221–235, 2015.

[18] JT Olympio and N Frouvelle. Spacedebris selection and optimal guidancefor removal in the SSO with low-thrustpropulsion. Acta Astronautica, 99:263–275, 2014.

[19] Anastassios E. Petropoulos. GTOC8:Problem description and summary of theresults. Paper AAS 16-501, presentedat the 26th AAS/AIAA Space Flight Me-chanics Meeting, Napa, CA, 2016.

[20] Star Wars. Episode IV - A New Hope.Dir. George Lucas. Twentieth CenturyFox Film Corporation, 1977.

[21] Christopher Makoto Wilt, Jordan TylerThayer, and Wheeler Ruml. A com-parison of greedy search algorithms. Inthird annual symposium on combinato-rial search, pages 129–136, 2010.

18