お見合いの期待値

概略
お見合いの期待値を算出、スクリプトで試してみた。

詳細
 Nは自然数。N枚のカードに1からNと数字が書かれている。無作為にカードを一枚ずつ引き続ける。(一度引き出したカードは、それ以降使わない。)
 n枚目に選んだカードの数字より、(n+1)枚目に選んだカードの数字の方が小さい時、カードを引くのを止め、nを確率変数とする。
 その確率変数nの期待値を求め、さらにNが無限大まで大きくすると、そのnの期待値はどうなるかを調べたい。
 例)「1,3,5,7,12,4」→5枚目までは前の数より大きく、6枚目で初めて小さい(12>4)数が出たので、結果は「5枚」(n=5)。
 (ちなみに暇な五分間で問題を思い出して解いたモノ。問題が微妙に違ってるかもしれない。というかn+1が確率変数だったかもしらん。。。)

何の意味が?
 結果が綺麗。自力で解けた、という満足感から勢いでこんなページを作りました。

算数的算出
 「n枚」という結果が得られる確率p(n)を直接求めてみる。
●n<Nの時、N枚のカードから、(n+1)枚を選び(NCn+1通り)、数の小さい順に並べ(1通り)てみる。
例)n=6,「2,5,7,8,11,12,23」
この中から一番大きなもの以外のn枚から一枚選び(n通り)、それを一番右に置く。
例)「2,5,8,11,12,23,7」
このカードを左から順番に引く(もちろん無作為に)ものは題意を満たし、そして全ての場合を尽くす。
そして、これらは
 NCn+1・1・n = n・NCn+1通り
である。
今求めたいのは確率で何通りかではない。ので、全通り(題意を満たさない物も含む何通り)はN枚から(n+1)枚を順番に引くので、
 NPn+1通り

∴p(n) = {n・NCn+1}/{NPn+1}
    = n / (n+1)!

●n=Nの時、これはN枚のカードを小さいものから順番に選んだ場合、つまり唯一通りであり、
p(N) = 1 / N!

以上から
期待値m = Σ[n=1〜N-1]n・p(n)+N・p(N)
    = Σ[n=1〜N-1]n2/(n+1)! + 1/(N-1)! …@

今、p(n)は全ての場合を尽くした確率であるから、当然
 Σp = 1
となるはずである。pの式を代入して、
 1 = Σ[n=1〜N-1]n/(n+1)! + 1/N!

コレを@式に各辺代入する。
分数だらけの式なので、分母が同じものを暗算した。

 m+1 = Σ[n=1〜N-1]n(n+1)/(n+1)! + 1/(N-1)! + 1/N!
   = Σ[n=1〜N-1]1/(n-1)! + 1/(N-1)! + 1/N!
   = Σ[k=0〜N]1/k!
∴m = Σ[k=0〜N]1/k! - 1

よってk→∞に飛ばすと、m→e-1
eはネイピア数であり、e-1 = 1.718281828・・・

スクリプト
N: 
結果:

で、どこが"お見合い"なん?
 つまりですね。カードの数字は人間の「良さ」を数値化したもの、と考える。 お見合いをして、一人目と会う。数字が低ければ、結婚を断り、次のお見合いをする。 で、お見合いの相手が全くのランダムだとすると、「何人目が最も大きな数字を持ったヒト」なのか、の答えがe-1≒1.7となる。
 言うまでも無く、数値化するってのは難しい。人間の良さってのは一次元じゃないからね。ま、どうでもいいけど。


return void;

(c)Kero's World author;REM 2009 5/30