rmo: Sample from Marshall–Olkin distributions

View source: R/sample-rmo.R

rmoR Documentation

Sample from Marshall–Olkin distributions

Description

Draws n iid samples from a d-variate Marshall–Olkin distribution parametrized by shock-arrival intensities.

Usage

rmo(n, d, intensities, method = c("AM", "ESM"))

Arguments

n

an integer for the number of samples.

d

an integer for the dimension.

intensities

a numeric vector for the shock-arrival intensities.

method

a string indicating which sampling algorithm should be used. Use "AM" for the Arnold model and "ESM" for the exogenous shock model. We recommend using the ESM for small dimensions only; the AM can be used up until dimension 30.

Details

The Marshall–Olkin distribution was introduced in \insertCiteMarshall1967armo and has the survival function

\bar{F}{(t)} = \exp{≤ft\{ - ∑_{I} λ_I \max_{i \in I} t_i \right\}} , \quad t = {(t_{1}, …, t_{d})} > 0 ,

for shock-arrival intensities λ_I ≥q 0, \emptyset \neq I \subseteq {\{ 1 , …, d \}}. They are called shock-arrival intensities as they correspond to the rates of independent exponential random variables from the exogenous shock model (ESM), and a shock-arrival intensity λ_{I} of shock I equal to zero implies that the the shock I never arrives. We use the following binary representation to map a subsets of {1, …, d} to integers 0, …, 2^d-1:

I \equiv ∑_{k \in I}{ 2^{k-1} }

Simulation algorithms

Exogenous shock model

The exogenous shock model (ESM) simulates a Marshall–Olkin distributed random vector via independent exponentially distributed shock times for all non-empty subsets of components and defines each component as the minimum of all shock times corresponding to a subset containing this component, see \insertCite@see pp. 104 psqq. @Mai2017armo and \insertCiteMarshall1967armo.

Arnold model

The Arnold model (AM) simulates a Marshall–Olkin distributed random vector by simulating a marked homogeneous Poisson process with set-valued marks. The process is stopped when all components are hit by a shock, see \insertCite@see Sec. 3.1.2 @Mai2017armo and \insertCiteArnold1975armo.

Value

rmo returns a numeric matrix with n rows and d columns, with the rows corresponding to iid distributed samples of a d-variate Marshall–Olkin distribution with shock-arrival intensities intensities.

References

\insertAllCited

See Also

Other sampling-algorithms: rexmo(), rextmo(), rpextmo()

Examples

rmo(
    10, 3,
    c(0.4, 0.4, 0.1, 0.4, 0.1, 0.1, 0.4)
)
## independence
rmo(
    10, 3,
    c(1, 1, 0, 1, 0, 0, 0)
)
## comonotone
rmo(
    10, 3,
    c(0, 0, 0, 0, 0, 0, 1)
)

rmo(
    10, 3,
    c(0.4, 0.4, 0.1, 0.4, 0.1, 0.1, 0.4),
    method = "ESM"
)
## independence
rmo(
    10, 3,
    c(1, 1, 0, 1, 0, 0, 0),
    method = "ESM"
)
## comonotone
rmo(
    10, 3,
    c(0, 0, 0, 0, 0, 0, 1),
    method = "ESM"
)

rmo(
    10, 3,
    c(0.4, 0.4, 0.1, 0.4, 0.1, 0.1, 0.4),
    method = "AM"
)
## independence
rmo(
    10, 3,
    c(1, 1, 0, 1, 0, 0, 0),
    method = "AM"
)
## comonotone
rmo(
    10, 3,
    c(0, 0, 0, 0, 0, 0, 1),
    method = "AM"
)


hsloot/rmo documentation built on Feb. 20, 2023, 6:47 p.m.