科技时报 全球最新科技资讯专业发布平台

王小川谈企业成长:从蝴蝶效应到六爻八卦

2016-06-29 09:37:51已围观次来源:新浪编辑:夏雪

  


  文/王小川 (创事记注:此文是根据王小川在混沌研习社的公开课演讲整理而成。)

  Part 1 那些神秘事件背后的复杂性

  以前,我们是以一种物理的方式来认知世界的。物理学有公式,有严格的因果推导,告诉大家哪一些事情可以推导,一切根植在物理。如今,我们还有经验论,或者称之为统计学,特别是大数据的应用。但是总有一些这些都不能解释的现象:在推导因果关系与经验之外,会发生一些可能没有想到的神秘事情。

  有一些存在的但是不能解释的神秘事情,我们是怎么认识的?客观来说,我认为科学是不断进步的过程,存在的,合理的,就有可能是对的,只是今天我们的科学解释不了它而已。

  比如,长城修建在15英寸的等雨线上。所谓等雨线就是说这条线上的降雨量是相等的,这条贯穿中国东北到西南的15英寸等雨线,在它西北方向常年降雨量少于15英寸,东南方则是多于15英寸;而驰名中外的长城在很大一段长度上是与这条线相重合的。这个看似意外的巧合,事实上是因为这条等雨线的西北方常年降雨少于15英寸,所以发展出游牧民族,东南方则因为降水丰沛发展出农耕文明;游牧民族和农耕文明产生了军事冲突,因此才有了长城。

  另一个故事,是“对香草冰激凌过敏的福特汽车”。福特汽车的客服曾经收到过这样的电话投诉:一位顾客称自己的汽车对香草冰淇淋“过敏”,每次到超市买香草冰激凌回到车上,汽车就无法启动;购买芒果冰激凌却没事。

  这种看似恶作剧的投诉最初并未引起福特的重视。然而反复被投诉之后,福特公司终于在调查中发现:该车由于系统缺陷,熄火后需要等5分钟左右才能再次点火;而这位顾客常去的超市中,香草冰激凌因为受欢迎而摆在超市显眼的地方,购买仅需大概3分钟,因而返回时无法打火;但芒果冰激凌则要到超市后场取货购买,所用的时间超过5分钟。

  这对我的启示是神秘的事情背后我们要更多的包容和接受,也许一不小心挖出来更大的规律,找到新的破题解决方案。所以,在我们现代的生活中,或者在古人面前,在科学之外我们可以碰到很多的神秘事情。我们尽可能的把它变成一种规律,甚至是变成一种科学。

  比如古代的谚语“八月十五云遮月,正月十五雪打灯”,原意是指农历八月十五中秋节的时候,一般是一年里面是月亮最圆的一天,如果这天云层很厚把月亮遮住,那么第二年的正月十五就会下大雪。这些关于天气的民谚有肯定的人,也有反对的人:比如北京气象台长,说这是不科学的,找不到背后科学的根据,所以这是迷信。

  无论科学还是迷信,其实都是干了一件事情:解释过去与预测未来。今天我们开始有了人工智能和科学方法,统计方法来总结规律。这些规律可以告诉我们生命的意义是什么,以及如何让公司成为百年老店,这种看似不相干的问题之后,隐藏的一致性。

  Part 2 DNA与公司,其实都是生命体

  • 蝴蝶扇动翅膀,就能下起暴雨?

  在大家熟悉的蝴蝶效应理论中,亚马逊河流域一只蝴蝶振翅带来的影响,可能在一系列连锁反应放大后引起美国德克萨斯州的一场龙卷风。未来的不确定性是一点误差带来的,我们甚至在一些文学作品中希望控制这样的复杂性:包括《三体》的作者刘慈欣都写过以此为题材的科幻作品《蝴蝶》。但是这个复杂性可以控制吗?

  我是在清华计算机系高性能所读的研究生,高性能所主攻的超级计算机,用途之一就是计算天气预报的相关数据。天气预报需要对大气数据进行采集和模拟计算,这背后是极大的计算量,一点轻微的误差就可能导致非常巨大的结果差别。因此现在即使是几周之后的天气,我们也很难做到精准预测。

  我们对天气预测尚且难以做到精准预测,那么,生命最基本的细胞运动呢?

  我自己参与过基因拼接和测序项目,了解DNA在转录蛋白质形成生命物质的时候,每秒钟都在做着上亿次化学反应,这个过程同样难以精准观测和预计。蝴蝶效应的复杂性是不能控制的,未来就是走向无序和不可预测。然而我们观测到一个现象:从DNA到人之间有极其清晰的控制能力,控制能力可以对复杂性有良好的操控。受精卵里面的一段代码,后来在极其复杂的环境中有清晰的确定表达,它变成了小孩,会变成完整的个体,甚至会和父母长的很像。

  • 人类掌控生命的复杂性了吗?

  那是不是对DNA有足够的了解后,我们就能够参透甚至控制生命的奥秘了?但是我们到今天为止科学是跟不上的。前段时间我问过华大基因的前CEO,我们是否可以拿一个动植物细胞的DNA来预测未来植物和动物长成什么样,他说这个目前还做不到。生命的视角到今天为止,我们科学对它的认知依然比较浅薄。如果一个生命在面前,我相信大家的结论是有共识的,我们心中都有感性的判断。但是却没法给一个准确的定义。圣达菲学院在对复杂性的研究中,给生命下了一个定义:生命应满足这两个条件:形状相对稳定,能够自我复制。

  那么,在这个定义的基础上,我们可以认为细胞和DNA是生命吗?以DNA为例, DNA只需要一个简单的数学序列就可以表达,性状非常稳定,而且双螺旋结构可以自我复制。那么我们就需要接受这样一个事实:细胞、DNA跟人属于不同的层次,但是在生命概念上有很多的共性。生命是嵌套的,我们的体内还有其它的生命存在,这个生命就是DNA,以及细胞。

  • 公司、国家、宗教也是一种生命

  从这个角度继续延伸下去,公司、国家乃至宗教都是像生命一样的存在。比如说宗教有清晰的教义,而且同样是可以复制的——在人的思想中传播。

  我们开始看到生命之间存在的共性,比如当我们将公司与人做比较时会发现,公司和人都有生命的属性:人有生存的欲望,公司也有;,人体内有细胞的新陈代谢,公司也有员工的流动;人会面临肥胖的问题,公司规模变大之后也难以避免结构的臃肿;人类进行生育繁衍,公司也可以通过孵化子公司进行“繁殖”。此外,在变异、进化、衰老等问题上,我们都能发现两者相似的地方。

  • 公司和生命有哪些相通之处?

  那么作为生命,人和公司谁更强大?我相信是人类。相较一直在传承的人类,公司中的百年老店却凤毛麟角。既然如此,从人的发展传承上,公司可以向人类这种生命借鉴什么呢?

  


  首先是避免白热化竞争带来过度损耗,利用内力提高真正的服务品质;

  保持对外界的开放性与流动性,不断打破组织架构的过分稳定,才能充分释放能力,使得公司有更大的活力;

  减肥与去流程化,正如人类减肥一样,公司“减肥”比招人更加痛苦,而且要去流程化,避免流程成为阻碍效率提升的瓶颈。

  在从DNA到人再到社会这个过程中,这三层生命之间是相互牵制影响的关系,人们从DNA获得了原始生命欲望,而在社会的道德要求下受到限制;从而形成了金字塔形的上下层生命关系。

  正如焦虑会产生白头发一样,局部基因的反应可能体现了人体的变化趋势;那么对于公司企业这样的高层“生命”而言,也能够从人员、业务中发现一些清晰的点,找到一些可以洞见和改变的契机。

  Part 3 西方解释不了的,也许可以从东方找答案

  研究因果关系这个课题的时候,很多人试图通过跨越复杂性的时空因果建模,建立从因到果的联系。第一个因果建模是建立在物理学的基础上,后来开始有了大数据和统计规律,或者说从经验里面找规律。如今我们从生命里看到了现象,有的因和果不适用于原来的科学还原论复杂性的方法解释,也不是简单地统计规律解释。

  在讨论因果关系的逻辑时,东西方的思考都有自己的局限性和优点。西方不管是老三论(系统论、控制论、信息论)还是新三论(耗散结构、协同学、超循环),在研究整体时,出发点也都还是从局部往上推理:将一个问题分解成多个小问题,从每个基本的问题中寻求答案。即使是到了当代,著名的分形学也同样是在基础的简单规则上诞生极其复杂的数学结构。

  


  物理化学家普里戈金把生命定义为由于化学不稳定性而呈现出耗散结构的开放性。利用西方数学的方法定义生命,后面跟算天气预报一样的,是拿方程求解生命中的有序性。

  而东方则讲究整体观,即整体对局部的影响,而非西方层次化的划分。从互为整体的阴阳开始,就将两个对立统一互相转化的内容视为一个整体;而将世界一分为五的五行,相互之间的强弱牵制关系更为均衡复杂;六爻、八卦等概念都是如此。这也就造成了西方“有数学传统,但缺乏整体观”,东方“有整体观,但缺乏数学传统”的区别。

  然而,当我们习惯于按照西方的逻辑结构由底层往上推理时,我们会发现,堆的东西越多,可能在某一个长的时间维度中,就越容易破灭掉。科学本身就不能解决全部的事,现在的方法更有这样的局限性。为什么FDA(美国食品药品监督管理局)新药研发需要很长时间的验证期?诺贝尔经济学奖为什么20年后才颁发给获奖者?因为短时间维度中看似靠谱的事情,可能放在更长的维度中时,就变得不那么靠谱了。

  因此如果往下深究,最终还是要从东方的整体观里面去找答案。在东方的经验激发下,我们有可能会创造新的数学工具,从而描述复杂性,解决更多认知和玄学的问题。而在这些对于复杂性、对于生命的底层思考中,每一件事情都对我们做公司的治理,甚至是个人的生存状态理解是有帮助的,我们的企业也能走得更加长远一些。


window.onload = function (){ var oLi = document.getElementById("tab").getElementsByTagName("li"); var oUl = document.getElementById("ms-main").getElementsByTagName("div"); for(var i = 0; i < oLi.length; i++) { oLi[i].index = i; oLi[i].onmouseover = function () { for(var n = 0; n < oLi.length; n++) oLi[n].className=""; this.className = "cur"; for(var n = 0; n < oUl.length; n++) oUl[n].style.display = "none"; oUl[this.index].style.display = "block" } }}