Extreme Optimization >
User's Guide >
Statistics Library >
Discrete Probability Distributions >
The Poisson Distribution
Extreme Optimization User's Guide
User's Guide
Up: Discrete Probability Distributions Next: The Discrete Uniform Distribution Previous: The Negative Binomial Distribution Contents
The Poisson Distribution
The Poisson distribution models the number of occurrances of an
event where each event has a constant probability of occurring. It
is closely related to the exponential
distribution, which models the time between successive
occurrances.
The Poisson distribution has one parameter, μ ('mu'), which
specifies the mean number of occurrances per unit time.
Examples of applications of the Poisson distribution are:
- The number of cars passing a road that is not too busy.
- The number of failures of a piece of equipment that is replaced
with identical copies when it fails.
The Poisson distribution is often used as an approximation for
the binomial distribution,
when the number of trials is very large and the probability of
success is small.
The Poisson distribution is implemented by the
PoissonDistribution class. It has one constructor which
has one parameter: the mean number of events per unit time. The
following constructs a Poisson distribution with mean 4.4:
| C# | Copy Code |
PoissonDistribution poisson = new PoissonDistribution(4.4); |
| Visual Basic | Copy Code |
Dim poisson As PoissonDistribution = New PoissonDistribution(4.4) |
The PoissonDistribution class has no specific
properties. The mean number of events per unit time is returned by
the
Mean property.
PoissonDistribution 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 = PoissonDistribution.GetRandomVariate(random, 4.4); |
| Visual Basic | Copy Code |
Dim random As MersenneTwister = New MersenneTwister()
Dim variate As Double = PoissonDistribution.GetRandomVariate(random, 4.4) |
The above example uses the Mersenne
Twister to generate uniform random numbers.
For details of the properties and methods common to all discrete
probability distribution classes, see the topic on DiscreteDistribution
class.