メインコンテンツまでスキップ

サイコロの目が揃うまで投げ続ける

5 つのサイコロをすべての目が揃うまで投げ続けるという Numberphile の動画の中で、1296 回目の試行までに目が揃う確率は 63%であると言っていた。この数字がどのように導出されるか気になったので考えてみた。

まずは 2 つのサイコロを投げたときにゾロ目が出る確率を考える。

16×16×6=16\frac{1}{6} \times \frac{1}{6} \times 6 = \frac{1}{6}

2 つのサイコロを投げたときにゾロ目が出ない確率は、

116=561 - \frac{1}{6} = \frac{5}{6}

2 つのサイコロを 2 回投げてもゾロ目が出ない確率は、

56×56=2536\frac{5}{6} \times \frac{5}{6} = \frac{25}{36}

2 つのサイコロを n 回投げてもゾロ目が出ない確率は、

(56)n\left(\frac{5}{6}\right)^n

これを desmos で作図してみた。

次に 5 つのサイコロを投げる場合を考える。5 つのサイコロを n 回投げても目が揃わない確率は、

(12951296)n\left(\frac{1295}{1296}\right)^n

これも desmos で作図してみた。

x=1296x = 1296 を見ると y=0.3677y = 0.3677 となっている。つまり 1296 回目までに目が揃う確率は約 0.6323 である。

1n\frac{1}{n} の確率である事象が起こる操作を n 回行っても当該事象が起こらない確率は以下の式で表せる。

limn(n1n)n\lim_{n \to \infty} \left(\frac{n-1}{n}\right)^n

しかし私は極限の求め方はもう完全に忘れている...

高校生の頃にこの話をあるブログで見た気がしたので調べてみたらあった。2012 年の記事だった。残っててよかった。

ところで、指数関数 exe^x を原点で微分すると

limt0et1t=1\lim_{t \to 0}\frac{e^t-1}{t}=1

となります。ここに

t=log(1+an)t=\log\left(1+\frac{a}{n}\right)

を代入すると、

limn(1+an)n=ea\lim_{n \to \infty}\left(1+\frac{a}{n}\right)^n=e^a

という式を得ます。

指数関数の微分の方法も忘れているので「高校数学の美しい物語」で確認。

けど後半の t を代入してからの式変形がわからない...

追記!!

友人と兄に質問したら途中式を書いて送ってきてくれた!

全部書いてみましょう。

t=log(1+an)t=\log\left(1+\frac{a}{n}\right)

とするとき、

limt0t=limnlog(1+an)\lim_{t \to 0}t = \lim_{n \to \infty}\log\left(1+\frac{a}{n}\right)

となるので、

limt0et1t=1\lim_{t \to 0}\frac{e^t-1}{t}=1

t=log(1+an)t=\log\left(1+\frac{a}{n}\right)

を代入すると、

limn1+an1log(1+an)=1\lim_{n \to \infty} \frac{1 + \frac{a}{n} - 1}{\log\left(1+\frac{a}{n}\right)} = 1
limnanlog(1+an)=1\therefore \lim_{n \to \infty} \frac{\frac{a}{n}}{\log\left(1+\frac{a}{n}\right)} = 1

これの逆数を取り、

limnlog(1+an)an=1\lim_{n \to \infty} \frac{\log\left(1+\frac{a}{n}\right)}{\frac{a}{n}} = 1
limnnalog(1+an)=1\therefore \lim_{n \to \infty} \frac{n}{a} \log\left(1+\frac{a}{n}\right) = 1

累乗の対数の式変形を用いて

limnlog(1+an)na=1\lim_{n \to \infty} \log\left(1+\frac{a}{n}\right)^\frac{n}{a} = 1

ここで、

1=loge1 = \log e

なので、

limnlog(1+an)na=loge\lim_{n \to \infty} \log\left(1+\frac{a}{n}\right)^\frac{n}{a} = \log e
limn(1+an)na=e\therefore \lim_{n \to \infty} \left(1+\frac{a}{n}\right)^\frac{n}{a} = e
limn(1+an)n=ea\therefore \lim_{n \to \infty} \left(1+\frac{a}{n}\right)^n = e^a

この式に a=1a = -1 を代入すると、

limn(n1n)n=e1=1e=0.36787...\lim_{n \to \infty} \left(\frac{n-1}{n}\right)^n = e^{-1} = \frac{1}{e} = 0.36787...

というわけで 63% というのは

(11e)=0.63212...\left(1 - \frac{1}{e}\right) = 0.63212...

という数字だったわけですね。面白い。

せっかくなので Python でシミュレーションしてみた。

15000\frac{1}{5000} の確率である事象が起こる操作を 5000 回行うまでに当該事象が起こる確率をシミュレーションしてみたけど意外と小数第 2 位が 2 とか 4 になったりする。これをまた 5000 回やって分散とか見ようとも思ったけど実行にかなり時間がかかるので今日はここまで。

情報もあるしツールもあるしやはりインターネットは最高ですね。

3Blue1Brown と 高校数学の美しい物語 が高校生の時にあったら数学をもう少し好きになれていた気がする。