关于证明一个概率事件的期望次数

引入问题

如果一个事件 Xp[0,1] 的概率成功,那么就有 1p 的概率失败,如果失败了就再次执行 X 事件。问 X 事件期望的操作次数。

问题求解与证明

因为 p=0 的时候,不存在成功的情况,所以不进行考虑。

对于 p(0,1] 的时候,很容易知道期望的操作次数是 1p ,那如何证明呢?

无限和式

有一种很显然易见的解决办法就是无限和式。

考虑枚举在第几次成功了,那么贡献如下。

(1)EX=i=0(1p)i p (i+1)(2)=p [i=0(1p)i (i+1)]

不难发现 (1p)[0,1) 所以这个序列是一个收敛到 0 的无穷序列(因为 i+1 的增长速度远小与 (1p)i 的减小速度)

然后考虑这个式子如何求和,依然是扰动法。

(3)S=i=0(1p)i (i+1)

那么有

(4)(1p)S=i=1(1p)i i(5)=i=1(1p)i (i+1)i=1(1p)i

所以只需要求出

(6)T=i=1(1p)i

这个也是很容易通过扰动法求出的。(也可以套公式,然后 a0 所以直接忽略就行)

(7)(1p)T=i=2(1p)i

(6)(7) 就有

(8)pT=1p(9)T=1pp

然后 (3)(5) 就变为

(10)pS=1+1pp(11)p2S=p+1p(12)S=1p2

所以最后的 EXp×1p2=1p ,证毕。

根据期望方程求解

Hometown 告诉了我一个很巧妙且简短的做法。

可以设出一个期望方程为

(13)EX=p+(1p)(EX+1)

其意义为有 p 的概率直接在这步成功,剩下 1p 的概率失败,需要花费 EX+1 的期望成功。

那么就有

(14)EX=p+EX+1pEXp(15)EX=1p

所以结论成立,证毕。

概率生成函数

看了 YMDrangon 论文后,意识到这个问题其实就是个经典的掷骰子问题,可以利用概率生成函数解决。

fi 为结束时尝试了 i 次的概率,其概率生成函数为 F(i) 。令辅助数列 gi 为随机序列长度达到 i 还未结束的概率,其普通生成函数为 G(i)

(16)F(x)+G(x)=1+xG(x)(17)G(x)(px)=F(x)

然后我们把 (16) 两边求导并代入 x=1F(1)=G(1) ,同样把 x=1 代入 (17)F(1)=G(1)=1p ,得证。

总结

其实不仅仅是针对这个经典模型来说,对于大部分无限期望的模型这两种方法依然成立。

第一种方法,需要较为细致的数学推理以及对于无限和式的求值方法的掌握。

第二种求法,只需要精巧的列出方程求解就行了。

第三种求法,对于所有的掷骰子模型都有较大作用,并且扩展性较大比较推荐。

其实我就只是复习了一下无限和式的推导方法而已。。。数学课上无聊随便推了一下。。

其实不会证明,大概率也是可以猜出结论的。

无限期望 or 概率如果是收敛的话,常常最后的表达式通常是十分精巧的,能用这三种方法进行推导和证明。


__EOF__

本文作者zjp_shadow
本文链接https://www.cnblogs.com/zjp-shadow/p/10009548.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   zjp_shadow  阅读(5140)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
点击右上角即可分享
微信分享提示