Commonly used distributions

Normal distribution

1 x−μ 2 1 − ( ) Formula: f(x) = e 2 σ √2πσ2 Domain: −∞ < x < ∞

Parameters: Mean −∞ < μ < ∞ standard deviation σ > 0

Uniform distribution continuous – (real numbers) 0 x < LB or x > UB ( ) 1 Formula: f x = { LB ≤ x ≤ UB UB−LB Domain: LB < x < UB

Parameters: LB (Lower Bound), UB (Upper Bound)

Uniform distribution discrete (integer numbers)

xUB 0 or x not an integer Formula: f(x) = { 1 LB ≤ x ≤ UB UB−LB+1 Domain: LB ≤ x ≤ UB

LB = integer Parameters: UB = integer > LB

LB (Lower Bound), UB (Upper Bound)

Triangular distribution 0 x < Min or x > Max x−Min 2 ∙ (Max − Min) ∙ Min ≤ x ≤ Formula: f(x) = { Mode−Min x−Mode 2 ∙ (Max − Min) ∙ (1 − ) Mode < x ≤ Max Max−Mode Domain: Min ≤ x ≤ Max

Parameters: Min, Mode (likeliest), Max Fractile distributions (10/50/90 et al)

Formula: The distribution generates samples from specified list of Low Value (LV), Value (MV) and High Value (HV).

HV and LV are drawn with of 0.30 or 0.25; MV is returned with probability of 0.40 or 0.50 respectively depending on the selected option Gaussian or Swanson’s mean within the distribution dialog.

Domain: LV, MV, HV

Parameters: LV, MV, HV

Beta distribution discrete (integer numbers)

(푛−1)! Formula: f(x) = 푥푟−1(1 − 푥)푛−푟−1 (푟−1)!(푛−푟−1)!

Domain: 0 < x < 1

Parameters: 푟 > 0, 푛 > 푟

푟 Details: 푀푒푎푛 = ; 푟 = 표푐푐푢푟푎푛푐푒푠; 푛 = 푝표푝푢푙푎푡푖표푛 푠푖푧푒 푛

Beta distribution continuous (real numbers)

Γ(푎+푏) Formula: f(x) = 푥(푎−1)(1 − 푥)(푏−1) Γ(푎)Γ(푏)

Domain: 0 < x < 1

Parameters: 푎 > 0, 푏 > 0

푎 Details: 푀푒푎푛 = (푎+푏)

The parameters a and b can be parameterized from a mean μ and standard deviation σ:

휇(1−휇) a = 휇 ( − 1) 휎2

휇 푏 = (1 − 휇) ( (1 − 휇) − 1) 휎2

More continuous distributions

Dirichlet distribution (multivariate, normalized beta)

푥푗 Formula: 푝푗 = 푘 ∑푖=1 푥푖

Where 푥푖’s are sampled from Gamma distributions:

푥푖~퐺푎푚푚푎(훼푖, 1.0)

The parameters 훼1, 훼2, … 훼푘 are specified in the Alphas list of the dialog using following list statement:

List(훼1; 훼2; … ; 훼푘)

푘 Domain: 0 ≤ 푝푗 ≤ 1 where ∑푖=1 푝푖 = 1.0

Parameters: 훼1, 훼2, … 훼푘 Details: See Chapter 25.2.

Chi distribution

푛 1− −푥2 2 2 ( ) 푛−1 2θ2 Formula: f(x) = 푛 푥 푒 θ푛Γ( ) 2 Domain: 푥 > 0

Parameters: 푛 > 0, 휃 > 0

Chi-Squared distribution

푛 푥 ( −1) − 푥 2 푒 2휃 Formula: f(x) = 푛 푛 (2θ)2Γ( ) 2 Domain: 푥 > 0

Parameters: 푛 > 0, 휃 > 0

Erlang distribution

(푘휆)푘푥푘−1 Formula: f(x) = 푒−푘휆푥 (푘−1)!

Domain: 푥 > 0

Parameters: 푘 = 1,2, … 푛 integer

휆 > 0

Please note that the Erlang probability density function can also be represented using a related formula (as shown on Wikipedia):

휆 푘푥푘−1 f(x) = 푊 푒−휆푊푥 (푘−1)!

To convert the above scale parameter 휆푊 to TreeAge Pro’s scale parameter 휆 please use the following formula:

휆 λ = 푊 푘

Exponential distribution

Formula: f(x) = λ푒−휆푥

Domain: 푥 > 0

Parameters: 휆 > 0

Gamma distribution

휆훼푥(훼−1) Formula: f(x) = 푒−휆푥 Γ(훼)

Domain: 푥 > 0

Parameters: 훼 > 0, 휆 > 0

푎 Details: 푀푒푎푛 = 휆 The parameters 푎 and 휆 can be parameterized from a mean μ and standard deviation σ:

휇2 푎 = 휎2 휇 휆 = 휎2 Generalized

푥 푐 푐푥푐훼−1 −[ ] Formula: f(x) = 푒 훽 훽푐훼Γ(훼)

Domain: 푥 ≥ 0

Parameters: 훼 > 0, 훽 > 0, 푐 > 0

Gompertz distribution

휆 Formula: f(x) = 휆 푒푥푝 [훾푥 − (푒훾푥 − 1)] 훾

Domain: 푥 > 0

Parameters: 휆 > 0, 훾 > 0

Please note TreeAge Pro also implements optional alternative parameterization (as shown in Wikipedia):

f(x) = 푏휂 푒푥푝[푏푥 − 휂(푒푏푥 − 1)] where,

휆 휂 = 훾

푏 = 훾

Hyper-

Formula: f(x) = 2λ푝2푒−2휆푝푥 + 2λ(1 − 푝)2푒−2휆(1−푝)푥

Domain: 푥 > 0

Parameters: 휆 > 0, 0 < 푝 < 1

Laplace distribution

|푥−푎| 1 − Formula: f(x) = 푒 푏 2푏 Domain: −∞ < 푥 < ∞

Parameters: 푏 > 0, −∞ < 푎 < ∞

Logistic distribution

푎푒−(푎푥+푏) Formula: f(x) = 2 (1+푒−(푎푥+푏))

Domain: −∞ < 푥 < ∞

Parameters: 푎 > 0, −∞ < 푏 < ∞

Log-

(푏/푎)(푥/푎)푏−1 Formula: f(x) = 2 (1+(푥/푎)푏)

Domain: 0 ≤ 푥 < ∞

Parameters: 푎 > 0, 푏 > 0

Lognormal distribution

−(ln(푥)−휇)2 1 ( ) Formula: f(x) = 푒 2휎2 푥휎√2휋 Domain: 푥 > 0

Parameters: 휎 > 0, −∞ < 휇 < ∞

Details: The parameters 휇 and 휎 are the mean and standard deviation respectively, from the distribution of the ln(x), and can be approximated:

휇 = ln (푚푒푑푖푎푛)

푚푒푎푛 휎 = √2푙푛 ( ) 푚푒푑푖푎푛

Maxwell distribution

2 4푥2 −푥 Formula: f(x) = 푒 훼2 훼3√휋 Domain: −∞ < 푥 < ∞

Parameters: 훼 > 0

PERT distribution continuous

Γ(푎+푏) Formula: f(z) = 푧(푎−1)(1 − 푧)(푏−1) Γ(푎)Γ(푏)

This is the same formula as Beta continuous distribution, but with z rescaled by the PERT parameters.

Domain: min < x < max

푥−min z = for 0 < z < 1 (max −min)

Parameters: Min, Likeliest (Mode), Max, Shape

(푀푖푛 + (푆ℎ푎푝푒 ∗ 푀표푑푒) + 푀푎푥) Details: 푀푒푎푛 = 휇 = (푆ℎ푎푝푒 + 2)

The underlying Beta parameters a and b are functions of the PERT parameters:

( (휇 − min) ∗ (2∗mode − min − max) ) a = (mode − 휇) ∙ (max −min)

( a ∙ (max − 휇 )) 푏 = 휇 − min

푎∙푏 Pert Sigma 휎 = (max − min) ∙ √ (푎+푏)2∙(푎+푏+1)

Rayleigh distribution

−푥2 푥 ( ) Formula: f(x) = 푒 2훼2 훼2 Domain: 푥 > 0

Parameters: 훼 > 0

Weibull distribution

푘 Formula: f(x) = 휆푘푥푘−1푒−휆푥

Domain: 푥 > 0

Parameters: 휆 > 0, 푘 > 0

Please note that the Weibull probability density function can also be represented using a related formula (as shown on Wikipedia):

푘 푥 푘 푥 푘−1 −( ) f(x) = ( ) 푒 휆푊 휆푊 휆푊

To convert the above scale parameter 휆푊 to TreeAge Pro’s scale parameter 휆 please use the following formula:

1 λ = 푘 (휆푊) The shape parameter k is identical in both formulas.

Note: For values of k smaller than 0.05 the resulting samples are likely to fall outside of numerical precision of 푥 < ~5.0 ∙ 10−324 or 푥 > ~1.8 ∙ 10308, these values will result in calculation errors, where expressions could not be evaluated.

More discrete distributions

Binomial distribution

n 푥 푛−푥 Formula: P(x) = (x)푝 (1 − 푝) Domain: 푥 = 0, 1, 2, … , 푛

Parameters: 0 < 푝 < 1, 푛 = 1, 2, 3, …

Poisson distribution

휆푥 Formula: P(x) = 푒−휆 푥! Domain: 푥 = 0, 1, 2, …

Parameters: 휆 > 0

Other distributions

TableProb distribution

The TableProb distribution takes as its input either a probability table or cumulative probability table. Typical use case of this distribution is to sample time to death directly from a mortality table.

The first entry in the probability table and cumulative probability table has to be equal to 0 and the last entry has to be equal to 1. The index for these tables represents time in cycles (typically year). Make sure that your model time horizon is shorter than the last time entry in the table. For model time horizon of 80 years make sure that the probability table or the cumulative probability table has entries beyond 80 years, at least there is an entry 1 at index 81.

Sampling from cumulative probability table is straightforward. A random number between 0 and 1 is sampled. The random number is than used for reverse look- up of the indices (cycle time) that contain the random number. Finally linear interpolation is performed to return the fraction cycle time corresponding to the random number.

Sampling from probability table involves an internal step of converting the probability table to cumulative probability table. The following calculations are performed to convert probability table to cumulative probability table:

퐶퐷퐹0 = 0

퐶퐷퐹1 = 푝1 퐶퐷퐹2 = 푝2 ∙ (1 − 퐶퐷퐹1) + 퐶퐷퐹1

퐶퐷퐹푛 = 푝푛 ∙ (1 − 퐶퐷퐹푛−1) + 퐶퐷퐹푛−1

퐶퐷퐹푛+1 = 푝푛+1 ∙ (1 − 퐶퐷퐹푛) + 퐶퐷퐹푛 Additional option for conversion of probability tables to cumulative probability tables is interpolation. If the probability table has definitions for each integer value from 0, 1, …, N-1, N you do not need to use interpolation. However, if the probability table is “sparse” e.g. 0, 5, 10, 15, …, N then interpolation option will enable creation of cumulative probability table that will approximate results obtained from a Markov model using the “sparse” probability table.