Inference for Masked Exchangeable System Lifetimes, Custom Distribution


Performs Bayesian inference via a signature based data augmentation MCMC scheme for masked system lifetime data for any custom component lifetime distribution. The underlying assumption is of exchangeability at the system level (iid components within each exchangeable system).


maskedInferenceEXCHCustom(t, signature, cdfComp, pdfComp, rParmGivenData,
                          rCompGivenParm, startCompParm, startHypParm, iter, ...)



a vector of masked system lifetimes.


the signature vector of the system/network for which inference is performed. It may be a list of signatures which results in topological inference on the system design being jointly performed over the collection of signatures provided.


user-defined vectorised cumulative distribution function of component lifetime F(y) with prototype: function(y, parametersm, ...)


user-defined vectorised probability distribution function of component lifetime f(y) with prototype: function(y, parameters, ...)


user-defined function which should produce random draws from f(Ξ | Y) with prototype:

function(y, ...)

This must return the new parameters as a 2 item list: the first item being the hyperprior parameters drawn in the same named vector format and order as startHypPriorParm; the second item being a list of component lifetime parameters drawn in the same named vector format and order as startCompParm.


user-defined function which should produce random draws from f(Y | Ψ) with prototype:

function(parameters, t, censoring, ...)

where censoring is -1 for left censoring, 0 for exact observations and 1 for right censoring.


list consisting of a vectors of starting values per system (in the same order as t) of named parameters for the component lifetime distribution. The order within each named vector should match the order expected for the parameters argument in the user defined functions above.


vector of starting values of named hyper-parameters for the hyperprior.


number of MCMC iterations to perform.


additional arguments which are passed through to the user-defined functions above.


This is a low level implementation of the signature based data augmented MCMC scheme described in Aslett (2012) for exchangeable systems. This function need only be used if the component lifetime distribution of interest has not already been implemented within this package.

The arguments of the function are the prerequisites described in Algorithm 6.2 of Aslett (2012). The interested user is advised to inspect the source code of this package at the file MaskedLifetimeInference_Exponential.R for an example of its usage, which may be seen in the function maskedInferenceEXCHExponential defined there, together with the associated user-definied functions above it.


If a single signature vector is provided above, then a data frame of MCMC samples with columns named the same as the startParm argument is returned.

If a list of signature vectors is provided above, then a list is returned containing three items:


A vector of posterior samples from the discrete marginal posterior distribution of topologies provided in the signature list.


A list of data frames of MCMC samples with columns named the same as the startCompParm argument.


A data frame of MCMC samples with columns named the same as the startHypPriorParm argument.


Please feel free to email with any queries or if you encounter errors when running this function.


Louis J.M. Aslett (


Aslett, L. J. M. (2012), MCMC for Inference on Phase-type and Masked System Lifetime Models, PhD Thesis, Trinity College Dublin.

See Also



# Please inspect the source of this package, file MaskedLifetimeInference_Exponential.R
# for example usage (see details section)

Want to suggest features or report bugs for Use the GitHub issue tracker. Vote for new features on Trello.

comments powered by Disqus