生日悖論(Birthday paradox)

閱讀時間約 4 分鐘
假設今天有一個充滿人的房間,有兩個人的生日日期是相同的機率是多少?
今天房間裡如果有366個人,我們可以非常快速的就知道一定會有兩個人有相同的生日,在這房間裡有相同生日日期的人的機率=1。
那當房間裡有多少人的時候兩個人的生日相同的機率會大於50%呢?當有多少人的時候這機率會甚至大於99%呢?大家不妨先猜一下,真實答案可能和你的猜測大相逕庭唷。因此這才被稱為生日悖論!
先揭曉謎底。
其實只要房間裡有23個人,則兩個人的生日相同的機率就高達50%!
而只要房間裡有60個人,兩人有相同生日日期的機率便會大於99%!
有沒有非常違反你的直覺呢?
是怎麼樣得到這個結果的呢?首先,我們應該以另一個角度切入問題,意即考慮每個人生日都不同的機率是多少。 從這個角度出發,假設房間有N人,N人的生日日期皆不相同的機率(P)會是
而為了計算房間內有至少兩人生日相同的機率,我們只需將1減去P便可得到。這代表我們將所有可能的結果(機率為1)扣除所有人生日皆不相同的狀況(機率為P),扣除後的機率代表的即為至少兩人生日相同的機率(1-P)。
當N=23時,P會小於0.5,因此1-P>0.5,當房間裡有23人時兩個人的生日相同的機率就會大於50%。當N=60時,兩人有相同生日日期的機率便會大於99%!
這是理論上的結果,除此之外,我們也可以用Julia透過蒙地卡羅模擬法估計發生機率。
註:接下來會使用蒙地卡羅模擬法來估計,若對蒙地卡羅模擬法還不熟悉的朋友可以先服用此篇文章

Julia程式碼

