這個賭局的漏洞在哪裡?

假設一個賭局——拋硬幣,投入n,正面可獲得2n,反面獲得0。

在如下策略中獲利:第一次投入1元,若反面,第二次投入2元,若再反面投入4元,以此增長,只要出現一次正面即可收回所有本金並且盈利

然後再從投入1開始循環進行下去

這樣在1/2^n概率下連續虧損 n趨近於無窮時,才會期望收入等於投入,否則都是盈利的

與聖彼得堡悖論相比,聖彼得堡悖論按期望付出賭局投入∞並且是在1/2^n,n趨近於無窮概率下才不虧損

實際中你願意接受前一個賭局的模式嗎?

與聖彼得堡悖論的差異又在哪裡呢

至於說贏了只賺一塊錢的話……增加賭注的遞增倍數就可以了,比如2增加到3/5/10這樣…

情況假設市場可以借貸,賭局不需要時間完成,也就是你可以在瞬間進行多次直到贏了還掉借貸部分


題主你期望明顯算得不對……

就這個問題而言,假設初始投注額為1,獲勝概率1/2,停止條件為賭徒獲勝或是賭徒破產,賭徒本金能夠支撐n輪賭博(也就是連輸n次後賭徒破產)。

賭徒在第k局獲勝的概率是(frac{1}{2})^{k} ,收益是1;在第n局破產的概率是(frac{1}{2})^{n} ,收益是-(2^{n} -1)

賭徒收益的期望是E_{n}=Sigma_{k=1}^{n}(frac{1}{2})^{n} - (frac{1}{2})^{n} cdot (2^{n}-1)

等比數列求和,並把右邊展開,得到E_{n}=1-(frac{1}{2})^{n}-(1- (frac{1}{2})^{n})=0

當我們假設賭徒有無限大的賭本,無限大的時間時,實際上是在將n趨於無窮大。如果取極限lim_{n 
ightarrow infty }{E_{n}}=lim_{n 
ightarrow infty }Sigma_{k=1}^{n}(frac{1}{2})^{n} - lim_{n 
ightarrow infty }(frac{1}{2})^{n} cdot (2^{n}-1)=0

期望依然是0。請注意賭徒在賭本無限的時候是可能永遠輸下去的,一直輸下去的概率以(frac{1}{2})^{n} 的速度趨於0,但是此時輸錢的數量以2^{n} 的速度趨於無窮大,把它們相乘得到的期望是一個有限值——剛好是-1。

這是一個零乘以無窮大得到有限值的例子,不論你有多少本金,收益期望都是0。

如果你認為本金無限的情況下收益期望是1,實際上你假設的是賭本無限的情況下一定能在有限局內結束遊戲。這是不對的,本金無限的情況下遊戲可以持續無限局。


你的假設有一個被你漏掉的地方,就是你假設了你的資金永遠足夠彌補上一次的損失,考慮極限的話,也就是雖然你沒明說,但你假設了你有無窮大的本金。

實際情況錢是有限的,也就是這個賭局你不管能不能借貸,算雙方的最大可用金,更多的贏面更大。既然你假設你和莊家的本金無窮大,那你的盈利就算按照你的博弈策略,假設是自己盈利以後停下,此時你的盈利額度是c,算盈利就算按照你的博弈策略和假設,在無窮的時間和本金中,你盈利到了某個c然後停下,但是考慮到你的假設前提是無窮時間和本金,所以你的盈利期望應該是c/無窮大,也就是0.......

所以並沒有什麼漏洞…… -,- 只不過你在把自己博弈策略算進去的時候,忘記算自己假設前提了,才會誤以為自己收益為正。


今天寫概率論作業的時候剛好有寫到這道題

這個叫做Martingale Betting System,這個概率被叫做「

以下摘自維基百科

鞅的原名martingale原指一類於18世紀流行於法國的投注策略,稱為加倍賭注法。

這類策略中最簡單的一種策略是為博弈設計的。在博弈中,賭徒會擲硬幣,若硬幣正面向上,賭徒會贏得賭本,若硬幣反面向上,賭徒會輸掉賭本。這一策略使賭徒在輸錢後加倍賭金投注,為的是在初次贏錢時贏回之前輸掉的所有錢,同時又能另外贏得與最初賭本等值的收益。當賭徒的財產和可用時間同時接近無窮時,他擲硬幣後贏得最初賭本的概率會接近1,由此看來,加倍賭注法似乎是一種必然能贏錢的策略。然而,賭金的指數增長最終會導致財產有限的使用這一策略的賭徒破產。

