相关疑难解决方法(0)

伪随机数发生器 - 指数分布

我想生成一些伪随机数,直到现在我一直非常满意.Net库的Random.Next(int min, int max)功能.这个品种的PRNG 应该使用Uniform分布,但我非常希望使用指数分布生成一些数字.

我正在用C#编程,虽然我会接受伪代码或C++,Java等.

任何建议/代码片段/算法/想法?

language-agnostic random algorithm exponential-distribution

57
推荐指数
4
解决办法
7万
查看次数

模拟泊松等待时间

我需要模拟泊松等待时间.我发现了许多模拟到达次数的例子,但是我需要模拟一次到达的等待时间,给定平均等待时间.

我一直在寻找这样的代码:

public int getPoisson(double lambda) 
{   
    double L = Math.exp(-lambda);   
    double p = 1.0;   
    int k = 0;   

    do 
    {    
        k++;     
        p *= rand.nextDouble(); 
        p *= Math.random(); 
    } while (p > L);   

    return k - 1; 
} 
Run Code Online (Sandbox Code Playgroud)

但这是到达人数,而不是到达时间.

效率优于精确度,更多是因为功耗比时间.我正在使用的语言是Java,如果算法只使用Random类中可用的方法,那将是最好的,但这不是必需的.

java poisson

7
推荐指数
1
解决办法
5582
查看次数