Swift Playground: 三門(mén)問(wèn)題的解法

作者:Thomas Hanning,原文鏈接躯嫉,原文日期:2015-09-27
譯者:SergioChan壶唤;校對(duì):numbbbbb;定稿:numbbbbb

三門(mén)問(wèn)題是一個(gè)超級(jí)讓人摸不著頭腦的概率問(wèn)題类嗤。我們會(huì)在 Swift Playground 里來(lái)演示它的解法糊肠,而不是通過(guò)枯燥的數(shù)學(xué)解釋。

三門(mén)問(wèn)題

這個(gè)問(wèn)題的核心很簡(jiǎn)單遗锣。在 1990 年的Parade雜志中是這么解釋的:

假設(shè)你正在參加一個(gè)游戲節(jié)目货裹,需要在三扇門(mén)中選擇一扇。其中一扇后面有一輛車(chē)精偿,其余兩扇后面則是羊弧圆。你選擇了一扇門(mén)赋兵,假設(shè)是 1 號(hào)門(mén),主持人知道門(mén)后面是什么搔预,他開(kāi)啟了另一扇后面有羊的門(mén)霹期,假設(shè)是3號(hào)門(mén)。然后他問(wèn)你:“你想選擇 2 號(hào)門(mén)嗎拯田?”這時(shí)候你改變決策是有利的嗎历造?

實(shí)際上,結(jié)果是有利的勿锅。如果你選擇另外一扇門(mén)帕膜,你就有2/3的概率贏得汽車(chē)。相反溢十,如果你不改變你的選擇垮刹,贏得汽車(chē)的概率就只有 1/3。當(dāng)然你可以從數(shù)學(xué)的角度去證明张弛,但是這里我們希望驗(yàn)證一下荒典。

算法

算法很簡(jiǎn)單。首先吞鸭,你選擇一扇門(mén)寺董。然后主持人打開(kāi)一扇后面有羊的門(mén)。如果你的第一次選擇就選中了有車(chē)的門(mén)刻剥,他就要在剩下兩扇門(mén)中隨機(jī)選擇一扇開(kāi)啟遮咖。如果你的第一次選擇選中的是有羊的門(mén),他就要把剩下一扇也是羊的門(mén)打開(kāi)造虏。最后御吞,你是否改變選擇取決于你采取的策略。

Playground

我們來(lái)編寫(xiě)一個(gè)簡(jiǎn)單的 Playground 程序漓藕。我們會(huì)對(duì)每種選擇策略執(zhí)行 100000 次測(cè)試來(lái)得出大致的概率陶珠。

import UIKit

enum Strategy {
    case Change
    case Stay
}


func play(strategy:Strategy,repeats:Int) -> Int {
    var wins = 0
    
    for _ in 0..<repeats {
        
        let car = Int(arc4random_uniform(3))
        
        var playerChoice = Int(arc4random_uniform(3))
        
        if strategy == Strategy.Change {
            
            if playerChoice == car {
                var remainingDoors = [0,1,2]
                remainingDoors.removeAtIndex(playerChoice)
                playerChoice = remainingDoors[Int(arc4random_uniform(2))]
            } else {
                playerChoice = car
            }
            
        }
        
        if car == playerChoice {
            wins++
        }
    }
    
    return wins
}

var repeats = 100000

var winsStrategyChange = play(.Change, repeats: repeats)
var winsStrategyStay = play(.Stay, repeats: repeats)
        
var quoteStrategyChange = Double(winsStrategyChange) / Double(repeats)
var quoteStrategyStay = Double(winsStrategyStay) / Double(repeats)

結(jié)果

每次運(yùn)行這個(gè) Playground 得到的結(jié)果都不完全相同,但是都很接近的享钞。例如揍诽,其中一次結(jié)果是:

  • 改變選擇且贏得汽車(chē)的次數(shù): 66,461
    
  • 不改變選擇且贏得汽車(chē)的次數(shù): 33,509
    
  • 改變選擇且贏得汽車(chē)的概率: 0,66461
    
  • 不改變選擇且贏得汽車(chē)的概率: 0,33509
    

