Pontryagin Maximum Principle

The maximum principle as a necessary condition for constrained dynamic optimization: Hamiltonian convention, adjoint dynamics, pointwise maximization, transversality, normal and abnormal extremals, switching functions, singular arcs, and the bridge to HJB.

The Pontryagin maximum principle (PMP) turns an optimization over whole control functions into coupled differential equations plus an instantaneous optimization over the admissible input set. It is powerful precisely because it respects hard input constraints and discontinuous optimal controls. It is a necessary-condition engine, not a global-optimality certificate.

One sign convention, stated once #

Consider the minimization problem

J[u]=Φ(tf,x(tf))+∫t0tfL(t,x(t),u(t))dt,x˙=f(t,x,u),u(t)∈U.J[u]=\Phi(t_f,x(t_f)) +\int_{t_0}^{t_f}L(t,x(t),u(t))dt, \qquad \dot x=f(t,x,u),\quad u(t)\in U.

GTK uses the maximum convention

H(t,x,p,u,λ0)=pTf(t,x,u)−λ0L(t,x,u),\boxed{H(t,x,p,u,\lambda_0)=p^Tf(t,x,u)-\lambda_0L(t,x,u)},

where p(t)∈Rnp(t)\in\mathbb R^n is the costate and λ0≥0\lambda_0\ge0 is the cost multiplier. Many books instead define H=L+pTfH=L+p^Tf and minimize it. Both conventions are valid; mixing their adjoint, terminal, and optimization signs is not.

The necessary conditions #

For an optimal process (x∗,u∗)(x^*,u^*), under the theorem's regularity assumptions there exist λ0≥0\lambda_0\ge0 and an absolutely continuous costate p(⋅)p(\cdot), not both identically zero, such that almost everywhere:

x˙∗=∂H∂p=f(t,x∗,u∗),\dot x^*=\frac{\partial H}{\partial p} =f(t,x^*,u^*),

p˙=−∂H∂x=−fx(t,x∗,u∗)Tp+λ0Lx(t,x∗,u∗),\boxed{\dot p=-\frac{\partial H}{\partial x} =-f_x(t,x^*,u^*)^Tp+\lambda_0L_x(t,x^*,u^*)},

and

H(t,x∗,p,u∗,λ0)=max⁡v∈UH(t,x∗,p,v,λ0).\boxed{H(t,x^*,p,u^*,\lambda_0) =\max_{v\in U}H(t,x^*,p,v,\lambda_0).}

The state runs forward from x(t0)=x0x(t_0)=x_0. The costate is constrained at the terminal end. That makes the PMP system a two-point boundary-value problem rather than an ordinary initial-value simulation.

For a free terminal state and terminal cost Φ\Phi, this convention gives

p(tf)=−λ0∇xΦ(tf,x(tf)).p(t_f)=-\lambda_0\nabla_x\Phi(t_f,x(t_f)).

If the terminal state must lie on a smooth manifold ψ(tf,x(tf))=0\psi(t_f,x(t_f))=0, then for a multiplier ν\nu,

p(tf)=−λ0∇xΦ−(∇xψ)Tν.p(t_f)=-\lambda_0\nabla_x\Phi -\left(\nabla_x\psi\right)^T\nu.

Equivalently, after subtracting the terminal-cost gradient, the costate is normal to the target manifold. If tft_f is free,

H(tf)=λ0∂Φ∂tf+νT∂ψ∂tf.H(t_f)=\lambda_0\frac{\partial\Phi}{\partial t_f} +\nu^T\frac{\partial\psi}{\partial t_f}.

For an autonomous problem, time-independent terminal cost, and a time-independent target, H(tf)=0H(t_f)=0; along a smooth autonomous extremal, HH is constant, so H≡0H\equiv0.

Why a costate appears #

The differential constraint couples a control perturbation at one time to the terminal state. The costate propagates the marginal value of that state perturbation backward. Formally, augment the running integrand with

pT(f−x˙).p^T(f-\dot x).

Integration by parts moves the variation of x˙\dot x onto pp. Choosing pp to cancel every interior δx\delta x term produces the adjoint equation; the surviving endpoint term produces transversality; the remaining first-order control term produces pointwise Hamiltonian optimization.

Needle variations make this argument work even when UU is bounded and u∗u^* jumps. Instead of requiring a small-amplitude variation, replace u∗u^* by another admissible value on a short interval of width ε\varepsilon and let ε↓0\varepsilon\downarrow0.

Control-affine systems and switching functions #

For

x˙=f0(t,x)+G(t,x)u,\dot x=f_0(t,x)+G(t,x)u,

the Hamiltonian is

H=pTf0+pTGu−λ0L(t,x,u).H=p^Tf_0+p^TGu-\lambda_0L(t,x,u).