附上參考鏈接:中文,概率論,鞅

https://zh.wikipedia.org/wiki/%E9%9E%85_(%E6%A6%82%E7%8E%87%E8%AE%BA)

或者這個英文的關於Martingale Betting System的維基鏈接,英文:

Martingale (betting system)

在兩個維基上面有完整的公式計算過程,以及怎樣用常用軟體代碼去實現。適合不僅僅滿足於從初步了解這個問題的意義,而且還想繼續研究此問題的朋友們。


謝邀……無論是實際上,還是理論上,都不成立。

第一種思路:

簡單計算即可得知,你的資金越多,獲勝概率也越高,但贏只贏1元,輸的概率越低,但輸就是全賠。二者永遠是同步的,你用1億去賭,勝率99.999999%,贏1元,失敗率0.000001%,但1億全輸光。

總之概括:贏的概率很大,但回報率很小,輸的概率很小,但輸錢巨大。最終期望是零,也就是它不優於任何其他投注法

至於所謂增加投遞倍數,增加到3倍、5倍,也沒有改變期望為零這個事實,只是計算起來更麻煩、讓賭徒更糊塗而已。

更何況,實際的賭場是有抽水的,期望是負數。

這與買彩票正好相反,彩票是用小資金、小勝率去搏大收益,而這個是用大資金、大勝率去搏小收益。考慮到一般人都屬於風險厭惡型,這種方法還不如買彩票。

有人會說,理論上,我有「無限」的資金。

如果你一定要說無限資金,那麼就必須考慮無限輸。就不要把「總有一次能贏回來」掛在嘴邊。

很多人都做出這樣的欺騙,也許是故意的,也許是無意的:在說資金的時候說無限,說輸錢的時候卻偷偷排除了無限。

這是選擇性無視,要麼就都有限,要麼就都無限。

第二種思路:

這一次投注的結果,並不會影響另一次投注的勝負。

聰明的你,只需這一句就該明白了。

對啊,既然每次投注是獨立的,勝負結果互不影響,那你何必根據上一次的輸贏來決定下一次的賭注呢?

1、2、4、8、16的投注法,拋開順序,就是五次獨立的投注嘛,它與4、8、1、16、2這樣投,有什麼區別呢?與按圓周率投、斐波那契投、XJB亂投又有什麼區別呢?——都沒有。


Doob定理


所以正規賭場每張桌子都有押註上線,到了一定的額度就不能加倍了


漏洞在於這個賭局沒有意義。

按照題主的策略,第n次的投入為2∧(n-1)元,累計總投入為(2∧n)-1元。但是,假設這次中了,則獲得2∧n元。也就是說,不論投入幾次,每次勝利都是贏得1元。

但是成本呢,在第10次,你的累計投入為1023元,在第20次,你的累計投入為104萬,如果進行了40次,你需要一共投入1.1萬億……

我覺得,反正不論你投入多少,每次都只能贏得1元,你要是錢夠多,存銀行吃利息也比這強,你要是錢少,還不如吃頓好的去工地搬磚來的實在……


這是紅眼下注法:越是輸越是希望一把翻盤,賭注越下越大,人也越陷越深。以指數速度步入家破人亡的悲慘結局。

紅眼賭徒莊家是又愛又怕的。愛他輸快輸得多,怕他輸不起死在自己地盤,所以要豢養打手,把輸急了的扔出去死外面。

既然理論上只有無限的資金才能保障穩贏一元錢,這種破玩意兒還有討論的價值么?

真正獲得實用的下注法是相反的:資金池越小(輸了)下注越小,雖然一次翻盤的機會小了,但是玩得久呀。玩得越久才越能翻盤,懂不懂?

好的賭徒從來不紅眼,都是精心計算,靠能力而不是靠運氣的。


都不對

這個賭局是不公平的,所以賭桌才有下注的上限。賭場當中下注的上限就是有利於莊家的設定。

雖然這個賭局每次的期望收益損失都是0,但是允許這種下注方法就意味著賭客一定會贏,除非有下注的上限。

