最近,我读了一本算法书,作者是美国科普作家布赖恩·克里斯蒂安(Brian Christian)。
英文书名叫做《Algorithms to Live By》(生活中的算法)。
我读的是中译本,书名译成《算法之美》(中信出版社,2018)。
说实话,这个书名有点误导。我以为讲的是编程算法,其实是生活中的数学知识。
这本书的优点是,面向普通读者,偏重于文字解释和举例,比较通俗。缺点恰恰也是这个,因为没有任何公式和代码,不可能对算法有透彻的理解。好多地方我都被卡住了,想不明白怎么推理(可能是翻译的问题)。
但是,它确实讲了很多有趣的数学知识。今天我想分享它的第一章 《最佳停止时间》:什么时候可以停止寻找?
日常生活有很多”寻找-决策过程”,如果考察所有选项,要花费很长时间,可能还会错失机会,后面遇到的未必有前面的好。能否确定一个时间点,到了某个阶段就停下来,不再寻找了,这时找到合适候选人的概率最大?
这在数学上称为“秘书问题”。
某公司招聘一名秘书,有100名候选人,依次面试。每面试完一个人,就必须立刻决定是否录取。也就是说,不能面试完所有人,再回过头决定录取哪一个,一旦放弃当前候选人,就只有从后面的面试者中选择。
这个设定是合理的,象征我们在生活中遇到的各种机会。机会来临时,转瞬即逝,必须立刻决定是否抓住它,错过就是错过了。你在三个月前放弃了一个机会,不可能三个月后再捡起来。
大家可以想一想,这时应该面试多少人?
如果录用得太早,可能错过后面更好的候选人;如果录用得太晚,可能错误放走前面的合格人选。
数学家对这个问题,已经有了充分的讨论。经过计算,成功概率最大的方法,叫做“1/e 法则”。e 是自然对数的底数,约等于2.718,那么 1/e 就约等于37%,所以它又称”37%法则”。
“37%法则”的意思就是,寻找阶段进行到37%就要停止。 100个应聘者,先面试前37个,此后的面试只要遇到一个更优秀的,就立刻录取,不再继续面试了。换句话说,前37个面试者无论多么优秀,都不会录取,他们只是用来确定录取的标准。
如果最合适的候选者偏偏在前面37%里面,那就只能错过了,作为”寻找阶段”不得不付出的成本。最终录取的将是不如前面候选人的次优选择。
这个法则很实用,日常生活中,只要符合”寻找-决策过程”的场景,都可以适用37%法则。
(1)相亲时,假定有10个相亲对象,那么前3~4个可以作为寻找阶段,后面只要遇到一个比前面更好的人,就可以同意了。
(2)租房时,假定有一个月的找房子时间,那么30天的37﹪也就是11天。在找了11天之后,你就要出手了。只要发现比先前更令人心动的房子,就不要犹豫,马上租下来。
(3)读书时,假定这本书有100页,如果读了37页,还没有发现感兴趣的内容,那就可以放弃了。
(4)一个10集的电视剧,第4集是最佳弃剧时间。
(5)一个10分钟的视频,看了3分42秒,如果还是觉得不好看,就可以关掉了。
(6)一个年轻人想在18岁到24岁,一共7年时间里找到人生方向,确定未来想做什么。那么,他有2.59年(7 * 0.37)的时间自由尝试。也就是说,到了大三下学期就应该初步定下自己的方向,后面除非遇到更有吸引力的事情,否则就不应该转换事业方向。
文章很棒 感谢博主的分享