仅需 5% 训练样本达到最优性能,清华大学研究团队发布条件去噪扩散模型 SPDiff,实现长程人流移动模拟

特色图像

人流移动模拟 (Crowd Simulation) 是在特定情境中模拟大量人员移动的过程。这项技术主要应用于计算机游戏、城市规划、建筑设计以及交通组织等领域。例如,模拟人群在不同条件(如人群密度、流量等)下在建筑物内的移动,帮助决策者评估并优化建筑设计,以提高应急响应和疏散效率。

尽管该领域已经取得了大量的研究进展并且发展迅速,但运动、感觉能力和一系列心理因素的影响使得个体行为在不同情况下变得复杂。由于这种异质人群的高计算复杂性,存在许多不同的挑战,限制了人群模拟的真实性。

来自清华大学电子工程系城市科学与计算研究中心、清华大学深圳国际研究生院深圳市泛在数据赋能重点实验室、鹏城实验室的研究人员,近日在 AAAI 2024 发表论文《Social Physics Informed Diffusion Model for Crowd Simulation》,提出了一种新颖的条件去噪扩散模型 SPDiff,该模型能够有效地利用交互动力学,通过社会力引导的扩散过程来模拟人群行为。

受多粒子动力系统的运动特性的启发,模型同时集成了等变性的强归纳偏差,以增强模型对变换的泛化能力,从而获得更好的性能。此外,模型进一步开发了适用于扩散模型的长程训练算法,以保证模型结果长程的物理一致性。该方法将刻画人流移动性质的社会力模型等社会物理知识,嵌入到深度学习模型的设计中,实现了知识-数据协同驱动的研究范式。

论文链接:

https://arxiv.org/abs/2402.06680

代码链接:

https://github.com/tsinghua-fib-lab/SPDiff

关注公众号,后台回复「人流移动」下载完整论文

人群运动的异质性和多模态性

行人移动模拟是在特定场景中微观模拟大量人员移动的过程,主要关注群体交互对人群移动的影响。这项技术在城市规划、建筑设计和交通管理等领域具有主要应用。例如,对人流在公共交通换乘站(如机场和火车站)的移动进行真实的模拟,有助于分析在面对大量乘客流量时换乘站的效率和安全性,并进一步促进对建筑空间设计的优化。

社会力模型的公式表示
终点驱动力 fdest,行人斥力 fped,环境和障碍物的斥力 fenv

人群运动具有两个核心特征,即异质性 (heterogeneity) 和多模态性 (multi-modality) 。

首先,人群中的个体行为是异质的,受到个体偏好和周围环境的影响,人类会产生复杂的时空轨迹。例如,在购物中心中,行人会根据个人兴趣和购物中心的布局以不同的速度移动,同时遵循不同的路径。这会导致人们产生随时间变化的多样且复杂的运动模式,从而产生真实的轨迹。

早期的研究方法尝试在社会物理学的研究领域,以基于物理规则的模型来解释行人运动背后的机制,进而从异质特性背后抽离出行人运动的本质特征,例如社会力模型。这些方法存在模拟轨迹不够真实自然的问题。

其次,人类行为固有的不确定性会导致行人轨迹的不确定性,通常称为人类移动的多模态性。早期的研究对轨迹的随机性分布做出了简化的假设,例如使用高斯分布来建模多模态性,后续的方法利用生成模型,如生成对抗网络 (GANs) 和变分自编码器 (VAEs) 来生成多模态的样本。

近年来,扩散模型作为一个热门的生成模型,已经在许多生成任务中展现出最先进的性能,为了实现真实模拟,本研究全面考虑了以上所讨论的两个需要关注的角度,希望利用扩散模型在建模复杂多模态分布时的优异性能,并利用以社会力模型为代表的社会物理知识来指导本研究扩散模型框架的设计。

扩散模型 + 多帧推演训练算法: 实现长程移动模拟

与逐步重构观测数据分布的扩散模型不同,社会力模型将人群的运动化为一个多粒子动力系统,并且在每个时间帧中直接对每个行人的观测数据施加物理约束。因此,将这种知识融入在去噪中间过程中的含噪数据上的操作是困难的。


同时,行人移动模拟涉及多个行人和多个时间帧的数据生成任务。现有的方法通常利用扩散模型,一次性生成整个序列。然而,在本工作的问题中,一次性生成整个模拟轨迹无法在每个时间帧对每个行人结合社会力模型进行有效的引导。

此外,由于生成数据的高维性质,一次性生成可能会遇到效率和有效性问题。因此,对于现有的扩散模型框架来说,实现长期模拟并同时保持模拟结果的稳定性是一个具有挑战性的问题。

为了解决上述挑战,本研究提出了一种用于行人移动模拟的条件去噪扩散模型。该模型具有以下特点:

* 包含一个人群交互模块, 从社会力模型中获取见解以指导去噪过程;

* 集成了从多粒子动力系统中导出的等变性质,增强了模型在变换中的泛化能力并优化了数据效率。

方法整体框架

如图所示,SPDiff 使用一个图网络 (graph network) 来建模场景。在图中,每个行人通过有向边与视野中的附近行人和障碍物建立相互作用关系。提出的扩散模型利用图的节点和边信息、历史状态和行人终点信息作为条件输入,并利用扩散模型采样行人未来加速度在下一个时间帧的分布,进而更新下一时刻所有行人的状态。迭代这一过程即可实现任意时长的行为模拟。

