读到这里,「最大化」已经连输三局:数学上它要求不可能的条件(第二章),理论上它是用错的工具(第三章),实证上它让人更不快乐(第四、五章)。但公平地说,还有一个问题没回答:「找一找」本身并没有错,错的是「没完没了地找」。那么,找到什么程度就该停?
这次,数学不但站出来说话了,还给了一个精确到小数点的答案。
一道经典的难题
想象你要招一个秘书。有 100 个候选人,一个一个来面试。规则很苛刻:
- 每面试完一个人,你必须当场决定:录用,还是永远放走——放走的不能回头再叫回来;
- 你的目标是:尽最大可能录用到 100 人里最好的那一个。
这就是著名的秘书问题(secretary problem),数学家更正经的名字叫「最优停止问题」。它的难处在两头堵:录得太早,后面那个天才就没机会了;等得太久,最好的那个可能已经被你放走了。太早是草率,太晚是错过,「停在哪」是个真正的数学问题。
答案:先看 37 个,一个都别要
数学家把这道题解干净了。最优策略分两步:
- 观察期:前 37 个候选人(精确说是 100 ÷ e ≈ 37 个,e 是自然对数的底),只看不录,一个都别要——但要认真看,记下这 37 人里最好的那个有多好,拿它当标尺;
- 行动期:从第 38 个开始,一旦遇到一个比之前所有候选人都好的,当场录用,收工。
这个「前 37% 只观察、之后遇到更好就出手」的策略,就是传说中的 37% 法则。用它能选到全局最优的概率约 37%——听上去不高,但可以证明:任何其他策略都做不到更高。在「必须当场决定、不能回头」这个残酷规则下,37% 就是天花板。
人话版:连数学都不让你一上来就奔着「最好」去——它命令你先花 37% 的时间纯粹用来「搞清楚行情」,然后执行一个满意解策略:设好标尺,第一个过标尺的就成交。
注意这个策略的形状
仔细看看 37% 法则到底长什么样,会发现一件很有意思的事:它根本不是最大化策略,它是一个带着「调研期」的满意解策略。
它做的事情分毫不差就是第三章西蒙那套:先定一个「够好」的标准(前 37 人里最好的那个水平),然后接受第一个达到标准的选项。数学只不过补上了西蒙没给的部分:标准该用什么数据定(观察期),以及观察期该多长(总量的 37%)。
换句话说,在你能想象到的最「最大化」的场景里——规则清晰、目标唯一、只要第一名——最优答案依然是「见好就收」,区别只在于「好」的标准要用前 37% 的观察来校准。最大化与满意解不是非此即彼,满意解是最大化问题的最优解。这句话值得读两遍。
生活的规则没那么苛刻,所以答案更宽松
还得提醒一句:秘书问题的规则比生活苛刻得多。真实生活里——
- 你放走的选项常常能回头(那家店的帽子明天还在);
- 你很少需要「绝对的第一名」,第二名和第一名的差距通常小得无所谓;
- 候选人总数你不是 100 个,是成千上万个(第二章算过)。
每一条规则的放松,都让「该停的点」往更早挪。租房平台、算法研究者布莱恩·克里斯汀(Brian Christian)和认知科学家汤姆·格里菲斯(Tom Griffiths)在《算法之美》(Algorithms to Live By)里算过:只要你把目标从「非要第一名不可」放松到「拿到前几名里随便一个就行」,需要观察的比例就从 37% 大幅下降。条件越接近真实生活,数学就越站在「早收手」一边。
嘟嘟的无意识算法
现在可以给嘟嘟的购物行为做个逆向工程了。他在欧洲旅行前,不是没买过绳子和杯子——他过去几十年的生活就是他的「观察期」,心里早就有了标尺:什么样的绳子够结实、什么样的杯子算保温。到了欧洲的店里,他是在执行 37% 法则的后半段:标尺早已校准,第一个达标的,成交。
所以他的满意不是心大,是一套运行良好的算法。只不过这套算法有个软肋:标尺是过去定的,万一环境变了呢?「够好」的标准到底该怎么定、多久该重新校准一次?这是下一章的事。