AgentBaseModel复杂系统建模概述
以下文章来源于AgentBased建模工地 ,作者于松民
[
AgentBased建模工地 .旋律涌现自音符的互动——这是我见过解释「何为复杂系统」最美的例子。
](#)
一、小球的故事
很久很久以前,在一块光滑的桌面上,放着一个静止的小球,它的质量是m。天地初开,在t=0的时候,外力F突然出现,推着小球向前一路狂奔。上帝对F说:“你推着人家跑可以,但也要按照基本法,加速度a必须等于F/m!”外力F说:“好的,帝哥。”
旁边一个叫牛顿的人看见了,观察了一会儿说:噢,原来如此,外力F是改变物体加速度的原因,有F=ma。这是上帝定下的规律,我看就叫「牛顿第二定律」吧。
然后牛顿旁边一个小学生说:牛哥你要这么说,那不管小球跑多远,我总能算出来它任意时间下的状态——速度v和位移s。
二、系统建模
以上小球的故事就是一个典型的建模过程,或者说「系统建模」的过程,因为当我们意识到自己在「建模」,也就自然代入了「系统」的视角。具体而言,系统建模就是梳理变量和参数之间的关系,可以概括为两步:
第一步,根据研究目的画一个圈儿。
这个步骤里,我们需要把关心的对象(系统)放在圈儿里,体现为「内生变量」;把不关心的环境放在圈儿外,作为「外生变量」;其他不变的东西就是「参数」。举例来说,如果系统是物,比如小球,那内生变量就是它的状态(速度、位移),外生变量就是外力,参数是小球的质量;如果系统是人,比如消费者,那内生变量就是他的决策(商品的最优消费量),外生变量就是预算约束和商品价格,参数是消费者的偏好参数。把圈儿画好是建模的首要技艺,需要建立在两个基础上:(1) 清楚的研究动机;(2) 对系统关键问题、关键机理的把握。第二步,构建从外生变量到内生变量的影响机理。
举例来说,对小球,机理就是说清楚“外力如何影响小球的速度和位移”;对消费者,机理就是说清楚“商品价格和预算约束如何影响消费者的最优消费量”。建模建模,实际上建的就是这个机理,模型本质上就是对机理的猜测——牛顿把第一个机理猜测为F=ma,经济学家把第二个机理猜测为“理性人效用最大化”的优化问题。对建模者来说,只要相信机理存在,就总能通过“猜测、检验、修正猜测”的链条去逼近它——这无尽的追求正是科学的魅力。完成以上两步,建模就结束了,剩下的都是对模型的把玩,并得到一些有价值的结论。比如,看看外力F变大一倍,某时刻小球的速度如何变化,或者小球质量减小为原来一半,它的速度、位移又会怎么变化。再比如,看看商品价格上升,消费者的最优消费量怎么变化,即比较静态分析方法下的偏导数。
有了这些结论,一方面我们可以结合实际现象,检验模型是否有效,如果无效的话再对模型做出修正,另一方面我们也可以利用结论来预测和控制系统,实现特定目标。
三、复杂系统
前面说,建模建的就是连接外生和内生变量的影响机理,但对不同的系统,机理的复杂程度、刻画方式也不尽相同。在小球的例子中,机理相对简单,刻画为一组微分方程;在消费者的例子中,机理稍微复杂,刻画为一个“理性人效用最大化”的优化问题。然而,相对于真正的复杂系统,它们还都是简单系统。
我们来举几个复杂系统的例子:
(1) 一池水,拔掉塞子,水形成漩涡以上系统的特点是,它们都由很多个主体组成,然而整个系统在宏观层面上的现象(漩涡、阵型、涨落)与单个主体(水分子、鸟、交易者)的性质几乎无关,绝大程度上取决于系统包含主体的数量,以及它们之间的连接、互动方式。我们把这类从「微观主体决策和互动」到「宏观系统动态」的现象叫做**「涌现」,把具有涌现现象的系统叫做「复杂系统」**。
为了捕捉复杂系统中微观主体的决策和互动,并进一步刻画「涌现」机理,基于主体的模型(Agent-based model,以下简称ABM)是区别于微分方程等的另一套建模方法。ABM专长在于给「复杂系统」建模,以刻画从「微观主体决策和互动」到「宏观系统动态」的「涌现」机理,比如:水池中的漩涡、鸟群的阵型、股价的涨落——这些宏观层面的系统动态,与系统中单个主体的性质几乎无关,绝大程度上取决于它们的数量、连接或互动方式。
满足以上特点的复杂系统众多,要说举个例子,很多朋友的第一反应可能就是经济系统。经济系统当然是一个复杂系统——巨量的行为主体分别决策,然后互动,涌现出各种现象——但我们常见的经济模型却是各种均衡模型,不是ABM模型。为什么?这背后有很多原因,本文想强调的是二者「视角」的不同:对于一个不存在涌现机理的简单系统,我们当然不能用复杂系统的视角来看待它;但对于存在涌现机理的复杂系统,我们却未必总用复杂系统的视角来看待它,具体选择什么视角、怎么刻画为模型,取决于我们关心的问题、想解释的现象是什么,以及,涌现在其中起着怎样的作用,是否足以支撑起一个promising的机理猜想。以针对经济系统的这两类模型来说:1. 均衡模型均衡模型的思路源于这样的信念:波动是暂时的,系统最终会收敛到某个「稳态」,也就是基本面。所以,只要我们把握了基本面的规律,就很大程度上理解了经济系统。
为此,在均衡模型的框架内,基于一系列假设,采用方程的形式,「主体行为」被刻画为一个「效用或利润最大化」的优化问题,而「主体互动」则被刻画为「供需相等、市场出清」的约束条件,二者结合,实现了从系统外生变量到内生变量的连接[1]。在这个刻画下,不均衡会促使主体调整行为,以追求更高的效用或利润,并共同把系统推向它的稳态,也就是均衡——所有主体的效用或利润达到最大,行为改无可改[2]。
2. ABM模型ABM模型关注的是经济系统中的涌现现象,比如泡沫的迅速膨胀与破裂。相对均衡模型关注的基本面来说,这类关注更短期、更波动,其背后的规律更大程度上牵扯主体的互动,尤其是「局部(local)」互动向「全域(global)」的扩散。
当然,在均衡模型的框架内,我们依然可能描述出某个对泡沫膨胀与破裂机理的猜想,但显见的是,由于均衡模型本质上是优化模型,为了保证可解性,一些诸如代表性行为主体、理性人、完全信息的假设,尤其是「将主体互动简化为供需相等、市场出清」的做法,让它在刻画一些主体的有限理性、非完全信息、互动上,不如ABM模型灵活。比如,在金融危机中,主体的买卖决策往往并非出于理性的计算,而是对周围少数“邻居”的模仿,局部的追涨杀跌情绪又可能向更大范围传递,甚至在全域中形成羊群效应。当我们想描述这样一种对泡沫膨胀与破裂机理的猜想时,ABM就是比均衡模型更合适的工具。
因此,在ABM模型的框架内,「主体行为」被刻画为一系列基于有限理性和非完全信息的「拇指法则(rules of thumb)」,甚至是满足某区间约束的随机行为(Zero-intelligence agent),而「主体互动」则被刻画为某种「互动规则」,二者结合,同样实现了从系统外生变量到内生变量的连接。
综上所述,因为ABM本质上是模拟模型,没有可解性带来的简化压力,它为我们打通了看待和建模复杂系统的四个独特视角——(1) 主体互动:ABM框架下的系统建模更灵活,可以刻画行为主体间更丰富的互动规则,可能是局部的,或全域的,或二者相结合。
(2) 异质性:ABM框架下可以考虑主体之间的异质性,既包括主体的不同禀赋,也包括主体的不同行为和目标函数——把无法求解的多主体动态博弈过程模拟出来。此外,还可以讨论「异质性的存在及程度大小」对机制运行的影响,以及机制对异质主体的异质影响(distributional effect)。
(3) 有限理性(含非完全信息):基于对主体行为刻画的灵活性,ABM模型为我们在社会经济系统建模中引入心理学、行为科学领域的结论提供了更便捷的接口。
(4) 学习与演化:对于以“人”为主体的社会经济复杂系统,可能还要考虑主体的学习能力,因为它驱动系统表现出更大时间尺度上的宏观动态,让“复杂系统”变成“复杂适应性系统”。对主体学习行为的引入是ABM建模的难点,要不要考虑、如何建模和接入,都需根据系统特点和研究目的再权衡设计,同时,它与机器学习、人工智能方法的结合也充满想象力。
以上四点,可以说是识别、理解、设计ABM模型的纲领,当我们考虑要不要用ABM建模时,可以从研究动机出发,结合这四点,首先问自己几个问题:(1) 我关心的系统是复杂系统吗?
(2) 我关心的现象和问题,是系统的关键问题吗?
(3) 对于这个现象和问题,主体互动是背后机理的关键吗?
(4) 异质性、有限理性、学习与演化,考虑它们会得到新的、有价值的结论吗?
笼统地说:如果前三个问题的答案都是肯定的,那ABM就是很好的选择;如果只有前两个问题的答案是肯定的,三和四的好处仅限于提高模型灵活度,刻画更丰富的细节,但只要手上有数据可以用于模型校准,那ABM也是值得尝试的工具。但是,如果前两个问题的答案不肯定,那就没必要用ABM建模。ABM是一把有特色、有想象力的锤子,但它也挑适合自己脑型儿的钉子。学习ABM方法丰富自己的装备库很好,但研究的关键永远建立在理解系统、提出关键问题的基础上,这个功夫到位了,很简单的方法也能切中要害,得到有价值的结论,正所谓:**真气所致,草木皆为利器。**×××××××××××××××××××××××××××××××××××××××××
本文来自巡洋舰老朋友松民新开的公众号“AgentBased建模工地”在后面的文章中,会逐个讨论ABM四个独特视角,分别成文并配上一些简单的例子,之后还会有相关的论文分享。松民的其他文章巡洋舰微观经济学分享会实录
微观经济学讲义(一):从入门到入厅
例外2019-11-08 07:20:41
参考文献呢?引文呢?
作者
本文概述一下,不列举具体的文献了,之后分别讲各个视角的时候会结合具体的文献作为例子和说明。
彭彭和丁满2019-11-17 01:16:54
比较关注鸟群的例子,是否有一些文章参考
Ning Chen2019-11-08 21:35:19
复杂系统理论的基础在于数学。复杂系统理论的内涵及响应取决于它的特征值分布,特征值分为实数与复数(暂不考虑四元数),不同的特征值决定了系统的现象,实数特征值决定系统现象单方向发展,或收敛或发散,直到趋于某种平衡状。另一种则出现波动,这是复数特征值决定的。
修2019-11-08 15:06:11
请问Agent Based Simulation领域有哪些好的期刊和会议呢?我知道的会议有Winter Simulation Conference,期刊的话,IEEE SMC-S上可以发ABS的文章。求推荐其他~
作者
经济学方面,Journal of Economic Dynamics and Control,算是一本质量好、ABM又比较多的,可以重点看看。 另外我建议一个检索方式: 比如你是经管领域的话,去ABS期刊列表上把3-4星的期刊名字粘下来,还有什么Dallas24也行,是领域好期刊列表
Ning Chen2019-11-08 08:30:09
文章所述的复杂系统还是太简单。
作者
复杂系统例子还有,大家可以举出来一起交流。