4d6ドロップを使用した場合のプレーヤー間の最大予想差

特定のTRPGのプレーヤーには、6つの能力スコアを持つキャラクターがいます。各能力スコアは3〜18の範囲です。それらを生成する1つの方法は、スコアごとに4d6ドロップを最低にロールすることです。つまり、4つの6面ダイスが振られ、最高の3つの結果が追加されます。

5人のプレーヤーのうち2人の能力スコアの合計で予想される最大の差は何ですか?

関連する質問ここは、4d3ドロップの分布を最小にする方法を示していますが、そこから上記の質問の回答に到達するにはどうすればよいですか?

良い答えは、統計の初心者が従うことができる方法で結果を説明するでしょう。

答え

$ \ newcommand {\ E} {\ mathbb {E}} $(私はあなたが確率分布と期待値の操作に精通していると仮定してこれを書いていますが、うまくいけばあまり派手ではありません。これ以上説明する必要があるかどうか教えてください。私はまた、これをかなり計算的な方法で行って、すべてを手作業でやろうとするのではなく、答えを得るだけです。)

$ n = 5 $のプレイヤーがそれぞれ1つのキャラクターをロールアップしているとします。 6つの能力スコア。それぞれが$ X_ {ij} $として示されます。 $ Y_i = \ sum_ {j = 1} ^ 6 X_ {ij} $を$ i $番目のプレーヤーの能力スコアの合計として定義します。次に、$ Z = \ max_ {iの期待値について質問します。 、i “} \ lvert Y_i –Y_ {i”} \ rvert = Y _ {(n)} –Y _ {(1)} $、$ Y _ {(1)} $が$から最初にソートされた値であるという表記を使用\ {Y_1、\ dots、Y_n \} $(つまり最小)、および$ Y _ {(n)} $は$ n $ th(最大)です。

個々のスコア$ X_ {ij } $

リンクした回答のように、$ X_ {ij} $の分布を見つける最も簡単な方法は、すべての$ 6 ^ 4 = 1296 $の可能なロールを考慮してブルートフォースすることです。ここにいくつかの簡単なPythonコードがあります(おそらくこれを行うためのより良い方法があります…):

import numpy as np import matplotlib.pyplot as plt def as_kth_of(a, k, n): """vector a => shape (1, ..., 1, a.size, 1, ..., 1) where new shape is length n, a.size is in kth""" return a[(np.newaxis,) * k + (slice(None),) + (np.newaxis,) * (n - k - 1)] def pmf_drop_lowest(sides, number): rolls = np.arange(1, sides + 1) totals = sum(as_kth_of(rolls, k, number) for k in xrange(number)) mins = np.ones_like(totals) * 10000 for k in xrange(number): mins = np.minimum(mins, as_kth_of(rolls, k, number)) return np.bincount((totals - mins).ravel()) / totals.size score_pmf = pmf_drop_lowest(6, 4) plt.bar(np.arange(score_pmf.size) - .5, score_pmf) 

合計能力スコア$ Y_i $

これで、能力スコアの合計の分布を見つけることができます。$ Y_i = X_ {i1} + X_ {i2} + \ dots + X_ {i6} $。

2つの独立した離散確率変数$ A + B $の合計の分布は何ですか?そうですね、$ \ Pr(A + B = c)= \ sum_ {k =-\ infty} ^ \ infty \ Pr(A = k)\ Pr(B = k –c)$。この操作は畳み込み、そして幸いなことにnumpyにはそれを行う機能があります(リンクされたWikipediaの記事には、確率についてはあまり詳しくありません。これを試すことができますGrinstead and Snellの章。)

コード:

total_pmf = 1 for _ in xrange(6): total_pmf = np.convolve(total_pmf, score_pmf) plt.bar(np.arange(total_pmf.size) - .5, total_pmf) 

$ Y $の最大値と最小値

$ Y_i $の分布がわかったので、質問は次のとおりです。の2つの要素間の最大ペアワイズ距離はどれくらいですか。 $ Y $?または、最高の$ Y $と最低の$ Y $の違いは何ですか?

気になる変数を$ Z = Y _ {(n)}-Y _ {(1)} $と書くと、次のようになります。その$ \ EZ = \ E Y _ {(n)}-\ E Y _ {(1)} $、期待値は線形であるため。これにより、2つの同時分布を計算する際にこの回答を最初に作成したときに行った作業が節約されます。 🙂

まず、累積分布関数(cdf)$ \ Pr(Y \ le y)= \ sum_ {k = 0} ^ y \ Pr(Y = k)$を定義しましょう。この場合、$ Y _ {(n)} $の累積分布関数は$$ \ begin {align *} \ Pr(Y _ {(n)} \ le y)& = \ Prです。 \ left(Y_1 \ le y \ text {and} Y_2 \ le y \ text {and} \ dots \ text {and} Y_n \ le y \ right)\\ & = \ prod_ {i = 1} ^ n \ Pr \ left(Y_i \ le y \ right)\\ & = \ Pr(Y \ le y)^ n \ end {align *} $$ $ Y_i $は独立しているため、$ Y _ {(n)} $は負でない整数値をとるため、その期待値を次のように計算できます $$ \ begin {align *} \ E Y _ {(n)} & = \ sum_ {y = 1} ^ \ infty \ Pr(Y _ {(n)} \ ge y)= \ sum_ {y “= 0} ^ \ infty \ Pr(Y _ {(n)} > y”)\\ & = \ sum_ {y “= 0} ^ \ infty \ left(1- \ Pr(Y _ {(n)} \ le y”)\ right)= \ sum_ {y “= 0} ^ \ infty \ left (1- \ Pr(Y \ le y “)^ n \ right)。\ end {align *} $$コード:

n_players = 5 total_cdf = np.cumsum(total_pmf) exp_max = np.sum(1 - total_cdf ** n_players) 

getting exp_max約81 .5。

同様に、最小値:$$ \ begin {align *} \ Pr \ left(Y _ {(1)} \ le y \ right)& = 1- \ Pr \ left(Y _ {(1)} > y \ right)\\ & = 1- \ Pr \ left(Y_1 > y \ text {and} \ dots \ text {and} Y_n > y \ right)\\ & = 1- \ Pr \ left(Y_i > y \ right)^ n \\ & = 1- \ left(1- \ Pr \ left(Y \ le y \ right)\ right)^ {n} \ end {align *} $$そしてその期待値は:$$ \ E Y _ {( 1)} = \ sum_ {y = 0} ^ \ infty \ Pr(Y _ {(1)} > y)= \ sum_ {y = 0} ^ \ infty \ left (1- \ Pr \ left(Y \ le y \ right)\ right)^ n $$

コード:

exp_min = np.sum((1 - total_cdf) ** n_players) 

exp_minを約65.3取得します。

5人のプレイヤーの中で最も幸運なプレーヤーと不幸なプレーヤーの最終的な予想される違いは、合計16.2アビリティポイントです。 (それはちょっとたくさんです!)


ところで、$ Y _ {(1)} $と$ Y _ {(n)}の同時分布を計算したと言いました $(as $ \ Pr(Y_ {n} = y “)\ Pr(Y _ {(1)} = y \ mid Y _ {(n)} = y”)$)5人のプレーヤーの場合、 $ Y _ {(n)}の分布-Y _ {(1)} $は次のようになります:

コメント

  • 能力の合計ではなく、合計ポイント購入スコアに基づいて一連の能力の品質を評価する方がよい場合があることに注意してください。それについての厄介なことは、次のことができることです。 ' tポイント-7未満のスコアを購入するため、'は必ずしも明確に定義されているとは限りません…

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です