Aggregate modeling in ModelRisk | Vose Software

Aggregate modeling in ModelRisk

See also: ModelRisk functions and windows

Aggregate calculation functions in ModelRisk


- Aggregate Monte Carlo
- Aggregate Panjer
- Aggregate De Pril
- Aggregate FFT

- Aggregate Multivariate Monte Carlo
- Aggregate Multivariate FFT

- Vose Stop Sum window
- Vose Sum Product window

Generating random values from the aggregate distribution

- VoseAggregateMC
- VoseAggregatePanjer
- VoseAggregateFFT
- VoseAggregateDePril
- VoseAggregateMultiMC
- VoseAggregateMultiFFT
- VoseAggregateMoments
- VoseAggregateMultiMoments

- VoseStopSum
- VoseSumProduct

Calculating joint (optionally cumulative) probability of given values under an aggregate distribution

- VoseAggregatePanjerProb
- VoseAggregateFFTProb
- VoseAggregateDePrilProb
- VoseAggregateMultiFFTProb

Calculating the log base 10 of the joint (optionally cumulative) probability of given values under an aggregate distribution

- VoseAggregatePanjerProb10
- VoseAggregateFFTProb10
- VoseAggregateDePrilProb10
- VoseAggregateMultiFFTProb10

It is very common in risk analysis that one needs to model the sum of a number of independent identical random variables. For example:

In insurance:

• The aggregate claim distribution for a portfolio of policies over a certain period

• The total claim distribution for an individual over a period

In human health:

• The total amount of drug that a population will require over a year

• The number of patient-days required in a year at a hospital

• The total exposure to a toxin over a lifetime

In engineering:

• The amount of downtime caused by failures of a network

• The parts inventory that needs to be carried to cover six months of replacement

In food safety:

• The total number of bacteria in a volume of liquid egg due to the contamination of the eggs used

• The total number of illnesses that result from a set of outbreaks

In business:

• The total amount of merchandise purchased by the public entering a store

• The total length of time spent talking to clients at a call center

The incorrect summing of random variables is one of the key causes of errors in risk analysis models. ModelRisk incorporates the latest and most powerful techniques available to provide simple and intuitive methods for modeling aggregate distributions.

The number of random variables to be added together is called the 'frequency (distribution)'. The size of each random variable to be summed is called the 'severity (distribution)'. The methods available in ModelRisk are listed below.

Pure Monte Carlo simulation

The ModelRisk function VoseAggregateMC automates a number of methods to most efficiently generate values for the sum of a number of independent identically distributed random variables.  Syntax:


For example:


will generate a random value from the sum of n Lognormal(15,5) distributions where n is taken from a Poisson(1000) distribution (the frequency distribution) and Lognormal(15,5) is the severity distribution.

Panjer's recursive method

Panjer (1981) determined an efficient method for directly calculating an approximation of the aggregate distribution where the frequency distribution is Poisson. Sundt later extended the technique so that we can now use the Panjer method with any of the following frequency distributions:  Poisson, Polya, Negative Binomial, Geometric, Logarithmic, Delaporte.

Use the VoseAggregatePanjer functions to calculate the Panjer aggregate distribution.

De Pril's recursive method

See also: Vose Aggregate DePril

Panjer's method is unstable with a Binomial frequency distribution, but the Binomial is needed to be able to model aggregate claims from a basket of life insurance policies. De Pril (1986) determined another recursive method for the binomial.

Use the VoseAggregateDePril functions to calculate the De Pril aggregate distribution.

Fast Fourier Transforms

Improved computing speed has resulted in recent years in the increased popularity of Fast Fourier Transform (FFT) methods to directly estimate aggregate distributions. They are more flexible than the Panjer method.

Use the VoseAggregateFFT functions to calculate the FFT aggregate distribution.

An extension to the FFT method allows one to calculate the total of a portfolio of aggregate distributions where the frequency distributions of each aggregate are correlated.

Use the VoseAggregateMultiFFT functions to calculate the total FFT aggregate distribution with multiple correlated frequency distributions.

Calculation of aggregate moments

If one knows the moments of both the frequency and severity distributions it is possible to directly determine the moments of the aggregate distribution.

The ModelRisk function VoseAggregateMoments will return the aggregate distribution for any combination of applicable univariate distributions available with ModelRisk, including when either or both distribution is truncated or shifted.

This is a powerful tool for ensuring that approximations are sufficiently accurate, which is why we have included these values for comparison in the Panjer, De Pril or FFT windows, in the exact column of the summary statistics table:

The example model Aggregate_moments demonstrates how one can use the direct calculation of aggregate moments to check for the accuracy of a Panjer or FFT calculation.

One application of directly determining aggregate moments has been to then use Method of Moments to fit some parametric distribution. If there is essentially no probability of the aggregate distribution taking a value of zero one can fit one of the continuous parametric distributions.

For example, the Gamma distribution with a positive shift is quite popular because one can fit to the first three moments (mean, variance, skewness). The AggregateMC, Panjer, FFT, De Pril and MultiFFT windows in ModelRisk allow the user to fit a distribution based on matching aggregate moments and place the fitted distribution in a spreadsheet. We don't recommend this method for critical analysis, and suggest that you at least compare the fitted parametric distribution to a Panjer or FFT first.


The VoseStopSum function simulates the number of random variables that are required to just exceed a given total.


The VoseSumProduct function simulates the sum of a number of random variables, each of which is itself a product of two or more random variables.