MiroFish
← Field notes

The math behind AI scenario modeling, explained simply

March 5, 2026 · 4 min read · Target keyword: AI decision modeling

The math under a modern scenario engine is not new. Most of it has been sitting in operations research and Bayesian statistics textbooks for decades. What's new is that you can now describe your situation in English and have a system pick which math to apply on your behalf. The picking is the trick.

This is a non-defensive walkthrough of what's actually going on. No formulas you can't read out loud.

Step one: framing the random variables

Behind every scenario is a list of things the engine has chosen to treat as uncertain. In a hiring decision, that might be ramp time, attrition rate, and pipeline conversion. Each of these becomes a random variable — meaning the engine doesn't have one value for it, it has a distribution of possible values, with some weighted as more likely than others.

The engine picks the distributions in two passes. First, it consults what it knows generally — "ramp time for senior AEs in B2B SaaS averages around 6 months with a long tail." Then it adjusts based on the specifics of your situation that you gave it.

Step two: sampling, not enumeration

If you have ten uncertain variables and each one has, say, five plausible values, there are about ten million combinations. You cannot run them all. You also shouldn't, because most of them are functionally identical — the difference between ramp = 5.8 months and ramp = 5.9 months is noise.

So the engine samples. It draws maybe two hundred combinations from the joint distribution, runs each one forward, and clusters the results. The clusters are your branches. The size of each cluster is approximately its probability.

This is just Monte Carlo simulation with cluster analysis on top. It's been the workhorse of risk modeling since the 1940s. The AI part is being able to set up the simulation from a paragraph instead of a spec.

Step three: weighting the branches

The probabilities the engine puts on each branch are soft. They're not derived from a frequentist count of historical occurrences. They're a combination of the cluster sizes from sampling, the engine's prior beliefs about which variable combinations are plausible, and any calibration data the system has from comparing its past predictions to outcomes.

A well-built engine is honest about this. If it says a branch has 30% probability, it means "this branch is consistent with about 30% of the futures I sampled, given my assumptions." Not "I have run this experiment a thousand times and it lands here 30% of the time." Those are very different claims.

Step four: calibration

The thing that separates a serious scenario engine from a clever guesser is calibration. Calibration is the boring practice of measuring, over many predictions, whether the engine's stated probabilities match observed frequencies. If the engine says "70% confident" a thousand times, did those predictions come true ~700 times?

If they did, the engine is well-calibrated and you can trust the numbers as numbers. If the engine's 70%-confident predictions only come true 50% of the time, the engine is overconfident — its numbers are still useful as a ranking (its 70% beats its 30%), but you should mentally discount the absolute values.

Every engine should publish its calibration curve. Most don't, yet. Ask for it.

Step five: the explanation layer

The math gives you cluster sizes. The explanation layer turns each cluster into a story you can read. This is the part that's genuinely new in the last few years — it's where the language model earns its keep. Given the cluster of sampled futures and the variables that distinguish it, the system writes a paragraph about what happened and why. This is the closest thing to "the AI is reasoning" you'll see, but underneath it's still summarization.

What it doesn't do

It doesn't predict the future. It samples from a distribution that it has constructed from its priors and your inputs. If the priors are wrong (the engine has bad training data for your situation) or the inputs are wrong (you gave it numbers that don't reflect reality), the output is wrong in a way the math cannot rescue. The math is the easy part. The setup is the hard part. The setup is what most users underinvest in.

If you remember one thing from this: scenario engines are honest about uncertainty in their internal mechanics, and that honesty is usually the most valuable output. The numbers it shows you are a structured form of "I don't know, but here's the shape of what I don't know." That shape is genuinely useful.