Military Applications of Ordinary Differential Equations

Ordinary differential equations have a long and noble history, starting at least with Newton's teacher Barlow. This is a beautiful field with many important applications. Here I will discuss just two of them.



Consider a country with a GDP of f which should satisfy the equation

  f'(t) = kf(t) - d(t)

where t is time (measured in years), and f' is the derivative with respect to it, k is the (constant, for simplicity) coefficient determining the pace of the normal economic growth (e.g., ln(1.03), or, approximately, 0.03, for 3% annual growth), and d is the non-productive expenditures (e.g., defense).


It is not hard to solve this first order linear non-homogeneous equation: first solve the homogeneous part to get f=c*exp(kt) and then make the constant c vary to get


where int(x,y,g(t)) is the integral of g(t) from t=x to t=y.

Two nations

Now, suppose there are two hostile but non-belligerent nations with economy sizes A and B respectively (we will call these nations just A & B too). Suppose A always spends a fixed fraction of its GDP on defense: d(t)=a*A(t). It is easy to see that in that case A(t)=A(0)exp((k-a)t), where A(0) is the positive initial condition. Note the implication: spending more than growth on defense (a>k) will lead to the economic collapse (in this model).

To maintain military parity, B has to match A's defense expenditures, i.e. B(t)'=lB(t)-aA(0)exp((k-a)t) (we do not assume that A and B grow at the same rate, i.e., k=l). This leads to the following solution:

  B(t) = exp(lt)*(B(0) - int(0,t,aA(0)exp((k-a)t)*exp(-lt)))
       = exp(lt)*(B(0) - int(0,t,aA(0)exp((k-a-l)t)))
       = exp(lt)*(B(0) - aA(0)(exp((k-a-l)t) - 1) / (k-a-l))

or, when k-a=l,

  B(t) = exp(lt)*(B(0) - aA(0)t)

where B(0) is the positive initial condition.


The critical issue is whether B will be able to maintain this arms race and for how long. The test is simple: B(T)=0 means that at time t=T B's economy has collapsed under the burden of the defense spending:

  0 = B(0) - aA(0)(exp((k-a-l)T) - 1) / (k-a-l)
  T = ln(1 + (k-a-l)B(0)/(aA(0))) / (k-a-l)

or, when k-a=l, T=B(0)/aA(0).

The collapse condition is T>0, i.e.,

when k-a>l
the collapse is inevitable since the expression under ln is bigger than 1
when k-a=l
the collapse is inevitable (since A(0)>0 and B(0)>0)
when k-a<l
the fate of B depends on the initial conditions A(0) and B(0): if B(0)/A(0) < a/(l-k+a), then B collapses at time T above, otherwise it does not

Note that the critical value for l (the B's rate of growth) is k-a, and not k.




Consider two military units fighting in the field. A military unit is characterized by its size (which can change in time due to losses and arrival of reinforcements) and the firepower (i.e., the ability to inflict losses on the enemy unit). The evolution in time of the unit sizes can be described by the system of ODEs:

  A'(t) = - b*B(t)
  B'(t) = - a*A(t)

Where A and B are the sizes of the units and a and b are their firepowers.


This is a system of two linear homogeneous first order equations and they can easily be solved explicitly using standard methods. However, we do not care about the time dynamics, we only care about the outcome: who wins and what losses will the winner sustain, so we can take a shortcut.

Multiply the first equation by aA, the second equation by bB, and subtract them to get

  aAA' - bBB' = 0

and, integrating:

  a*A2 - b*B2 = const

i.e., points (A(t),B(t)) travel along hyperbolas.

Thus the outcome can be determined as follows:

If R := a*A(0)2 - b*B(0)2 = 0
the outcome is a draw: both units will be destroyed.
If R > 0
then A will win, and its final size will be A(T)=sqrt(R/a) which corresponds to B(T)=0, i.e., B being destroyed.
If R < 0
then B will win, and its final size will be B(T)=sqrt(-R/b) which corresponds to A(T)=0, i.e., A being destroyed.


The derivative

  dA(T)           A(0)
  ----- = ---------------------- > 1
  dA(0)   sqrt(A(0)2 - B(0)2b/a)

This means that adding a small amount to the initial size A(0) increases the final size A(T) by more than the increment in the initial size.

This effect is most pronounced when R is close to 0 (i.e., when the outcome is uncertain) and decreases as the superiority of the winning side increases.


Increasing numeric superiority reduces casualties, especially when the opponens are almost evenly matched.

Attacking the enemy unit-by-unit by an overwhelming concentration can help win against even a superior force.

This is fully applicable to "stacks of ships" in Master of Orion, even though the correct model there must be stochastic.

Relevant links