ModelRisk example · General techniques
Event Counts over Time: Poisson and Pólya
How uncertain is next year's total of house calls? It depends on where the extra variation comes from.
From the model’s saved run
The year's total, three ways
The same expected calls every week; three amounts of randomness.
| Version | Mean | SD exact | SD simulated | 10th pct | 90th pct |
|---|---|---|---|---|---|
| Poisson | 1,604 | 40 | 40 | 1,552 | 1,656 |
| Pólya, each week | 1,603 | 131 | 132 | 1,436 | 1,775 |
| Pólya, shared level | 1,593 | 880 | 873 | 612 | 2,722 |
| Measure | Unit | Value |
|---|---|---|
| Expected total (every version) | calls | 1,605 |
S-curve (cumulative probability) of Poisson, Pólya, each week, Pólya, shared level from the saved simulation.
The business question
A medical practice makes house calls. It expects 27 calls a week now, growing by 0.2 a week, so about 37 a week by the end of the year. Calls arrive at random, which a Poisson process describes: its variance equals its mean.
The practice's records show more variation than that, which the Pólya process allows: the expected number is itself uncertain, Gamma distributed around the trend with an extra-variation parameter h = 0.3. Where does that uncertainty sit? If it is noise from week to week, busy and quiet weeks cancel out over the year.
If it is about the year as a whole (a busy year or a quiet one), it does not. The model runs the same trend three ways and compares the year's totals.
- Who it is for
- Anyone forecasting counts of events: calls, claims, failures, admissions, orders.
- Main outputs
- The year's total in three versions at P10 / median / P90 with exact and simulated standard deviations · weekly bands for the Poisson and the shared-level versions.
How the model works
Three sheets after this one, read from left to right. Each one feeds the next.
Inputs sheet
The expected calls per week (an intercept and a gradient) and the Pólya parameter h.
Weeks sheet
Each week's expected calls follow the trend. The Poisson version draws VosePoisson(expected). The Pólya version of the original example draws a Gamma with mean 'expected' and a new value each week. The shared version draws one Gamma level with mean 1 for the whole year and multiplies every week's expected calls by it.
Results sheet
The year's total in each version, with its exact standard deviation beside the simulated one, and the weekly bands of the Poisson and the shared versions.
ModelRisk techniques
Find similar models
- Product
- Type
- Application
- Uses
The results in detail
How to read these results
Beside them: 10th / 50th / 90th percentile bands of each week's calls.
Line chart: 90th percentile, Median, Mean, 10th percentile.
Line chart: 90th percentile, Median, Mean, 10th percentile.
- All three versions expect the same calls every week, about 1,600 in the year. They differ only in how random the weeks are.
- Poisson: a week's variance equals its mean, and over the year the standard deviation is the square root of the expected total, about 40 calls.
- Pólya, each week (the original example): each week has its own extra variation, but busy and quiet weeks cancel out over the year, so the total's standard deviation is only about 130.
- Pólya with a shared level: the extra variation belongs to the year as a whole, so it does not cancel. The standard deviation is about 880 and the total ranges from about 630 to 2,800 calls (10th to 90th percentile). A busy week now predicts busy weeks to come: this is the 'memory' that the original example's description mentions.
- Decide where your extra variation comes from before choosing: week-to-week noise, or uncertainty about the rate itself.
See it move. Open the workbook, change an input on the Inputs sheet and run the simulation: every table and chart on this page updates in Excel.
Inputs and assumptions
Every assumption in the model, with its uncertainty and where it comes from. The figures are illustrative.
Expected calls 2 inputs
A straight-line trend in the expected number of calls per week.
| Assumption | Unit | Value |
|---|---|---|
| Expected calls per week at the start (week 0) | calls | 27.0 |
| Increase per weekAbout 37 a week by week 50. | calls | 0.20 |
Extra variation 1 input
How much more the weekly numbers vary than a Poisson process.
| Assumption | Unit | Value |
|---|---|---|
| Pólya hA week's variance = mean + h × mean². 0 gives a Poisson process. | 0.30 |
Units and conventions
- Calls
- House calls per week.
- Pólya h
- The extra variation: a week's variance is mean + h × mean² instead of the Poisson's mean.
- Level
- The shared version's multiplier for the year: Gamma with mean 1 and variance h.
Key assumptions and limitations
- Independence
- Calls arrive independently within a week. In the Poisson and the weekly Pólya versions the weeks are also independent of each other.
- Trend
- Linear, as in the original examples.
- Data
- The trend (27 + 0.2 a week over 50 weeks) and h = 0.3 are those of ModelRisk's earlier Polya Time Series example. Its Poisson random walk example used the same Poisson model with 50 + 0.1 a period over 100 periods.
How to use it
- Set the trend and h on the Inputs sheet; h = 0 makes all three versions Poisson.
- Run a simulation from the ModelRisk ribbon (10,000 samples with a fixed seed are set).
- Decide which version matches where your extra variation comes from, and use its total.
ModelRisk functions used
- VosePoisson
- Each week's calls, around the expected number.
- VoseGamma
- The Pólya process's uncertain rate: VoseGamma(1/h, expected × h) each week, or VoseGamma(1/h, h) once as the year's level.
- VoseOutput
- The 50 weekly counts of each version as an output range, and the three totals.
- VoseSimMean, VoseSimStdev, VoseSimPercentile
- Statistics of the simulation, and the weekly bands.
Further reading
- Monte Carlo simulation explained (Vose guide)
- Vose, D. (2008). Risk Analysis: A Quantitative Guide, 3rd edition. Wiley: the Pólya and Poisson processes.
Download the workbook and run it yourself. It opens in Excel with ModelRisk. The free trial runs every example model.
Related example models
- ModelRisk★★★★★Envelope Correlation: Interest and Mortgage RatesHow do you make one variable follow another when you only know its range at a few points?Correlating two variables from expert ranges: the second's range follows the first.
- ModelRisk★★★★★Markov Chains: Marital Status in 25 YearsWhere will a group of 100 people be in 25 years?A population moving between four states each year, simulated two ways and checked against the exact expectation.
- ModelRisk★★★★★Pólya Regression Fitted to Accident DataHow many sports accidents next year, and the two after?A count regression fitted by maximum likelihood, projected with and without the uncertainty in its parameters.
An illustrative example: the figures are invented for teaching and do not describe a real company, project or asset. Last updated 9 October 2026.