SSJ
V. 2.6.

umontreal.iro.lecuyer.probdist
Class BernoulliDist

java.lang.Object
  extended by umontreal.iro.lecuyer.probdist.DiscreteDistributionInt
      extended by umontreal.iro.lecuyer.probdist.BernoulliDist
All Implemented Interfaces:
Distribution

public class BernoulliDist
extends DiscreteDistributionInt

Extends the class DiscreteDistributionInt for the Bernoulli distribution with parameter p, where 0 <= p <= 1. Its mass function is given by

f (x) = 1 - p,          if x = 0;
f (x) = p,          if x = 1;
f (x) = 0,          otherwise.

Its distribution function is

F(x) = 0,          if x < 0;
F(x) = 1 - p,          if 0 <= x < 1;
F(x) = 1,          if x >= 1.


Field Summary
 
Fields inherited from class umontreal.iro.lecuyer.probdist.DiscreteDistributionInt
EPSILON
 
Constructor Summary
BernoulliDist(double p)
          Creates a Bernoulli distribution object.
 
Method Summary
static double barF(double p, int x)
          Returns the complementary Bernoulli distribution function bar(F)(x) = P[X >= x] with parameter p.
 double barF(int x)
          Returns bar(F)(x), the complementary distribution function.
static double cdf(double p, int x)
          Returns the Bernoulli distribution function F(x) with parameter p (see eq.).
 double cdf(int x)
          Returns the distribution function F evaluated at x (see).
static BernoulliDist getInstanceFromMLE(int[] x, int m)
          Creates a new instance of a Bernoulli distribution with parameter p estimated using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1.
 double getMean()
          Returns the mean of the distribution function.
static double getMean(double p)
          Returns the mean E[X] = p of the Bernoulli distribution with parameter p.
static double[] getMLE(int[] x, int m)
          Estimates the parameters p of the Bernoulli distribution using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1.
 double getP()
          Returns the parameter p of this object.
 double[] getParams()
          Returns an array that contains the parameter p of the current distribution: [p].
 double getStandardDeviation()
          Returns the standard deviation of the distribution function.
static double getStandardDeviation(double p)
          Computes the standard deviation of the Bernoulli distribution with parameter p.
 double getVariance()
          Returns the variance of the distribution function.
static double getVariance(double p)
          Computes the variance Var[X] = p(1 - p) of the Bernoulli distribution with parameter p.
static int inverseF(double p, double u)
          Returns the inverse of the Bernoulli distribution function with parameter p at u.
 int inverseFInt(double u)
          Returns the inverse distribution function F-1(u), where 0 <= u <= 1.
static double prob(double p, int x)
          Returns the Bernoulli probability f (x) with parameter p (see eq.).
 double prob(int x)
          Returns p(x), the probability of x.
 void setParams(double p)
          Resets the parameter to this new value.
 String toString()
           
 
Methods inherited from class umontreal.iro.lecuyer.probdist.DiscreteDistributionInt
barF, cdf, getXinf, getXsup, inverseF
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BernoulliDist

public BernoulliDist(double p)
Creates a Bernoulli distribution object.

Method Detail

prob

public double prob(int x)
Description copied from class: DiscreteDistributionInt
Returns p(x), the probability of x.

Specified by:
prob in class DiscreteDistributionInt
Parameters:
x - value at which the mass function must be evaluated
Returns:
the mass function evaluated at x

cdf

public double cdf(int x)
Description copied from class: DiscreteDistributionInt
Returns the distribution function F evaluated at x (see).

Specified by:
cdf in class DiscreteDistributionInt
Parameters:
x - value at which the distribution function must be evaluated
Returns:
the distribution function evaluated at x

barF

public double barF(int x)
Description copied from class: DiscreteDistributionInt
Returns bar(F)(x), the complementary distribution function. See the WARNING above.

Overrides:
barF in class DiscreteDistributionInt
Parameters:
x - value at which the complementary distribution function must be evaluated
Returns:
the complementary distribution function evaluated at x

inverseFInt

public int inverseFInt(double u)
Description copied from class: DiscreteDistributionInt
Returns the inverse distribution function F-1(u), where 0 <= u <= 1. The default implementation uses binary search.

Overrides:
inverseFInt in class DiscreteDistributionInt
Parameters:
u - value in the interval (0, 1) for which the inverse distribution function is evaluated
Returns:
the inverse distribution function evaluated at u

getMean

public double getMean()
Description copied from interface: Distribution
Returns the mean of the distribution function.


getVariance

public double getVariance()
Description copied from interface: Distribution
Returns the variance of the distribution function.


getStandardDeviation

public double getStandardDeviation()
Description copied from interface: Distribution
Returns the standard deviation of the distribution function.


prob

public static double prob(double p,
                          int x)
Returns the Bernoulli probability f (x) with parameter p (see eq.).


cdf

public static double cdf(double p,
                         int x)
Returns the Bernoulli distribution function F(x) with parameter p (see eq.).


barF

public static double barF(double p,
                          int x)
Returns the complementary Bernoulli distribution function bar(F)(x) = P[X >= x] with parameter p.


inverseF

public static int inverseF(double p,
                           double u)
Returns the inverse of the Bernoulli distribution function with parameter p at u.


getMLE

public static double[] getMLE(int[] x,
                              int m)
Estimates the parameters p of the Bernoulli distribution using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1. The estimate is returned in a one-element array: [p].

Parameters:
x - the list of observations used to evaluate parameters
m - the number of observations used to evaluate parameters
Returns:
returns the parameter [hat(p)]

getInstanceFromMLE

public static BernoulliDist getInstanceFromMLE(int[] x,
                                               int m)
Creates a new instance of a Bernoulli distribution with parameter p estimated using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1.

Parameters:
x - the list of observations to use to estimate the parameters
m - the number of observations to use to estimate the parameters

getMean

public static double getMean(double p)
Returns the mean E[X] = p of the Bernoulli distribution with parameter p.

Returns:
the mean of the Bernoulli distribution E[X] = np

getVariance

public static double getVariance(double p)
Computes the variance Var[X] = p(1 - p) of the Bernoulli distribution with parameter p.

Returns:
the variance of the Bernoulli distribution

getStandardDeviation

public static double getStandardDeviation(double p)
Computes the standard deviation of the Bernoulli distribution with parameter p.

Returns:
the standard deviation of the Bernoulli distribution

getP

public double getP()
Returns the parameter p of this object.


getParams

public double[] getParams()
Returns an array that contains the parameter p of the current distribution: [p].


setParams

public void setParams(double p)
Resets the parameter to this new value.


toString

public String toString()
Overrides:
toString in class Object

SSJ
V. 2.6.

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.