鍋あり谷あり

テーマを決めずに適当に書いています。

シャッフル再生

http://hotwired.goo.ne.jp/news/technology/story/20050928301.html
で、「コンピューター科学が専門の友人たち」が、正しくないヒントを書いていてなんだか悲しい気持ちになった。
この友人達によると乱数の質に問題があるのか、あるいはコンピュータには本当の意味での乱数が作れないと言うことが問題であるように読めるが、もちろんそんなことは問題ではない。
http://www.jmuk.org/d/?path=2005/09/29#d29t01
で jmuk さんが書いているとおり、乱数に意味を見いだそうとしてしまう人間の側に問題がある。

それはともかく。
jmuk さんが計算を途中でやめているので、その続きというか何というか。
まあその前に、問題を明文化しておこう。

アルバム1枚に10曲入っているようなアルバムが300個入っているライブラリがある。
ここから 10曲を順序付きでランダムに選ぶとき、以下の条件を満たす確率を求めよ:

  • 選んだ 10曲を順に再生した場合、任意の n について、n曲目,n+1曲目,n+2曲目,n+3曲目,n+4曲目は、相異なるアルバムの曲である。

で。N=300 とする。
全体は:
 (10*N)**10 = 5.9e+34 通り。
条件を満たす場合は:
 10*N * 10*(N-1) * 10*(N-2) * 10*(N-3) * ( ( 10*(N-4) )**6 ) = 5.3e+34 通り。
となる。
合ってる?

で、割り算すると、条件を満たす確率は
 0.90
となる。
条件を満たすというのは、くだんの記事を書いた方がランダムだと思える場合である。
逆に、くだんの記事を書いた方が乱数じゃないような気がする確率は 10% ほどとなる。10曲選ぶだけで、10回に1回ほど、乱数じゃないような気分になれるようだ。

ちなみに。
 10曲 → 0.90
 100曲 → 0.27
 300曲 → 0.018
となる。

なんでこんな計算をしたのかというと。実は
http://www.jmuk.org/d/?path=2005/09/29#d29t01

3000曲というのは、1つのアルバムが平均10 曲だとすると300枚のアルバムで構成されてるということを思い出そう。この確率が独立だとすると、全てのアルバムが近くにない確率は0.86の300乗で、笑っちゃうくらい低い数になる。もちろん、実際には確率は独立でないのでこんなことにはならないが、すくなくともほぼ毎回、すくなくとも同じアルバム中の2曲が「近く」にあるくらいのことは言えそうだと気付く。

の辺りがよくわからなかったからである。
で、理解すべく計算してみたけど、やっぱりわからなかった。
とほほ。