37%法则、37%规则
目录 |
37%法则,出自《算法之美》[1]一书。意思是经过数学家欧拉的实验,以37%作为分界点,前面的时间用来观察,后面的时间用来作决策的一种方法。
举例来说,比如要买房子,整个地区的房子有30处,那么需要先看37%的房子,也就是11个房子。37%前的房子只看不买,但是要记住自己认为最好的是什么样子。看完后,从37%以后只有遇到比之前最好的还要好的房子就应该下手买。
有这么一个故事:一天,苏格拉底带领几个弟子来到一块麦地边。他对弟子们说:“你们去麦地里摘一个最大的麦穗,只许前行不能回头,我在麦地的尽头等你们。”弟子们低头前行,挑挑拣拣,总觉得最大的麦穗还在前面。虽然,有弟子试着摘了几穗,但并不满意,便随手扔掉了。他们总以为机会还很多,完全没有必要过早定夺。过了很久,很多弟子还是两手空空。这时,传来苏格拉底的声音:“你们已经到尽头了。”是如弟子们一样二手空空,还是如苏格拉底所说,“麦地里肯定有一穗是最大的,但你们未必能碰到它;即便碰到,也未必能作出准确的判断。因此最大的一穗就是你们刚刚摘下的。”
相似的问题,有一片玉米地,你需要从里面摘选一个棒子最大的玉米。但只能摘一次,而且不能回头。你第一次走进玉米地,发现很多很好很大的玉米棒子,很快摘下了你看到的第一个比较大的玉米棒子,然后继续往前走,然而越走越失望,你沮丧地发现前面还有很多比你手里的大得多的玉米棒子。但是你已经不能够选择了。你第二次走进玉米地,同样也发现了很多很好的玉米棒子,但是这一次你吸取“后悔”的教训——前面一定有更好的。你一直向前走,直到发现自己差不多走出了玉米地。按照规则,你回不去了。就这样,你错过了最好的玉米棒子。
对于在玉米地选择玉米棒子的问题。数学家的策略是,你要把这片玉米地分成两个阶段。前37%为第一阶段。在这个阶段,你只看不选,就是认真观察比较这个阶段最大的玉米棒子,记住那个玉米棒子的大小。等过了37%,进入第二阶段。从这个阶段开始,你一旦遇到一个比第一阶段那个最大的玉米棒子还要大的玉米,或者类似的玉米,就毫不犹豫地选择它。
分两个阶段这个策略和37%这个数字,是数学家欧拉好不容易算出来的,这实际上是一个随机选择优化问题。这个办法就叫37%规则。37%的规则并不能保证你一定能选择到最大的玉米,但是在这片玉米地里,玉米棒子大小是随机出现的。在这种随机出现的情况下,它是一个能够选到一个足够大玉米的好办法。从概率的角度来讲,如果你看了不到37%的玉米就开始选择,你将来很可能后悔选早了;如果你看了超过37%的玉米开始选,你将来可能后悔选晚了。
假设这片玉米地有N个玉米,数学模型上说,就是先拒掉前面 k 个玉米,不管这些玉米有多大;然后从第 k+1 个玉米开始,一旦看到比之前所有玉米都要大的,就毫不犹豫地选择它。不难看出,k 的取值很讲究,太小了达不到试的效果,太大了又会导致真正可选的余地不多了。这就变成了一个纯数学问题:在玉米总数 n 已知的情况下,当 k 等于何值时,按上述策略选中最大玉米的概率最大?
如何求出最优的 k 值?对于某个固定的 k,如果最适合的玉米出现在了第 i 个位置,k的概率记作P(k)。
用 x 来表示 k/n 的值,并且假设 n 充分大,则上述公式可以写成:
对 -x · ln x 求导,并令这个导数为 0,可以解出 x 的最优值,它就是欧拉研究的神秘常数的倒数—— 1/e
由于 1/e 大约等于 0.37(e ≈2.718281828459),因此这条法则也叫做 37% 法则。
最优停止理论的一个经典案例:秘书问题。
我们在公司中工作,被招聘、面试人都有所经历,假如你是一个秘书,需要招聘一个人员,筛选了几分简历,决定面试4人,甲、乙、丙、丁。
每次面试之后,你有两个选择,要么聘用此人,要么拒绝。我们如何才能招聘最佳人选的机会最大,终止面试呢?
我们假设这四个人按照顺序丁>丙>乙>甲,我们面试是随机的,前提也不知道丁是最棒的,如果我们面试完这四个人,是有24种可能的,也就是4种排列。
假如我们有三种策略:
第一种策略:面试完第一人就决定录用,能录用到丁的概率是25%;
第二种策略:面试完最后一人就决定录用(前三人不要),能录用到丁的概率是25%;
第三种策略:面试完第一人不做决定,作为判定标准,一旦出现比他高的人就录用,能录用到丁的概率是46%。
假如第一个人是就是丁,后面面试的能力都比他弱,我们就自行放弃吧,选中丁的概率是为0的;假如第一个人是甲,第二个人能力都比甲好,但是录取到丁的概率是2/24;假如第一个人是乙,第二个人是甲的话,肯定不用,第二个人是乙、丙、丁就会录用,但是能录用到丁的概率就是3/24;假如第一个人是丙,只有丁比他强,因此只要丁一出现就会被录取,有6/24的可能性,以上可能性加到一起就是11/24=46%。我们发现第三种策略能选到最优人员的概率要大。
注:以上计算各位可自行搜索,或是自己列一下24个排序,就可以计算出来。
以上是N=4的时候,当N变动时,概率是什么样子的呢?
请看下表:
人数 | 作为标准的人数 | 选中优秀人员概率 |
4 | 1 | 46% |
5 | 2 | 43 |
6 | 2 | 42.78 |
... | ... | ... |
100 | 37(37%) | 37.1 |
1000 | 369(36.9%) | 36.8 |
当N无限大,我们作为标准的策略就是N/e(e是自然常数),概率就是1/e,是不是很神奇。假如人数是10000,,我们采取的策略是10000/2.71828=3678,不做录取,只做标准,选中最优人员的概率为1/e=36.8%≈37%。
这就是37%的由来,因此37%是我们在做最优停止时选择标准根据样本计算的依据。
比如你打算在18- 40岁之间找到人生的伴侣,那么按照37%理论来的话,前一段37%也就是 18-26.1岁,用来交往不同的男士,只交往不结婚。等你到了26.1岁的时候,坐下来确定你的“最基本的满意标准”。然后嫁给一个从那一 天开始你遇到的,第一个好于这个标准的男士,并且不再寻找最优方案。
再比如你想在一个月内买房子,那你可以用37%的时间看房子,确定“最基本满意标准”,然后从第12天开始,遇见一个好于这个标准的房子,就立即下手。
如果你一生可能要有10段恋爱,那么找到“那个他”的最大概率发生在拒绝4个恋人之后(代表39.87%的恋爱经历)。
如果你可能谈20段恋爱,则要拒绝前8个人(那个对的人在38.42%处等你)