根据我的理解,标准发生器用于正态分布.我必须根据正常,统一和泊松分布生成随机数,但是我似乎找不到最后一个2的类.
我必须在0 – 999999的范围内生成它们.
解决方法
正如David所指出的那样,提供的伪随机数生成器使用均匀分布.
对于其他两个,我将使用Cern Colt 库函数:
> Poisson
> Normal/Gaussian
这些库函数很容易让您找到从每个分布中获取的随机数,而不是给出概率密度函数或累积密度函数,并期望您自己导出数字(这似乎是Apache Commons-Math方法):
RandomEngine engine = new DRand(); Poisson poisson = new Poisson(lambda,engine); int poissonObs = poisson.nextInt(); normal normal = new normal(mean,variance,engine); double normalObs = normal.nextDouble();
另外,请注意,大λ的泊松分布P(λ)可以通过正态分布N(λ,sqrt(λ))很好地逼近.