HomeTechniques and Tips@RISK Simulation: Numerical ResultsConvergence Monitoring in @RISK

6.1. Convergence Monitoring in @RISK

Applies to: @RISK for Excel 4.5–7.x

I know that @RISK lets me set criteria for convergence monitoring, but how does it actually do the calculations?

Answer for @RISK 5.x–7.x:

Convergence monitoring means that @RISK keeps simulating until it has stable results for the outputs. To have @RISK monitor convergence, set the number of iterations to Auto, and then go to the Convergence tab of Simulation Settings.

Convergence can be done on any combination of the mean, standard deviation, and a specified percentile for any or all outputs. You specify a convergence tolerance such as 3%, and a confidence level such as 95%. The simulation stops when there is a 95% chance that the mean of the tested output is within 3% of its true value.  Analogous calculations are done if you monitor standard deviation or a percentile.

If you specify "Perform Tests on Simulated" for two or three items, @RISK considers convergence to have occurred only if all the selected measures meet the convergence test.

The setting "Calculate every ___ iterations" says how often in a simulation @RISK pauses to check whether convergence has occurred, but it has no effect on the stringency of the test.  It's simply a trade-off for efficiency: if you check convergence more often, you may converge in fewer iterations but in more time because convergence testing itself imposes some overhead. If you test convergence less often, it may take more iterations but less time for a similar reason.

With convergence testing selected, the Results Summary window will open automatically in a simulation to show progress toward convergence. The status column of that window shows OK for outputs that have converged.  But, typically, some outputs converge faster than others. If a given output has not converged, a number from 1 to 99 is shown in the status column.  That is @RISK's estimated percentage of the number of iterations done so far over the number that would be needed for this output to converge.  Example: if the number is 23, and you've done 10,000 iterations, then @RISK estimates that a total of about 10,000/23% = 43,500 iterations would be required for convergence.

See also:

Answer for @RISK 4.5:

Every N iterations (for example every 100 iterations, where N is user selectable), @RISK calculates these three statistics:

  • The relative change in the mean of the monitored output, which is
    (mean from previous test made N iterations ago - current mean) / max(abs(previous mean), abs(current mean))
  • The relative change in standard deviation.
  • The relative change in the average percentile. For this @RISK calculates the relative change in the 5th percentile, 10th, 15th, ..., 90th, 95th, then takes the average of these relative changes.

If all three of these statistics are less than or equal to the user-specified threshold, @RISK marks the simulation as converged for this test. If the simulation is marked as converged for 2 tests in a row @RISK considers it converged, and stops.

Last edited: 2017-06-30

This page was: Helpful | Not Helpful