Optimization of the Forcing Term for the Solution of Two-Point Boundary Value Problems

We present a new numerical method for the computation of the forcing term of minimal norm such that a two-point boundary value problem admits a solution. The method relies on the following steps. The forcing term is written as a (truncated) Chebyshev series, whose coefficients are free parameters. A technique derived from automatic differentiation is used to solve the initial value problem, so that the final value is obtained as a series of polynomials whose coefficients depend explicitly on (the coefficients of) the forcing term.Then the minimization problem becomes purely algebraic and can be solved by standard methods of constrained optimization, for example, with Lagrange multipliers. We provide an application of this algorithm to the planar restricted three body problem in order to study the planning of low-thrust transfer orbits.


Introduction
We consider a two-point boundary value problem for the nonautonomous dynamical system in R  : where  ∈  1 (R  , R  ) and  ∈ ([−1, 1], R  ).We introduce a new numerical method for the computation of  of minimal norm, among the functions representable with a truncated Chebyshev series, such that (1) admits a solution.
In order to evaluate the performance of the algorithm, we apply it to a well-known problem, that is, the study of lowthrust orbits between the Earth and the Moon.We refer to [1] and references there for a discussion of the astrodynamical problem.
Our new approach is derived from the method introduced in [2,3] to consider the dependence of parameters of the solution of hyperbolic equations.Such method heavily relies on a computer representation of algebras of functions, in such a way that the computer can use such functions in a straightforward and transparent way as if they were floating point numbers, reducing to a minimum the computations to be done explicitly by hand.The underlying ideas of this method stem from automatic differentiation algorithms, see [4][5][6][7][8] and recently have been used in the field of computer-assisted proofs, see [9,10] for some examples, but its potentiality in optimization and control appears to have been overlooked.In Section 2 we describe the approach in a generic setting; in Section 3 we describe the specific-planarrestricted three body problem that we chose as an example; in Section 4 we present the results that we obtained with the three body problem; in Section 5 we discuss the features of the method and compare the Taylor and the Chebyshev representation.

