有界指数随机数Java

时间:2015-10-06 15:16:07

标签: java random exponential-distribution

我想在Java中使用有界指数分布生成随机数,但公式x = log(1-u)/(−λ)(此处为[0,1)之间的均匀随机数)不会生成有界指数随机数。

请告诉我如何在JAVA中生成基于有界指数分布的随机数。

1 个答案:

答案 0 :(得分:0)

如果你的问题,你可以尝试重新调整你的U(0,1)rng,比如范围[A ... B],if/else是lambda

module.exports

在你的情况下A = 1,B = 100

BTW,La = 1.0 - exp(-A*L); // so that log(1-a)/(-L) = A; b = 1.0 - exp(-B*L); // so that log(1-b)/(-L) = B; // now sampling u = a + (b - a) * Rng(); v = log(1-u)/(-L); 具有相同的分布,因此您可以使用u代替1-u,为您节省减法