[問題] 馬丁格爾法的機率問題(懸賞)

作者: birdjack (啾啾啾)   2023-03-17 12:18:28
簡單講一下馬丁格爾法
就是假設在一個勝率50%的壓大小的賭局中,
每輸一次就加倍前一次的下注,贏了就重置回1個籌碼
這樣本金如果切成(2^n)-1就可以玩n次,
問題是想要求在N個賽局中遇到連輸n次的機率
(也等於 1 - N個賽局從沒遇過連續輸n次的機率 )
網路上大概找了一下得到的公式如下:
1 - [ 1 - (0.5)^n ] x [ 1 - 0.5 x (0.5)^n ]^(N-n)
但是簡單套入N=6,n=5就錯了
我是想這個問題應該等同在N個有序位置排黑白球的問題
求的就是N個位置至少有一組連續相鄰n個白球的機率
(或是說 1 - N個位置中沒半組相連n個白球的機率)
而當N-n=1(即黑球個數<=1)的時候這個問題應該蠻簡單的,N>=2時答案都是3
1顆黑球→2種可能 (放第一或放最後)
0顆黑球→1種可能 (全部白球)
我都是用這個來驗證公式最快。
那麼我自己有導出一個遞迴式如下:
P(N,n)是在總共N個賽局中遇到至少一組n個相連白球的機率
其中還分三種情形:
P(N,n)=0 | N < n
P(N,n)=(0.5)^n | N = n
P(N,n)=(1/2)^n+for(i=0,i<n,i++){(1/2)^(n-i)*P(N-n+i,n)} | N > n
圖:
https://imgur.com/7bH7b4u.jpg
基本上這個我有轉成matlab去跑程式,數字小是能跑,太大就爆了
目前也都跟自己自幹的答案一樣
想問有沒有誰能把這個遞迴改成通式?
嘗試過在code那邊用迭代法修改,不過對我來說難度太高
如果有誰給能出通式,並且驗證過後我會給他稅後3000P當酬勞(?)
如果n設為6~10之類的定值,以此為出發給出通式則是1000P
先謝謝大神了
作者: Chikei ( )   2023-03-17 13:44:00
用馬可夫鍊算,n+1個狀態對應0~連輸n次,from/to就是單純的i->i+1是0.5,i->0也是0.5,迭代N次就有機率了
作者: yhliu (老怪物)   2023-03-18 09:36:00
感覺那遞迴式怪怪的:n=1時,P(N,1)=1/2+1/2 P(N,1)?應是 P(N,n)=1/2^n+sum(k=1~n)(1/2^k)P(N-k,n)
作者: seanwu (海恩)   2023-03-26 18:20:00
你只是需要dynamic programming而已,不需要通式

Links booklink

Contact Us: admin [ a t ] ucptt.com