雪崩般的随机过程


16

请考虑以下过程:

n箱从上向下依次设置。最初,每个垃圾箱包含一个球。在每一步中,我们

  1. 随机均匀地挑选一个b
  2. 将所有球从包含b的垃圾箱移到其下方的垃圾箱。如果已经是最低的料仓,我们就将球从工艺中移出。

直到过程终止(即,直到从过程中删除了所有n球)为止,期望执行多少步骤?以前有研究过吗?答案是否容易从已知技术中得出?

最好的情况是,该过程可以在n步骤之后完成。在最坏的情况下,它可能需要Θ(n2)步。但这两种情况都不太可能发生。我的推测是它需要步骤,我做了一些实验,似乎可以证实这一点。Θ(nlogn)

(请注意,随机均匀地选择一个bin是一个非常不同的过程,显然将需要步骤来完成。)Θ(n2


这个问题看起来很有趣(尽管我不知道答案)。由于非单调性,这似乎很困难。如果所有n个球都在顶部料仓中,则该过程显然会精确地以n步终止。
伊藤刚(Tsuyoshi Ito)2010年

Answers:


11

并不是真正的答案,而是对安德拉斯答案的扩展评论。

András的回答包含一个很好的直觉,尽管我不认为这是对预期步骤数的严格计算。我认为这可能是对答案的一个很好的近似值,但是它似乎无法正确处理以下情况:位于最高占用位置的垃圾箱下方的垃圾箱在将上部垃圾箱向下清空之前变空。不过,这可能是一个合理的近似值(我不确定)。

他的计算包含一个影响缩放的误差。我将采用完全相同的起点,然后重做并扩展计算。

它错过了求和内的p因子,因为随机选择正确bin的概率为而不是1pñ。结果,我们有1个ñ

n+p=1nk=0(k+1)pn(npn)k=n+p=1npnk=0(k+1)(npn)k=n+p=1npnn2p2=n+np=1n1/p=n(1+Hn)

其中是第n个谐波数。为了接近^ h ñ我们可以简单地用积分替换求和:^ h ññ + 1 1 1Hn=p=1n1/pHn。因此,缩放比例为n1+logn+1或大约nlogn+1。尽管此缩放比例与问题的缩放比例不完全匹配(请参见下面的模拟),但几乎完全是log2的因数。Hn1n+11xdx=log(n+1)n(1+log(n+1))nlog(n+1)log(2)

模拟与理论

红色圆圈:过程仿真的数据点平均超过10k次运行。绿色:。蓝色:n log n + 1 nlog2(n+1)nlog(n+1)


@乔:干得好!现在,要严格显示因子是如何产生间隙的,这将很有趣。ln2
安德拉斯·萨拉蒙(AndrásSalamon)2010年

@András:我真的感觉不太好,这是否适合制作。@Peter关于向下移动的束形成的想法,似乎应该给出正确的表达,假设它们在任何垃圾箱中都同样可能形成。
Joe Fitzsimons 2010年

@Joe:在几乎1/3的情况下,最高球将保持孤立状态。考虑前3个球。如果首先选择中间一个(从这3个中选择),它将加入第三个。从那时起,这两个球的移动速度将是顶部球的两倍。它们与顶部球之间的距离是一个严重偏向的随机游走,并且顶部球追上球的概率受一个小的(ish)常数(大约为15%)的限制。但是好消息是,前n个球不应该真正重要。如果在n \ log n个步骤中清除了所有其他内容,则它们只会添加其他n \ log n个步骤。
马提亚斯(Matthias)2010年

这是两个情节。两者都显示除以的步,直到清除除log n球以外的所有内容。对于第一个,仍然可以拾取掉出系统的球(就像András提出的一样):tinyurl.com/2wg7a9y。对于第二个,不再选择掉出系统的球:tinyurl.com/33b63pq。如您所见,第一个过程所能提供的界限可能太弱了。也许可以通过考虑我们总是将系统中球数量减半的阶段(如Peter在某处写的)来进行调整?nlogñ
马提亚斯(Matthias)2010年

@Matthias:假设彼得的直觉是正确的,那么分析预期时间并不是障碍(至少从我的角度来看)。对我来说,证明这种直觉实际上是对所发生的事情的公正反映是必要的,尽管我确实怀疑这是一个很好的近似。
Joe Fitzsimons 2010年

9

编辑:我暂时不回答这个问题,以说明证明定理的混乱过程,这是已发表论文中所没有的。此处的核心直觉是,将重点放在顶部球上就足够了,因为它会扫走下面的所有球。请查看评论(特别是@Michael指出可能会出现差距),以及@Joe的稍后答案,以了解如何识别和纠正错误。我特别喜欢Joe使用实验仔细检查公式是否合理。


下界正如你所指出的,但有些令人吃惊似乎有一个上限的1 + π 2 / 6 ñ为步骤的预期数目。ñ1个+π2/6ñ

为了得到这个,注意球的序列将精确地清除所有的垃圾箱,如果它包含一个子使得b 1 = ñb 2ñ - 1...b ñ - + 1b1个b2bñb1个=ñb2ñ-1个bini+1。为了避免选择不再在系统中的球,但为达到上限的目的,在序列上还需要附加条件,假设存在无限数量递减的箱位(因此,离开箱位时,球不会消失) 1,但先移至bin 0,然后移至bin -1,依此类推)。然后,要看到的此子序列的预期步数是看到之前的预期步数,加上看到b 2之前的预期步数,依此类推(减少到1,因为b n可以任何数量的1 2 ... ñb1b2bn1,2,,n)。这些可以看作是一个单独的事件,一个接一个。然后是预期的步骤数

n+p=1nk=0k+1n(npn)k=n+p=1n11npk=1k(npn)k=n+p=1n11npn(np)/p2=n+np=1n11/p2(1+π2/6)n.


3
@Andras @Joe: Holy schmoley. If all the people asking the questions on this site took their questions as seriously as you take answering them, this would be the badassest url on the internet.
亚伦·斯特林

1
@András: I'm trying to understand your statement "a sequence of balls will clear all the bins precisely if it contains a subsequence...". Maybe I've misunderstood something, but say we have four balls. If the sequence is 3,4,3,2,4 then it seems to satisfy your subsequence requirement, yet not all the bins have been cleared.
Michael

1
@András:如果您想显示一个合理的上限,则必须使用这样一个事实,即球从过程中消失并且不再被拾取。否则,总是仅以1 / n的概率选出最高的球,并且很有可能(在整个过程中)该球始终保持孤立状态(可能略小于1/2)。对于这个球,您将需要n ^ 2步。
马提亚斯(Matthias)2010年

1
@Michael: I think you have identified the mistake. I'm assuming falsely that the top ball will move down even if there is a gap.
安德拉斯·萨拉蒙(AndrásSalamon),2010年

2
这是我的直觉。经过几步,一些团块将比其他任何团块都大。此时,丛集移动的速度比其他所有事物都要快,清除了其下面的所有内容并掉出系统。这整个过程应该Øñ 或许 Øñ日志ñ脚步。这个第一团块均匀地分布在直线上,因此平均来说它需要一半的球。现在,我们剩下的系统ñ/2球和另一团形。所以之后日志ñ 结块,我们完成了。
Peter Shor 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.