← BlogCombat Modeling· 4/4

Lanchester's Laws — The Mathematics of Concentration and the Attrition Combat Model

The mathematics of attritional combat formalized by Lanchester in 1916 — the Square Law (advantage of concentration) versus the Linear Law (area fire), and the abstract model foundation for solving large-scale engagements fast.

~4 min
combat-modelingLanchesterattritionsalvosimulation-basics

Lanchester's Laws

Running a full physics simulation for a large-scale engagement — thousands against thousands — is computationally prohibitive. That is why combat can be abstracted into one or two equations and solved rapidly. The root of this approach is the attrition law formalized in 1916 by aeronautical engineer Frederick Lanchester.

Two Attrition Laws

The core idea is to write differential equations for "how force strength decays." The form of the weapon determines which law applies.

Rendering diagram…
  • Square Law — Each combatant aims at a specific individual target, as in modern direct-fire weapons. Attrition rate dB/dt = -a·R. Combat power scales with force squared → "twice the force, four times the combat power."
  • Linear Law — Fire is spread across an area rather than aimed individually (ancient melee, unguided artillery). Combat power scales linearly with force.

💡 "The mathematical case for concentration" — The Square Law proves mathematically why force must be concentrated. Even with the same total force, splitting it into separate engagements denies the squared effect. The power of defeating enemies in detail is encoded in a single differential equation.

Written as code, the square law's conserved quantity shows why combat power scales with the square of force.

# Lanchester's square law — aimed direct fire (each unit targets one enemy)
def attrition_step(blue, red, a, b, dt):
    blue -= b * red  * dt    # losses proportional to the opposing force
    red  -= a * blue * dt
    return blue, red
# conserved: a*blue^2 - b*red^2 stays constant -> combat power ∝ force^2  (edge of concentration)

Hits Are Probabilistic — The Salvo Formula

Real engagements are not "fire and hit." There is a probability of hit. When firing n rounds, the probability that at least one connects follows the salvo formula.

Ph_salvo = 1 − (1 − Ph)^n
   Ph = single-shot hit probability,  n = rounds fired

The effectiveness coefficient for one weapon type is roughly a = Ph_salvo × Pk × ROF (salvo hit probability × kill probability × rate of fire), expressing "expected kills per shooter per unit time." Plugging these coefficients into the Lanchester equations solves multi-unit, mixed-weapon engagements rapidly.

⚠️ An unvalidated OR model is wrong — Abstract models are fast, but incorrect coefficients (Pk, Ph) corrupt the result entirely. The right workflow is: use the abstract model to screen candidates quickly, then calibrate with kill rates measured in the physics simulation — a multi-resolution approach.

Why Abstract Models?

Physics simulation is precise but expensive. Lanchester-style abstract models can solve corps-level engagements in milliseconds — near-instantaneous results for thousands of entities. The role of the abstract engagement model is as a "fast first filter": sweep hundreds of courses of action (COA) rapidly, then apply the expensive physics simulation only to the most promising ones.

In a nutshell

📌 Lanchester's laws quantify combat attrition — Square Law (aimed direct fire, power ∝ force², advantage of concentration) vs. Linear Law (area fire). Hits are treated probabilistically with the salvo formula; the abstract model solves corps-level engagements in milliseconds to filter COAs quickly, then physics simulation calibrates the coefficients.

See standard test results with videos and verdict evidence on the imSim Portal.

View public results →