生活中有些事会让我们头疼,因为它的决策链条太长了,干扰因素太多了,我们经常没法做判断。
比如,买房这件事,有很多人看了很多房子,但总找不到最满意的那个,犹豫来犹豫去,结果越往后看房价越高,就越不想买,最后错失很多好的机会。
买房子这件事数学家会怎样解决呢?
数学家会先假设这个问题的条件是这样的:1. 你随机地遇到各种房子,但是只打算买一个;
2. 遇到一个房子,如果你选择买下,这个房子就是你的;
3. 如果你选择不买,很快别人就会把它买走——你没有第二次机会;
4. 你应该给自己设定一个看房总数的期限,或者一个时间期限——比如说一个月之内一定要买到房子。
这本质上是一个随机选择优化问题,一直到1958年才被数学家解决。现在人们就把这个办法叫做“37%规则”。
以上面买房为例,这个规则简单来说,就是将一个月分成两个阶段:第一个阶段是前37%,你要充分了解尽可能多的房子,确定其中最满意的标准;第二个阶段是后63%,当遇到达到这个标准的房子或者更好的房子时,就毫不犹豫地买下来。
37%规则并不能保证你一定能买到最好的房子,但是在假定市场上的房子随机出现的情况下,它是能让你买到一个足够好的房子的足够好的办法。
同样,对于我们整个人生来说,年轻的时候应该多探索,到了后期就要专注于收获。 年轻时候该创业创业,该旅游旅游,积累各种经验教训,才能迅速理解这个世界,到了后期才能做出更好的选择。
在《指导生活的算法》这本书中,作者讲了这样一个例子,有个大学老师,从事教学工作的第一年,备课非常细心,1个小时的课程他会用10个小时准备,教案和PPT无比详尽。到了第二年,他新开了一门课,可是因为工作太忙了,他并没有那么多的时间来备课,不得不简化仓促应对。他自己很焦虑,结果学生反而更喜欢新开的这门课。他准备的时间短,效果反而更好。
这是为什么呢?其实第一年的课程看似准备得非常完美,但这只是老师自己眼中的完美,他有充分的考虑时间,就拼命往教案中加入各种细节——其实从学生角度看,根本不得要领。第二年他没有那么多时间准备,就只能确保把最重点的内容放进去,结果学生一看反而简单明了。
所以有时候过度注重细节,反而得不到预料的结果。一个决策能抓住重点就很好了,非得考虑各种不重要的因素,最后往往做出错误的选择。数学家把这个叫做“过度拟合”。
数据很重要,但今天的人似乎有点“数据崇拜”。过分重视各种考核指标,为了数据和指标而工作,纠结于各种细节,就可能顾不上真正重要的事情。所以,数学家为了避免过度拟合,经常要人为地减少模型的复杂度。
关于怎么避免过度拟合,《指导生活的算法》这本书中给了三个建议:
第一,限定思考时间。比如一天小时之内必须完成报告,或者一小时之内必须结束会议。其实开会也好,写报告也罢,考虑的时间越长越无法保证效果,反而是在有时间限制的情况下, 你才会逼着自己去考虑最重要的因素。
第二,限定内容长度。比如你可以要求属下写报告不能超过一页纸。如果一个方案无法用一页纸阐释清楚,你就应该干脆放弃这个方案。另一个办法是所谓“电梯谈话”——你想跟我谈一个商业计划,你最好能在电梯里面这点时间内说清楚你的方案。
第三,在白板上讨论商业计划,要使用粗的马克笔。最初的计划必须抓住重点!笔画越粗,对你的思维越有利,越能逼着你去考虑大局。如果你用圆珠笔,无形之中就会陷入关注细节的思维模式。
如果一件事情真的值得去做,哪有那么多理由?下次再有人不顾重点,在细节问题上纠缠不清,请你跟他说一句成语——“你过度拟合了”。
时间问题本质上是个数学问题,用数学家的办法管理时间,才能活得更有效率。
现在有很多时间管理方法,比如要事优先(每天最重要的三件事打卡),四象限管理法(将事情分为四类:重要而紧急,重要不紧急,不重要但紧急,不重要也不紧急),番茄时间管理法等等。所有这些说法,其实都是心法,而不是算法,是艺术,而不是技术。那么从数学家的角度,有没有一套算法,来给时间管理找个最优解呢?
在《指导生活的算法》这本书中,作者给出了两种算法给我们提供参考:
一是摩尔算法
如果我们的任务是有截止日期的,我们一般会按照截止日期的早晚安排任务,先做最早截止的任务。从数学上说,按照截止日期顺序这么一个一个完成的算法,也许每个任务都会拖延一点,但是所有任务都不会拖得太久。
但很多情况下这也不是我们想要的。也许我们想要的是能按时完成的任务越多越好,不能按时完成的任务越少越好,那么这就需要作者提出的摩尔算法。
摩尔算法是指在确定的期限内,完成最多的任务,需要我们最先放弃那个占用时间最长的任务,时间不够时依次逐渐放弃时间占用比最长的任务。
这种方法是指那些同等重要的任务,当要求在一定截止日期内完成时,它可以直到我们完成任务最多化。
二是"加权最短处理时间"算法
对于我们的日常工作来说,如果大部分任务的截止日期是比较宽裕的,可以从容安排。时间宽裕了,我们就可以利用算法来尽量提前做一些优化。
在小事和要事之间,怎么权衡呢?数学家的答案也非常简单。你先估算一下每个任务的“重要程度”,然后你算一算每个任务的“密度”。
一个任务的密度=重要程度/完成时间,然后你就按照任务的密度从高到底的顺序去做事。这就能让你总的心理负担最小。可是重要程度这么抽象,要怎么来衡量呢?一个简单办法就是这个任务能给你带来多少收入。
我们把这个算法,叫做“加权最短处理时间”算法。这种计量方法非常符合我们的直觉。用钱来打比方,这其实就是说,做工作肯定要优先考虑单位时间收入最高的工作。
如果你的任务列表中既有轻重,又有缓急的区别,也就是既要考虑不同任务的截止日期,又要考虑它们的重要程度,你应该怎么办呢?《指导生活的算法》这本书给的答案就出乎意料了。答案是没办法。
时间管理,其实是一个非常困难的数学问题,比我们想象的困难得多。可以看到,没有那个方法是放之四海而皆准的,我们要根据不同情况区别对待。