秘書問題

「秘書問題」という問題があります。
別の呼び方として「結婚問題」とか「最適選択問題」とかあるらしいですが、私は「浜辺の美女問題」という呼び方が一番あっていると思うので、この例えで説明します。

 

・浜辺にN人の女がそれぞれバラバラにいて、そのうち誰かをナンパしたいと考えています。
・イケメンなので成功率は100%です。
・女に近づくとその人がどれくらい美人かが分かり、声をかけるかスルーするか選べます。
・声をかけた場合、そこで終了です。スルーした場合、その女性とは二度と会えません。
・男はどのようにすれば最も美人をゲットできるでしょうか。

 

ググればたくさん出てきますが、最適戦略は
「最初の何人かは必ずスルーし、そのうち一番の美人を覚えておく。それより美人が現れたら決定。スルーするのは全体の37%(1/e)」というもの。
これで、37%の確率でNo.1を選ぶことができるらしいです。

 

この問題には応用形もいくつかあります。
一番美人じゃなくても期待値が高ければ良いとか、一番美人をスルーしちゃった気がする場合は妥協していくとか、だんだん現実に即していく感じが面白いのですが、計算はどんどん複雑になっていってよく分からない。
計算する気が無いので、コンピュータ君にひたすらナンパしてもらって数を数えました。

 

条件はこちら。
・女は100人。美人度は一様にランダム
・ナンパ師は最初のN人をスルーする。N=0~99として100人のナンパ師が同時に浜辺に繰り出す。
・ナンパが終了した後、それぞれ何位の女をゲットしたか記録する
・これを100000回行ない、集計する。

したものがこちら。

f:id:syaik:20171103192840p:plain
横軸は何人をスルーしたか。縦にみて一番下の青い部分は1位をゲットした回数。下から順に1位,2位,3位...をゲットした回数です。
1位をゲットするのは37%スルーが最強ですが、2位でも良いとなると29%スルーの方が良いらしい。
許容順位と最適スルーはこちら

f:id:syaik:20171103192909p:plain
んー...何か1位ゲットは38%スルーの方が良いような誤差が出てますが気にしない。
4%スルーすれば、94%の確率で平均以上をゲットできます。

順位の期待値をグラフにしたものがこちら。

f:id:syaik:20171103192926p:plain
6,7人スルーがほぼ同数で一番良いらしいです。
0スルーは当然50点が期待値ですが、1人スルーしただけで期待値は74点にもなります。

重ねてみましたが、特にどうということはない。

f:id:syaik:20171103192944p:plain

要するに「その道に精通していなくても、ほんのちょっとでいいから知識や経験があれば初見よりずっとずっと良い」ってことですね。