即使是期望收益時0的遊戲也有獲勝的方法,不是期望收益時0的遊戲就一定公平。舉個不恰當的例子,不考慮上市公司收益和公司價值波動,股市短時期內可以認為是零和博弈,但是也總有人長期穩定盈利,有人總是虧錢。

類似的還可以思考一個遊戲:如果有一種遊戲,第n盤獲勝的概率是1/n^2,獲勝收入是n^2元,失敗概率是1-1/n^2,失敗損失1元。

雖然每一盤收益期望都是0,但是長期來看賭客必定虧錢,因為每一盤的收益期望almost surely收斂到-1。如果是對賭的話,當然一定會有人賺到極大數量的錢,但是這個人是你的概率就是0;如果是賭場開立這種遊戲,那麼賭場必定賺錢,賭場虧掉極大數量的錢的概率是0。

可以好好想想這個例子。

以上


每一次賭局的收益的expected value為2^i,而到第i次是所花的錢卻是1+2+4+...+2^i這麼多...

所以,雖然看起來只要有一次獲勝就可以賺錢,可是因為expected value是2^i而非4^i並不能夠cover之前所花的本金,從概率論的角度來講所虧損的錢反而會隨著賭局的深入而增加

手機上打latex太麻煩了所以格式比較亂...見諒


這個方法在CSI里出現過一次,毫無意外用這個方法的是受害人。

莊家有一萬種方法玩死你。

另外,殺這個人的不是賭場老闆。

當然,以上是殘酷的現實。

然而理論同樣很殘酷。

我想大家可能都考慮過生男孩的問題……

嗯……

我們說的不是48。

就是只要不提前預知胎兒性別,以50%的男女出生率,即使所有家庭都極度重男輕女,必須要生出一個男孩來,即——直到生出一個男孩才停止生育。

其結果是,最終生出的男女比例依然是1:1。

這個例子只是告訴我們,數學上是有很多反直覺的東西的。

而統計往往比臆測靠譜的多。

這個賭局的漏洞就是——它本身就是個沒用的東西。

因為對於個人和賭場來言,都是公平的,其最終的輸贏始終是55開。

為什麼這麼講,稍微計算一下就知道了。

假設你第n場終於贏了,那你贏了多少呢?

2^(n-1)倍基準本金?

錯,1倍基準本金!

因為你在此之前已經投入了1+2+……+2^(n-1)的本金,也就是說這一輪你的成本是2^n-1,而你從場上拿回的錢是2^n。

而對於個人來說,最大的問題是,你很難承受不斷翻倍的風險。

這就是這個遊戲里的隱藏因素——風險。我們把這考慮為做買賣,風險本身也就是成本的一部分。

理論上你是可以無限的1塊1塊地贏下去。

然而我們一旦把風險算進去,而恰好的是——風險的烈度和風險發生的概率相乘等於1。

1-1=0!

這個風險有多大呢?

我們不妨先換一種方法,一種更保險的方法。

這種翻倍投注有一種衍生方案,理論上也是可以包贏不賠的,而且風險完全可控。

怎麼做呢?

假如你有一塊錢去賭一半贏率的局。

把這一塊錢分成X份,X=2^n-1,第一次取一份入場,輸則加倍,贏則把所有錢重新分為(2^n-1)份,從頭開始取一份開賭。

就算你一直輸,那麼最高可以連輸多少次呢?

n-1次,只要你在第n次能贏,你就能翻身。

這個方法的問題在於,你要如何能下這麼小的注,或者說你要準備多大的本才能保險。

十連輸不算多吧,大家各種rank、天梯十連跪也不少了。

假設最小下10塊,你就需要20470塊的本錢。

而且需要注意的是,這個方案只能保證你在有限情況下的不輸。

如果你想贏,假設你是絕對的50%勝率,統計上講,你賭無限多場也會是不贏不輸。

假設你是60%勝率,也即是每10場,多贏兩場。取n=11,10000本錢,前10場,第一次贏是10000/2047,第二次贏是20480000/4190209。第二次比前一次多萬分之4.8852,也就是說,你會以每五次贏一次的速度贏錢,每次贏的比上次多萬分之4.8852。

設賭的總場數為a,第一次贏4.8852元,贏錢總額S=4.8852*(1+1.00048852+……+1.00048852^(a/5-1))。

