Extreme Optimization >
User's Guide >
Statistics Library >
Continuous Probability Distributions >
The Exponential Distribution
Extreme Optimization User's Guide
User's Guide
Up: Continuous Probability Distributions Next: The F Distribution Previous: The Erlang Distribution Contents
The Exponential Distribution
The exponential distribution can be used to model the time until
an event occurs, or the time between two events. Examples of
quantities that can be modeled using the exponential distribution
are:
- The time between phone calls in a call center.
- The time until a machine fails.
The exponential distribution is related to the Poisson
distribution. Where the Poisson distribution models the number
of occurrances of an event in a specified time span, the
exponential distribution models the time between these occurrances.
The probability of an event is assumed to be constant.
The exponential distribution has one parameter, usually denoted
by the Greek letter (mu). When the time until failure is being
modeled, specifies the mean time to failure. When the time between
events is being modeled, then specifies the mean time between two
occurrances. This parameter acts as a scale parameter of the
distribution.
The exponential distribution is a special case of the Erlang distribution with shape
parameter 1.
The probability density function (PDF) of the exponential
distribution is:

The exponential distribution is implemented by the
ExponentialDistribution
class. It has two constructors. The first constructor has one
parameter: the scale parameter of the distribution. The following
constructs an exponential distribution with waiting time (scale
parameter) 7.6:
| C# | Copy Code |
ExponentialDistribution exponential = new ExponentialDistribution(7.6); |
| Visual Basic | Copy Code |
Dim exponential As ExponentialDistribution = New ExponentialDistribution(7.6) |
If a variable is assumed to have an exponential distribution,
then the parameter of the distribution can be estimated using the
method of maximum likelihood, which gives the same results as the
method of matching moments. The second constructor performs this
calculation. It takes one parameter: a NumericalVariable
whose distribution is to be estimated.
Note that parameter estimation says nothing about how well the
estimated distribution fits the variable's distribution. Use one of
the goodness-of-fit tests to verify the appropriateness of the
choice of distribution.
The ExponentialDistribution class has one specific
property,
ScaleParameter, which returns the scale parameter of
the distribution. This parameter commonly corresponds to the
average waiting time until an event occurs.
ExponentialDistribution has one static
(Shared in Visual Basic) method,
GetRandomVariate, which generates a random variate
using a user-supplied uniform random number generator.
| C# | Copy Code |
MersenneTwister random = new MersenneTwister();
double variate = ExponentialDistribution.GetRandomVariate(random, 7.6); |
| Visual Basic | Copy Code |
Dim random As MersenneTwister = New MersenneTwister()
Dim variate As Double = ExponentialDistribution.GetRandomVariate(random, 7.6) |
The above example uses the Mersenne
Twister to generate uniform random numbers.
For details of the properties and methods common to all
continuous distribution classes, see the topic on ContinuousDistribution
class.
Up: Continuous Probability Distributions Next: The F Distribution Previous: The Erlang Distribution Contents
Copyright 2004-2008,
Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M
Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual
Studio.NET, and the Visual Studio Logo are registered trademarks of Microsoft Corporation