我有一个实时运行的程序,具有可变的帧速率,例如可以是 15 fps,也可以是 60 fps。我希望平均每 5 秒发生一次事件。每一帧,我想调用一个函数,该函数将自上一帧以来的时间作为输入,并在调用它的情况下平均每 5 秒的运行时间返回 True 一次。我认为与泊松分布有关..我该怎么做?
这实际上取决于您想要使用什么分布,您指定的只是平均值。正如您所说,我希望泊松分布能够很好地满足您的需求,但您还在标题中添加了“均匀随机变量”,这是一种不同的分布,无论如何,让我们选择前者。
因此,如果泊松分布是您想要的,您可以使用累积密度函数非常轻松地生成样本。只需遵循这里的伪代码即可:生成泊松 RV,其中 5 秒是 lambda 值。我们将此函数称为 Poisson_RN()。
此时的算法非常简单。
global float next_time = current_time()
boolean function foo()
if (next_time < current_time())
next_time = current_time() + Poisson_RN();
return true;
return false;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)