2.5 Summary

The KSL contains packages that support the generation of random numbers, random variates, and the modeling of probability distributions that are commonly found in practice. These constructs facilitate the incorporation of randomness within simulation modeling. The following additional classes may be of interest:

  • ShiftedRV - models random variables that have their domain shifted to the right
  • MixtureRV - models random variables that are expressed as a mixture distribution. That is, a distribution that is a weighted mixture of other distributions
  • AcceptanceRejectionRV - permits the implementation of the acceptance and rejection algorithm for generating random variates in a general manner
  • InverseCDFRV - facilitates the implementation of the inverse transform method via bisection search of the CDF
  • RatioOfUniformsRV - facilitates the implementation of the ratio of uniforms method for generating random variates

In addition, the KSL has additional utilities that assist the modeler with common aspects of working with arrays and generating arrays of data. That is, the generation of multi-variate random vectors of data. The following classes may be of interest for situations involving multi-variate distributions:

  • RArrays - defines extension functions for randomly sampling from arrays and some lists
  • MVSampleIfc - defines the interface for generating random arrays of data
  • MVRVariableIfc - the multi-variate analog for the RVariableIfc
  • MVRVariable - an abstract base class for defining multi-variate random variables
  • MVIndependentMarginals - a concrete implementation for generating independent vectors that have specified random variates for each coordinate of the vector.

Some of these more advanced capabilities will be illustrated in future chapters.