Asteroid selection and preliminary trajectory …Asteroid selection and preliminary trajectory...
Transcript of Asteroid selection and preliminary trajectory …Asteroid selection and preliminary trajectory...
Asteroid selection and preliminarytrajectory optimisation in multiple asteroid
rendezvous missionsMarco del Rey Zapatero, Dario Izzo, Tamas Vinko and Claudio Bombardelli,
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
Contents
What went terribly wrong?
The multiple asteroid rendezvous problem
Building an upper bound
Objective function evaluationchemical propulsion
low-thrust propulsion
Results on the GTOC3 data set
2
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
First hour of the competition....
3
a e i ! !
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 4
The multiple asteroid rendezvous problem
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
We consider sets each containing planets/asteroids / comets
We introduce the multiple asteroid rendezvous problem as the problem of selecting one asteroid from each group, one permutation of (the visit order), and the fly-by strategies , so that a set of constraints on on and are satisfied and some objective function is maximized
Dawn, Don Quijote, Marco Polo, GTOC2 and GTOC3 can be all considered as particular instances of this problem
Problem definition
5
n Ni
Ai ! Ai
{0, 1..., n! 1}s
sAivj
vj JN (Ai, s,vj)n! 1
Ai
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
Given the asteroid , the permutation and the fly-by strategy , the objective function is the global optima of a trajectory problem.
As soon as the number of asteroids or groups increase, and the allowed fly-bys are numerous, the problem complexity soon becomes computationally intractable.
The problem, overall, is a mixed integer programming problem, where discrete variables (the asteroid choice, the possible fly-bys) are mixed together with continuous variables (launch date, thrust magnitude and direction, etc.)
The objective function
6
Ai svj JN (Ai, s,vj)
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
In general:
The objective function
7
JN (Ai, s,vj) = max:!n!1
i=0 m̃i(xi) + Jb(x)subject to: g(xi) <= 0, single phase const.
f(x) <= 0,multi-phase const.
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
The objective function
8
The following holds:
where,
max: m̃i(xi)subject to: g(xi) <= 0, single phase const.
ji(As(i), As(i+1),vi) =
JN (Ai, s,vj) <= JN (Ai,vj) =n!1!
i=0
ji(As(i), As(i+1),vi) + Jb
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 9
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 10
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 11
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 12
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 13
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 14
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 15
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 16
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 17
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 18
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 < B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 19
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 < B j0j1..jn!1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 20
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 < B j0j1..jn!1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 21
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 < B j0j1..jn!1 > B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 22
The Branch and Prune algorithmAs(0)
v0 v1
As(1) As(2) As(n)
vn!1
j0 < B j0j1 < B j0j1..jn!1 < B
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 23
Objective function evaluation
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 24
Chemical propulsion
The overall problem dimension is given by: if we let maximum one DSM for each leg
find: x = [x1,x2, ...,xn!1] ! IN1N2...Nn!1
to maximize: mn/m0
subject to: rip >= ri
pmin
time const.
n!1!
i=0
[6 + 4fbi]
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 25
Low-thrust propulsionIn direct methods the Optimal Control Problem is transcribed into an Non Linear Programming Problem
Whenever numerical derivatives need to be computed numerical precision is lost, convergence is slow and the algorithm convergence radius is small
Automated differentiation (e.g. based on differential algebra techniques) dramatically improves the performance.
Modeling languages such as AMPL offer the possibility of interfacing to most of the state-of the art NLP solvers using automated differentiation
KNITRO, CONOPT, LANCELOT, SNOPT, DONLP2, IPOPT can all be used by just changing one line of code and they all get fed by AMPL with precise derivative information
For single phase transfers and transfer with one fly-by the problem is solved within a few seconds (also when it implies two or three revolutions), a precision of 1 km on the position 0.0001 km/sec on the velocity and 0.002 on the mass fraction, reducing at the same time the sensitivity to the initial guess
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 26
Example (no fly-by)
Computational time:
N = 15, 1000 iter4 sec
N = 60, 1000 iter35 sec
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 27
Example (one fly-by)
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
The GTOC3 case
28
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 29
We consider 5 sets:
The restriction on the permutation can be set as:
We can force:
Restrictions in the asteroid choice can be set as:
A0 = A4 = {Earth}A1 = A2 = A3 = {Ast1, Ast2...Ast140}
s(0) = 1, s(4) = 4
s = {0, 1, 2, 3, 4}
A1 != A2 != A3
Definition of the problem
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 30
We still have to define the flyby strategies
For a direct transfer from to we will have
For a transfer involving a flyby to Earth while going from to , we will agree that
Example
vj = 0Aj Aj+1
Aj Aj+1
vj = {0, 1, 1, 0}Ai = {Earth, 34, 75, 68,Earth}
vj = 1
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
In the case of GTOC3 (Chemical version):
The objective function
31
JN (Ai,vj) =
Jb(x) = 0.2min !i
10 years
max:!3
i=0 m̃i(xi) + Jb(x)
subject to: rendezvous const.!i > 60Timelength < 10 years
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
We try to get the expression:
How can we find the bound for and the functions ?A mathematical bound for is This bound is too big for our purposes (as we will see later)A tighter value, that applies to trajectories with a moderate propellant consumption (high values for the mass fraction), has been set to be 0.0219 (400 days).
The objective function
32
JbJb 0.2/3 = 0.067
ji
JN (Ai,vj) <= JN (Ai,vj) =3!
i=0
ji(Ai, Ai+1,vi) + Jb
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
The solution to this problem is an upper bound and actually we can drop the i, and let it just be
33
No fly-by strategy
We may calculate an upper-bound by finding the global optima of a deep space maneuver transfer between the asteroids:
! mfinal
minitial
"
i
find: xi ! I6
to maximize:
xi = [t, V!, u, v, T, !]
ji
j
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 34
Earth fly-by strategyIn the case an Earth fly-by is considered, we may find the bound by optimising a deep space maneuver transfer between the asteroid with the fly-by included
! mfinal
minitial
"
i
xi = [t, V!, u, v, T1, !1, bincl, rp, T2, !2]
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 35
Solving global optimisation problemsA large number of optimisation problems need thus to be solved to find the bounds and thus run the branch and prune
ACT DIstributed Global Multi-objective Optimiser (DiGMO) is able to solve efficiently global optimisation problems with a high reliability when a small number of legs is considered
DiGMO uses different population based heuristics (DE, PSO, SA, MC, GA, ACO) cooperatively to solve the same global optimisation problem in a distributed computing environment. The algorithm scales linearly with the number of computer used
The algorithms cooperation create a global optimiser with increased performances and reliability
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 36
Particle Swarm Optimisation
Evolutionary Algorithms
Simulated Annealing
Ant Colony Optimisation
Monte Carlo Search
DiGMO
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 37
20 40 60 80 100 120 140
20
40
60
80
100
120
140
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 38
20 40 60 80 100 120 140
20
40
60
80
100
120
140
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
j(Ai, Ai+1, 1)
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 39
JN (Ai,vj) =3!
i=0
j(Ai, Ai+1,vi) + Jb
So we execute the branch and prune algorithm. And we calculate the expression:
Breaking out if the j product overpasses a certain value B
This way with a value of B=0.8221 we remain with 2000 possible sequences.
We can guarantee (in the chemical version of the problem) that all sequences with a performance index above 0.8221+0.0219 = 0.8440 are included within those 2000.
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 40
200 400 600 800 1000 1200 1400 1600 1800 20000.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
Branch and Bound Rank
J
Without bonus With bonus Upper bound
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 42
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
The low-thrust (real) GTOC3
43
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
We have solved a chemical version of the problem.To solve the low thrust problem we take a big leap by assuming that the best sequences for it, will be the best ones already found to be the best in the chemical model. Now what remains is to obtain an “low thrust” version of those trajectories. To do so, we could think of feeding the chemical solution as an initial guess for a local optimizer.Too complex: it does not usually lead to a good solution, and many times the procedure leads to non convergence.
The low thrust problem
44
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008
The low thrust problem - Simplification
45
Given a sequence we treat each leg independentlyWe cannot do so rigorously: mass connects different legs.For good trajectories final mass is just 20 % less.But... We cannot trust that a low thrust solution coming from just optimizing locally the legs, is going to be optimal. Actually it may even be unfeasible (due to violation of multiphase constraints)
So we decided to produce lots of solutions for each particular leg, and then try to patch them together.To produce those solutions we took from the chemical model guesses for the departure, arrival and flyby times.
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 46
Example
Tdeparture
Leg with flyby
TFlight1
TFlight2
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 47
Leg with flyby
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 48
Leg with flyby
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 49
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 50
The red dots correspond to low thrust optimal solutions for one leg which will be stored.
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 51
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B1
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 52
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B1
YES!
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 53
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B2
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 54
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B2
NO!
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 55
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B2
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 56
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B2
YES!
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 57
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B3
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 58
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B3
YES!
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 59
The Branch and Prune algorithm1st leg 2nd leg 3rd leg 4th leg
Verifies the constraints?mf/mi > B3
YES! Evaluate and store valueof final objective function J!
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 60
The results
We tried this idea with the first 20 peaks. For each time value produced by the chemical model T, we generated a grid t={ T +50k, k=-9 , -8, ... 9 }We softened, in a first analysis, the time constraints to avoid problems coming small patching WT = 40 days, Total Timelength = 10 years + 40 days
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 61
Peaks
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 62
The results
For the best two peaks, we performed several more iterations of the procedure by refining the grid and setting the real time constraints. When the size of each cell was less than 5 days we stopped.
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 63
The results: E-E-49-E-37-85-E-E
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 64
First leg E-E-49-E-37-85-E-E
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 65
Second leg E-E-49-E-37-85-E-E
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 66
Third leg E-E-49-E-37-85-E-E
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 67
Fourth leg E-E-49-E-37-85-E-E
ADVANCED CONCEPTS TEAM
Asteroid selection and preliminary trajectory optimisation in multiple asteroid rendezvous missions, GTOC3 workshop Turin, 2008 68
The results: E-49-E-37-85-E-E