3nd Global Trajectory Optimization Competition Workshop Team 9 F. Jiang, Y. Li, K. Zhu, S. Gong, H. Baoyin, J. Li, etc. School of Aerospace Tsinghua University Beijing, China GTOC3 Workshop Torino, Italy, June 27, 2008 Outline Team Composition Problem Summary Technical Approach Sequence Selection Global Optimization Local Optimization Solution Conclusions Team 9 2 GTOC3 Workshop Torino, Italy, June 27, 2008 Team Composition The Team: Comes from the Institute of Dynamics and Control, School of Aerospace, Tsinghua University, China. Members: One professor, one associate professor, three Ph.D. Candidates, and some Master Candidates Main Competence Areas: Liquid sloshing in spacecraft container, deep space exploration, spacecraft formation flying A team not professional in optimization, though have participated to all three GTOCs. (11-th in GTOC1, 10-th in GTOC2, and 11th in GTOC3) Team 9 3 GTOC3 Workshop Torino, Italy, June 27, 2008 Problem Summary Maximum excess velocity 0.5 km/s Year of launch 2016-2025 Minimum stay time 60 d Maximum flight time 10 y Initial mass 2000 kg Specific impulse 3000 s Maximum thrust 0.15 N Position and velocity constraints 1000 km, 1 m/s Objective function: J mf mi K m in j 1,3 j m ax Where mi and mf are the initial and final mass, respectively; K=0.2; max =10; j is the stay-time at the j-th asteroid. Team 9 4 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Sequence Selection(1) First: Prune these asteroids (about 2/3) with relatively large orbit inclination or eccentricity in advance. Second: Range the potential sequences on the base of orbit energy differences. (reference:GTOC2 Activities and Results of ESA Advanced Concepts Team) V V1 V 2 r ra 1 V1 V2 V i V f 2V iV f cos i r 2 rp1 2 2 p1 2 rp1 2 2 r Vi 2 ra 2 2 Vf 2 ra 2 1 a 2 p1 r p1 ra 2 V2 ra 2 cos ir cos i1 cos i 2 sin i1 sin i 2 cos 2 1 V1 Team 9 5 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Sequence Selection(2) Third: Range the potential sequences on the base of orbit phase differences. i i M i j j M j Orbit angular velocity difference n n j ni Asteroid i Initial phase difference, relative to Jan 1, 2016 Synodic time s a j s k 2k 3 s ai 3 Asteroid j Sun n , k 0,1, 2, Asteroid i moves faster than asteroid j by (i, j) degrees per year, while its initial phase lags that of asteroid j by (j, i) degrees. Team 9 6 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Sequence Selection(3) Synodic times (ST) of potential sequences Expected sequence: S T E A 1 0 ,1 0 , S T A 3 E 2 0, S T A 3 E -S T E A 1 1 0 ; STA1 A2 -STE A1 , STA2 A3 -STA1 A2 , ST A3 E -ST A2 A3 are all about 3 years Actual sequence: By computing the synodic times of potential sequences, no one satisfies absolutely. We select some sequences with a little inconsistent synodic times, such as 88-7649. Team 9 7 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach(1) Astrodynamic model: equinoctial elements Accommodate all possible conic orbits except i=180°. Conversion from classical orbit elements: p a 1 e 2 , f e cos , g e sin h tan i 2 cos , k tan i 2 sin , L Motion equation: p , f , g , h , k , L function p , f , g , h , k , L , T , T , T r t n Though more complicated Cartesian quantities, they are more efficient in computing. Team 9 8 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Global Optimization(2) Particle swarm optimization (PSO) A population based stochastic optimization technique developed by Dr. Eberhart and Dr. Kennedy in 1995, inspired by social behavior of bird flocking or fish schooling Formulation Objective function f x f x1 , x 2 , , x D Choose N particles with random initial position xi0 and velocity vi0. The iteration from the G generation to G+1 generation can be presented as G 1 vi G 1 xi if f w v i c1 r1 p i x i G G c r2 g x i G 2 G 1 xi vi G x <f p , p =x G 1 i i i G 1 i ; if f x <f g , g =x G 1 i G 1 i where r1 and r2 are both uniformly distributed random numbers; w, c1 and c2 should be valued case to case. Team 9 9 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Global Optimization(3) Differential evolution (DE) A population based, stochastic function optimization proposed by Price and Storn in 1995 DE/rand/2/exp Mutation: G 1 vi Crossover: u Selection: G 1 i, j G 1 xi = x r 1 F1 x r 2 x r 3 F2 x r 4 x r 5 G G v iG, j 1 , for j n G x i , j , else G D G , n 1 D , G , n L 1 D 1 u iG 1 , if f u iG 1 f x iG G G 1 G x i , if f u i f x i where F1 and F2 are weighing factors in [0, 1]; the integers rk (k=1,…,5) are chosen randomly in [1, N] and should be different from i; Index n is a randomly chosen integer in [1,D]; Integer L is drawn from [1,D] with the probability Pr(L>=m)=(CR)m-1, m>0. CR is the crossover constant in [0,1]; Team 9 10 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Global Optimization(4) Hybrid algorithm (PSODE) of PSO and DE In every 50 iterations, use PSO in the former 36 iterations, and DE in the latter 14 iterations. Population size:400, Iteration times:1000; Weighing factors of DE are both 0.8; Maximum velocity:0.5; Crossover constant:0.618; c1 and c2 of PSO are both 0.5, w 0.94 e N I / 500 ; Optimize one leg by one leg Divide each leg into 10 segments. m f m f t i , t f , T1 , T2 , obj m f h T11 r 6 ch h, h 10 ; v , c h , c 4 2 6 1 Departure time and arrival time are optimized according to synodic time. Team 9 11 GTOC3 Workshop Torino, Italy, June 27, 2008 Technical Approach: Local Optimization(5) The toolbox of Matlab: Pattern search Search around the solution obtained by global optimization to satisfy the constraints on position and velocity. Increase the weight of constraints on position and velocity in objective function. Team 9 12 GTOC3 Workshop Leg 1: From the Earth to A88 Torino, Italy, June 27, 2008 Solution(1) Leg 2: From A88 to A76 Launch date (MJD): 58090.8510 Departure date (MJD): 58704.1343 Launch velocity (km/s): [-0.3378, 0.05498, 0.3645] Stay-time at A88 (JD): 224.9855 Arrival date (MJD): 58479.1488 Arrival date (MJD): 59371.8310 Departure mass (kg): 2000.0000 Departure mass (kg): 1960.6172 Arrival mass (kg): 1960.6172 Arrival mass (kg): 1807.5461 Position error (km): 541.8060 Position error (km): 909.0563 Velocity error (m/s): 0.1578 Velocity error (m/s): 0.1313 Leg 3: From A76 to A49 Leg 4: From A49 to the Earth Departure date (MJD): 59806.8411 Departure date (MJD): 61059.06844 Stay-time at A76 (JD): 435.0101 Stay-time at A49 (JD): 589.0012 Arrival date (MJD): 60470.0672 Arrival date (MJD): 61641.9721 Departure mass (kg): 1807.5461 Departure mass (kg): 1624.7850 Arrival mass (kg): 1624.7850 Arrival mass (kg): 1564.6000 Position error (km): 223.0663 Position error (km): 870.5896 Velocity error (m/s): 0.0822 Velocity error (m/s): 0.9879 Team 9 13 GTOC3 Workshop Torino, Italy, June 27, 2008 Solution(2) J mf mi K m in j 1,3 ( j ) m ax The trajectory from the Earth to asteroid 88 Team 9 1564.60 2000 0.2 224.9855 0.7946 3652.5 The trajectory from asteroid 88 to asteroid 76 14 GTOC3 Workshop Torino, Italy, June 27, 2008 Solution(3) The trajectory from asteroid 76 to asteroid 49 Team 9 The trajectory from asteroid 49 to the Earth 15 GTOC3 Workshop Torino, Italy, June 27, 2008 Conclusions and Remarks Sequence selection based on orbit energy difference and phase difference is available. The hybrid algorithm of particle swarm optimization and differential evolution seems feasible. We obtained only one full solution. It is too few, and lacks of comparison. The result of the winner’s sequence 49-37-85 without using gravity assist is worthy to study. Our team should make great efforts to catch up with top-ranking teams. Up to now, to learn is more than to compete for us. We are trying to develop professional software by FORTRAN, and to be familiar with gravity assist. Wish to do better in the future. Team 9 16 GTOC3 Workshop Torino, Italy, June 27, 2008 Thank you for your attention Team 9 17