仓库源文

.. Kenneth Lee 版权所有 2020

:Authors: Kenneth Lee :Version: 2.0

“知不知”如何影响决策的?


V1

吃早饭的时候看到知乎上一个问题,讨论怎么避免婚后矛盾之类的(具体是什么忘了), 其中有一个高赞的回答,提到婚前要问自己的十个问题。大部分我都不记得了,只记得其 中过一个是:和配偶讨论一下比婚姻更重要的东西是什么?

我最近一直在想办法给我们做战略设计的同学普及一下“知不知”这个概念,这个问题给了 我一个灵感,觉得可以从这里入题,尝试描述清楚这个概念。

我们想象一下,在我们自己婚前问自己这个问题的时候,我们有答案吗?我V1反正是没有的 ,这个事情很难说明白,想清楚的。因为我们的人生阅历有限,对这个世界的认知有限, 你马上要我回答什么比婚姻更重要,这个答案其实不存在,至少对大多数人来说不存在。 更严格一点说,这个“概念”在客观上就不存在。

但如果你问了这个问题,我回答了这个问题,这个“概念”(在我的脑子中,在我的交流中 ,都行)就客观存在了。它会影响我的决策。未来我很可能会忍不住要为这个概念的“准确 ”去添砖加瓦,当我遇到其他选择的时候,明明控制要素和这个无关,我可能都会由于这个 概念的存在,我会改变我的选择。比如,你配偶病重的时候,你一想,当初说过:“快乐比 婚姻更重要”,你说不定马上就可以决定“离婚”,但很可能具体在这个情形下,你正确的决 策应该是“这个病是可以治的,应该想办法把病治好”。(注1)

就算不考虑未来,只要它还能称为一个“判断”,它必然左右了某个“当前选择”,但一旦有 了这个当前选择,这个事情发展的方向就被改变了。所以,进行一个“判断”,它对结果就 不是无损的。我们很多时候以为我们认为一个判断是“不知”的,和这个判断是“真”和“假” 这两者的其中一种,这两者是等价的,其实不是,“不知”还包括一种情形,就是这个事情 在进一步发展前,或者在我们投入某种行动前,它既可以是真(true),也可以是假(false) 。甚至我们不一定意识到,这个真假说不定就仅仅在我们这一个具体实例中呈现,不见得 可以推广到其他抽象的情形。

我之前经常强调“守弱”这个主题。背后说的也是,当你的“判断”遇到现实的反馈,你要想 办法增强这个反馈,而不是守卫你预先的判断。

这就是这个事情的微妙之处,有些东西,你不去定义,不去推演,它就不存在,也不应该 左右你的决策。但你非要看清它,定义它,你以为你不过是做一件不影响最终结果的“信息 增强”,其实不是,这个信息增强会改变我们的决策。本来你的女友爱不爱你还在两可间, 你增强一点,更努力爱她,可能她后面就死心塌地爱你了。但你去“测试”一下,说不定她 就彻底看不上你了。这好像测不准原理。但这个例子其实也不好,因为“测试”毕竟是物理 干涉了,很多时候,只要你“想清楚它,你的决策就被改变了”,因为如果你真想清楚它, 这个想清楚一定会影响你的判断模型,比如改变你某个行为,否则你这个想清楚,不会被 你认为“想清楚”了。

很多决策,如果知道某个“条件”,这个决策会很容易,所以人们总希望尽快知道这个条件“ 成立”还是“不成立”,这样决策特别简单。(“钱的问题最简单,要不有钱,又不没钱”), 所以,把一个问题Settle Down(让它有个“结论”),背后是有驱动力的。但有驱动力不表 示这是事实。有人甚至会这样判断问题:既然你不知道这件事情是true还是false,那我就 是可以认为它是true的,这难道有什么错吗?看看这个博文: https://zhuanlan.zhihu.com/p/136136002,下面讨论中不少人的反应你就能看到人们对 这种安全感的需求有多强烈了。

我们很多人都能接受某个事情是对的,是错的,两头都可以。虽然完全相反,他都能接受 。但他们无法接受这个事情“我不知道”。“知道”是他们在黑暗中的扶手,扶住了,心里就 瓷实了,不知道,好像就站不稳了。其实,如果他们想着自己的重心,本来还是可以稳的 ,但他们相信不了自己,没有扶手,在黑暗中就是站不稳。

而我更愿意维持一种“恍惚”的状态——在没有决策需要的时候,什么东西我都“不知道”,我 没有结论。蔺相如的决策是否失误这个判断根本就没有结论,我只知道司马迁说蔺相如给 了某些决策,带了壁赴秦,还带了回来。我只知道这一点而已,我并不知道他的决策是否 有失误。

这好像很“佛系”,但这种判断模型做出来的决策可一点都不佛系的。今天有人拉我去参加 一个讨论,讨论某个特性是否需要把内部版本和外部版本统一。我听了没两三句就火了, 我说:就他妈这么个破事,几个星期都没有解决,现在好意思来拉我开会?几个星期前我 就告诉你决策模型了:我们主推外部版本,开发力量都放在外部版本上,但内部版本已经 用于上市的产品上了,现在收编肯定会影响销售。所以,我们需要一个设计,保证内部版 本的功能都被外部版本支持,同时维持内部版本的维护,等内部版本生命周期结束的时候 一次全部统一到外部版本上。整件事情现在的突破口就是如何设计外部版本的开发周期和 内部版本的维护周期。你几个星期不做这个设计,拉一堆人来这里“决策”?这个决策的基 础就不存在,这会有结果吗?看着一堆人似乎讨论得头头是道,其实除了浪费时间,能干 什么?

