Abstract
Direct optimization of many-revolution spacecraft trajectories is performed using an unconstrained formulation with many short-arc, embedded Lambert problems. Each Lambert problem shares its terminal positions with neighboring segments to implicitly enforce position continuity. Use of embedded boundary value problems (EBVPs) is not new to spacecraft trajectory optimization, including extensive use in primer vector theory, flyby tour design, and direct impulsive maneuver optimization. Several obstacles have prevented their use on problems with more than a few dozen segments, including computationally expensive solvers, lack of fast and accurate partial derivatives, unguaranteed convergence, and a non-smooth solution space. Here, these problems are overcome through the use of short-arc segments and a recently developed Lambert solver, complete with the necessary fast and accurate partial derivatives. These short arcs guarantee existence and uniqueness for the Lambert solutions when transfer angles are limited to less than a half revolution. Furthermore, the use of many short segments simultaneously approximates low-thrust and eliminates the need to specify impulsive maneuver quantity or location. For preliminary trajectory optimization, the EBVP technique is simple to implement, benefiting from an unconstrained formulation, the well-known Broyden–Fletcher–Goldfarb–Shanno line search direction, and Cartesian coordinates. Moreover, the technique is naturally parallelizable via the independence of each segment’s EBVP. This new, many-rev EBVP technique is scalable and reliable for trajectories with thousands of segments. Several minimum fuel and energy examples are demonstrated, including a problem with 6143 segments for 256 revolutions, found within 5.5 h on a single processor. Smaller problems with only hundreds of segments take minutes.
Similar content being viewed by others
References
Abdelkhalik, O., Mortari, D.: N-impulse orbit transfer using genetic algorithms. J. Spacecr. Rocket. 44(2), 456–460 (2007). https://doi.org/10.2514/1.24701
Abdelkhalik, O., Taheri, E.: Approximate on-off low-thrust space trajectories using Fourier series. J. Spacecr. Rocket. 49(5), 962–965 (2012). https://doi.org/10.2514/1.A32307
Arora, N., Russell, R.P.: A fast and robust multiple revolution lambert algorithm using a cosine transformation. In: AAS/AIAA Astrodynamics Specialist Conference, AAS 13-728. Springfield, VA (2013)
Arora, N., Russell, R.P., Strange, N., Ottesen, D.: Partial derivatives of the solution to the lambert boundary value problem. J. Guid. Control Dyn. 38(9), 1563–1572 (2015). https://doi.org/10.2514/1.G001030
Ascher, U.M., Mattheij, R.M., Russell, R.D.: Numerical solution of boundary value problems for ordinary differential equations. SIAM (1995). https://doi.org/10.1137/1.9781611971231
Bacon, R.H.: Logarithmic spiral: an ideal trajectory for the interplanetary vehicle with engines of low sustained thrust. Am. J. Phys. 27(3), 164–165 (1959). https://doi.org/10.1119/1.1934788
Balafoutis, C.A.: A survey of efficient computational methods for manipulator inverse dynamics. J. Intell. Rob. Syst. 9(1), 45–71 (1994). https://doi.org/10.1007/BF01258313
Battin, R.H.: Lambert’s problem revisited. AIAA J. 15(5), 707–713 (1977). https://doi.org/10.2514/3.60680
Battin, R.H.: An Introduction to the Mathematics and Methods of Astrodynamics, revised edn. AIAA Education Series. American Institute of Aeronautics and Astronautics, Reston (1999). https://doi.org/10.2514/4.861543
Betts, J.T.: Survey of numerical methods for trajectory optimization. J. Guid. Control Dyn. 21(2), 193–207 (1998). https://doi.org/10.2514/2.4231
Betts, J.T., Huffman, W.P.: Trajectory optimization on a parallel processor. J. Guid. Control Dyn. 14(2), 431–439 (1991). https://doi.org/10.2514/3.20656
Bokelmann, K.A., Russell, R.P.: Optimization of impulsive Europa capture trajectories using primer vector theory. J. Astronaut. Sci. (2019). https://doi.org/10.1007/s40295-018-00146-z
Bonnard, B., Janin, G.: Geometric orbital transfer using averaging techniques. J. Dyn. Control Syst. 14(2), 145–167 (2008). https://doi.org/10.1007/s10883-008-9040-1
Boyarko, G., Romano, M., Yakimenko, O.: Time-optimal reorientation of a spacecraft using an inverse dynamics optimization method. J. Guid. Control Dyn. 34(4), 1197–1208 (2011). https://doi.org/10.2514/1.49449
Broyden, C.G.: The convergence of a class of double-rank minimization algorithms 1. general considerations. IMA J. Appl. Math. 6(1), 76–90 (1970). https://doi.org/10.1093/imamat/6.1.76
Buffington, B.: Trajectory design concept for the proposed europa clipper mission. In: AAS/AIAA Astrodynamics Specialist Conference, 2014-4105. San Diego, CA (2014). https://doi.org/10.2514/6.2014-4105
Buffington, B., Strange, N., Smith, J.: Overview of the cassini extended mission trajectory. In: AAS/AIAA Astrodynamics Specialist Conference and Exhibit, AIAA 2008-6752. Honolulu, Hawaii (2008). https://doi.org/10.2514/6.2008-6752
Byrd, R.H., Nocedal, J., Schnabel, R.B.: Representations of quasi-newton matrices and their use in limited memory methods. Math. Program. 63(1–3), 129–156 (1994). https://doi.org/10.1007/BF01582063
Conway, B.A.: A survey of methods available for the numerical optimization of continuous dynamic systems. J. Optim. Theory Appl. 152(2), 271–306 (2012). https://doi.org/10.1007/s10957-011-9918-z
Dagum, L., Menon, R.: Openmp: an industry standard API for shared-memory programming. Comput. Sci. Eng. IEEE 5(1), 46–55 (1998)
D’Amario, L.A., Bright, L.E., Wolf, A.A.: Galileo trajectory design. Space Sci. Rev. 60(1–4), 23–78 (1992). https://doi.org/10.1007/BF00216849
D’Amario, L.A., Byrnes, D.V., Sackett, L.L., Stanford, R.H.: Optimization of multiple flyby trajectories. Provincetown, MA (1979). https://ntrs.nasa.gov/search.jsp?R=19790063226. Accessed 1 May 2017
D’Amario, L.A., Byrnes, D.V., Stanford, R.H.: A new method for optimizing multiple-flyby trajectories. J. Guid. Control Dyn. 4(5), 591–596 (1981). https://doi.org/10.2514/3.56115
Di Lizia, P., Armellin, R., Lavagna, M.: Application of high order expansions of two-point boundary value problems to astrodynamics. Celest. Mech. Dyn. Astron. 102(4), 355–375 (2008). https://doi.org/10.1007/s10569-008-9170-5
Davis, K.E., Anderson, R.L., Scheeres, D.J., Born, G.H.: Optimal transfers between unstable periodic orbits using invariant manifolds. Celest. Mech. Dyn. Astron. 109(3), 241–264 (2011). https://doi.org/10.1007/s10569-010-9327-x
Fang, Q., Wang, X., Sun, C., Yuan, J.: A shape-based method for continuous low-thrust trajectory design between circular coplanar orbits. Int. J. Aerosp. Eng. (2017). https://doi.org/10.1155/2017/9234905
Fletcher, R.: A new approach to variable metric algorithms. Comput. J. 13(3), 317–322 (1970). https://doi.org/10.1093/comjnl/13.3.317
Fletcher, R., Reeves, C.M.: Function minimization by conjugate gradients. Comput. J. 7(2), 149–154 (1964). https://doi.org/10.1093/comjnl/7.2.149
Furfaro, R., Mortari, D.: Least-squares solution of a class of optimal space guidance problems via theory of connections. Acta Astronaut. 168, 92–103 (2020). https://doi.org/10.1016/j.actaastro.2019.05.050
Gao, Y., Kluever, C.: Low-thrust interplanetary orbit transfers using hybrid trajectory optimization method with multiple shooting. In: AIAA/AAS Astrodynamics Specialist Conference and Exhibit, AIAA 2004-5088. Providence, RI (2004). https://doi.org/10.2514/6.2004-5088
Gao, Y., Kluever, C.: Analytic orbital averaging technique for computing tangential-thrust trajectories. J. Guid. Control Dyn. 28(6), 1320–1323 (2005). https://doi.org/10.2514/1.14698
Geffroy, S., Epenoy, R.: Optimal low-thrust transfers with constraints-generalization of averaging techniques. Acta Astronaut. 41(3), 133–149 (1997). https://doi.org/10.1016/S0094-5765(97)00208-7
Gill, P.E., Murray, W., Saunders, M.A.: Snopt: an sqp algorithm for large-scale constrained optimization. SIAM 47(1), 99–132 (2005). https://doi.org/10.1137/S0036144504446096
Glandorf, D.R.: Lagrange multipliers and the state transition matrix for coasting arcs. AIAA J. 7(2), 363–365 (1969). https://doi.org/10.2514/3.5109
Goldfarb, D.: A family of variable-metric methods derived by variational means. Math. Comput. 24(109), 23–26 (1970). https://doi.org/10.1090/S0025-5718-1970-0258249-6
Gooding, R.H.: A procedure for the solution of Lambert’s orbital boundary-value problem. Celest. Mech. Dyn. Astron. 48, 145–165 (1990). https://doi.org/10.1007/BF00049511
Goodyear, W.H.: Completely general closed-form solution for coordinates and partial derivative of the two-body problem. Astron. J. 70, 189 (1965). https://doi.org/10.1086/109713
Graham, K.F., Rao, A.V.: Minimum-time trajectory optimization of multiple revolution low-thrust earth-orbit transfers. J. Spacecr. Rocket. 52(3), 711–727 (2015). https://doi.org/10.2514/1.A33187
Graham, K.F., Rao, A.V.: Minimum-time trajectory optimization of low-thrust earth-orbit transfers with eclipsing. J. Spacecr. Rocket. 53(2), 289–303 (2016). https://doi.org/10.2514/1.A33416
Haberkorn, T., Martinon, P., Gergaud, J.: Low-thrust minimum-fuel orbital transfer: a homotopic approach. J. Guid. Control Dyn. 27(6), 1046–1060 (2004). https://doi.org/10.2514/1.4022
Hager, W.W., Zhang, H.: A new conjugate gradient method with guaranteed descent and an efficient line search. SIAM J. Optim. 16(1), 170–192 (2005). https://doi.org/10.1137/030601880
Hager, W.W., Zhang, H.: A survey of nonlinear conjugate gradient methods. Pac. J. Optim. 2(1), 35–58 (2006)
Hatten, N., Russell, R.P.: Application of the stark problem to space trajectories with time-varying perturbations. In: AAS/AIAA Astrodynamics Specialist Conference. AAS 14–230, vol. 152, pp. 439–457. Santa Fe, NM (2014)
Hiday-Johnston, L.A., Howell, K.C.: Transfers between libration-point orbits in the elliptic restricted problem. Celest. Mech. Dyn. Astron. 58(4), 317–337 (1994). https://doi.org/10.1007/BF00692008
Izzo, D.: Lambert’s problem for exponential sinusoids. J. Guid. Control Dyn. 29(5), 1242–1245 (2006). https://doi.org/10.2514/1.21796
Izzo, D.: Revisiting Lambert’s problem. Celest. Mech. Dyn. Astron. 121(1), 1–15 (2015). https://doi.org/10.1007/s10569-014-9587-y
Izzo, D., Becerra, V.M., Myatt, D.R., Nasuto, S.J., Bishop, J.M.: Search space pruning and global optimisation of multiple gravity assist spacecraft trajectories. J. Glob. Optim. 38(2), 283–296 (2007). https://doi.org/10.1007/s10898-006-9106-0
Jezewski, D.J.: Primer vector theory and applications. Tech. rep., Technical Report NASA TR R-454, Lyndon B Johnson Space Center, Houston, Texas, 77058 (1975). https://ntrs.nasa.gov/search.jsp?R=19760004112
Jezewski, D.J.: Primer vector theory applied to the linear relative-motion equations. Optim. Control Appl. Methods 1(4), 387–401 (1980). https://doi.org/10.1002/oca.4660010408
Jezewski, D.J., Rozendaal, H.L.: An efficient method for calculating optimal free-space n-impulse trajectories. AIAA J. 6(11), 2160–2165 (1968). https://doi.org/10.2514/3.4949
Jones, B.A., Anderson, R.L.: A survey of symplectic and collocation integration methods for orbit propagation. In: 22nd Annual AAS/AIAA Space Flight Mechanics Meeting, AAS 12-214. Charleston, SC (2012). https://ntrs.nasa.gov/search.jsp?R=20130000293
Kéchichian, J.A.: Optimal low-thrust transfer in general circular orbit using analytic averaging of the system dynamics. J. Astronaut. Sci. 57(1–2), 369–392 (2009). https://doi.org/10.1007/BF03321509
Kohlhase, C.E., Penzo, P.A.: Voyager mission description. Space Sci. Rev. 21(2), 77–101 (1977). https://doi.org/10.1007/BF00200846
Landau, D.: Efficient maneuver placement for automated trajectory design. J. Guid. Control Dyn. 41(7), 1531–1541 (2018). https://doi.org/10.2514/1.G003172
Lantoine, G., Russell, R.P.: A hybrid differential dynamic programming algorithm for constrained optimal control problems. Part 1: Theory. J. Optim. Theory Appl. 154(2), 382–417 (2012). https://doi.org/10.1007/s10957-012-0039-0
Lantoine, G., Russell, R.P.: A hybrid differential dynamic programming algorithm for constrained optimal control problems. Part 2: Application. J. Optim. Theory Appl. 154(2), 418–442 (2012). https://doi.org/10.1007/s10957-012-0038-1
Lawson, C.L., Hanson, R.J., Kincaid, D.R., Krogh, F.T.: Basic linear algebra subprograms for fortran usage. ACM Trans. Math. Softw. 5(3), 308–323 (1979). https://doi.org/10.1145/355841.355847
Lion, P.M., Handelsman, M.: Primer vector on fixed-time impulsive trajectories. AIAA J. 6(1), 127–132 (1968). https://doi.org/10.2514/3.4452
Lu, P.: Inverse dynamics approach to trajectory optimization for an aerospace plane. J. Guid. Control Dyn. 16(4), 726–732 (1993). https://doi.org/10.2514/3.21073
Lynam, A.E.: Broad-search algorithms for the spacecraft trajectory design of Callisto–Ganymede–Io triple flyby sequences from 2024 to 2040, part i: Heuristic pruning of the search space. Acta Astronaut. 94(1), 246–252 (2014). https://doi.org/10.1016/j.actaastro.2013.07.018
Lynam, A.E.: Broad-search algorithms for the spacecraft trajectory design of Callisto–Ganymede–Io triple flyby sequences from 2024 to 2040, part ii: Lambert pathfinding and trajectory solutions. Acta Astronaut. 94(1), 253–261 (2014). https://doi.org/10.1016/j.actaastro.2013.07.020
Marchand, B.G., Howell, K.C., Wilson, R.S.: Improved corrections process for constrained trajectory design in the n-body problem. J. Spacecr. Rocket. 44(4), 884–897 (2007). https://doi.org/10.2514/1.27205
Marec, J.P.: Optimal Space Trajectories, vol. 1. Elsevier, New York (1979)
McAdams, J.V., Dunham, D.W., Farquhar, R.W., Taylor, A.H., Williams, B.G.: Trajectory design and maneuver strategy for the messenger mission to mercury. J. Spacecr. Rocket. 43(5), 1054–1064 (2006). https://doi.org/10.2514/1.18178
Mortari, D.: The theory of connections: connecting points. Mathematics 5(4), 57 (2017). https://doi.org/10.3390/math5040057
NASA Planetary Data System: Cassini–Huygens Mission Information. Accessed Mar. 3, 2021. https://pds.nasa.gov/ds-view/pds/viewMissionProfile.jsp?MISSION_NAME=CASSINI-HUYGENS
Novak, D.M., Vasile, M.: Improved shaping approach to the preliminary design of low-thrust trajectories. J. Guid. Control Dyn. 34(1), 128–147 (2011). https://doi.org/10.2514/1.50434
Ottesen, D., Russell, R.P.: Space trajectory optimization using embedded boundary value problems. In: AAS/AIAA Astrodynamics Specialist Conference. AAS 17–837, vol. 162, pp. 2271–2290. Stevenson, WA (2017)
Ottesen, D., Russell, R.P.: A piecewise-constant sundman transformation for spacecraft trajectory optimization. In: AAS/AIAA Astrodynamics Specialist Conference. AAS 18–467, vol. 167, pp. 1755–1774. Snowbird, WA (2018)
Pascale, P.D., Vasile, M.: Preliminary design of low-thrust multiple gravity-assist trajectories. J. Spacecr. Rocket. 43(5), 1065–1076 (2006). https://doi.org/10.2514/1.19646
Pellegrini, E., Russell, R.P.: On the computation and accuracy of trajectory state transition matrices. J. Guid. Control Dyn. 39(11), 2485–2499 (2016). https://doi.org/10.2514/1.G001920
Pellegrini, E., Russell, R.P.: Multiple-shooting differential dynamic programming with applications to spacecraft trajectory optimization. Ph.D. thesis (2017)
Peralta, F., Flanagan, S.: Cassini interplanetary trajectory design. Control. Eng. Pract. 3(11), 1603–1610 (1995). https://doi.org/10.1016/0967-0661(95)00171-P
Petropoulos, A., Longuski, J.M.: Automated design of low-thrust gravity-assist trajectories. In: AIAA, p. 4033 (2000). https://doi.org/10.2514/6.2000-4033
Petropoulos, A.E., Longuski, J.M.: Shape-based algorithm for the automated design of low-thrust, gravity assist trajectories. J. Spacecr. Rocket. 41(5), 787–796 (2004). https://doi.org/10.2514/1.13095
Petropoulos, A.E., Sims, J.A.: A review of some exact solutions to the planar equations of motion of a thrusting spacecraft. In: 2nd International Symposium Low Thrust Trajectories. Toulouse, France (2002)
Pitkin, E.T.: Second transition partial derivatives via universal variables. J. Astronaut. Sci. 13, 204–207 (1966)
Polak, E., Ribiere, G.: Note on convergence of conjugate direction meters. ESAIM Math. Model. Numer. Anal. Math. Math. Numer. Anal. 3(R1), 35–43 (1969)
Rao, A.V.: A survey of numerical methods for optimal control. In: AAS/AIAA Astrodynamics Specialist Conference, AAS 09–334. Pittsburgh, PA (2009)
Roa, J., Peláez, J., Senent, J.: Spiral Lambert’s problem. J. Guid. Control. Dyn. 39(10), 2250–2263 (2016). https://doi.org/10.2514/1.G000342
Russell, R.P.: On the solution to every Lambert problem. Celest. Mech. Dyn. Astron. 131, 50 (2019). https://doi.org/10.1007/s10569-019-9927-z
Russell, R.P., Ocampo, C.A.: Optimization of a broad class of ephemeris model earth–mars cyclers. J. Guid. Control. Dyn. 29(2), 354–367 (2006). https://doi.org/10.2514/1.13652
Scheel, W.A., Conway, B.A.: Optimization of very-low-thrust, many-revolution spacecraft trajectories. J. Guid. Control. Dyn. 17(6), 1185–1192 (1994). https://doi.org/10.2514/3.21331
Shanno, D.F.: Conditioning of quasi-newton methods for function minimization. Math. Comput. 24(111), 647–656 (1970). https://doi.org/10.1090/S0025-5718-1970-0274029-X
Shannon, J.L., Ozimek, M.T., Atchison, J.A., Hartzell, C.M.: Q-law aided direct trajectory optimization of many-revolution low-thrust transfers. J. Spacecr. Rocket. (2020). https://doi.org/10.2514/1.A34586
Shepperd, S.W.: Universal Keplerian state transition matrix. Celest. Mech. 35(2), 129–144 (1985). https://doi.org/10.1007/BF01227666
Shirazi, A., Ceberio, J., Lozano, J.A.: Spacecraft trajectory optimization: a review of models, objectives, approaches, and solutions. Prog. Aerosp. Sci. 102, 76–98 (2018). https://doi.org/10.1016/j.paerosci.2018.07.007
Sims, J.A., Finlayson, P.A., Rinderle, E.A., Vavrina, M.A., Kowalkowski, T.D.: Implementation of a low-thrust trajectory optimization algorithm for preliminary design. In: AAS/AIAA Astrodynamics Specialist Conference, AIAA 2006-6746. Keystone, Colorado (2006). https://doi.org/10.2514/6.2006-6746
Smith, J., Buffington, B.: Overview of the cassini solstice mission trajectory. In: AAS/AIAA Advances in the Astronautical Sciences, AAS 2009-351, vol. 135. Pittsburgh, PA (2009)
Strange, N., Goodson, T., Hahn, Y.: Cassini tour redesign for the huygens mission. In: AIAA/AAS Astrodynamics Specialist Conference and Exhibit, AIAA 2002-4720. Monterey, California (2002). https://doi.org/10.2514/6.2002-4720
Taheri, E., Abdelkhalik, O.: Shape-based approximation of constrained low-thrust space trajectories using Fourier series. J. Spacecr. Rocket. 49(3), 535–546 (2012). https://doi.org/10.2514/1.58789
Vasile, M., Ceriotti, M., Radice, G., Becerra, V.M., Nasuto, S.J., Anderson, J.D.: Global trajectory optimisation: can we prune the solution space when considering deep space manoeuvres? (2008)
Velez, C.E., Fuchs, A.J.: Averaging techniques and their application to orbit determination systems. AIAA J. 13(1), 12–16 (1975). https://doi.org/10.2514/3.49622
Wall, B.J., Conway, B.A.: Shape-based approach to low-thrust rendezvous trajectory design. J. Guid. Control Dyn. 32(1), 95–101 (2009). https://doi.org/10.2514/1.36848
Whiffen, G.J.: Static/dynamic control for optimizing a useful objective (2002). US Patent 6,496,741
Yakimenko, O.A.: Direct method for rapid prototyping of near-optimal aircraft trajectories. J. Guid. Control Dyn. 23(5), 865–875 (2000). https://doi.org/10.2514/2.4616
Yam, C.H., Izzo, D., Biscani, F.: Towards a high fidelity direct transcription method for optimisation of low-thrust trajectories. In: 4th International Conference on Astrodynamics Tools and Techniques, pp. 1–7 (2010)
Yang, G.: Direct optimization of low-thrust many-revolution earth-orbit transfers. Chin. J. Aeronaut. 22(4), 426–433 (2009). https://doi.org/10.1016/S1000-9361(08)60121-1
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Mauro Pontani.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
The appendix contains unconstrained optimizer algorithms, a sensitivity discussion, and performance tables.
1.1 Unconstrained Optimizer and the BFGS Search Direction
The unconstrained optimizer \(\text {FMINUNC}_{\mathrm{UT}}\) is presented in Algorithm 1 along with the BFGS search direction in Algorithm 2 for a line search. The computation of the search direction leverages the efficient BLAS [57] subroutines. There are (s)ymmetric and (p)acked versions of some subroutines where packed takes approximately half the memory as the symmetric version counterpart, enabling the computational feasibility of larger problems but with no parallelization runtime improvements for an increase in thread count as shown in Sect. 4.2. The BLAS subroutines are: ddot for the dot product of two vectors; dsymv or dspmv for the multiplication of a matrix and vector; dsyr and dsyr2 or dspr and dspr2 for two different forms of an outer-product; and dnrm2 for the 2-norm of a vector. The search direction is always one unit in magnitude to conveniently limit the step size in the line search. The quadratic growth of the computation shown in Sect. 4.1 is from dspmv, dspr, and spr2 that require \(2 n^2\), \(n^2\), and \(2 n^2\) floating-point operations, respectively.
Every line search performs three primary computations. First, the minimum is bracketed but with a bounded max step size. Second, the bracketed space is shrunk via a golden ratio method. Third, the minimization is finalized with quadratic interpolation of the three points closest to the minimum. If the denominator in the formula for the quadratic interpolation equals or is close to zero, then the lowest point of the three is chosen as the actual minimum. The algorithm for the line search is not explicitly included for brevity.
1.2 Sensitivities
The computational sensitivities are essential for a gradient-based, direct optimization method. These partials can be obtained via many methods of varying accuracy, including finite difference methods, complex step methods, automatic differentiation, and more. The variational equations approach in Ref. [71] or Battin’s variational STM implementation [9] on page 467 (implemented in detail in Ref. [4]) is accurate and common in practice. In the current work, the closed-form ivLam for two-body dynamics is faster due to the absence of an integrated solution to an ODE system as shown in examples 1.c and 1.d and visualized in Fig. 4. A variational equation approach to EBVPs is useful to model perturbed two-body dynamics. A faster, but less accurate, alternative is to approximate two-body perturbations as impulsive \(\varDelta \mathbf {v}\) maneuvers [43].
1.2.1 Cost Partials and Differentials
The following derivation of the cost partials is based off differentials \(d(\cdot )\) to organize dependencies within the system. As mentioned previously, the cost J in Eq. (1) is a function of the impulsive \(\varDelta \mathbf {v}_i\) maneuvers at each node i, so \(J = J ( \varDelta v_1 \left( \varDelta \mathbf {v}_1 \right) , \cdots , \varDelta v_n \left( \varDelta \mathbf {v}_n \right) )\). Using the chain-rule, expand J as a cost differential for nodes 1 to n
where the cost partial of node i in terms of the impulsive \(\varDelta \mathbf {v}_i\) maneuver is \(\frac{\partial J}{\partial \varDelta v_i} = 1\) and \(\frac{\partial \varDelta v_i}{\partial \varDelta \mathbf {v}_i} = \frac{\varDelta \mathbf {v}_i^T}{\varDelta v_i}\) for minimum fuel [\(k=1\) in Eq. (1)] or \(\frac{\partial J}{\partial \varDelta v_i} = \varDelta v_i\) and \(\frac{\partial \varDelta v_i}{\partial \varDelta \mathbf {v}_i} = \varDelta \mathbf {v}_i^T\) for minimum energy [\(k=0\) in Eq. (1)] or a hybrid combination for \(0<k<1\) in Eq. (1). The cost differential Eq. (6) currently terminates at the impulsive \(\varDelta \mathbf {v}_i\) maneuver differential \(d \varDelta \mathbf {v}_i\) for each node i, but as previously mentioned, the impulsive \(\varDelta \mathbf {v}_i\) maneuver is a function of the velocity before \(\mathbf {v}_{i-}\) and after \(\mathbf {v}_{i+}\) node i written as \(\varDelta \mathbf {v}_i = \mathbf {v}_{i+} - \mathbf {v}_{i-}\) and these velocities are a function of position and time written as \(\mathbf {v}_{i-} = \mathbf {v}_{i-}(\mathbf {r}_{i-1},\mathbf {r}_i,t_{(i-1)+},t_{i-}) \text {and} \mathbf {v}_{i+} = \mathbf {v}_{i+}(\mathbf {r}_i,\mathbf {r}_{i+1},t_{i+},t_{(i+1)-})\). Thus, the differential of the impulsive \(\varDelta \mathbf {v}_i\) maneuver is \(d \varDelta \mathbf {v}_i = d \mathbf {v}_{i+} - d \mathbf {v}_{i-}\), and the differential of the velocity before \(d \mathbf {v}_{i-}\) and after \(d \mathbf {v}_{i+}\) node i is
where the \(\left\langle \cdot \right\rangle \) represents the EBVP partials that assume position continuity is enforced by design by using EBVPs, not the optimizer. Before substitution of Eqs. (7) and (8) in Eq. (6), careful consideration must be made toward the first node 1 and the last node n. The initial and final nodes are constrained by design, not the optimizer, because they are prescribed by a user-defined path, in this current work this path is a two-body orbit. Thus, the differentials for position at the initial and final orbits are \(d \mathbf {r}_1 = \mathbf {v}_{1-} d \tilde{t}_{1-}\) and \(d \mathbf {r}_n = \mathbf {v}_{n+} d \tilde{t}_{n+}\) and the differentials for velocity are \(d \mathbf {v}_{1-} = \mathbf {a}_{1-} d \tilde{t}_{1-}\) and \(d \mathbf {v}_{n+} = \mathbf {a}_{n+} d \tilde{t}_{n+}\). The time-like \(\tilde{t}\) to parameterize an orbit is not associated with the time of flight of the transfer trajectory. Furthermore, for every segment \((i+1)i\) from node i to \(i+1\), the time of flight is defined to be \(\varDelta t = t_{(i+1)-} - t_{i+}\) and the time of flight differential is \(d \varDelta t = d t_{(i+1)-} - d t_{i+}\). For convenience, the initial time \(t_{i+}\) of segment \((i+1)i\) is designed to be zero, so the time of flight \(\varDelta t\) is the final time \(t_{(i+1)-}\) of segment \((i+1)i\), i.e., \(\varDelta t = t_{(i+1)-}\). The initial time \(t_{i+}\) can conveniently be zero because time does not explicitly show up in the dynamics. In other words, for time-free unconstrained spacecraft trajectory optimization problems, only the time of flight \(\varDelta t\) of each segment \((i+1)i\) is needed, not the initial and final times of each segment. Thus, when computing the velocity differentials at node i shown in Eqs. (7) and (8), the time of flight differential is \(d \varDelta t = d t_{i-} = d t_{(i+1)-}\) because \(d t_{(i-1)+} = d t_{i+} = 0\).
Now, substitute Eqs. (7) and (8) in Eq. (6), the aforementioned differentials for time and position, and group similar differential terms to get a cost differential of the form
where the cost partials are the coefficients of each differential of the initial time-like variable on the initial orbit \(\tilde{t}_{1-}\), the final time-like variable on the final orbit \(\tilde{t}_{n+}\), the time of flight \(\varDelta t\) of each segment \((i+1)i\), and all intermediate positions \(\mathbf {r}_i\) from node 2 to \(n-1\). The cost partials are
Note the following useful identities between velocity partials that relates flight time \(\varDelta t\) and time t before and after node i: \( \left\langle \frac{\partial \mathbf {v}_{i-}}{\partial \varDelta t} \right\rangle = \left\langle \frac{\partial \mathbf {v}_{i-}}{\partial t_{i-}} \right\rangle \text { and } \left\langle \frac{\partial \mathbf {v}_{i+}}{\partial \varDelta t} \right\rangle = \left\langle \frac{\partial \mathbf {v}_{i+}}{\partial t_{(i+1)-}} \right\rangle \). Also note, if the problem is fixed-state to fixed-state, not orbit-to-orbit, then the initial and final time-like variables that parameterize the initial and final orbits do not vary, i.e., \(d \tilde{t}_{1-} = 0\) and \(d \tilde{t}_{n+} = 0\) and the associated cost partials are zero, i.e., \( \frac{\partial J}{\partial \tilde{t}_{1-}} = 0 \text {and} \frac{\partial J}{\partial \tilde{t}_{n+}} = 0 \). Likewise, though not explored in this current work, the time of flight cost partial is zero, \(\frac{\partial J}{\partial \varDelta t} = 0\), if the total time of flight is fixed.
1.2.2 Variational State Transition Matrix
The EBVP partials, designated by \(\left\langle \cdot \right\rangle \), can be derived either directly when using ivLam, or through the variational STM via integration for rk7sh and rk78sh or by forming the Keplerian submatrices, e.g., via Battin’s Kepler variational STM implemented in Arora et al. [4], or other analytic forms of two-body dynamics by Shepperd [86], Goodyear [37], Pitkin [77], Glandorf [34], and more.
The variational STM solves the following variational equations of motion for a segment \(\delta \dot{\mathbf {x}} = \mathbf {F} \delta \mathbf {x}\) for dynamics of the form \(\dot{\mathbf {x}} = \mathbf {f}(\mathbf {x})\) so \(\mathbf {F} = \partial \mathbf {f}/\partial \mathbf {x}\). The variational STM can then be written as:
for segment \((i+1)i\) from \(t_{i+}\) to \(t_{(i+1)-}\) or node i to \(i+1\). The variational STM \(\varvec{\varPhi } = \varvec{\varPhi }(t_{(i+1)-},t_{i+})\) describes the effect of the sensitivity of the initial state, time-fixed variation \(\delta \mathbf {x}_{i+} = \delta \mathbf {x}(t_{i+})\) on a final state, time-fixed variation \(\delta \mathbf {x}_{(i+1)-} = \delta \mathbf {x}(t_{(i+1)-})\).
The variational STM is then either numerically integrated with \(\dot{\varvec{\varPhi }} = \mathbf {F} \varvec{\varPhi }\) or analytically known. The integrated solution is decomposed into sub-matrix form as:
where the sub-matrices \(\mathbf {A}_{(i+1)i}\), \(\mathbf {B}_{(i+1)i}\), \(\mathbf {C}_{(i+1)i}\), and \(\mathbf {D}_{(i+1)i}\) are defined for notational simplicity. A closed-form variational STM for two-body dynamics by Battin is not reproduced here for compactness but can be found in Ref. [4] via Eqs. 38–50. A similar form of the variational STM can be made for segment \(i(i-1)\). The EBVP partials in terms of the variational STM sub-matrices are shown in Table 3. The expressions in Table 3 are primarily for perturbed two-body dynamics; however, the submatrices can be found analytically as previously mentioned for the two-body problem to give the partials of the Lambert problem.
1.2.3 Mass-Leak
The partials of Eq. (1) of minimum fuel include a singularity because the partial \(\partial \varDelta v_i/\partial \varDelta \mathbf {v}_i = \varDelta \mathbf {v}_i^T/\varDelta v_i\) for node i has a denominator that can go to zero. A “mass-leak" is termed and eliminates the singularity by including a small constant quantity \(\epsilon \)
where \(\varDelta v_{x_i}\), \(\varDelta v_{y_i}\), and \(\varDelta v_{z_i}\) are the x, y, and z-components of the impulsive \(\varDelta \mathbf {v}_i\) maneuver. Practical choices for \(\epsilon \) are approximately \(\epsilon = 10^{-6}\) to \(10^{-4}\) when the magnitude of velocity is near unity. In practice, the optimizer decreases the value of the impulsive \(\varDelta \mathbf {v}_i\) maneuver magnitudes, modified according to Eq. (12), to approximately \(\epsilon \) if the maneuver is not needed for minimum fuel solutions. Minimum energy solutions do not need the mass-leak.
1.3 Performance Tables for Examples 1 and 2
The performance tables are for examples 1 and 2 (see Fig. 4). Tables 4, 5 and 6 show total runtime per iteration, total runtimes, number of iterations that update the decision state, function calls, cost, and optimality tolerances. Function call counts are for the computation of the cost, the cost plus partials, and the search direction, respectively.
Rights and permissions
About this article
Cite this article
Ottesen, D., Russell, R.P. Unconstrained Direct Optimization of Spacecraft Trajectories Using Many Embedded Lambert Problems. J Optim Theory Appl 191, 634–674 (2021). https://doi.org/10.1007/s10957-021-01884-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10957-021-01884-1