gpt4 book ai didi

java - 计算泊松分布随机变量之和的概率

转载 作者:行者123 更新时间:2023-11-30 11:37:00 25 4
gpt4 key购买 nike

在 Java 中,我有一组用户,每个用户都有均值已知的泊松分布需求:

import org.apache.commons.math3.distribution.PoissonDistribution;

public class User {
private int mean;
private PoissonDistribution dist;
public void setMean(int mean) {
this.mean = mean;
this.poissonDistribution = new PoissonDistribution(mean);
}
}

...
User u1 = new User(); u1.setMean(20);
User u2 = new User(); u2.setMean(30);
User u3 = new User(); u3.setMean(40);

现在我想计算所有 User 的累积需求低于特定值的概率:

double probabilityBelowX = calculateCumulatedProbability(50, u1, u2, u3); // <- what must this method look like?

我被困在这个问题上,如何在 Java 中解决这个问题。我在数学包中遗漏了什么吗?我知道客户的需求是独立的,所以根据我对泊松分布的了解,我可以简单地将值相加。但是我只有 cumulativeProbability(int x) 可以满足每一个用户需求,而不是同时满足多个需求?

请指出正确的方向,也许我使用了完全错误的方法。另外,如果这个问题更适合放在 stackexchange 的另一个站点上,我会把它移走。

最佳答案

正如您所指出的,the sum of independent Poisson distributions is again a Poisson distribution , 参数等于原始分布参数之和。

所以在 calculateCumulatedProbability 中,您需要创建一个新的 PoissonDistribution 对象,其均值等于 u1 的均值之和, u2u3(在本例中为 PoissonDistribution(20+30+40))。然后该对象的 cumulativeProbability 方法将为您提供所需的概率。

您需要在 User 上使用 getMean 方法,以便您可以检索各个用户的均值。另外,总是有 3 个用户吗?如果不是,让 calculateCumulatedProbability 只接受两个参数不是更好吗:用户列表和概率计算值?

关于java - 计算泊松分布随机变量之和的概率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14274467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com