你看,这就是基于“不知”的判断模型。应该用一个版本还是两个版本,这两个版本是否可 以统一,根本不是一个可以提前预知的问题。能设计出方案,它就是应该一个版本,不能 ,就应该是两个版本。而且什么叫一个版本,什么叫两个版本,这取决于时间。这个事情 甚至不存在一个“客观”的结论,就算有一个全能上帝能设计出一个“一个版本”就能搞定的 方案,而你设计不出来,在决策上,这个事情的“客观”,就是没有这样的方案。

很多决策,在没有一定的新信息,甚至没有决策之前,本来就没有一个“客观结论”,你非 要头铁跳进去,觉得所有信息都会有一个“客观信息”存在在那里,觉得自己就算不知道, 但结论是存在的,觉得“我可以猜一个,说不定是无害的”,其实这是有害的。因为你这个 猜,改变了结果。

丢给你一个问题(“是否需要把内部版本和外部版本统一”),你总觉得这是有结论的,最 终的选择必然是“统一”或者“不统一”。然后你想猜一个,其实你猜了,就把这件事变成事 实了,而这个所谓的“事实”其实不是最优解。更不要说,其实你这个“统一”和“不统一”本 身就是一个不合理的区分,因为我们可能可以在某段时间不统一,某段时间统一的。

实际上,为什么我们会老有这种强行认为“可知”的判断呢?一方面,是前面说的没有扶手 就站不稳的思维陷阱。另一方面,其实是害怕面对“不好”。(但你其实不知道你自己在害 怕这个“不好”)

是否统一内外两个版本这件事本身不值得讨论,能统一谁不想统一?关键是统一是要付出 代价的,是要伤害用户的,是要延长工期的,是要影响特性的。把这句话说出来,好像这 都是这个说出来的人的过错了。所以,最好偷偷摸摸搞成一个“集体决策”,暗示大家这个 问题的存在,好像这个问题就被蒙混过去了。

其实根本没有,如果大家听明白了这个问题,这事情就不是偷偷摸摸。没听到,后面该出 问题,一个都少不了。面对不了现在的脏,就要面对未来的脏。多易必多难。不过如此。

这是我建议我们做战略设计要时刻担心的问题,我也不知道怎么总结它,大概的意思是, 不要轻易精细化一个主题,也不要不敢确切化一个主题,要时刻保持在一种恍惚的状态, 用落地目标来处理我们收集的信息,只保证我们最终的决策是清晰的,之前的部分,不能 那么清晰。要时时用目标和落地来审视自己的资料收集过程。——同时,不要怕面对脏。否 则你辛辛苦苦建的模型,都是在骗自己。

架构设计真是件痛苦的工作。


注1:这其实也是个心学问题,有人以为自己一时的觉得“快乐比婚姻重要”是自己的心的决 策,其实这是你的理智的决策,因为事后你的理智说不定又后悔了,甚至你跟我抬杠说不 后悔也没有用,如果你真的反复去校验过这个“本来如何”,真的能注意到心的决策范围, 你就会发现,心的判断模型基本上是不变的,变的是外部条件和你想去得到的那些“私意” 。不过这个不是本文要讨论的重点。

V2

这个版本写于2020年10月15日,用另一个更有贴近实现的例子来诠释这个主题。

这几天讨论一个战略决策问题,有人问到:

“我们这个方案是否需要兼容A标准”。

我的回答是:“这没有决定”。

他说:“这个东西很重要啊,为什么不能提前去决定?”

我的回答:“因为我现在没有需求约束要我加入这个约束来控制后面的发展啊。”

他:“兼容A标准难道不好吗?”

我:“好,但我不知道有没有其他约束要破坏这个约束,比如我们做的某个优化很好,但和 它冲突了”

他:“那就是不兼容了。”

我:“不对,我们‘不一定’不兼容。”

他:“那你到底兼不兼容?”

我:“我没定。”

他:“怎么可以这样?”

为什么不能这样?我们所有人都希望赶紧把一个“结论”(名),尽快套到自己的脖子上, 这样就觉得安全了,但实际上这个东西不应该,现在决定。能支持A标准好不好?好?但它 不是硬条件,那这个地方就是“不知”,不知并非是没有信息的,它在所有的“可能选择”中 去掉了“方案必然兼容A标准”和“方案必然不兼容A标准”这两个信息。这作为条件是可以影 响战略决策的呀。

一个东西“不知”,以及我们注意到我们“不知”(知 不知 ),是一个复杂度(用于保 存信息熵的载体的规模)更高的信息,依赖这个信息去决策(写逻辑链)会更困难一些, 但它是现实啊。我们强行认为我们知道这个东西,这简单,复杂度低,依赖这个信息去决 策写逻辑链(或者思考的逻辑链)更简单,但它不是“现实”。

所以,知 ,知 不知 ,只要真的是现实,这些都“上”。但事实上“不知”,这 就“下”了。