four one nine,未婚妻问题
在这个特殊的日子,来讲讲相关的科学
假如有100个妹子,环肥燕瘦各有千秋,人品相貌工作背景学历打好分,你需要从中挑出来一个当媳妇,怎么挑,是个问题
把一百个妹子挨个看一遍,参考评分,挑出来一个最合适的,这是皇帝选妃
根据每个妹子的部分特征,去挑选最优的一个,这是最强大脑的题目
随机排序,顺序的挨个接触过去,不能回溯,这才是现实
很多的年轻人都很迷惑,今天经常扯淡的哥,不扯淡一回,来解个惑
这个问题由数学家 Merrill M. Flood 在 1949 首次提出,这个问题被他取名为“未婚妻问题”。这个问题的精妙之处在于,在微积分界叱咤风云的自然底数 e,竟也出人意料地出现在了这个看似与它毫不相关的问题中。
数学模型:假设婚前遇到的异性数量为N(个人根据自己的情况去预估吧),从数学模型上说,就是先拒掉前面 k 个人,不管这些人有多好;然后从第 k+1 个人开始,一旦看到比之前所有人都要好的人,就毫不犹豫地选择他。不难看出,k 的取值很讲究,太小了达不到试的效果,太大了又会导致真正可选的余地不多了。这就变成了一个纯数学问题:在异性总数 n 已知的情况下,当 k 等于何值时,按上述策略选中最佳异性的概率最大?
对于某个固定的 k,如果最适合的人出现在了第 i 个位置(k < i ≤ n),要想让他有幸正好被 你 选中,就必须得满足前 i-1 个人中的最好的人在前 k 个人里,这有 k/(i-1) 的可能。考虑所有可能的 i,我们便得到了试探前 k 个异性之后能选中最佳异性的总概率 P(k):
用 x 来表示 k/n 的值,并且假设 n 充分大,则上述公式可以写成:
对 -x · ln x 求导,并令这个导数为 0,可以解出 x 的最优值,它就是欧拉研究的神秘常数的倒数—— 1/e !
也就是说,如果你预计求爱者有 n 个人,你应该先拒绝掉前 n/e 个人,静候下一个比这些人都好的人。假设你一共会遇到大概 30 个求爱者,就应该拒绝掉前 30/e ≈ 30/2.718 ≈ 11 个求爱者,然后从第 12 个求爱者开始,一旦发现比前面 11 个求爱者都好的人,就果断接受他。由于 1/e 大约等于 37%,因此这条爱情大法也叫做 37% 法则。
不过,37% 法则有一个小问题:如果最佳人选本来就在这 37% 的人里面,错过这 37% 的人之后,你就再也碰不上更好的了。但在游戏过程中,你并不知道最佳人选已经被拒,因此你会一直痴痴地等待。也就是说,你将会有 37% 的概率“失败退场”,或者以被迫选择最后一名求爱者的结局而告终。
37% 法则的效果究竟如何呢?我们在计算机上编写程序模拟了当 n = 30 时利用 37% 法则进行选择的过程(如果始终未接受求爱者,则自动选择最后一名求爱者)。编号越小的异性越次,编号为 30 的异性则表示最佳选择。程序运行 10000 次之后,竟然有大约 4000 次选中最佳异性,可见 37% 法则确实有效