Four Historical Decisions an ABM Would Have Changed
The Pattern That Keeps Repeating
Smoot-Hawley was not a one-off. It was one instance of something older: a decision-maker looking at a complex system through a linear lens, pulling one lever, and watching everything else respond in ways they did not anticipate.
The same failure mode appears across a century of history. Different leaders, different domains, different scales. The same missing tool.
Versailles, 1919
The architects of the Treaty of Versailles wanted to punish Germany and prevent another war. The logic was direct: weaken Germany militarily, extract reparations, remove the threat.
The problem was not the goal. It was the model of human behaviour underneath it.
Germany in 1919 was a population of 60 million people, each accumulating grievances at different rates depending on unemployment, inflation, humiliation, and the perception of injustice. An ABM with even crude psychological parameters would have flagged what eventually happened: when enough individuals cross their own radicalisation threshold, aggregate political behaviour changes phase. The Weimar Republic did not fail because of one bad policy. It failed because the total grievance load in the population exceeded the threshold for political stability — and no one modelled that load.
A threshold ABM on the German population, run against the Versailles terms and the subsequent inflation, would have output a warning: the treaty pushes the aggregate grievance distribution past the critical percentile without an offsetting stabilisation package. That was the decision that needed to change.
Soviet Collectivisation, 1930
Stalin’s planners believed grain could be extracted from rural peasants by administrative decree. Collectivise the farms, set production quotas, and the output required to industrialise the nation would materialise.
The peasants had a different response function.
When forced to surrender their grain and livestock, many peasants slaughtered their animals rather than hand them over. This was individually rational under coercion: if the state is going to take everything, own nothing. But the aggregate of this response was catastrophic. Livestock herds collapsed by a third. Grain output fell. The famine that followed was not an accident of nature.
An ABM with two agent types — peasants with threshold responses to expropriation, and planners with a linear production model — would have generated the feedback loop automatically. Push the expropriation rate high enough, and you do not get more grain. You get less. The model does not need to be sophisticated. It needs to contain the agents whose behaviour actually drives the outcome.
The Maginot Line, 1940
The Maginot Line was not naive. It was a fortification system that would have made a direct German attack across the Franco-German border enormously costly. It achieved exactly what it was designed to do.
The problem was that it was not built against a static adversary.
A game-theoretic ABM — one with a German military agent that updates its strategy in response to the obstacle — would have found the Ardennes route within a few iterations. You have a fixed obstacle on the eastern border. The adversary has mobility. If one path is blocked, the adversary searches for another. The French planners modelled their own fortification. They did not model the adversary’s adaptation to it.
This is perhaps the starkest case. The insight is not subtle. If you add one adaptive adversary agent and let it run for ten steps, it finds the gap. The French military knew the Ardennes was lightly defended. They assessed the terrain as impassable for armour. They were wrong — and the error was in the model of the adversary’s capabilities, not in the engineering of the line.
Vietnam, 1960s
Robert McNamara was not incompetent. He was a capable systems analyst. His error was choosing the wrong variable to measure and then optimising hard for it.
The Defence Department tracked body count. Killed enemies per week, per month, per year. The number went up. The model said this meant progress.
What the model did not contain was the other population: South Vietnamese civilians, whose support was a dynamic variable responding directly to military tactics. Every village destroyed, every errant strike, every displacement moved agents through a state transition — from neutral to hostile. The civilian population was not background noise. It was the state variable the whole campaign depended on.
An ABM tracking civilian sentiment alongside military events would have shown what historians confirmed later: the kill-count was rising and the support base was collapsing at the same time. Those were not separate phenomena. They were causally linked. The model McNamara used could not see the link because it only contained one of the two populations.

The Common Thread
Four events. Four different domains. Four different eras.
In each case, the decision-makers had a model. The model was internally consistent. It addressed the question it was built to answer. The problem was that it only modelled the decision-maker’s own system — not the other agents in the system who had their own response functions, thresholds, and adaptive strategies.
Agent-based modelling does not guarantee better decisions. But it forces one question: who else is in the system, and how do they respond? That question, asked early enough, changes what gets built, where troops are sent, how much grain gets demanded, and which treaty gets signed.
It is not a complicated question. It just requires asking it before the ink dries.
Building a market simulation or calibration pipeline? I’d be glad to help.