在扩散模型去噪网络的设计上,为了把人类移动的物理知识融入扩散模型,我们将神经网络模型建立在原始社会力模型的基础上,并替换其核心项和,终点的牵引力可以由公式直接计算得到,在此之上使用图神经网络 (Graph Network, GN) 算法实现从行人状态到社会力预测的过程。

此外,行人交互具有等变性,即交互作用会随着对行人构成的类粒子系统的变换(如平移旋转等)而发生相同的变换或不变。为了融入这样的物理特性,交互信息通过一系列等变图卷积网络层 (EGCL) 进行处理,以提升模型的训练效率和物理一致性。

最后,每位行人的历史移动状态通过长短时神经网络 (LSTM) 处理,引入历史处理模块归因于人类倾向于避免过多改变运动状态以节省能量的先验认知。

扩散模型的参数化去噪神经网络设计

为了实现具有物理一致性的长程移动模拟,本工作进一步设计了一种多帧推演训练算法。如下图所示,扩散模型在训练过程中在定义的时间窗口内模拟轨迹,并计算累积误差作为损失函数以梯度下降更新模型参数。该学习过程对模型在长程模拟中忽视物理一致性的短视行为进行惩罚,以此让模型获得长程模拟的泛化性。

所提多帧推演训练算法示意图

实验结果:仅需 5% 训练数据量,达到最优性能

为了评估本文模型的有效性,本研究引入了两个真实世界数据集:GC 数据和 UCY 数据集。这两个数据集在场景、规模、持续时间和行人密度上都有所不同,可以用来验证模型的泛化性能。

该研究将基线方法分为三类:

* 基于物理的方法(社会力模型 SFM 、元胞自动机 CA)

* 纯数据驱动的方法 (STGCNN 、 PECNet 、 MID) 

* 物理知识融合的方法 (PCS 、 NSP)

对比实验验证了所提方法相对于最先进基线方法的显著性能提升,从微观指标 (MAE 、 DTW) 和宏观模拟真实性指标 (OT 、 MMD) 上看,提升幅度范围为从 6% 至 37% 。

主实验 UCY 数据集下性能对比
加粗处为最佳性能,下划线处为次佳性能

为了进一步探究每个时间帧中的模拟精度表现,本实验检查指标随模拟时间帧的变化情况。可以看到,指标随时间会表现出交替上升和下降的振荡变化,即出现多峰现象。上升可以归因于长程模拟期间累积产生的误差,下降可以归因于这个三个模型都会将行人「牵引」至终点处。

整体来看,本文提出的方法相比其他两个基线能在很长一段时间里持续地保持较低误差,这体现了本方法模拟的精度。

指标随模拟时间帧的变化情况

使用数据集 UCY 和 GC,使用 OT 和 MMD 作为指标

本研究进一步探索了方法中每个关键设计对性能提升的贡献,分别验证在没有社会物理知识融合下、没有历史处理模块下和没有多针推演训练算法下模型的表现。

下图的实验结果表明,任何一个组件的删除都会导致模型性能的某种程度的下降,这证明了每组设计的有效性。注意到当移除与社会物理指导相关的设计时,模型性能损失最大,体现了在人群模拟中融合社会物理知识的必要性。

模型不同模块的消融实验,NC 表示不收敛

最后,本文研究等变设计在人群交互模块中引入的归纳偏差对性能的影响。在将等变图卷积层退化为非等变网络时,探究不同训练数据量和训练周期下模型的性能变化。可以看到,如图所示,使用等变图神经网络的模型在几乎所有的训练样本比例下始终优于使用非等变模型。即使只使用训练数据的 5%,原始的模型仍然能保持优异的性能。

具体而言,在训练样本比例为 5% 的情况下,SPDiff 的 MAE 指标相对于 100% 训练样本比例时几乎没有下降,最大降幅仅为 2.5% 。与非等变设计相比,等变设计在 MAE 指标上提高了最多 13.2%,在 OT 指标上提高至多了 22% 。这表明得益于等变设计的帮助,本文提出的模型只需借用少量的样本就能获取相当于大量数据训练后的泛化能力。

MAE 在不同训练样本比例下的变化情况

结语

本文提出了一种新的基于条件去噪扩散模型的人流移动模拟方法,通过物理引导的条件扩散过程,该模型能够有效地利用人群移动的已知状态信息进行行人移动模拟。

受到著名的社会力模型的启发,所提出的等变人群交互设计和多帧推演训练算法分别解决了宏观和微观上模拟的真实性以及长程模拟的稳定性挑战。该方法将生成式建模引入人流移动的相关研究,探索了社会物理知识和生成式深度模型的结合手段。

召集令

HyperAI 超神经是最早一批关注 AI for Science  的开放社区,持续通过解读国内外前沿论文的方式,将最新研究成果进行分享与推广宣传。

欢迎正在围绕 AI for Science 开展研究探索的课题组、研究团队与我们联系,分享最新研究成果、投稿深度解读文章等等,更多推广 AI4S 的方式等待我们共同探索!

添加微信:神经星星 (微信号:Hyperai01)