Math Labs

Differential equations and dynamical systems

Stability of dynamical systems

Classifies equilibrium points of a dynamical system by whether nearby trajectories converge or diverge.

IntuitionIntuition: does a nudged system return, or run away?

A ball resting at the bottom of a bowl, nudged slightly, rolls back down; a ball balanced on top of a hill, nudged slightly, rolls away and never returns. A pendulum hanging straight down is stable; the same pendulum balanced pointing straight up is unstable. A dynamical system x˙=f(x)\dot x=f(x) has an equilibrium point x∗x^{*} wherever f(x∗)=0f(x^{*})=0 — a state where, left alone, nothing moves. Stability theory asks: if the system starts near x∗x^{*} instead of exactly at it, does it stay near, converge back, or drift away?

Four trajectories in the plane spiraling around the origin, their direction of drift set by the control parameter.
Phase-plane trajectories of x′=Ax\mathbf{x}'=A\mathbf{x} for A=(−0.35c−110.525−0.35c)A=\begin{pmatrix}-0.35c & -1\\ 1 & 0.525-0.35c\end{pmatrix}, with the control parameter cc. Here tr⁡A=0.525−0.7c\operatorname{tr}A=0.525-0.7c, so the trace flips sign at c=0.75c=0.75: for c>0.75c>0.75 the four orbits drawn spiral inward (asymptotically stable), for c<0.75c<0.75 they spiral outward (unstable) — a linear center is only reached approximately at c≈0.75c\approx0.75, because this one-parameter family does not contain a true center.

UndergraduateEquilibria and linearization

UndergraduateEquilibria and linearization

Definition: Equilibrium point and Lyapunov stability

For a system x˙=f(x)\dot x=f(x) on Rn\mathbb{R}^n, a point x∗x^{*} with f(x∗)=0f(x^{*})=0 is an equilibrium. It is (Lyapunov) stable if trajectories starting close enough to x∗x^{*} stay arbitrarily close for all future time; it is asymptotically stable if, in addition, they converge to x∗x^{*} as t→∞t\to\infty. If some nearby trajectories move away no matter how close the start, x∗x^{*} is unstable.

x˙=f(x),f(x∗)=0\dot{x}=f(x),\qquad f(x^{*})=0

To study a nonlinear system near an equilibrium, write ξ=x−x∗\xi=x-x^{*} for the small deviation and expand ff in a Taylor series: f(x)=Df(x∗)ξ+o(∥ξ∥)f(x)=Df(x^{*})\xi+o(\|\xi\|), where Df(x∗)Df(x^{*}) is the Jacobian matrix of partial derivatives evaluated at the equilibrium. Dropping the small remainder term gives the linearized system, which approximates the true nonlinear dynamics near x∗x^{*}.

ξ˙=Df(x∗) ξ,ξ=x−x∗\dot{\xi}=Df(x^{*})\,\xi,\qquad \xi=x-x^{*}

The eigenvalues of the Jacobian A=Df(x∗)A=Df(x^{*}) decide the local picture: if every eigenvalue has strictly negative real part, x∗x^{*} is asymptotically stable; if at least one eigenvalue has strictly positive real part, x∗x^{*} is unstable. If some eigenvalue has zero real part (and none has positive real part), the equilibrium is called non-hyperbolic and linearization alone cannot decide stability — the nonlinear terms must be examined directly.

Classification of a 2D equilibrium by trace and determinant of the Jacobian
Trace / determinantEigenvaluesType and stability
det⁡A>0, tr A<0, (tr A)2>4det⁡A\det A>0,\ \text{tr}\,A<0,\ (\text{tr}\,A)^{2}>4\det AReal, both negativeStable node
det⁡A<0\det A<0Real, opposite signsSaddle point, always unstable
det⁡A>0, tr A<0, (tr A)2<4det⁡A\det A>0,\ \text{tr}\,A<0,\ (\text{tr}\,A)^{2}<4\det AComplex, negative real partStable spiral (focus)
tr A=0, det⁡A>0\text{tr}\,A=0,\ \det A>0Purely imaginaryCenter in the linearization; nonlinear terms decide the real behavior

UndergraduateKey theorems

Let A=Df(x∗)A=Df(x^{*}). If every eigenvalue of AA has strictly negative real part, then x∗x^{*} is an asymptotically stable equilibrium of the nonlinear system x˙=f(x)\dot x=f(x). If at least one eigenvalue of AA has strictly positive real part, then x∗x^{*} is unstable.

Why is it true?

Near x∗x^{*} the nonlinear term is much smaller than the linear term, so if the linear part contracts every direction exponentially, that contraction dominates and drags the true trajectory back to x∗x^{*} as well.

Proof

Since every eigenvalue of AA has negative real part (AA is Hurwitz), the matrix equation ATP+PA=−IA^{T}P+PA=-I has a unique symmetric positive-definite solution PP, given explicitly by the convergent integral P=∫0∞eATteAt dtP=\int_0^{\infty}e^{A^{T}t}e^{At}\,dt.