If LL does not depend on uu and the scalar input satisfies ∣u∣≤umax⁡|u|\le u_{\max}, define the switching function

σ(t)=p(t)Tg(t,x(t)).\sigma(t)=p(t)^Tg(t,x(t)).

Then

u∗(t)=umax⁡sgnσ(t)u^*(t)=u_{\max}\mathop{\mathrm{sgn}}\sigma(t)

whenever σ(t)≠0\sigma(t)\ne0. Saturation is not a heuristic here: a nonzero linear functional reaches its maximum over an interval at an endpoint.

For a box ∣ui∣≤uˉi|u_i|\le \bar u_i,

ui∗=uˉisgnσi,σ=GTp.u_i^*=\bar u_i\mathop{\mathrm{sgn}}\sigma_i, \qquad \sigma=G^Tp.

For a Euclidean ball ∥u∥2≤umax⁡\lVert u\rVert_2\le u_{\max},

u∗=umax⁡GTp∥GTp∥2,GTp≠0.u^*=u_{\max}\frac{G^Tp}{\lVert G^Tp\rVert_2}, \qquad G^Tp\ne0.

Thus a box selects a vertex componentwise, while a ball selects the boundary point aligned with the switching vector.

Singular arcs #

If σ(t)=0\sigma(t)=0 only at isolated instants, it merely marks switches. If

σ(t)≡0\sigma(t)\equiv0

on an interval, first-order Hamiltonian maximization does not determine uu. This is a singular arc. Differentiate the switching function along the state-costate dynamics until the control appears:

σ=0,quadσ˙=0,quad…,quadσ(r)(x,p,u)=0.\sigma=0,quad \dot\sigma=0,quad \ldots,quad \sigma^{(r)}(x,p,u)=0.

Solving the first derivative that contains uu gives a singular candidate. It must also satisfy the input bounds and a higher-order condition such as the generalized Legendre–Clebsch condition. Setting u=0u=0 merely because σ=0\sigma=0 is unjustified.

Normal and abnormal extremals #

If λ0>0\lambda_0>0, scale all multipliers so λ0=1\lambda_0=1; the extremal is normal. If λ0=0\lambda_0=0, the running and terminal costs disappear from HH and the necessary conditions depend only on geometry and constraints. Such an abnormal extremal can be real; setting λ0=1\lambda_0=1 without checking may exclude it.

The nontriviality condition

(λ0,p(t))≠(0,0)(\lambda_0,p(t))\ne(0,0)

prevents a vacuous multiplier solution that would satisfy every homogeneous equation.

Necessary does not mean optimal #

A PMP extremal can fail for several reasons:

  • it violates a state or endpoint constraint;
  • it is a local maximum or saddle of the cost;
  • another extremal has lower cost;
  • a singular arc violates a higher-order condition;
  • the infimum is not attained at all.

For convex problems, PMP plus feasibility can become sufficient. One common sufficient setting has convex UU, affine dynamics, convex running and terminal costs, and compatible convex endpoint constraints, expressed in the corresponding minimum-Hamiltonian convention.

PMP and HJB are the same geometry locally #

Let V(t,x)V(t,x) be a differentiable value function for the minimization problem. HJB chooses

u∗∈arg⁡min⁡u∈U[L+∇xVTf].u^*\in\arg\min_{u\in U} \left[L+\nabla_xV^Tf\right].

With this article's maximum convention, set

p=−∇xV.p=-\nabla_xV.

Then maximizing pTf−Lp^Tf-L is exactly the same pointwise choice. Along a smooth optimal trajectory, differentiating p=−Vxp=-V_x recovers the adjoint equation. PMP follows one characteristic through state-costate space; HJB solves for the value over an entire state region. At switching surfaces VV is often nondifferentiable, which is why the viscosity-solution formulation matters.

Solving a PMP boundary-value problem #

  1. Fix the formulation and Hamiltonian convention.
  2. Write state, costate, maximization, and every transversality condition.
  3. Determine bang, interior, and singular control laws from the maximization.
  4. Guess unknown initial costates, switching times, and possibly tft_f.
  5. Integrate the state and costate and drive terminal residuals to zero.
  6. Reject constraint-violating or inconsistent arcs.
  7. Compare costs and use sufficiency, second variation, or HJB verification where available.

This shooting workflow is numerically sensitive because unstable costate directions amplify an initial guess. Direct transcription and collocation are often more robust computationally, but they discretize the same continuous necessary conditions and should be checked against their residuals and constraints.

Sources

  1. paperTheory of Optimal Processes. I. The Maximum Principlepdfnotes
  2. bookCalculus of Variations and Optimal Control Theory: A Concise Introductionpdfnotes
  3. bookOptimal Control Methods: Lectures 2–6pdfnotes

Searches titles, aliases, headings, summaries, and full text.↑↓ move ↵ open esc close