Skip to content

Agent-based Model (ABM)

What is an ABM?

一个ABM通常有三个要素:

  • 代理
  • 环境(包括其他代理)
  • 相互作用
组件说明典型对比
Agent自主实体,拥有状态变量与决策规则CA 中的 cell(无行为自主性)
EnvironmentAgent 感知并行动的空间,可静态或动态CA 网格常为固定 1D/2D lattice
InteractionsLocal 规则决定 agent-agent / agent-env 行为CA 仅“读邻域、写自身”更新

1.1 ABM的例子——群集行为(Flocking Behaviour)

代理(类鸟群)行为包括:

  • 向前运动
  • 向左或向右转弯
  • (可能出现的)加速和减速

1.1.2 类鸟群的邻接函数

环境由鸟群中的其他boids组成。

邻近函数是boids的感知范围(它能感知到其他代理的距离)。

类别内涵Boids 映射
Self-contained有边界,可被识别每只 boid 可区分
Autonomous独立决策不需中央指挥
Dynamic state状态随时间变化速度、朝向
Social交互影响行为局部感知 → 群体模式
基本特征:自成一体(self-contained)

一个代理是一个系统的模块化组件,它有一个边界,可以与其他代理明确区分并被识别。 集群模型(Flocking model):boids可以明确区分,并被其他boids识别(尽管不是唯一的)。


基本特征:自主(autonomous)

一个代理可以在其环境中独立运作,并在与其他代理的互动中独立运作(在定义的模型范围内)。 集群模型(Flocking model):每个boid的行为完全由它获得的关于其本地环境的信息定义。


基本特征:动态状态(dynamic state)

一个代理有属性,或变量,可以随着时间的推移而改变。一个代理的当前状态决定了其未来的行动和行为。

群集模型:一个boid的状态由它当前的方向和速度组成。这个状态决定了boid的运动,并根据它接收到的关于本地环境的信息进行修改。


基本特征:社会(social)

一个代理与其他代理有动态的相互作用,影响他们的行为。 群集模型:boids通过感知和反应其他boids的位置和行为而相互作用。


其他特征:适应性(adaptive)

个体可能有能力根据过去的经验学习和调整自己的行为。 例如,在捕食者——猎物模型中,被捕食者发现捕食者更多地攻击他们右边的同类,而不是他们左边的同类(因为它们的传感器/眼睛的位置),它们可能能够“学习”向捕食者的左边移动,从而逃脱检测。


其他特征:有目标的(goal-directed)

一个代理可能有它试图通过其行为来实现的目标。 例如,除了躲避捕食者,猎物还有收集材料筑巢的目,这将是影响他们行为的另一个因素。


其他特征:异质性(heterogeneous)

一个系统可能由不同类型的代理组成:这些差异可能是设计出来的(例如,捕食者和猎物),也可能是代理过去历史的结果(例如,捕食者的能量水平,基于它最近是否吃过东西。) 更复杂的ABM可能包括一系列不同类型的代理人;例如,土地使用的模型可能包括居民、规划者、基础设施提供者、企业、开发商和说客等。

2. Environment & Interactions

  1. 环境维度

    • 连续 / 离散;2D / 3D;多层(地形、交通、资源…)
    • 可随时间 dynamic,产生 feedback loop
  2. 交互方式

    • Direct:physical/chemical signals
    • Indirect (stigmergy):通过改变环境影响他者
    • 邻域可由空间距离或 network topology 决定。

2.1 例子:蚂蚁觅食 & Ant Colony Optimisation

蚂蚁的规则

  • 如果蚂蚁不携带食物:在环境中随机移动
  • 如果遇到食物信息素,朝信号最强的方向移动
  • 如果一只蚂蚁遇到了食物:捡起它
  • 如果一只蚂蚁正在搬运食物 :沿着巢穴信息素的梯度向巢穴返回,在移动时将食物信息素存入环境中
  • 环境:有一个从巢穴中扩散出来的巢穴信息素梯度,食物信息素会随着时间的推移而蒸发掉
机制关键点复杂系统要素
信息素 pheromone 沉积 & 蒸发Positive feedback 放大短路径Emergence of optimal trail
Stigmergy环境介导间接通讯Decentralised coordination
NetLogo “Ants” 模型三条规则:随机搜索 / 捡起食物 / 沿巢迹返航并留痕模型原型易考

3. 代理决策

代理人通常被设计为做出理性的(rational)决定:他们会根据迄今为止收到的信息,采取行动,使其行为的预期价值最大化。

Info

一个代理的感知可能不能提供所有需要的信息。

代理的行为可能不会产生预期的结果。

