跳至正文
杂学书库让好奇心有所归处
简体中文

总是比预期花更长时间,霍夫施塔特定律(Hofstadter’s Law)

你是否有过这样的经历:周五下午以为两个小时就足以完成报告,回过神来却已是深夜?下一次你宽裕地预留了四个小时,可这次工作还是比预期结束得晚。用一句话点破这种“明明留了余地却还是会延误”的恼人现象的,正是霍夫施塔特定律(Hofstadter’s Law)。

简单来说,霍夫施塔特定律指的是“做事所花的时间总是比预期的长,即使你在预期时已经考虑到了这条定律”这一经验法则。由于定律把自身再次纳入句子之中,形成了递归式的结构,它被广泛用来风趣地说明日程预测为何如此困难。

本文将依次介绍这条定律最初出现的背景与递归结构的含义、日程总是拖延的心理原因,以及现实中的案例和纠正预测的实用方法。


总是失准的日程预测:心理与对策

什么是霍夫施塔特定律?

一间书房里,1970年代风格的计算机终端旁的书桌上摆着一盘正在对弈的木制国际象棋

这条定律最早出现在美国认知科学家道格拉斯·霍夫施塔特(Douglas Hofstadter)于1979年出版的《哥德尔、艾舍尔、巴赫(Gödel, Escher, Bach: An Eternal Golden Braid)》一书中。这本书横跨数学、绘画与音乐,探讨指向自身的结构,并于次年获得普利策奖一般非虚构类奖项。

霍夫施塔特是在谈论计算机国际象棋时提出这条定律的。早期人们预测大约十年后计算机就能成为世界冠军,可十年过去了,那一天看起来仍然还有十多年。事实上,计算机“深蓝(Deep Blue)”在对局中击败世界冠军加里·卡斯帕罗夫,已经是1997年的事了。

用最初预估、加入余量的计划和实际进展这一假设示例来对比说明霍夫施塔特定律的示意图。图中显示遗漏的工作和意外变数会让时间拉长,并建议查看过去的记录、检查遗漏的工作、考虑条件差异。
这是用于解释概念的假设示例,并非保证日程延误的科学定律。参考:Hofstadter, Gödel, Escher, Bach(1979);Buehler 等(1994)。

(1)递归结构的含义
“即使考虑到这条定律也会延误”这句话意味着,仅仅在预估中增加余量并不能解决问题。因为即便知道会延误而延长了期限,延长后的计划里又会冒出其他变数。

(2)玩笑中的严肃观察
这句话听起来像玩笑,却包含着这样的观察:事情越复杂,预测就越会系统性地偏向一边。因此,它常在软件开发、建筑等重视日程管理的领域被引用。


日程总是拖延的三个原因

傍晚时分,在贴满便签的办公桌前看着挂钟露出惊讶表情的上班族

霍夫施塔特定律与心理学所说的“计划谬误”相通。1979年,丹尼尔·卡尼曼(Daniel Kahneman)和阿莫斯·特沃斯基(Amos Tversky)为这样一种倾向起了这个名字:明知类似的事情大多会延误,却相信唯独自己的计划会按期完成。

  • 计划谬误(Planning Fallacy):低估完成一件事所需的时间和成本,高估其所能带来的收益的倾向。
  • 内部视角(Inside View):不参考过去的类似案例,只想着当前计划中的各个步骤来进行预测的态度。
  • 乐观偏差(Optimism Bias):认为坏事更容易发生在别人身上、较少发生在自己身上的倾向。

(1)计划只描绘顺利的路径
脑海中的计划里没有生病的日子、突如其来的会议、出故障的设备之类的干扰。每一件单独来看都很少见,但其中总有某一件几乎一定会发生。

(2)事情越拆越多
真正动手之后,事先没想到的子任务会接连出现,每项任务的小小延误累积起来,就会让整体日程大幅推迟。


用数字看霍夫施塔特定律

在港口岬角上,被起重机和脚手架包围、白色屋顶壳体建到一半左右的施工中的悉尼歌剧院
【案例1】毕业论文截止时间预测实验

1994年,加拿大心理学家罗杰·比勒(Roger Buehler)的研究团队询问了37名正在撰写毕业论文的大学生,问他们完成论文需要多长时间。学生们的平均预估为33.9天,即使假设一切都朝最坏的方向发展,预估也只有48.6天。然而实际上平均花了55.5天,在自己所说期限内完成的学生不到30%。

【案例2】晚了十年才开放的悉尼歌剧院

1957年,澳大利亚新南威尔士州政府计划以700万澳元的预算在1963年前建成悉尼歌剧院。但由于屋顶结构复杂等原因,工期一再拖长,建筑直到晚了十年的1973年才开放,最终耗资1.02亿澳元,约为最初预算的14倍。


纠正日程延误的实用方法

在明亮的会议室里,团队指着过去项目的记录,把一项大工作拆分成小卡片来做计划

霍夫施塔特定律无法完全避免,但只要知道预测会偏向哪一边,就能缩小偏差。关键在于,先看类似的事情实际是怎样进展的,而不是先看自己计划的细节。

(1)先看类似案例的记录
丹麦出生的项目管理学者本特·弗吕夫布约(Bent Flyvbjerg)等人把以过去类似项目的实际结果为基准的参照类预测(Reference Class Forecasting)应用于大型项目。个人也可以记下上次类似工作花了多少时间,从这个数值出发。

(2)把工作拆小,分别估算
与其笼统地整体估算,不如把工作拆成小任务、分别估算各自所需的时间,这样遗漏的步骤就会显现出来。

(3)单独留出缓冲时间
与其在计划各处零散地留余地,不如在最后集中预留一段备用时间,这样即使出现延误,也更容易守住整体截止日期。

(4)换成别人的眼光再看一遍
向没有直接参与计划的人询问所需时间,往往能得到比当事人更不乐观的估计。


霍夫施塔特定律同时点出了两件事:工作总比预期花更长时间,以及人们即使明白这一点也会再次变得乐观。与其把这条定律当作悲观的借口,不如把它变成一种习惯,用过去的记录和外部的视角再检查一遍自己的预测。

比起自己的计划,先相信过去的记录——这正是守住日程的第一步。