結(jié)果正如理論所預(yù)計(jì)的那樣。如果你不改變你的選擇栗竖,你就只有百分之 33 的概率贏得汽車(chē)暑脆。如果你改變了你的選擇,這個(gè)概率就上升到了百分之 66狐肢。

結(jié)論

在 Playground 中做實(shí)驗(yàn)是十分有趣的添吗。在這種情況下,我們可以驗(yàn)證那些乍一看摸不著頭腦的理論处坪。

引用

圖片: @ Lim ChewHow / shutterstock.com

維基百科: Monty Hall Problem

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末根资,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子同窘,更是在濱河造成了極大的恐慌玄帕,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件想邦,死亡現(xiàn)場(chǎng)離奇詭異裤纹,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)丧没,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)鹰椒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人呕童,你說(shuō)我怎么就攤上這事漆际。” “怎么了夺饲?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵奸汇,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我往声,道長(zhǎng)擂找,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任浩销,我火速辦了婚禮贯涎,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘慢洋。我一直安慰自己塘雳,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布且警。 她就那樣靜靜地躺著粉捻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪斑芜。 梳的紋絲不亂的頭發(fā)上肩刃,一...
    開(kāi)封第一講書(shū)人閱讀 51,462評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音杏头,去河邊找鬼盈包。 笑死,一個(gè)胖子當(dāng)著我的面吹牛醇王,可吹牛的內(nèi)容都是我干的呢燥。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼寓娩,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼叛氨!你這毒婦竟也來(lái)了呼渣?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤寞埠,失蹤者是張志新(化名)和其女友劉穎屁置,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體仁连,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蓝角,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了饭冬。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片使鹅。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖昌抠,靈堂內(nèi)的尸體忽然破棺而出患朱,到底是詐尸還是另有隱情,我是刑警寧澤炊苫,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布麦乞,位于F島的核電站,受9級(jí)特大地震影響劝评,放射性物質(zhì)發(fā)生泄漏姐直。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一蒋畜、第九天 我趴在偏房一處隱蔽的房頂上張望声畏。 院中可真熱鬧,春花似錦姻成、人聲如沸插龄。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)均牢。三九已至,卻和暖如春才睹,著一層夾襖步出監(jiān)牢的瞬間徘跪,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工琅攘, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留垮庐,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓坞琴,卻偏偏與公主長(zhǎng)得像哨查,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子剧辐,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 你正參加一個(gè)節(jié)目寒亥,一共有三扇門(mén)邮府,只有一扇門(mén)后面有汽車(chē),其余兩扇門(mén)是空溉奕,選到汽車(chē)算贏挟纱。你選了一扇,然后主持人會(huì)在剩下...
    哈啊啊啊啊啊啊閱讀 26,394評(píng)論 20 5
  • 最初看到這個(gè)問(wèn)題是初中的時(shí)候買(mǎi)了一本有關(guān)數(shù)學(xué)謎題的書(shū)里面概率論的一張的課后拓展就是說(shuō)到三門(mén)問(wèn)題腐宋,當(dāng)時(shí)作為一個(gè)擴(kuò)展閱...
    知曰閱讀 4,388評(píng)論 1 13
  • 三門(mén)問(wèn)題(Monty Hall problem)亦稱(chēng)為蒙提霍爾問(wèn)題、蒙特霍問(wèn)題或蒙提霍爾悖論檀轨,大致出自美國(guó)的電視游...
    丟子丟閱讀 3,243評(píng)論 0 1
  • 一胸竞、題目 工程師 M 發(fā)明了一種游戲:M 將一個(gè)小球隨機(jī)放入完全相同的三個(gè)盒子中的某一個(gè),玩家選中裝有球的盒子即獲...
    GitHubClub閱讀 2,658評(píng)論 27 49
  • 一参萄、什么是Cocoa ①Cocoa來(lái)源 1996年卫枝,Gil Amelio掌權(quán)的Apple正在開(kāi)發(fā)Copland操作...
    oneofai閱讀 4,789評(píng)論 1 11