2012-12-07 40 views
0

我正在进行模拟,其中大型任务由一系列独立的较小任务(并行或串联)完成。较小任务的完成时间遵循正态分布,平均时间为“t”,方差为“v”。我明白,如果这个任务重复连续说出“n”次,而新的总时间分布是正常的,那么平均值t * n和方差v * n是很好的,但我不知道平均值和方差会发生什么如果一组相同的任务是同时/并行完成的,那么自从问题统计类以来已经有一段时间了。有没有一种很好的/快速的方法来寻找并行完成的这些独立正态分布任务的“n”的新时间分布?并行正态分布

+0

你可能会在Math.StackExchange上发现这个问题有趣:http://math.stackexchange.com/questions/89030/expectation-of-the-maximum-of-gaussian-random-variables – Mathias

+0

真的方差是加法的吗?想想看。如果我知道平均值并运行,那么平均值的总和将有零的方差。 – Paparazzi

+0

我可能是错的,但我相信这描述了如何添加正常/高斯随机变量:http://en.wikipedia.org/wiki/Sum_of_normally_distributed_random_variables。 – zahmde

回答

0

如果任务是独立并行进行的,直到完成的时间分布取决于最长进程的时间。

不幸的是,max函数并没有特别好的理论分析属性,但是如果你已经在模拟有一个简单的方法来做到这一点。对于平均t_i和方差v_i的每个子过程i,独立绘制每个i完成的时间,然后查看最大值。重复这么多次会给你一大堆你感兴趣的最大分布的样本:你可以计算期望(平均),方差或任何你想要的。

+0

这基本上是我现在所做的,我想我可能会有一个更优雅的方法。这些数字每次都会改变,每次尝试逼近它都会对应用程序产生真正的拖累。 – zahmde

+0

手段或组件分布是否随时间而改变?如果不是,您可以预先计算样本。抽样是确定概率分布属性的完美方法! –

0

问题是,什么是随机完成时间的最大值(最大值)的分布。独立随机变量集合的最大值的分布函数(即概率密度的不确定积分)恰好是每个变量的分布函数的乘积。 (最小值的分布函数仅为1-((1-分布函数)的乘积))

如果您想查找概率(最大>时间)=(某个给定值)的时间,那么您或许能够完全解决这个问题,或者采用数值方法。尽管如此,数值求解方程(例如二分法)比蒙特卡洛方法快得多且更准确,正如你所提到的你已经尝试过的那样。

0

这不完全是一个规划问题,但你要找什么是正常的随机变量,即order statistics分布,期望值/方差/作业等是拿着最长,最短等等。对于相同的均值和方差,这是一个解决的问题,因为您可以将所有随机变量缩放到已分析的标准正态分布。

下面是给你答案,但你会需要一些数学知识来理解它的纸张:

Algorithm AS 177: Expected Normal Order Statistics (Exact and Approximate) J. P.罗伊斯顿。英国皇家统计学会杂志。系列C(应用统计)卷。 31,No.2(1982),第161-165页

关于stats.stackexchange,请参阅this post了解更多信息。