假如你要賺10000塊,也就是本錢翻倍,你需要……

帶入S=10000,求a的值。

公式推導最後大概是1.0004852^(a/5)=10001.0004852。

最後算出來a約等於94937。

以一局1分鐘算,你需要需要不吃不喝7x24地賭,連賭66天。

以上計算的前提:

1、你是賭神,有60%勝率

2、你可以不吃不喝不拉不睡賭66天

3、別人願意跟你賭

4、別人不動手腳

其結果僅僅是你賭了九萬四千九百三十七局,才把一萬塊的本金翻倍而已。

注意,我們還沒有算一個東西,那就是即使按預設10場的連輸風險進行計算,你也會有每11場2048分之1的概率賠光。

也就是說,你還是不能連續輸11場,當然這個輸的期望很難算,我們就簡單把94937場劃分成n個11場來算,你也可能會賠光4次!

回過頭來看這個計算,保證你贏錢的不是這個方法本身,而是假設你有60%勝率。

在這個計算里,我們其實是假設你每玩5局就多贏一局。現在不妨把60%這個數字降低,將其無限逼近於50%,然後就會發現,你贏翻本的所需局數會無限增大,到最後,平均到每局上,你贏錢的期望就是——0。

這一刻,宇宙達到了空前的大和諧,我們終於看到了加倍投注法最後的贏錢期望,實際上還是——0。

再來說兩個東西。

一是,這種翻倍加註法的風險到底能翻到多恐怖的地步?

就以我這裡計算為例,在10000的封頂資金+允許10連輸的保險下,初始可投資金只有4.8852元。反過來,玩不到5塊的局,你需要的下場資金很快就會翻到一萬以上。

第二點,這個數學模型的核心是什麼?

就是你贏錢的收益和風險一定要平衡!

我看到很多答主新回答了這個問題,但是他們搞錯了一些東西。

比如這位答主用代碼模擬出的結果,可惜演算法從一開始就錯了。

這個東西是絕不能這麼算的,如果是1000塊,而以1塊為基準,那麼是必然的期望虧損。

相信看了我上面的計算,大家就會明白,你的基準投注必須是你可使用總金額的(2^n-1)分之1,不管多一分少一分,你最後都會虧。

多一分,你可承受連輸會少於n-1場。

少一分,你的贏錢收益會降低。

總體而言就是收益比風險會降低,最終計算期望就不平衡了,虧,是肯定的。

我們回過頭來看,這個遊戲里的另一方角色——賭場。

在加倍投注法里,既然自己的贏錢期望為0,那麼賭場,或者說莊家的輸錢期望也為0。

這才是這個遊戲好玩的地方,看上去遊戲的選擇權在賭徒手裡——賭徒可以決定在贏錢後結束。

而實際上,選擇權在誰手裡並不重要,重要的是翻倍的風險,這個風險對於賭徒和莊家都是一樣的。

所以理論上,只要你敢這麼賭,莊家是可以奉陪的,畢竟這個遊戲里他不吃虧。

但是為什麼莊家往往不會跟你這麼玩呢?

因為你這完全是拿了個炸彈,跟莊家玩接鼓傳花,最後誰擔不起翻倍的風險,誰就boom。

我們不妨在想一個問題,為什麼有人願意開賭場或者說當莊家呢?

因為人家是有辦法保證自己穩賺不賠的呀。

是真的穩賺不賠,而且可能賺錢效率還很高。


真是看的無言以對了,題主問的是數學模型哪裡錯了,結果一票人過來給題主講道理……

抽成、資金有限、風險考慮就算了還比較實際,用到零和博弈的那幾位居然還有幾十個贊, @acalephs 所有計算過程都寫下來了卻沒幾個人贊。


我以親身體驗來答!

知道快三嗎,原來互聯網彩票沒有封禁的時候,淘寶彩票有售,十分鐘開一把,規則就是搖三個篩子,然後針對開出來的號碼設計不同的壓注產品,比如壓大小,壓單雙,猜號碼,不同的壓法賠率不同。事實證明,方便快捷的下注方式,豐富多樣的玩法,都是為了榨取我們血汗錢!