The Generic Problem
where  is an analytic function,  = {  } is an  ×  real matrix and the forcing term   : [−1, 1] → R  depends on  as follows: where   () is the th Chebyshev polynomial and (  ())  denotes the th component of   ().Our first step is to compute explicitly the dependence of   () on , for  ∈ (−1, 1].
We choose a numeric method to solve the IVP; in order to focus on the issue of the parameter dependence, we choose the simplest method, for example, an explicit first-order Euler scheme with constant time step, and we consider the case  =  = 1.We show later that it is straightforward to adapt the method to other schemes, for example, a Runge-Kutta scheme with variable time step, and to the case ,  > 1.
Choose  ∈ N, let ℎ = 2/ be the time step, set   = ℎ − 1 and   () =   (  ) so that the Euler scheme reads and   () =   (1).Now write where {  ()} ∈N is a basis of some space of functions  of our choice.In this paper we consider both the Taylor expansion for the set of analytic functions in a disc (i.e.,   () =   ) and the Chebyshev expansion for the set of continuous functions in [−1, 1] (i.e.,   () = cos( arccos )).Clearly, the method can be generalized to other expansions, for example, Fourier series or Legendre polynomials.Now we choose an order  and we approximate   () with the truncated expansion ∑  =0  ,   ().Our aim is to compute the coefficients  , using an automatic algorithm.Since  0 () =  0 , then we have  0,0 =  0 and  0, = 0, when  ≥ 1.
The core of the method consists in a generalization of the Taylor Models approach; for a detailed description of the technique with different expansions see [2,3].Here, we only recall the basic ideas.First, we observe that it is straightforward to implement on a computer an arithmetic of Taylor or Chebyshev polynomials of one variable.Using object-oriented programming and operator overloading, it is possible to define a class Fun which represents a Taylor or Chebyshev expansion and a set of methods which perform the basic operations and the computation of the elementary functions.More precisely, an object Fun is represented as the list of the coefficients.It is straightforward to implement a procedure that, given a scalar  and two objects Fun  1 , 2 , computes the object Fun corresponding to ( 1 *  2 ), where * is either the addition or the multiplication.Then, given a polynomial (), it is possible to compute the object Fun corresponding to ( 1 ), and since all analytic functions () can be approximated with polynomials, it is also possible to compute the object Fun that better approximates ( 1 ).
A more algebraic-oriented way of expressing this idea is the following: let  be the space of functions spanned by {  ()} ∈{0,...,} and let  :  → R +1 be the (invertible) map that extracts the coefficients.Our approach consists in lifting the basic arithmetics of  to R +1 .More precisely, we compute operators such that ( + ) = () ⊕ (), () = () ⊗ (), and () =  ⊙ ().Once this has been done, we can make extensive use of object-oriented programming and operator overloading in order to make this lifting completely transparent to the user.
The extension of this method to the case  > 1 is straightforward.The case  > 1 requires some additional work, since we have to consider a multivariable Taylor or Chebyshev expansion: The sum of two of such expansions is done componentwise.The multiplication is less straightforward, but a very efficient algorithm for the case of the Taylor expansion has been introduced in [8], and it is not too hard to extend it to the Chebyshev (or some other) expansion.We refer to our programs for details.
With the class Fun consisting of the objects (7) and the functions for addition and multiplication in place, we can use a standard implementation of the algorithm (4), observing that, given   , the methods of the class will take care of the computation of (  ,   ), while   (  ) is explicitly given by (3).Extending this approach to better integration schemes, say Runge-Kutta or multistep, is straightforward: it suffices to implement the chosen algorithm using objects Fun and their methods.By implementing and running the integration scheme of choice with the class Fun, we obtain all the coefficients { , 1 ,...,  } and therefore the polynomials   () for all .Now consider the polynomial   (): solving the boundary value problem (1) consists in computing  ∈ R  such that   () =  1 .This amounts to solving  algebraic equations in  unknowns.If we wish ‖  ‖ to be small (where ‖ ⋅ ‖ is some norm of our choice), we recall that when  > 1 the system   () =  1 is underdetermined, therefore we can compute an explicit formula Φ() = ‖  ‖ and exploit the additional degrees of freedom to set the following constrained minimization problem: find  ∈ R  such that This result can be achieved by standard constrained minimization algorithms, for example, Lagrange multipliers.Note that this method can be easily extended to solve other kinds of conditions at  = 1: let  ≤  and  : R  → R  some polynomial function.We can apply the same approach to find  ∈ R  such that To sum up, once the class Fun and some algorithm for solving initial value problems for ODE's has been implemented, boundary value problems with optimization of the forcing term are reduced to computing the constrained minumum of a polynomial, the constraint being represented by a polynomial equation or system of equations.We remark that, in principle, such polynomial constrained minimization problems can be solved exactly (up to floating point errors), but this does not imply that the boundary condition is solved exactly for the original problem, since we are truncating the expansion ( 7) and we are neglecting the truncation error.
One needs to check a posteriori, for example, by solving ( 2

An Application: Low-Thrust Orbits in the Planar RTBP
In order to model the dynamics of a spaceship travelling from an orbit around the Earth to an orbit around the Moon, we consider the forced planar RTBP, that is the system: where We choose  ≃ 0.0121506683, that is, the reduced mass of the Earth-Moon system, and  = −1.600172454916536,so that Ω( 1 ) = 0,  1 being the Lagrangian point between the primaries.The forcing term is given by a scalar function () to be determined times a unit vector directed as the velocity of the spaceship.In other words, we assume that the thrust is always parallel to the velocity.We show how to apply the method described in the previous section to the problem of optimizing the travel from an orbit 167 km above the Earth to an orbit 100 km above the Moon.We choose a connecting orbit passing close to  1 .Note that the Jacobi function is approximately −60 on an orbit 167 km above the Earth and approximately −1.6 on an orbit 100 km above the Moon.Furthermore, in order to "cross" the region around the Lagrangian point  1 , it is necessary to raise it above 0. We build the connecting orbit as follows.We start from the Lyapunov orbit around  1 with  = 0.1 and approximate periodic orbits around the Moon and the Earth.Then we compute approximate connections from the Lyapunov orbit to the orbit around the Earth (backwards in time) and to the orbit around the Moon (forward in time).Choosing the Lyapunov orbit as a starting point is useful, if not necessary, because of its high instability: it is much harder to aim at the Lyapunov orbit than at a stable orbit around a primary.These orbits are obtained by applying a constant low thrust (i.e., () = , with small ), chosen by simple trial and error.Once these rough orbits are computed, we apply the technique described above to compute an accurate correction so that the trajectory satisfies some required boundary conditions and at the same time the thrust is minimal.More precisely, we write (10) as a system of 4 first-order equations by setting  = ẋ and  = ẏ , we write the modulus of the forcing term as we choose some initial value on the trajectory at the arbitrary time  = 0 and we solve the equation with a fourth-order Runge-Kutta scheme up to some time  = , using objects Fun as scalars, the coefficients   being the independent variables of the objects Fun.Referring to Section 2, we have  = 4 (the dimension of the system), we choose  = 4 and  = 10.We rescale the time in the interval [−1, 1] and apply the method described in Section 2 to obtain ((), (), (), ()) as a function of {  }, expressed either as a Taylor series or a Chebyshev series.Then we choose the condition to be satisfied at  = .We tested the following: find {  } such that ((), (), (), ()) is the same as in the case () = , but ‖‖ is minimal; find {  } such that the distance of the spaceship to the Earth or the Moon is assigned together with the modulus of the final velocity, that is, (() − ) 2 + () −  2 = 0 and (()) 2 + () 2 −  2 = 0 and ‖‖ is minimal; find {  } such that the distance of the spaceship to the Earth or the Moon is assigned together with the modulus of the final velocity, with the additional requirement that the final velocity is orthogonal to the line connecting the satellite to a primary.All these problem belong to the class of problem described in the previous section, and the polynomial constrained minimization problems have been solved by the Lagrange multipliers method.For both tables we computed the thrust of minimal norm necessary to end the trajectory with the values given in the columns  and .The results of Table 2 represent the solution with the additional constraint that the final velocity is orthogonal to the segment from the spaceship to the Earth, corresponding to an approximate circular orbit.We tested the accuracy of the computation as explained at the end of Section 2, that is, we repeated the computation of the orbit with standard floating point numbers, using the explicit expression of the forcing term, and we used the result of such computation to verify that the constraints were satisfied.The values   and   represent the mean square of the relative errors on  and , obtained with the Taylor and the Chebyshev computation, respectively, while  ⊥  and  ⊥  is |(() − )() + ()()|, that is, the error on the orthogonality requirement.The columns ‖  ‖ and ‖  ‖ represent the norm of the forcing terms.It is clear from the tables that the method can achieve very accurate results, and it is also clear that the norm of the forcing term obtained with the Taylor and the Chebyshev computation is (almost) the same.

Conclusions
We discuss and compare the features of the two expansion that we tested: Taylor and Chebyshev.Generally speaking (see [2,3]), the main advantages of the Taylor expansion consist in three features: the algorithms are simpler and faster, they provide directly the derivatives with respect to the parameters and furthermore, and, since one does not need to know the radius of convergence a priori, one can apply them and compute a posteriori the interval of validity of the computation.The Taylor expansion has also two main disadvantages: it does not provide uniform errors in the interval where the computation is performed and the radius of convergence may be bounded by poles in the complex plane.The Chebyshev expansion has opposite features: the error is uniform in the interval and the region of convergence is an ellipse as thin as necessary, therefore there are no problems caused by poles with nontrivial imaginary parts.On the other hand, the algorithm for the multiplication is much more complicated and much slower, it does not provide any direct computation of the derivatives and finally, since the Chebyshev polynomials are defined in [−1, 1], one needs to choose a priori (via a suitable translation/rescaling) the interval where the parameter ranges, finding out only a posteriori if the approximation is acceptable.In the application considered in [2,3], the Chebyshev expansion was a clear winner, due to the fact that, when considering the numerical approximation of shock waves and when trying to improve the resolution, the problem of poles becomes the main issue.
Here, our judgment is the opposite: since the solutions of the ode's that we are studying are analytic functions, the issue of poles limiting the radius of convergence of Taylor series becomes negligible, while the disadvantages of the Chebyshev expansion, in particular the slower algorithms and the fact that the domain has to be chosen a priori, become very relevant.Additionally, we do not have evidence of a better performance in terms of accuracy.It is easy to find examples when either expansion performs better than the other one, but on average the accuracy is similar.

Figure 1
Figure 1 represents an example of an orbit computed by using the technique.Tables 1 and 2 collect some results obtained for a trajectory backward in time starting close to a Lyapunov orbit around  1 , more precisely at the point ((0), (0), (0), (0)) = (0.73356888, −0.017228233, 0.25064405, 0.17220602) and ending close to an orbit around the Earth at time  = −1.7.The trajectory with a constant thrust  = 0.2 ends at  = √ (()−) 2 +() = 0.421852 and  = √ (()) 2 +() 2 = 0.876662.For both tables we computed the thrust of minimal norm necessary to end the trajectory with the values given in the columns  and .The results of Table2represent the solution with the additional constraint that the final velocity is orthogonal to the segment from the spaceship to the Earth, corresponding to an approximate circular orbit.We tested the accuracy of the computation as explained at the end of Section 2, that is, we repeated the computation of the orbit with standard floating point numbers, using the explicit expression of the forcing term, and we used the result of such computation to verify that the constraints were satisfied.The values   and   represent the mean square of the relative errors on  and , obtained with the Taylor and the Chebyshev computation, respectively, while  ⊥  and  ⊥  is |(() − )() + ()()|, that is, the error on the orthogonality requirement.The columns ‖  ‖ and ‖  ‖ represent the norm of the forcing terms.It is clear from the tables that the method can achieve very accurate results, and it is also clear that the norm of the forcing term obtained with the Taylor and the Chebyshev computation is (almost) the same.

Table 1 :
Result enforcing  and .