Page 94 - 《软件学报》2025年第8期
P. 94
杜德慧 等: 面向自动驾驶系统的场景建模及边缘关键场景生成 3517
具体语法是模型的可视化建模呈现形式, 主要包括文本和图形化的形式. 本文采用文本形式建模自动驾驶 scene,
包括自动驾驶地图, 以及实体的状态与属性; 同时, 可采用图形化形式描述车辆在场景中的动态行为过程, 从而实
现基于静态 scene 构建动态 scenario.
SML4ADS2.0
文本 图形化
形式 形式
模型驱动理论 车
辆
抽象语法 输入 车 车 地 行 输出
辆
辆
规
具体语法 属 位 图 为
性 置 划
语义 建 JSON 格式
模 的场景模型
实例文件
场面
场景
图 2 基于 SML4ADS2.0 场景建模方法
2.2 场景建模语言 SML4ADS2.0
与之前设计的建模语言不同, SML4ADS2.0 根据 OpenXOntology 标准中的自动驾驶领域本体知识, 构建自
动驾驶场景元模型, 以表达其抽象语法, 从而增强其对复杂场景的建模能力. 新增加的内容包括: 引入 ASAM
OpenXOntology 和 ISO 3450X 标准定义自动驾驶场景建模元素, 针对自动驾驶环境、交通参与者和驾驶行为这 3
个方面构建自动驾驶元模型, 不仅支持丰富的静态场景建模元素, 而且支持灵活的基于树形结构的行为建模, 提高
了自动驾驶场景建模语言的建模能力, 并能够与仿真器实现无缝集成.
1) SML4ADS2.0 的抽象语法
自动驾驶环境复杂多变, 是影响 ADS 系统安全的重要因素. 环境因素不仅包含天气, 还涵盖了光照、能见度、
颗粒度等多个维度. 为了全面拓展自动驾驶环境描述能力, 本节依据 OpenXOntology 中描述 ADS 环境条件的子
本体, 构建自动驾驶环境元模型, 使得 SML4ADS2.0 能够全面地描述自动驾驶场景中的环境条件, 从而为模拟真
实世界提供了更加丰富的建模元素. 为了有效描述自动驾驶场景中智能体与其他交通参与者的交互, 本节依据 Traffic-
Participant 本体描述的多种形式交通参与者, 构建自动驾驶交通参与者元模型, 使得其支持更全面地覆盖和描述各
类交通参与者, 这些参与者包括但不限于行人、各类车辆等. 为了能够对驾驶状态进行全面、精确地描述, 包括不
限于超车 (overtake)、通过 (pass)、交叉 (cross) 等复杂的驾驶行为, 本节依据 OpenXOntology 中的 TrafficActivity
子本体, 构建自动驾驶行为元模型, 使得对驾驶状态变化进行真实地建模, 更全面地模拟实际道路交通情况. 元模
型如图 3 所示.
2) SML4ADS2.0 的语义
本文主要通过 SML4ADS2.0 构建树形结构的行为规划模型 (behavior planning model, BPM) 来描述 scenario
的动态特性, 因此本节重点介绍行为规划模型的形式化语义与操作语义. 在 SML4ADS2.0 中, 自动驾驶车辆的动
态行为主要通过行为规划模型中树形结构的迁移边、触发条件以及行为进行刻画. SML4ADS2.0 行为规划模型的
形式化语义定义为一个五元组 BPM=(N, T, A, →, O):
• N: 表示状态节点的有限集合, n 可以用 (type, t, vars, loc, o) 表示, n ∈ N. 其中 type={behaviorNode | branchPoint},
用于表示当前节点的类型. t 是时钟, 用于表示在当前节点的持续时间. vars 表示当前节点的参数集合, 可以表示
为 (roadId, laneId, speed, acceleration, x, y, targetSpeed, currentBehavior). loc 表示当前节点在抽象行为规划模型中
的位置, o ∈ O, 表示与当前节点绑定的常微分方程 ODE;
• T : 表示触发器 (trigger) 的有限集合. 每个 trigger 由条件表达式组成, 其中 trigger 在运行时可被评估为真

