Direct multiple shooting method

From Wikipedia, the free encyclopedia

In the area of mathematics known as numerical ordinary differential equations, the direct multiple shooting method is a numerical method for the solution of boundary value problems. The method divides the interval over which a solution is sought into several smaller intervals, solves an initial value problem in each of the smaller intervals, and imposes additional matching conditions to form a solution on the whole interval. The method constitutes a significant improvement in distribution of nonlinearity and numerical stability over single shooting methods.

Single shooting methods

Shooting methods can be used to solve boundary value problems (BVP) like

in which the time points ta and tb are known and we seek

Single shooting methods proceed as follows. Let y(t; t0, y0) denote the solution of the initial value problem (IVP)

Define the function F(p) as the difference between y(tb; p) and the specified boundary value yb: F(p) = y(tb; p) − yb. Then for every solution (ya, yb) of the boundary value problem we have ya=y0 while yb corresponds to a root of F. This root can be solved by any root-finding method given that certain method-dependent prerequisites are satisfied. This often will require initial guesses to ya and yb. Typically, analytic root finding is impossible and iterative methods such as Newton's method are used for this task.

The application of single shooting for the numerical solution of boundary value problems suffers from several drawbacks.

  • For a given initial value y0 the solution of the IVP obviously must exist on the interval [ta,tb] so that we can evaluate the function F whose root is sought.

For highly nonlinear or unstable ODEs, this requires the initial guess y0 to be extremely close to an actual but unknown solution ya. Initial values that are chosen slightly off the true solution may lead to singularities or breakdown of the ODE solver method. Choosing such solutions is inevitable in an iterative root-finding method, however.

  • Finite precision numerics may make it impossible at all to find initial values that allow for the solution of the ODE on the whole time interval.
  • The nonlinearity of the ODE effectively becomes a nonlinearity of F, and requires a root-finding technique capable of solving nonlinear systems. Such methods typically converge slower as nonlinearities become more severe. The boundary value problem solver's performance suffers from this.
  • Even stable and well-conditioned ODEs may make for unstable and ill-conditioned BVPs. A slight alteration of the initial value guess y0 may generate an extremely large step in the ODEs solution y(tb; ta, y0) and thus in the values of the function F whose root is sought. Non-analytic root-finding methods can seldom cope with this behaviour.

Multiple shooting

A direct multiple shooting method partitions the interval [ta, tb] by introducing additional grid points


The method starts by guessing somehow the values of y at all grid points tk with 0 ≤ kN − 1. Denote these guesses by yk. Let y(t; tk, yk) denote the solution emanating from the kth grid point, that is, the solution of the initial value problem

All these solutions can be pieced together to form a continuous trajectory if the values y match at the grid points. Thus, solutions of the boundary value problem correspond to solutions of the following system of N equations:

The central N−2 equations are the matching conditions, and the first and last equations are the conditions y(ta) = ya and y(tb) = yb from the boundary value problem. The multiple shooting method solves the boundary value problem by solving this system of equations. Typically, a modification of the Newton's method is used for the latter task.

Multiple shooting and parallel-in-time methods

Multiple shooting has been adopted to derive parallel solvers for initial value problems.[1] For example, the Parareal parallel-in-time integration method can be derived as a multiple shooting algorithm with a special approximation of the Jacobian.[2]


  1. ^ Kiehl, Martin (1994). "Parallel multiple shooting for the solution of initial value problems". Parallel Computing. Elsevier. 20 (3): 275–295. doi:10.1016/S0167-8191(06)80013-X. Retrieved November 9, 2016. 
  2. ^ Gander, Martin J.; Vandewalle, Stefan (2007). "Analysis of the Parareal Time‐Parallel Time‐Integration Method". SIAM Journal on Scientific Computing. SIAM. 29 (2): 556–578. doi:10.1137/05064607X. Retrieved November 9, 2016. 
  • Stoer, Josef; Bulirsch, Roland (2002), Introduction to Numerical Analysis (3rd ed.), Berlin, New York: Springer-Verlag, ISBN 978-0-387-95452-3 . See Sections 7.3.5 and further.
  • Bock, Hans Georg; Plitt, Karl J. (1984), "A multiple shooting algorithm for direct solution of optimal control problems", Proceedings of the 9th IFAC World Congress (PDF), Budapest 
  • Morrison, David D.; Riley, James D.; Zancanaro, John F. (December 1962), "Multiple shooting method for two-point boundary value problems", Commun. ACM, New York, NY, USA: ACM, 5 (12): 613–614, doi:10.1145/355580.369128 
Retrieved from ""
This content was retrieved from Wikipedia :
This page is based on the copyrighted Wikipedia article "Direct multiple shooting method"; it is used under the Creative Commons Attribution-ShareAlike 3.0 Unported License (CC-BY-SA). You may redistribute it, verbatim or modified, providing that you comply with the terms of the CC-BY-SA