跳到主要内容
返回时间线
arXiv来源发表:

DreamTest 用世界模型替代仿真器:在 Parking、Humanoid、DonkeyCar 上把失败预测 AUPRC 最高提升 97%,同等预算下多发现 79% 新失败

核心概要

DreamTest 把递归状态空间模型改造成测试用世界模型,从 DRL 智能体的训练日志中学习智能体行为与环境动力学,对候选配置并行生成想象回合并以终止概率加权的失败预测打分,从而在不执行仿真器的情况下引导搜索;在 Parking、Humanoid、DonkeyCar 三个基准上,其平均 AUPRC 分别比最强基线高约 97%、12%、39%,五个分布外集合上最高增益达 145%、29%、44%,在相同仿真验证预算下最佳“DreamTest+搜索”组合平均多发现 29%、22%、79% 的新失败。

Source-provided article image: DreamTest: World-Model Surrogates for Search-Based Testing of Deep Reinforcement Learning Agents
Figure 1 ·

Figure 1: Workflow of DreamTest .

arXiv

深度剖析

提出首个面向 DRL 智能体测试的世界模型代理:把 RSSM 适配为从配置初始化回合、行为克隆被测智能体动作、并预测终止与失败,查询时通过想象回合给出失败分数,同时保留原有“配置→分数”接口,可直接接入既有搜索算法。 此前的代理(如 Indago 的 MLP、SAMOTA 的 Kriging/多项式/RBF)是判别式的,只把配置映射到通过/失败标签,丢弃训练日志中的逐步交互记录;DreamTest 利用这些逐步记录学习智能体与环境的动力学,在查询时展开想象回合。 论文以消融实验支撑这一设计:保留同一轨迹训练的 RSSM 但去掉想象、改用配置表示上的线性分类器后,Parking 的 AUPRC 从 0.156 降至 0.121、DonkeyCar 从 0.393 降至 0.177,两处下降显著;Humanoid 上为 0.205 对 0.210,无显著差异,作者解释为 Humanoid 的配置本身即初始物理状态。

失败预测在分布内与分布外均取得最高平均 AUPRC:分布内超过最强基线约 97%(Parking)、12%(Humanoid)、39%(DonkeyCar);五个分布外集合上 DreamTest 全部领先,25 项基线比较中 23 项显著,两个例外(Unseen slots 与 Humanoid torso-5%)仍保持更高均值但差异不显著。 此前对基线代理的评估直接使用训练期间记录的历史标签作为真值;本文指出这类标签会因智能体在训练中变强而过时,并用最终智能体重新执行配置得到“新鲜标签”,Parking、Humanoid、DonkeyCar 上分别有 2.1%、7.8%、10.1% 的标签发生变化。 十个分层 80/20 训练-测试划分、共享 60 次超参数试验预算,同时报告历史标签与新鲜标签下的 AUPRC 与 AUROC;Parking 新鲜标签下失败基率降至 1.4%,DreamTest 仍保持最高均值。

在相同仿真验证预算(每种方法提交 50 个配置)下,最佳“DreamTest+搜索”组合比最强基线组合平均多发现 29%(Parking)、22%(Humanoid)、79%(DonkeyCar)的新失败;非代理方法明显更弱,其最佳均值仅为 Parking 5.7、Humanoid 4.0、DonkeyCar 0.7,而最佳集成 DreamTest 为 14.5、21.5、12.2。 此前评估把种子搜索重新生成的已知失败也计入失败数,混淆了“发现”与“重新发现”;本文只统计配置与训练日志中已记录失败不匹配(四舍五入到四位小数后逐坐标比较)的新失败,并报告重放频率。 每个实验重复十次,同时报告单模型与十模型集成;Parking 与 DonkeyCar 上的提升显著,Humanoid 上不显著;训练失败重放按定义得到零个新失败。

失败多样性上,在 2 到 40 的聚类数扫描中,DreamTest 在几乎所有取值下覆盖最多行为簇,说明优势不依赖于用轮廓系数选出的单一聚类数;Parking 增益最大且最稳定,Humanoid 除爬山法外也有明显增益,DonkeyCar 对搜索算法更敏感。 此前工作通常在单一聚类数下报告覆盖,可能受划分粒度影响;本文对所有技术使用相同聚类定义并扫描整个聚类数范围。 以每仿真步采样的执行轨迹为特征(Parking 用自车二维位置、Humanoid 用躯干高度、DonkeyCar 用横向偏差),零填充后展平并做 k-means;DonkeyCar 遗传算法下 DreamTest 每轮仅 3.8 个新失败、1.1 个簇,其 36.8 个原始失败中 33.0 个是精确重放,作者将其解释为高精度代理把遗传搜索困在密集失败区域。

启示与展望

该结果面向在仿真或真实系统中测试已训练 DRL 智能体的工程与研究场景,尤其是高保真仿真、实体机器人测试和自动驾驶测试这类单次执行成本高昂的场合。方法只需要智能体训练过程中已经产生的逐步记录(配置、观测、动作、奖励、终止与通过/失败结果),因此可迁移到其他具备此类日志的智能体,无需额外仿真执行;测试生成在智能体训练之后离线运行,不给部署中的智能体增加延迟。适用前提是失败可由配置与智能体-环境交互共同决定:Parking 与 DonkeyCar 这类结果依赖较长交互的任务受益最大,而 Humanoid 的配置本身即初始物理状态,想象带来的额外信号有限。作者也说明,代理只需把易失败配置排在前面,仿真器仍是确认每个结果的最终判据,因此想象轨迹无需逐状态精确。

想象轨迹的保真度是有限的:动作头在 Parking、Humanoid、DonkeyCar 上复现智能体动作的准确率依次下降,DonkeyCar 因策略从相机图像决策而最低;30 步后平均想象轨迹的标准化 RMSE 为 0.62、0.48、0.55,虽低于持续性预测器与平均训练轨迹,但状态误差仍随想象视野累积;DonkeyCar 上终止头可能让想象车辆越过真实碰撞点,使失败分数被压向零。Humanoid 上 93% 的回合触及时间上限,可捕捉的时长变化有限,终止相关性较低。搜索算法与环境的搭配影响明显:DonkeyCar 上种子搜索把大量预算用于重放已知失败,爬山法在该环境耗时 30–40 小时,瓶颈在于显著性引导搜索难以从接近生成器有效性边界的失败种子构造出合法相邻道路。此外,新颖性与行为簇仍是不同故障与根因的代理指标,单次执行标签与失败计数仍有噪声;本文未评估用所发现的失败集合进行再训练的效果,也未在三个基准之外验证通用性。读者若只读到快速解析版本而缺少图表,聚类覆盖曲线的具体形状与各搜索算法下的交叉点需要回到原文核对。

来源