我們最後看上了猜兩個號碼的玩法,比如我壓2和4,最後三個篩子開出來後含2和4,就算贏。我們算了下概率,任意組合評論出現的概率大概是13分之一(準確數據忘記了,當時算的)。於是我們設計了一套方案,統計每一把開獎情況,找到最久沒開的一對,比如4,6組合,已經20幾把沒有開啦,我覺得差不多可以了就開始跟,每把都壓4,6組合,第一把2元,第二把4元,第三把6元,,第四把12,,第五把24元,,,,,以此類推,保證每把中了的收益能夠覆蓋前面的成本並且有一定的收益,跟題主的思路類似,說實話,剛開始了個把星期,每天都有收益,高的五六十,低的十幾塊,投入大概兩三百的樣子(兩三百可以跟十把左右的樣子)。然而直到有一天。。。。。。。。。。。悲劇這樣發生了,我看到有個組合連續25把沒開了,於是我決定出手了,從2塊錢開始,連壓了十幾把,最後一把一次八百多塊錢,沒中,就收手了。收手的時候跟的組合43把沒開了,事後證明決斷對的,那個組合直到第53把才開。如果跟到最後,下注額應該在百萬級別,而我的最開始目標是賺點早餐錢 啊!如果傻乎乎的再跟下去,早就破產了。反正前面贏得幾塊幾十塊在最後一把面前都不值一提。最後總的虧了一千多塊錢。

另外,設計方案的時候後面的整體收益率做的很低,否則增長更快,而且後面只想保本就好了。

所以,我跟題主提的問題差別就是我沒有無限的資金吧

後來就再也不玩了,支持國家禁止互聯網彩票!


看了一些答主的回答,忍不住答一下。

這個賭局顯然是完全公平的,因為

E[	ext{return}]={1over 2}cdot(2n) + {1over 2}cdot 0 - n = 0.

然而在現實中賭場辦這個賭局仍然可以賺錢(假設賭場的賭本很大)。原因可以通過Optional Stopping Theorem for Martingales證明,在平衡隨機遊走中,如果起點是a, 兩個終點是0和a+b,那麼兩者的概率分別是

P(x_	au=a+b) = {a over a+b}, P(x_	au=0) = {b over a+b}.

用人話說就是,如果賭局的終止條件是一方(莊家或者閑家)輸光自己所有的賭本,那在公平賭局中,這一方最後贏的概率正比於自己的賭本。也就是說如果莊家有9999萬,你只有1萬的話,那公平賭局裡你最後輸光的概率是99.99%(這裡可能反直覺的是,如果是9999億和1億,這個概率還是不變)。

所以這個賭局並沒有什麼理論漏洞,現實漏洞在於,你的賭本不可能無限,而且就算有信貸,信貸也是考慮風險的——如果他們有無限多的錢,為什麼不貸給賭場,而貸給一個風險大期望收益小的賭徒呢。

另:現實賭局的期望通常是負值,即使這個負值小到在一次賭局裡可以忽略,莊家仍然可以依靠大數定律獲得穩定的收入。


假設有1億元,單次投注1元,贏了繼續投注1元,輸了投注翻倍,直到贏了為止(凈盈利同樣是1元)。

漏洞在哪裡呢?

等等,我有1個億啊,我為什麼要1元1元的掙錢?

1個億存銀行都有每年300萬的利息

假如投硬幣每次都贏且每次只需1秒,連贏300萬次也需要不吃不睡35天。

然而,輸掉所有本金只需要連輸26次。

ps:

這個遊戲期望為0,上限收斂,下限發散。

如果反過來操作的話,曲線會更加一顆賽艇。

比如我拿出1萬元,找到王健林和他玩猜硬幣的遊戲。每當我輸了,就從1元重新開始,每當我贏了,就將之前的賭注翻倍。

說不定我能在輸光1萬塊錢之前有機會連贏26次完成小目標。玩笑


這種經典問題討論過N次了,去看看書。別瞎問。終日而思矣,不如須臾之所學。


賭局需要漏洞嗎?

呵呵。

寫個代碼就知道了

假設有10000名玩家,每人手裡從1000塊開始玩這個遊戲。

倍投基準1塊錢。那麼:

不要看最後那個堅持了多久,看前50個和前80個才能堅持多久。

假設這樣的剪刀石頭布一天100局,一年不要絕大部分人就傾家蕩產了。

