基于主体的建模(ABM)是什么?多主体建模定义与示例
基于主体的建模(Agent-Based Modeling,ABM)是一种自下而上的计算模拟方法:先为大量自主个体(主体)设定属性和行为规则,再让它们在环境中相互作用,观察宏观层面的模式如何“涌现”出来。中文里也常被称为基于个体的模型、个体为本模型、多主体建模或多主体模拟。
基于主体的建模(Agent-Based Modeling,简称 ABM)是一种自下而上的计算模拟方法:研究者为大量自主个体(主体,agent)设定属性和行为规则,让它们在环境中相互作用,然后观察宏观层面的模式如何从这些互动中“涌现”。在中文资料里,它也被称为基于个体的模型、个体为本模型、多主体建模或多主体模拟,指的都是这一类方法(维基百科:个体为本模型)。
与直接写出整体方程的模型不同,ABM 只描述个体:每个主体知道什么、想要什么、遇到情况会怎么做。整体结果,例如市场份额、拥堵或舆论分化,是模拟运行出来的,而不是事先假设的。
名称辨析:基于个体模型、多主体建模与多主体系统
| 中文说法 | 常见英文 | 侧重点 |
|---|---|---|
| 基于主体的建模 / 基于个体的模型 / 个体为本模型 | Agent-based modeling (ABM)、individual-based model | 用大量个体的规则和互动模拟整体现象,生态学中常用“基于个体的模型” |
| 多主体建模 / 多主体模拟 | Multi-agent modeling / multi-agent simulation | 强调模型中有许多相互影响的主体,与 ABM 基本同义 |
| 多主体系统 | Multi-agent system (MAS) | 人工智能和工程领域的概念,让多个智能体协作或竞争完成任务,不一定以模拟社会现象为目的 |
搜索“基于个体模型”“多主体建模”或“多主体模拟”时,读者通常想了解的就是本文介绍的方法。
基于主体的建模如何运作
一个 ABM 通常由三部分组成:
- 主体(agents):每个主体有自己的属性(如收入、位置、偏好、风险承受度)和决策规则。主体之间可以是异质的,这正是 ABM 相比“平均人”模型的优势。
- 环境(environment):主体所处的空间网格、社交网络或市场,环境中的资源和信息会随时间变化。
- 交互规则与时间推进:模拟按时间步或事件推进,主体观察环境和其他主体,按规则行动,并更新自身状态。
Eric Bonabeau 在 2002 年发表于《美国国家科学院院刊》(PNAS)的综述中指出,ABM 的价值在于能够捕捉涌现现象、自然地描述系统,并且足够灵活(Bonabeau, 2002)。当个体差异、学习适应或网络效应会改变整体结果时,聚合方程往往失效,而 ABM 可以直接表达这些机制。
经典示例:Schelling 隔离模型
最常被引用的 ABM 来自经济学家 Thomas Schelling 1971 年的论文(Schelling, 1971)。模型很简单:网格上分布着两类居民,每个居民只要求周围邻居中有一定比例与自己相同,否则就搬到别处。即使每个人只有温和的偏好,经过多轮搬迁后,整个网格仍会出现明显的隔离。
这个例子说明了 ABM 的核心:宏观结果(高度隔离)既不是任何个体的目标,也无法从个体偏好的平均值中直接推出,只能通过模拟互动看到。
商业示例:新品订阅的采纳模拟
假设一家消费电子企业准备推出智能家居订阅服务。传统问卷可能只得到“X% 的人愿意订阅”这样的平均数。用 ABM,团队可以设定一群异质的家庭主体:技术熟练度、已有设备、预算和受朋友影响的程度各不相同,再把新订阅、竞品硬件和替代方案放进同一个市场环境。
模拟运行后,团队可以看到采纳如何在不同人群中扩散、价格档位如何影响口碑传播,以及哪些群体始终不采纳。这些结论是方向性的:它们依赖模型假设,需要用真实数据校准。
基于主体的建模与其他仿真方法对比
AnyLogic 把常见的仿真方法分为系统动力学、离散事件和基于主体三类(AnyLogic):
| 方法 | 建模对象 | 适合的问题 | 局限 |
|---|---|---|---|
| 基于主体的建模(ABM) | 每个个体的属性和行为规则 | 个体差异大、相互影响强、需要观察涌现现象 | 参数多,需要数据校准,计算量较大 |
| 系统动力学 | 存量、流量和反馈回路 | 宏观政策、长期趋势、整体容量规划 | 把同类个体当作均质群体 |
| 离散事件仿真 | 流程、排队和资源 | 工厂、呼叫中心、物流等流程优化 | 个体通常是被动的,不做自主决策 |
| 统计 / 计量模型 | 变量之间的平均关系 | 有大量历史数据、关系相对稳定的问题 | 难以表达网络效应和非线性互动 |
常用的 ABM 工具
- NetLogo:由 Uri Wilensky 于 1999 年开发、在美国西北大学持续维护的可编程建模环境,适合教学和社会、自然现象建模(NetLogo)。
- Mesa:Apache 2.0 许可的 Python ABM 框架,提供空间网格、主体调度、浏览器可视化和数据收集工具,方便与 Python 数据分析生态结合(Mesa 文档)。
- AnyLogic:商业仿真软件,可在同一模型中组合基于主体、离散事件和系统动力学方法(AnyLogic)。
Minds 与基于主体的思路
Minds 是商业合成研究的端到端平台。它与经典 ABM 的共同点是:都用许多个体化的“主体”来代表人群,而不是只看平均值。不同之处在于,Minds 中的每个 Mind 是一个合成受访者,基于您提供的简报、网站、文件和公开来源构建,并组成可复用的受众(Audience)。研究者不需要编写行为规则,而是直接向受众提问:开放式问题、单选、多选、量表,以及 MaxDiff 等可执行的定量方法,也可以测试文案、落地页、演示文稿和 Figma 原型(在启用时)。
Minds PRISM 是每个 Mind 底层的推理、推断与来源建模引擎,旨在在方向性合成研究中最大化依据性和一致性。每个受众都可以对照真实发布的调查或您自己的调查文件进行验证,每份调查给出满分 100 的分数,帮助判断合成回答与真实答案的接近程度。合成结果是方向性证据,不能替代具有代表性的真实样本或高风险决策前的最终验证。
相关术语
- 涌现(Emergence):由个体局部互动产生、无法从单个个体直接推出的整体模式。
- 合成受众(Synthetic Audience):由多个合成受访者组成、代表某一目标人群的模拟样本。
- 系统动力学(System Dynamics):用存量、流量和反馈回路描述整体系统的建模方法。
- 离散事件仿真(Discrete-Event Simulation):将系统运行视为一系列离散事件的建模方法。
- MaxDiff:要求受访者从一组选项中选出最重要和最不重要项的偏好测量方法。
- 方向性研究(Directional Research):用于早期探索和假设生成、而非精确预测的研究证据。
总结
基于主体的建模(也称基于个体的模型、多主体建模或多主体模拟)通过模拟大量异质个体的互动来解释整体现象,从 Schelling 隔离模型到市场采纳模拟都是典型应用。选择 NetLogo、Mesa 或 AnyLogic 取决于您的编程背景和问题规模。若您想在投入实地调研之前,先让一个合成目标受众回答具体问题,可以注册 Minds 探索。通过按需付费即可随时启动调研。
常见问题
什么是基于主体的建模(ABM)?
基于主体的建模(Agent-Based Modeling,ABM)是一种计算模拟方法:研究者为大量自主个体设定属性和简单的行为规则,让它们在环境中相互作用,再观察整体层面出现的模式。它的核心思想是“涌现”,即宏观结果并非事先写入模型,而是从个体互动中自然产生。
基于个体的模型、多主体建模和基于主体的建模是一回事吗?
在大多数语境下是同一类方法的不同译名。Agent-based model 在中文里被译为基于主体的模型、基于个体的模型、个体为本模型或代理人基模型;“多主体建模”“多主体模拟”强调模型中有大量相互作用的主体。多主体系统(multi-agent system,MAS)一词更常见于人工智能领域,侧重于让多个智能体协作完成任务,而不仅是模拟。
基于主体的建模有哪些经典例子?
最常被引用的是 Thomas Schelling 1971 年的隔离模型:每个个体只要求邻居中有一定比例与自己相同,整个城市却会出现明显的居住隔离。其他常见应用包括疫情传播、交通流、金融市场、创新扩散和消费者采纳模拟。
基于主体的建模用什么软件?
常用工具包括 NetLogo(Uri Wilensky 于 1999 年开发的可编程建模环境)、Python 框架 Mesa(Apache 2.0 许可的开源 ABM 框架),以及支持多方法仿真的商业软件 AnyLogic。
基于主体的建模与系统动力学、离散事件仿真有何不同?
系统动力学用存量、流量和反馈回路描述整体,把同类个体当作一个“池子”;离散事件仿真关注流程中的排队和资源;基于主体的建模则让每个个体拥有自己的属性和决策规则,适合个体差异大、相互影响强的问题。
使用 Minds 时如何看待数据保护?
合成受众不是真实的人,但您上传的文件、客户数据和账号数据可能包含个人数据,是否合规取决于所用数据和法律依据。Minds 提供数据处理协议(DPA)并公开子处理方列表,请与您的隐私团队一起评估。


