如何平衡擲出最高骰子的機會?(謎語)
我剛剛發明了以下謎語,做統計工作。(我真的需要答案!)
謎語:
想像一個骰子遊戲,目的是擲出最高的骰子。骰子很特別,有無限的邊,數字從 0 到 1 不等!(統一,無偏見)
有 2 個玩家:玩家 A 有 3 個骰子要擲,玩家 B 有 7 個骰子。這意味著玩家-B 有 7/10 的獲勝機會,即投出所有 10 個中最高的數字。
現在,為了公平起見,玩家同意將玩家 A 拋出的每個數字乘以某個常數。這個常數的值是多少,所以每個玩家都有 50% 的獲勝機會?
你能找到一個通用的公式來確定這個常數,根據兩個玩家的骰子數量嗎?
(如果這是一個已知問題:你知道這是怎麼稱呼的嗎?)
注意事項/劇透: 調整常數不僅僅取決於投擲的比例(在這種情況下為 3:7);相反,絕對數量很重要。例如,如果球員有 300 次和 700 次投擲,那麼這個常數會更接近於 1。
我的直覺:我認為一個好的估計是假設投擲的均勻分佈:例如,3 投擲的小數點分別為 0.25、0.5 和 0.75!現在最高數字將是 0.75!對玩家 B 執行相同操作,您將獲得預期最高數字的比率(-> 調整常數)。不幸的是,這只是我的直覺,我不確定這是否正確。
編輯: 我很感謝所有的答案,但很驚訝沒有人使用類似於我描述的方法。為了完整起見,我在這裡解釋我錯的地方:
我假設預期的最大投擲次數為 1-1/(n+1),這是正確的,由以下腳本模擬:
import numpy as np import matplotlib.pyplot as plt x,y,y2 = [],[],[] for n in range(1,21): x.append(n) y2.append(1-1/(n+1)) temp = [] for _ in range(10000): sample = np.random.random_sample(n,) temp.append(max(sample)) y.append(np.mean(temp)) plt.scatter(x,y) plt.plot(x,y2) plt.title("Mean max = 1/(n+1)") plt.xlabel("Number of throws") plt.ylabel("Mean max of throws") plt.show()
這意味著,如果我們使用常數c將玩家 A 的****n次投擲中的每一個相乘,如果我們對 c 使用以下公式,則預期最大值將等於玩家 B 的m次投擲:
但這是錯誤的,因為這個謎語並沒有試圖使最大值的**平均值相等。**相反,它希望使 2 名玩家的最大值分佈的秩和相等。(如果我們在兩個分佈中對每個最大值進行排名)
在這裡,僅出於說明目的,我展示了我的公式如何無法準確擬合最大值的中位數:
乘以 $ \left(\frac{2(7)}{3+7}\right)^{1/3} = 1.1187 $
更一般地,假設玩家 $ A $ 勞斯萊斯 $ n $ 時代和球員 $ B $ 勞斯萊斯 $ m $ 次(不失一般性,我們假設 $ m \geq n $ )。正如其他人已經指出的那樣,玩家的(未縮放的)分數 $ A $ 是 $$ X \sim Beta(n, 1) $$ 和玩家的分數 $ B $ 是 $$ Y \sim Beta(m, 1) $$ 和 $ X $ 和 $ Y $ 獨立的。因此,聯合分佈 $ X $ 和 $ Y $ 是 $$ f_{XY}(x, y) = nmx^{n-1}y^{m-1}, \ 0 < x, y < 1. $$
目標是找到一個常數 $ c $ 這樣
$$ P(Y \geq cX) = \frac{1}{2} $$.
這個概率可以用 $ c $ , $ n $ 和 $ m $ 如下。
$$ \begin{align*} P(Y \geq cX) &= \int_0^{1/c}\int_{cx}^1 nmx^{n-1}y^{m-1}dydx \[1.5ex] &= \cdots \[1.5ex] &= c^{-n}\left{\frac{m}{n+m} \right} \end{align*} $$
設置這個等於 $ 1/2 $ 並解決 $ c $ 產量
$$ c = \left(\frac{2m}{n+m}\right)^{1/n}. $$