gpt4 book ai didi

algorithm - 该算法的预期抛硬币次数是多少?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:10:04 25 4
gpt4 key购买 nike

假设我有一枚有偏见的硬币。翻转时,正面朝上的概率为 4/5。

为了伪造一个公平的折腾,我采用了以下模拟这种情况的算法。假设 True 代表头部,False 代表尾部。

P(doUnfairFlip() = 0) = 0.8

P(doUnfairFlip() = 1) = 0.2

def fakeFairToss():
flip1 = 0
flip2 = 0
while (flip1 == flip2):
flip1 = doUnfairFlip()
flip2 = doUnfairFlip()
return (True if (flip1 == 0) else False)

它利用了这样一个事实,即在抛两次硬币后出现正面与反面或反面与正面的可能性相同。

每次运行此函数时,我应该期望这个有偏差的硬币抛多少次?

最佳答案

假设来自 doUnfairFlip() 的样本是 IID,相等的几率是 1/5^2 + 4/5^2 = 17/25 = 68%

与其考虑每次函数调用的循环迭代,我们可以将这种情况视为无限的迭代序列,偶尔会被函数返回“打断”。请注意,函数返回恰好在相等失败时发生,100 - 68 = 32% 的时间。

我们现在可以将情况识别为离散的 Poisson process ,其中 lambda = 0.32。相应分布的平均值也是 lambda:我们可以预期每次循环迭代大约 0.32 次函数调用,或者每次调用 1.0/0.32 = 3.125 次迭代,或每次调用 6.25 调用 doUnfairFlip()

关于algorithm - 该算法的预期抛硬币次数是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8995978/

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