# 匯入套件StatsBase、Combinatorics、Plots以及PyPlot
using StatsBase, Combinatorics, Plots ; pyplot()
# 自定義一個函數(function)用來計算理論解
# 給定不同n(人數)的情況下,有兩人生日相同的機率
# 使用prod()這個函數,計算括弧內所有值的乘積(從365/365*364/365*…*1/365)即為
# 每人生日皆不同之機率,再用1去減
matchExists(n) = 1 — prod([k/365 for k in 365:-1:365-n+1])
# 自定義一個函數模擬房內有不同人數的情形,且定義方法與matchExists()有些差別。
# 首先,利用rand()隨機(uniform dist.)從1~365產出n個值,代表每個人的生日日期。
# 接著使用counts計算每個數字出現的次數並指派給dayCounts,
# 再來,用maximum()檢查dayCounts裡最大值是否大於1次,即是否有兩人生日相同
# 若是,回傳ture,反之則回傳false
function bdEvent(n)
birthdays = rand(1:365,n)
dayCounts = counts(birthdays, 1:365)
return maximum(dayCounts) > 1
end
# 模擬重複試驗N次,並計算N次中有兩人生日相同的次數,再除以N,得到機率。
probEst(n) = sum([bdEvent(n) for _ in 1:N])/N
# 使用自定義之函數,計算理論上房內有1~60人時兩人有相同生日的機率
xGrid = 1:60
analyticSolution = [matchExists(n) for n in xGrid]
# 使用蒙地卡羅模擬法估計在房內有不同人之情況下,房內有1~60人時兩人有相同生日的機率
N = 10³
mcEstimates = [probEst(n) for n in xGrid]
# 將理論結果與蒙地卡羅模擬法估計出的結果繪製出來比較。
plot(xGrid, analyticSolution, c=:blue, label=”Analytic solution”)
scatter!(xGrid, mcEstimates, c=:red, ms=6, msw=0, shape=:xcross,
label=”MC estimate”, xlims=(0,60), ylims=(0, 1),
xlabel=”Number of people in room”,
ylabel=”Probability of birthday match”,
legend=:topleft)
從圖中可看出估計得非常準確,而當人數超過20時房內有人有相同生日日期的機率已經高達40%了,當房內有超過40人時,有人有相同生日日期之機率則高達90%!
有興趣可以至我的blog參考原文文章:https://www.juliansweb.com/julia-birthday-paradox
為什麼會看到廣告
4會員
25內容數
留言0
查看全部
發表第一個留言支持創作者!
詹永裕的沙龍 的其他內容
Julia同時具有高可讀性又有高運算能力,比起Python及R更加吸引人。此系列文章將引用Statistics With Julia的程式碼並介紹重要統計概念。
點估計(point estimation)是指用樣本資料來估計母體參數,使用一個點的數值表示其估計值,因此稱為點估計。事實上我們相當常見的樣本平均數或樣本變異數就是點估計,我們是使用樣本資料計算出一個數值,然後再用這個點的數值去估計母體的參數。
一篇文章帶你搞懂何謂蒙地卡羅法。
這是一個資源有限的世界,我們所能得到的東西,能夠使用的金錢、時間,都是有限的,那我們能如何在這些有限的資源中做選擇呢?
每一個國家/經濟體的經濟制度都有所不同,但可以被約略劃分成市場經濟體系、混合經濟體系和計劃經濟體系。這一篇我們就來介紹兩個最常被拿來做比較,也分別分散在光譜的最兩端的兩個制度
個體經濟學和總體經濟學相互用不同的角度來觀察經濟行為。個體經濟學專注在經濟層面中個體的行為。而總體經濟學在研究經濟時則是把經濟視作一個整體切入,使用國民收入、經濟整體的投資和消費等總體性的統計概念來分析經濟運行規律。
Julia同時具有高可讀性又有高運算能力,比起Python及R更加吸引人。此系列文章將引用Statistics With Julia的程式碼並介紹重要統計概念。
點估計(point estimation)是指用樣本資料來估計母體參數,使用一個點的數值表示其估計值,因此稱為點估計。事實上我們相當常見的樣本平均數或樣本變異數就是點估計,我們是使用樣本資料計算出一個數值,然後再用這個點的數值去估計母體的參數。
一篇文章帶你搞懂何謂蒙地卡羅法。
這是一個資源有限的世界,我們所能得到的東西,能夠使用的金錢、時間,都是有限的,那我們能如何在這些有限的資源中做選擇呢?
每一個國家/經濟體的經濟制度都有所不同,但可以被約略劃分成市場經濟體系、混合經濟體系和計劃經濟體系。這一篇我們就來介紹兩個最常被拿來做比較,也分別分散在光譜的最兩端的兩個制度
個體經濟學和總體經濟學相互用不同的角度來觀察經濟行為。個體經濟學專注在經濟層面中個體的行為。而總體經濟學在研究經濟時則是把經濟視作一個整體切入,使用國民收入、經濟整體的投資和消費等總體性的統計概念來分析經濟運行規律。
你可能也想看
Google News 追蹤
Thumbnail
接下來第二部分我們持續討論美國總統大選如何佈局, 以及選前一週到年底的操作策略建議 分析兩位候選人政策利多/ 利空的板塊和股票
Thumbnail
🤔為什麼團長的能力是死亡筆記本? 🤔為什麼像是死亡筆記本呢? 🤨作者巧思-讓妮翁死亡合理的幾個伏筆
Thumbnail
This is a birthday pony  這是生日小馬 This is a strange kind of rest  這是一種奇怪的部分 Because I feel like a guest  因為我感覺像個客人 When I'm right here at home  當我在家裡這裡
Thumbnail
乃木坂46 9th BIRTHDAY LIVE因應COVID-19防疫需求分成三個波段,第三波段就是5月才登場、以直播形式呈現的4期生LIVE和3期生LIVE。身為團內的新世代,4期生和3期生背負著傳承團體歷史的使命,卻又必須自己開拓新的疆域。這次直播LIVE是很好的驗收。快來看看有什麼厲害吧!
Thumbnail
雖然我不知道自己為甚麼會在生日那天洗廁所的地板, 但我就是這樣做了。 看不過眼地板太污糟, 一洗為快。 已經早過了會想在生日慶祝的年齡, 最好不要提醒我又大了一歲, 我不想知不想提起, 靜靜過這一天就好, 所以送給自己的生日禮物, 就是請一天假, 然後宅在家裏, 好好享受Me Time。 Me T
Thumbnail
丹麥的生日文化很特別 (之前已經有介紹過),除了他們有自己獨特的生日快樂歌和禮物文化等等外,今天想分享一個也是丹麥獨特的生日文化 "蛋糕人。"
Thumbnail
今天我生日,又長大一歲了!Happy Birthday To Me! 過去一年發生很多事情,尤其是新冠肺炎 (COVID-19),這肺炎疫情一定是2020年,甚至乎是二十世紀,世界最重大事件之一,令世人難以忘懷。
Thumbnail
粉紅色,因為想到妳就甜甜,永遠的少女。   還記得小時候,那時還懵懵懂懂的我們,一起討論著彼此的夢想,妳說妳要開一間美髮廳,而我想開一間畫廊咖啡廳,我們笑著說好那就來個複合式空間吧!再來個服飾如何,這塊我們一起經營就好。 即使時光飛逝,我們都從小女孩變成大人了..
Thumbnail
接下來第二部分我們持續討論美國總統大選如何佈局, 以及選前一週到年底的操作策略建議 分析兩位候選人政策利多/ 利空的板塊和股票
Thumbnail
🤔為什麼團長的能力是死亡筆記本? 🤔為什麼像是死亡筆記本呢? 🤨作者巧思-讓妮翁死亡合理的幾個伏筆
Thumbnail
This is a birthday pony  這是生日小馬 This is a strange kind of rest  這是一種奇怪的部分 Because I feel like a guest  因為我感覺像個客人 When I'm right here at home  當我在家裡這裡
Thumbnail
乃木坂46 9th BIRTHDAY LIVE因應COVID-19防疫需求分成三個波段,第三波段就是5月才登場、以直播形式呈現的4期生LIVE和3期生LIVE。身為團內的新世代,4期生和3期生背負著傳承團體歷史的使命,卻又必須自己開拓新的疆域。這次直播LIVE是很好的驗收。快來看看有什麼厲害吧!
Thumbnail
雖然我不知道自己為甚麼會在生日那天洗廁所的地板, 但我就是這樣做了。 看不過眼地板太污糟, 一洗為快。 已經早過了會想在生日慶祝的年齡, 最好不要提醒我又大了一歲, 我不想知不想提起, 靜靜過這一天就好, 所以送給自己的生日禮物, 就是請一天假, 然後宅在家裏, 好好享受Me Time。 Me T
Thumbnail
丹麥的生日文化很特別 (之前已經有介紹過),除了他們有自己獨特的生日快樂歌和禮物文化等等外,今天想分享一個也是丹麥獨特的生日文化 "蛋糕人。"
Thumbnail
今天我生日,又長大一歲了!Happy Birthday To Me! 過去一年發生很多事情,尤其是新冠肺炎 (COVID-19),這肺炎疫情一定是2020年,甚至乎是二十世紀,世界最重大事件之一,令世人難以忘懷。
Thumbnail
粉紅色,因為想到妳就甜甜,永遠的少女。   還記得小時候,那時還懵懵懂懂的我們,一起討論著彼此的夢想,妳說妳要開一間美髮廳,而我想開一間畫廊咖啡廳,我們笑著說好那就來個複合式空間吧!再來個服飾如何,這塊我們一起經營就好。 即使時光飛逝,我們都從小女孩變成大人了..