彼氏・彼女の選び方                        戻る

 当HPがいつもお世話になっているHN「GAI」さんからの出題です。
                                       (平成26年2月15日付け)

 さて、これから出会う未知の4人(自分との相性が4人間で序列がつくものとする。)の中で
最も相性が良い人と出会うためには、如何なる戦略をとれば、最も確率よく出会えるかを調
べる。

 作戦1:最初の人を選ぶ。
 作戦2:最初の人は見過ごし、この人より相性の良い人と出会うと決定する。
 作戦3:出会いから2人目まで見過ごし、その後出会った人より相性の良い人に決定。
 作戦4:最後まで待ってその人を選ぶ。

もちろん作戦2,3はそれまで出会わないなら最後の人を選ぶことになる。

 この作戦1〜4での最高に相性の良い人とカップルになれる確率をそれぞれ求めて下さい。

 同様に、100人の人とお見合いをしたとき、自分と最も相性が良い人を射止めるための確
率を最も高めるときの作戦を立てて下さい。



























(答) 作戦1: 1/4 、作戦2: 5/12 、作戦3: 3/8 、作戦4: 1/4

  作戦:「出会いから36人目まで見過ごし、その後出会った人より相性の良い人に決定」


(コメント) 以前、どこかで同じような問題を拝見しました。確か、秋山 仁 先生が紹介され
      ていたような...おぼろげな記憶。

 何かを選んだり決めるとき、確率論的には次のように対処するのがベストだそうです。

(1) 最初の2つは良いと思っても、スルーする。

(2) 3つ目を見て、良ければ決める。

(3) 3つ目を見て、悪ければ、4つ目を見る。

(4) 以下、(2)(3)のように、良ければ決めて、悪ければスルーして、次を見る。

 このことから、作戦3が一番確率が高いかも...。

 ただ、人数が少ない4人だと次のように計算してみて、作戦2の方が有利と分かりました。

 n人の中から最良の1人を選ぶとき、k人まではスルーして、k+1人目以降で最良の1人
を選ぶ確率をP(k,n)とおく。

(例) n=2 のとき、 P(0,2)=P(1,2)=1/2

 n=3 のとき、 123 、132 、213 、231 、312 、321 の6通りが起こりえるので、

  P(0,3)=2/6=1/3    P(1,3)=3/6=1/2 (← 213 、231 、312 )

  P(2,3)=2/6=1/3

 n=4 のとき、 1234、1243、1324、1342、1423、1432、2134、2143、2314、2341、2413、
           2431、3124、3142、3214、3241、3412、3421、4123、4132、4213、4231、
           4312、4321

  の24通りが起こりえるので、

P(0,4)=6/24=1/4

P(1,4)=11/24
          (↑ 2134、2143、2314、2341、2413、2431、3124、3142、3412、4123、4132)

P(2,4)=10/24=5/12
          (↑ 2314、2341、2413、2431、3214、3241、3412、4213、4231、4312)

P(3,4)=6/24=1/4
          (↑ 2341、2431、3241、3421、4231、4321)


 上記の計算を一般化してみよう。

確率 P(k,n)=最良の人A(r+1番目)を見いだすために、k人まではスルーして、k+1人
          目以降から最良の人を見いだす確率

 つまり、k+1人目以降のものから、今までに出あった中で最高の人を超える人Aを見つけ
る確率を最大にする。

まず、明らかに、スルーしていいのは、r人目までなので、 r≧k が成り立つ。

次に、最良の人Aが、r+1番目に現れる確率は、1/n で、そのAに出会う確率は、k/r な
ので、
     P(k,n)=(1/n)(k/r)  ただし、 r=k、k+1、・・・、n−1

 したがって、上記の手順で、最良の人Aを見いだす確率は、

  P=Σr=k〜n-1 P(k,n)=(k/n)Σr=k〜n-1 1/r

 ところで、x≒0 に対して、log (1+x) =x−x2/2+x3/3+・・・ より、log (1+x) ≒ x

なので、 log n =log n/(n−1)・(n−1)/(n−2)・・・(2/1)

          =log(1+1/(n−1))+log(1+1/(n−2))+・・・+log(1+1/1)

          ≒1/(n−1)+1/(n−2)+・・・+1/1

          =1/(n−1)+・・・+1/k+1/(k−1)+・・・+1/1

          =1/(n−1)+・・・+1/k+log k

より、 P=(k/n)log(n/k) となる。

 このとき、 P’=0 とすると、 log(n/k)=1 から、 k=n/e となる。

 k=n/e のとき、Pは極大かつ最大となる。

 つまり、最初の n/e 人をスルーして、n/e+1人目以降で最良の人Aを選ぶ確率が最大と
なる。その確率は、

 (k/n)log(n/k)=(1/e)log e

           =1/e =1/2.7182818284・・・=0.367879441179533・・・

 よって、確率は、だいたい37%ということが分かります。

 n人から1人を選ぶ確率は、1/n で、これは、n が十分大きくなると限りなく0に近づくこと
を考えれば、上記手順で最良の人を選ぶ確率が37%というのは、十分高い確率ですね。

 3×0.37=1.11 、4×0.37=1.48 、5×0.37=1.85 なので、

n=3、4、5 のときは、1人をスルーしてから選ぶと最良の人を見つける確率が高い。

 6×0.37=2.22 なので、n=6のときは、2人をスルーしてから選ぶと最良の人を見つ
ける確率が高い。

 したがって、n=100 のとき、 n/e = 100×0.3678・・・=36、78・・・ から、求める
作戦は、
     出会いから36人目まで見過ごし、その後出会った人より相性の良い人に決定

とすればよいことになる。


(コメント) 最初はいくつかスルーして経験を積んだ後に選んだ方が、最良のものを選ぶ確
      率が高いということは、人生の選択においても使えそうですね!