Define the candidate Lyapunov function V(ξ)=ξTPξ≥0V(\xi)=\xi^{T}P\xi\ge0 for the deviation ξ=x−x∗\xi=x-x^{*}. Writing the nonlinear system as ξ˙=Aξ+g(ξ)\dot\xi=A\xi+g(\xi) with g(ξ)=o(∥ξ∥)g(\xi)=o(\|\xi\|) as ξ→0\xi\to0 (the Taylor remainder), compute the time-derivative of VV along nonlinear trajectories.

Using ξ˙=Aξ+g(ξ)\dot\xi=A\xi+g(\xi): V˙=ξ˙TPξ+ξTPξ˙=ξT(ATP+PA)ξ+2ξTPg(ξ)=−∥ξ∥2+2ξTPg(ξ)\dot V=\dot\xi^{T}P\xi+\xi^{T}P\dot\xi=\xi^{T}(A^{T}P+PA)\xi+2\xi^{T}Pg(\xi)=-\|\xi\|^{2}+2\xi^{T}Pg(\xi). Since g(ξ)=o(∥ξ∥)g(\xi)=o(\|\xi\|), there is a neighborhood of x∗x^{*} where 2ξTPg(ξ)≤12∥ξ∥22\xi^{T}Pg(\xi)\le\frac{1}{2}\|\xi\|^{2}, so V˙≤−12∥ξ∥2<0\dot V\le-\frac{1}{2}\|\xi\|^{2}<0 for ξ≠0\xi\ne0 in that neighborhood.

Because VV is positive-definite and V˙\dot V is negative-definite near x∗x^{*}, Lyapunov's direct method (proved next) concludes trajectories starting in that neighborhood converge to x∗x^{*}: asymptotic stability. For the unstable case, if AA has an eigenvalue with positive real part, a symmetric construction (Chetaev's instability theorem) exhibits a direction along which VV increases, showing trajectories are pushed away from x∗x^{*} no matter how close they start.

Suppose VV is continuously differentiable on a neighborhood of x∗x^{*}, with V(x∗)=0V(x^{*})=0 and V(x)>0V(x)>0 for x≠x∗x\ne x^{*} nearby. If V˙(x)≤0\dot V(x)\le0 along every trajectory near x∗x^{*}, then x∗x^{*} is stable; if instead V˙(x)<0\dot V(x)<0 for x≠x∗x\ne x^{*} nearby, then x∗x^{*} is asymptotically stable — with no need to solve the equations or even linearize.

Why is it true?

Think of VV as a generalized energy: if energy never increases along trajectories and is zero only at x∗x^{*}, the system cannot wander away from x∗x^{*}, and if energy strictly decreases it must eventually settle at the only point where it is zero.

Proof

Fix a small ε>0\varepsilon>0 small enough that the closed ball {∥x−x∗∥≤ε}\{\|x-x^{*}\|\le\varepsilon\} lies in the domain where VV is defined and positive away from x∗x^{*}, and let Sε={∥x−x∗∥=ε}S_\varepsilon=\{\|x-x^{*}\|=\varepsilon\} be its boundary sphere. Since VV is continuous and strictly positive on the compact set SεS_\varepsilon, it attains a minimum m=min⁡SεV>0m=\min_{S_\varepsilon}V>0.

By continuity of VV and V(x∗)=0V(x^{*})=0, choose δ∈(0,ε)\delta\in(0,\varepsilon) small enough that ∥x(0)−x∗∥<δ\|x(0)-x^{*}\|<\delta implies V(x(0))<mV(x(0))<m.

Because V˙≤0\dot V\le0 along trajectories, V(x(t))≤V(x(0))<mV(x(t))\le V(x(0))<m for every t≥0t\ge0 that the solution exists. Every point of SεS_\varepsilon has V≥mV\ge m, so the trajectory can never reach SεS_\varepsilon; by continuity of t↦x(t)t\mapsto x(t), it must remain strictly inside the ball of radius ε\varepsilon for all t≥0t\ge0. This is exactly the definition of Lyapunov stability.

If in addition V˙(x)<0\dot V(x)<0 strictly for x≠x∗x\ne x^{*} nearby, then V(x(t))V(x(t)) is strictly decreasing and bounded below by 00, so it converges to some limit c≥0c\ge0. If c>0c>0 were positive, the trajectory would stay in the compact annulus where V≥c>0V\ge c>0, on which V˙\dot V attains a strictly negative maximum, forcing VV to decrease past cc in finite time — a contradiction. Hence c=0c=0, and since VV is positive-definite this forces x(t)→x∗x(t)\to x^{*}: asymptotic stability.

UndergraduateReal-World Applications and Worked Examples

Control engineers check that a feedback controller keeps a drone, robot arm, or chemical reactor at its setpoint by linearizing the closed-loop dynamics and verifying every eigenvalue has negative real part; economists study whether a market equilibrium price is self-correcting after a shock; ecologists linearize predator-prey models to see whether a coexistence equilibrium survives small population fluctuations; and epidemiologists check the stability of the disease-free equilibrium to decide whether an outbreak dies out or grows.