所以,代理的决策可能源于:

  • 概率性:probabilistic 用分布表示决策
  • 基于规则 rule-based: 对决策过程进行建模
  • 适应性:adaptive 代理人可以通过强化或进化来学习
  • 选择通常取决于模型的目的(它被用来回答什么问题?)

代理人决策的范围可以从简单到复杂

层次特征典型问题
Reflex agent ![[Pasted image 20250608140228.png]]无记忆,仅按感知-规则反射

反射代理通过传感器感知环境的某些方面,并根据一组规则选择某些行为或动作。 这是最简单的代理类型,很少或没有内部状态,没有内部历史感,没有
为长期目标进行规划的能力,也没有能力随着时间的推移改变其行为规则(即学习)



空调遥控
Reflex + state![[Pasted image 20250608140237.png]]记录历史感知

这个代理稍微复杂一些,因为它持有一些内部状态,可以跟踪它过去的行为,这些行为的后果,因此可能比简单地由其传感器在当前时刻提供的感知更丰富地感知世界的当前状态。 例如,这样的代理将能够对某些环境变量中的趋势(增加或减少)做出反应,或者可能能够检测到周期性振荡并做出相应的反应



智能温度调控
Goal-driven ![[Pasted image 20250608140245.png]]内部目标状态

目标驱动型智能体不仅根据世界的当前和过去状态来选择他们的行动,而且还根据世界的某种期望的未来状态来选择他们的行动。
这样的代理可以被设想为构建其环境的内部模型,然后它能够使用它来测试其可能作的效果,并选择使环境状态更接近其所需目标或目标状态的作。



迷宫寻路
Utilitarian![[Pasted image 20250608140259.png]]最大化 utility function

功利主义主体是目标驱动主体的改进,其中可能的未来状态不一定根据特定的目标状态进行评估,而是根据某种效用函数进行评估;例如,金融市场模型中的交易代理可能会寻求其利润最大化,尽管用于实现这一目标的具体手段(购买或出售的特定股票)可能没有定义。
交易机器人
Learning agent![[Pasted image 20250608140307.png]]规则可自适应

学习代理能够调整它用来做出选择的规则,以响应对其过去表现的一些反馈。在 ABM 中实现学习的方法有很多种,例如人工神经网络,这是一组基于生物
网络随时间适应方式的统计学习算法。


强化学习捕食者

Agent-Based Model = Agents + Environment + Local Interactions → Emergent Macro Dynamics;相比 Cellular Automata,ABM 让 Agent 拥有更丰富的状态、决策逻辑与异质性,是研究复杂系统不可或缺的“第三把刀”。

Model development and applications

代理和复杂系统的工程视角 ABM 的目标通常是提供对现实世界复杂系统工作方式的解释性见解;例如:

  • 在没有中央领导者的情况下,蚁群如何觅食?
  • 传染病将如何在人群中传播?
  • 代理人做出自利的决定会产生哪些市场动态?

自然产生的复杂系统还为计算、工程和系统设计中的现实世界问题提出了新的和可能有价值的解决方案;例如:

  • 优化算法
  • 负载均衡
  • 流量管理
  • 计算机图形和游戏
  • 供应链和物流
  • 机器人

Australia Post 包裹派送

  • 每名司机每天约 50 parcels;目的地每天变化 → 需要动态找 最短巡回路线
  • 排列爆炸:50 件包裹的路径数=50! ≈ 3 × 10⁶⁴。穷举不可能。
  • 问题抽象为 Travelling Salesman Problem (TSP):NP-complete,求全局最短环路需 heuristic / approximate 方法

Ant Colony Optimisation (ACO):自然启发的解法

自然灵感

蚂蚁通过 pheromone (信息素) + evaporation (蒸发)局部交互,自组织出 shortest trail

算法流程 (经典 Dorigo 1992)

  1. Initialisation:随机把 N ants 放在网络节点。

  2. Construct Solution:每只蚂蚁依概率选择下一节点:

    • 权重 ∝ (pheromone ^ α) × (1/distance ^ β),且不得回访。
  3. 重复直到访问完全部节点 → 得到一条 candidate tour

  4. Evaluate:计算各蚂蚁路径长度 L。

  5. Global update:最短路径蚂蚁在其边上 deposit pheromone ∝ 1/L

  6. Evaporation:所有边 pheromone ← (1 − ρ)·pheromone,避免早期收敛。

  7. 循环 2-6 直至满足停止准则(代数、收敛阈值…)。

参数记忆:α 控制 trail strength,β 控制 visibility,ρ 控制 exploration‒exploitation 平衡。

4.3 Emergent 性质

  • 局部规则—> 全局最短或近似最短路径。

  • Robust 于噪声、可并行、易与动态环境适配(实时物流、路况变化)。

Changelog

MIT Licensed