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
f(t)=(f(0)-int(0,t,d(t)exp(-kt)))*exp(kt)
where int(x,y,g(t)) is the integral of g(t)
from t=x to t=y.
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.,
k-a>lln is bigger than 1k-a=lA(0)>0
and B(0)>0)k-a<lA(0)
and B(0): if B(0)/A(0) < a/(l-k+a),
then B collapses at time T above, otherwise it does notNote 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:
R := a*A(0)2 - b*B(0)2 = 0R > 0A(T)=sqrt(R/a) which corresponds
to B(T)=0, i.e., B being destroyed.R < 0B(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.
| Sam Steingold<sds@gnu.org> | created: 2010-07-02 |