Example: Stability of a damped pendulum's two equilibria

A damped pendulum obeys θ¨+bθ˙+gLsin⁡θ=0\ddot\theta+b\dot\theta+\frac{g}{L}\sin\theta=0. Writing it as a first-order system with ω=θ˙\omega=\dot\theta: θ˙=ω, ω˙=−bω−gLsin⁡θ\dot\theta=\omega,\ \dot\omega=-b\omega-\frac{g}{L}\sin\theta, there are two equilibria (mod 2π2\pi): (θ,ω)=(0,0)(\theta,\omega)=(0,0) (hanging down) and (π,0)(\pi,0) (balanced upright). Taking g/L=10 s−2g/L=10\text{ s}^{-2} and b=1 s−1b=1\text{ s}^{-1}, classify the stability of each.

Solution

The Jacobian of (θ˙,ω˙)(\dot\theta,\dot\omega) with respect to (θ,ω)(\theta,\omega) is J(θ,ω)=(01−gLcos⁡θ−b)J(\theta,\omega)=\begin{pmatrix}0&1\\-\frac{g}{L}\cos\theta&-b\end{pmatrix}.

At (0,0)(0,0): cos⁡0=1\cos0=1, so J=(01−10−1)J=\begin{pmatrix}0&1\\-10&-1\end{pmatrix}, with tr J=−1<0\text{tr}\,J=-1<0 and det⁡J=10>0\det J=10>0. Since (tr J)2−4det⁡J=1−40=−39<0(\text{tr}\,J)^{2}-4\det J=1-40=-39<0, the eigenvalues are complex with negative real part: (0,0)(0,0) is a stable spiral — the pendulum settles back to hanging straight down.

At (π,0)(\pi,0): cos⁡π=−1\cos\pi=-1, so J=(0110−1)J=\begin{pmatrix}0&1\\10&-1\end{pmatrix}, with det⁡J=−10<0\det J=-10<0. A negative determinant means the eigenvalues are real with opposite signs regardless of the trace, so (π,0)(\pi,0) is a saddle point.

A saddle point is always unstable: even though damping is present, any nudge away from the exact upright position grows along the unstable direction, so the pendulum falls rather than staying balanced — exactly as intuition predicts.

Example: Stability of fixed points in the logistic population model

The discrete logistic map xn+1=rxn(1−xn)x_{n+1}=rx_n(1-x_n) (with 0≤xn≤10\le x_n\le1 a normalized population and r>0r>0 a growth rate) has two fixed points: x∗=0x^{*}=0 and x∗=1−1rx^{*}=1-\frac{1}{r} (for r>1r>1). Using the one-dimensional stability test ∣f′(x∗)∣<1|f'(x^{*})|<1, find the range of rr for which each fixed point is stable.

Solution

The derivative of f(x)=rx(1−x)f(x)=rx(1-x) is f′(x)=r−2rxf'(x)=r-2rx.

At x∗=0x^{*}=0: f′(0)=rf'(0)=r, so the stability condition ∣f′(0)∣<1|f'(0)|<1 becomes ∣r∣<1|r|<1, i.e. 0<r<10<r<1 (recalling r>0r>0). In this range the population always dies out toward 00 regardless of starting size.

At x∗=1−1rx^{*}=1-\frac{1}{r} (which only exists for r>1r>1): f′ ⁣(1−1r)=r−2r(1−1r)=r−2r+2=2−rf'\!\left(1-\frac{1}{r}\right)=r-2r\left(1-\frac{1}{r}\right)=r-2r+2=2-r. The stability condition ∣2−r∣<1|2-r|<1 is equivalent to 1<r<31<r<3.

So for 0<r<10<r<1 the extinction equilibrium x∗=0x^{*}=0 is stable; for 1<r<31<r<3 that equilibrium becomes unstable (any nonzero population grows away from it) while the coexistence equilibrium x∗=1−1/rx^{*}=1-1/r takes over as the stable one; for r>3r>3 neither fixed point is stable and the population instead settles into oscillations or chaos — the celebrated period-doubling route that makes the logistic map a classic example in dynamical systems.

What is the difference between (Lyapunov) stability and asymptotic stability of an equilibrium x∗x^{*}?

At an equilibrium of a 2D system, the Jacobian has tr A=−3\text{tr}\,A=-3 and det⁡A=2\det A=2. Classify the equilibrium.

How do engineers use stability theory to certify that a drone's balance controller will recover from a small gust of wind?

What is a Lyapunov function used for?

References

  1. Steven H. Strogatz (2015). Nonlinear Dynamics and Chaos: With Applications to Physics, Biology, Chemistry, and Engineering
  2. Morris W. Hirsch, Stephen Smale, Robert L. Devaney (2013). Differential Equations, Dynamical Systems, and an Introduction to Chaos