沒有傾家蕩產,也欠錢欠得傾家蕩產。現實里不存在沒有時間限制的無限期無利息貸款。

------------------------------

以下是代碼,隨便一寫

# -*- coding: utf-8 -*-

import random

GamblerNum = 100

startNum = 1000

gamblers = []

for i in range(0,GamblerNum):

gamblers.append({"record":[startNum],"last":0})

dead = []

win = 0

lose = 0

def PlayOneRound(player):

global win

global lose

amount = 1

if player["last"] &> 0:

amount = player["last"]*2

if random.choice([True,False]):

player["last"]=0

player["record"].append(player["record"][-1]+amount)

win = win+1

return True

else:

player["last"]=amount

player["record"].append(player["record"][-1]-amount)

lose = lose +1

return False

round = 0

limit = 10

printed = limit

while len(dead)& round = round + 1

localwin = 0

locallose = 1

for gambler in gamblers:

if not PlayOneRound(gambler):

if gambler["record"][-1]&<0:

gamblers.remove(gambler)

dead.append(gambler)

locallose = locallose +1

else:

localwin = localwin + 1

if len(gamblers)& print "第{0}局,總勝:{1},總負:{2},剩餘玩家{3}".format(round, win,lose,len(gamblers))

printed-=1

print "第{0}局,總勝:{1},總負:{2},剩餘玩家{3}".format(round, win,lose,len(gamblers))


這個賭局的漏洞在於,你只是單純用更多的錢來賭博而已。

舉個例子,我有1000元,你有10元,我們進行一次賭博。

假設你有千分之一的勝率獲勝,這意味著當你花費1萬元的時候,你有較大幾率贏取我這1000元(粗略計算)。

而你通過不斷翻倍賭金,事實上就是拿我這1000元和你越來越大的賭金進行賭博。

因為賭博的賠率不同,勝率也應該不同才算得上公平。

就好像我拿一千元去賭你1億元,雖然勝率只有百分之一,但我只要嘗試100次,我一定是賺的,你和我賭,拿1億元來賭1000元,也是絕對虧的。

因此,這種玩法增大了你的勝率,但是沒有改變你投入資金的獲益期望。


問題只有一個:這個賭局賺錢太慢了。我建議改成一次下注1個億,輸了兩個億,以此類推。這樣贏一次能贏一個億呢。如果還覺得少。一次1個億,輸了1個億*1個億,還輸再乘。這麼來賭賺錢更快。

當然,你都無限錢了,你還去賭博賺啥錢呢。。。


先放結論:用題目的策略期望收益永遠是0,即使可以進行無窮次賭博

這個賭局賭一次的期望收益顯然是零

如果可以賭n次(n有限),那無論用什麼策略期望收益肯定也是零

假設賭局一定會在第10局結束,比如兜里只有1023塊錢。那麼用題目的策略會有1023/1024的幾率贏1,1/1024的幾率輸1023。所以期望收益還是零。

如果n可以無限,那麼在任何有限的時點(比如第m次,m&

我覺得產生悖論的原因是當n趨於無限時,雖然賭輸的概率無限小,但賭輸所造成的損失是無限大的。人們直覺會傾向於無限小的概率是不可能發生的,所以會忽略掉潛在的無限大的損失

補充一個公式說明當n為無窮,賭局可以進行無限次時期望收益依然為0

p=lim_{n 
ightarrow infty }{left( frac{1}{2}+frac{1}{4}+cdot cdot cdot +frac{1}{2^{n} } - frac{1}{2^{n} }	imesleft( 2^{n}-1 
ight)  
ight)  }

=lim_{n 
ightarrow infty }{left( 1-frac{1}{2^{n}}-1+frac{1}{2^{n} } 
ight) } equiv 0

即,在無限本金並且可以進行無限次賭局的情況下,按照題目的策略對未來收益的預期依然是0,即使這個策略看起來似乎「永遠不會輸」


推薦閱讀:

如何定義δ函數的導數?
三角函數的值如何計算得出的?
定義在Rn上的非負多元多項式一定可以表示為多個多項式的平方和嗎?
範數定義中,為什麼需要滿足正定、齊次、f(x+y)<=f(x)+f(y)?

TAG:數學 | 經濟學 | 概率 | 賭博 |