【问题标题】:Parallel Normal Distributions平行正态分布
【发布时间】:2012-11-26 01:40:55
【问题描述】:

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

【问题讨论】:

  • 您可能会发现 Math.StackExchange 上的这个问题很有趣:math.stackexchange.com/questions/89030/…
  • 方差真的是累加的吗?想想看。如果我知道平均值并运行,那么平均值的总和将具有零方差。
  • 我可能错了,但我相信这描述了如何添加正态/高斯随机变量:en.wikipedia.org/wiki/…

标签: probability normal-distribution probability-theory


【解决方案1】:

这不完全是一个编程问题,但您正在寻找的是 order statistics 正态随机变量的分布,即工作的期望值/方差/等这需要最长、最短等。对于相同的均值和方差,这是一个已解决的问题,因为您可以将所有随机变量缩放到已分析的标准正态分布。

这是给你答案的论文,虽然你需要一些数学知识来理解它:

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

有关更多信息,请参阅 stats.stackexchange 上的 this post

【讨论】:

    【解决方案2】:

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

    如果您想找到概率(最大值 > 时间)=(某个给定值)的时间,您可能能够准确地解决这个问题,或者采用数值方法。尽管如此,正如您提到的,您已经尝试过,以数值方式求解方程(例如二分法)比蒙特卡洛方法更快、更准确。

    【讨论】:

      【解决方案3】:

      如果任务是独立并行执行的,那么直到完成的时间分配取决于最长过程的时间。

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

      【讨论】:

      • 这基本上就是我现在所做的,我想我认为可能有更优雅的方法。数字每次都在变化,每次都试图近似它是对应用程序的真正拖累。
      • 均值或分量分布是否随时间而变化?如果没有,您可以预先计算样本。采样是确定概率分布属性的一种非常优雅的方法!
      猜你喜欢
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 2019-06-23
      • 2011-06-07
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      • 2015-08-22
      相关资源
      最近更新 更多