先用小白鼠做实验:计算机模拟社会问题的最新进展
by 同人于野 on 6月 2, 2008
阿富汗 Pashtun 人的婚姻规则简单而独特:第一,通婚在父系家族内部的堂兄妹之间进行(也就是肥水不留外人田的近亲结婚),第二,同辈中年龄越大的越尊贵,嫁给长子长孙最光荣;第三,女方的嫁妆是重要考虑因素。这个规则可以用下图表示:
图中越右边的年龄越大。最右边的这位长子长孙具有对三个堂妹的优先选择权。根据年龄优先规则,出于对”二叔”的尊重,他应该在”二叔”的两个女儿中选择一个,如图中蓝线所示。但是他可能更想娶”三叔”的女儿,因为”三叔”只有一个女儿,嫁妆会比较丰厚。可以想象 Pashtun 的家族意识非常强,而且都是大家族。而大家族的分裂,往往正是因为家族内部婚姻出现的问题。比如上图中的老大如果真的娶了”三叔”的小女儿,此事将会成为对”二叔”家的侮辱,最后会导致冲突。实际上部族的分裂往往是因为堂兄弟之间因为婚姻导致的血腥决斗。也就是说婚姻是影响部族稳定性的重要因素。
之所以有人对 Pashtun 人感兴趣是因为该部族的未来对国际政治有可能会产生重大影响:这个部族种植鸦片。那么根据上面的”家族动力学定律”,请问假设有一个新的军阀控制了村子,他将会怎样影响鸦片的种植,从而对该部族未来50年的命运产生何种影响呢?
洛斯阿拉莫斯实验室有人专门研究类似问题,所用的方法是“基于行动者的计算机模型”(Agent-based computer modeling)。这个方法的大概思想是把每一个人(或者组织,国家,取决于你研究的问题)用一个满足一定分布的”基本粒子”,也就是 agent,表示,各个 agent 根据一定规则对宏观条件,以及其他的 agents, 做出反应,由此一步一步的让系统演化。
我觉得这是一个非常直观的算法。这个系统相当于物理学中最原始的 particle simulation,甚至没有发展到现在等离子体物理常用的 particle-in-cell 或者天体物理中用的 tree code。这很可能主要是因为在这种模拟中总的 agent 的个数并不多,不必动辄上千万。可以想象这种模拟是很粗糙的,难道真的有用么?
本文标题说最新的进展,就是现在这种用计算机模拟社会问题的方法真的开始有用了。这个小组做了几个项目:
– 1960年,美国政府修改退休政策,允许人们在62岁就退休(此前是65岁),但退休金比65岁少一点。这个政策对人们选择退休年龄产生了什么影响呢?事实证明,大多数人的退休年龄既没有”突然”从65岁变成62岁,也没有”逐渐的”从65岁过度到62岁:整个过程相当非线性。传统经济学方法无法解释这个过程。而 agent-based 方法考虑到”周围朋友退休会对自己是否决定退休产生影响”这个事实,用计算机模拟出来的结果符合历史进程。
– 另一个有意思的现象是城市人口规模,和公司员工规模,都不是正态分布,而是 power law 分布的,也就是说人们似乎更倾向于居住在大城市,在大公司工作。传统经济学假设人一次性根据所有客观条件决定自己住在哪个城市,在那个公司工作,无法解释这个power law。而用这种动态模拟的方法,假设人们是”一步一步地”换工作,问题就可以解决。
实际上,现在美国政府已经开始考虑在实行一个政策之前,先用计算机模拟。显然这种方法如果真可行的话,共 产 主 义就真的可以”先用小白鼠做实验”了。现在这个组已经开始模拟军队内部条例,以及恐怖分子分布之类的问题。
目前最大的困难并不是蝴蝶效应之类的非线性小概率事件,而是没有一套好使的”牛顿定律”。研究人员认为现在的社会科学很不发达,还没有到达出现牛顿定律的地步。
可能很多人会觉得社会科学可能有牛顿定律么?实际上我认为可能。最近十几年不论是经济学家还是心理学家都在往”做实验”的方向上走,去寻找人的本性定律,研究人在各种不同局面下怎么做出反应。而生物学的进展也很有帮助,比如有证据表明有些人自私或者无私,喜欢统治别人或者喜欢讲平等,实际上跟基因有关。等这些东西成熟起来,我们就会拥有社会科学的基本定律。之所以以前的模型不好使现在好使了,我认为根本原因是现在的社会学研究成果使得模型中的基本规则好使了。
我记得可能十年以前,我就在《科学美国人》上看到有心理学家说,现在物理学家在追求统一理论,我们心理学也应该有统一理论。当初我不以为然,现在看来是可能的。更进一步,也许未来会像现在有虚拟人一样有一个”虚拟中国模型”,政府想要搞什么新政策,都可以在这个虚拟中国里面先做个实验,寻找一下最优解。
最后,模拟方法跟机械主义世界观是两码事。计算机模型随机参数不同可以运行100次产生100个不同的结果,我们的历史只不过碰巧是其中一个。
Leave your comment