FEATURED · 精选文章

自动驾驶仿真测试新国标实施:GB/T 44721-2024解读与工程落地指南

发布时间 / 2026/9/6 15:29:30
来源 / 创域科博编辑部
栏目 / 资讯中心
自动驾驶仿真测试新国标实施:GB/T 44721-2024解读与工程落地指南 简介面向智能网联汽车研发与测试人员这份PDF完整收录了《2024 智能网联汽车 自动驾驶功能仿真试验方法及要求征求意见稿》。内容系统规定了自动驾驶功能仿真试验的试验要求、试验方法与通过要求适用于M类、N类车辆其他车型也可参照执行。全文从范围、规范性引用文件、术语定义出发逐步展开试验要求与试验方法并附有仿真试验可信度评估、交通信号识别及响应、道路基础设施与障碍物识别、行人与非机动车识别、周边车辆行驶状态识别、自动紧急避险、公交站台区域场景、最小风险策略等规范性附录场景参数汇总表也便于直接查阅。资源为单文件PDF压缩包大小约13.73MB共1个文件排版清晰适合作为标准研读、测试方案设计及合规性对照的参考资料。目前已有174人下载学习对关注自动驾驶仿真验证的工程师具有实用价值。 2024年5月发布的GB/T 44721-2024《智能网联汽车 自动驾驶功能仿真试验方法及要求》到12月1日正式实施。这算是国内自动驾驶仿真测试领域第一份有完整体系的国家推荐性标准对行业的影响很直接。干这行的人都知道过去几年大家做仿真测试基本是各搞各的场景库自己攒指标自己定报告拿出去很难横向比对。这套标准把测试流程、场景设计、仿真环境要求、结果判定这些核心环节都梳理了一遍等于给了行业一个通用的“度量衡”。今天我不打算照着标准条文给你念而是结合我自己在多个自动驾驶项目里落地仿真测试的实际经验聊聊这份标准到底怎么理解、怎么用以及在实操过程中哪些地方最容易出问题。无论你是做算法开发、测试验证还是平台工具链的只要你的工作和自动驾驶仿真沾边这篇内容应该都能给你一些参考。1. 先弄明白这份仿真试验标准到底规定了什么1.1 标准定位与适用范围GB/T 44721-2024的全称里有两个关键限定词一个是“自动驾驶功能”一个是“仿真试验方法及要求”。它没有去管ADAS里那些单一的辅助驾驶功能比如只有AEB、只有ACC这种而是面向更高阶的自动驾驶功能——也就是系统在限定ODD运行设计域内能够持续地完成动态驾驶任务的那一类。标准的适用范围是M类和N类车辆也就是我们常说的乘用车和货车。标准的核心作用是给“仿真测试怎么才算科学、怎么才算规范”定了一个基准线。比如你到底需要搭一个什么级别的仿真环境、场景库应该怎么设计、测试用例怎么编写、跑完仿真之后怎么判定系统通过还是失败。这些东西以前靠的是企业内部的测试规范各家的方法论差异非常大。有些做得好的公司内部规范比标准还严格但行业里也有大量团队仿真测试就是“把场景跑完看个视频”既没有量化指标也没有可复现性管理。这份标准把底线划出来了。1.2 为什么仿真测试的地位这么高说句实在话现在L2甚至L3级别的自动驾驶系统纯靠实车道路测试来验证安全性已经不太现实了。有个粗略的说法是要证明自动驾驶系统比人类驾驶员更安全需要跑数亿公里的实车测试这个时间成本和经济成本没有任何一家企业扛得住。仿真测试的价值就在这里它可以在一周之内跑完几百万公里的虚拟里程可以一夜之间让同一个场景重复一万次可以在虚拟世界里构造真实道路几乎不可能遇到的危险工况。而且仿真测试有一个实车测试无法比拟的优势——可回溯性。实车测试出了问题很多时候只能靠日志反推有些传感器的原始数据还不一定留得全。仿真测试不一样场景里每一个物体、每一个信号、每一帧传感器输出全部都可以精确记录和回放问题复现就是点击“重跑”而已。这在开发调试阶段的效率优势是碾压性的。1.3 标准与现有测试体系的关系需要明确一点仿真标准不是要取代实车测试而是和现有的实车道路测试、封闭场地测试形成互补关系。在实际的测试验证体系里通常的做法是“仿真先行、场地复现、道路抽检”。仿真用来做大规模场景覆盖和问题初筛封闭场地用来做关键场景的实车复现验证最后在公开道路上做小批量的里程积累。这三层是一层比一层贵所以一定要让仿真层承担最多的测试量把成本和风险在早期就压下来。2. 标准设定的仿真测试框架与全流程拆解2.1 从测试需求到结果判定一个完整的闭环这份标准给出的仿真测试流程核心是一个闭环测试需求定义、测试环境搭建、测试用例设计、测试执行、数据采集与结果判定。看上去很简单但每一环都有讲究。先说测试需求定义。这一步最容易被人忽略但不夸张地说这一半决定了整个测试的价值。你需要回答几个问题被测功能是什么它声称的ODD是什么这次仿真测试要验证什么性质——是验证功能正确性还是验证安全性还是验证鲁棒性不同的测试目的直接决定了场景库怎么建、指标怎么定。比如你要验证高速NOA功能的“安全”那重点就是各种cut-in、前车急刹、车道缩小这类高风险场景你要是验证“舒适性”那关注的指标就完全不一样。接下来是环境搭建标准里对仿真环境提出了明确的要求仿真软件与被测系统之间的通讯接口要可靠仿真模型要能够表达出真实环境的物理特性场景中的道路拓扑要合理。再往后是测试用例设计这就涉及到场景库建设我后面专门用一章聊。执行阶段需要注意的是过程控制。标准特别强调了可重复性同一个测试用例在相同的初始条件和配置下多次执行应该得到一致的结果。这听起来容易实际上很难。并行计算导致的时序抖动、随机种子的设置、模型的初始化差异都可能让两次仿真结果相差很大。我们在实践中的做法是所有随机因素都显式管理随机种子固定记录在测试报告中任何一个场景必须能精确重放。最后是结果判定标准要求用预先定义好的指标客观评价而不是靠人看视频主观判断。常用的指标包括是否发生碰撞、是否违反交通规则、是否超出ODD边界、关键安全指标如TTC最小值和到达碰撞的时间余量等。这里我也建议指标维度最好能分层最底层是“安全类硬指标”一票否决往上是“法规合规指标”再往上是“绩效类指标”如通行效率、舒适性评分。2.2 仿真测试的四个层级MIL/SIL/HIL/VIL怎么选标准的落地过程中你一定避不开“在哪一层做仿真”的问题。行业内通常把仿真分为模型在环MIL、软件在环SIL、硬件在环HIL和车辆在环VIL四个层级。标准虽然没有强制你选哪一层但对每一层适用的测试阶段和可信度是有隐含要求的。MIL阶段被测对象是算法模型跑在PC上优点是速度快、成本几乎为零、可以随时改参数缺点是算法代码还没有经过编译部署时序和通信上跟实车差异很大。SIL阶段把你编译后的自动驾驶软件部署到工控机或虚拟ECU上运行通信机制和软件架构更接近实车适合做软件逻辑与集成的回归测试。HIL阶段把真实的域控制器接入仿真环境传感器信号通过IO和总线注入这时候被测对象是实实在在的硬件加软件可信度最高但设备和环境搭建成本也直线上升。我的建议是采用分层策略大规模场景遍历用MIL跑锁定问题后用SIL做回归关键安全场景最后过一遍HIL。不要指望在MIL阶段就把所有问题查完也不要把所有场景都放到HIL上跑那样项目进度会非常难看。2.3 测试记录与可追溯性标准里对测试记录有隐性要求但实操中这一块常常被低估。测试记录不只是最后汇总一个“通过/不通过”的结论而是要能够回答“这个场景当时的输入是什么、系统输出是什么、为什么判定为通过”。我们内部的要求是每一次仿真测试必须留下四样东西场景文件可加载的原始文件、仿真配置软件版本、模型版本、参数表、被测系统版本算法代码commit号、原始数据记录传感器数据、总线信号、控制指令。没有这四样一个测试结果基本上是不可信的。3. 场景库设计——仿真测试的核心灵魂3.1 场景构建的三个层次与覆盖原则如果说仿真平台是骨架那场景库就是血液。标准对场景库设计的核心要求简单说就是“覆盖性、可重复性、可扩展性”。覆盖性指的是场景库应该覆盖被测功能在ODD内可能遇到的各种典型情况和边界情况可重复性前面说过了就是同一场景能精确重放可扩展性是说场景库的架构不能是一堆零散的文件的堆砌而要能通过参数变化衍生出新的用例。在做场景层次划分时我习惯把场景分成三层。第一层是自然驾驶场景也就是从真实道路采集的、大量出现的日常场景用来验证系统在常态交通流中的表现。第二层是法规与标准场景包括各国NCAP、ISO标准以及中国自己的测试规程里明确要求的场景比如AEB的CCRs、CCRmLKA的弯道偏离等。第三层是边缘场景也就是长尾的、危险概率高的、真实数据里极其稀少但一旦发生后果严重的场景比如“前车急刹后车跟车过近路面湿滑”的组合。在构建边缘场景时最常见的误区是一上来就堆复杂场景。我们内部有一条经验先确保基础场景通过再逐步叠加危险因素。一个合格的边缘场景一定是能明确指出“危险源是什么、激发条件是什么、期待系统怎么应对”的而不是为了难而难拼凑一个现实中几乎不存在的极端组合。3.2 参数化场景让一个用例变成一百个用例场景库的效率指标不是“有多少个场景文件”而是“有多少个可覆盖的参数组合”。同一类场景通过参数变化衍生出的用例数量往往比手工编写场景文件要高效得多。比如一个典型的“旁车切入”场景可以参数化的变量包括本车速度、目标车速度、相对距离、切入角度、道路附着系数、天气光照条件等。把这些变量的取值范围和步长确定下来一个个跑一遍就能形成覆盖很广的测试矩阵。参数组合最怕的是“组合爆炸”。假设一个场景有6个参数每个参数取5档全排列就是15625个用例跑起来非常耗时。实操中可以用正交实验法或者基于风险的重点抽样法来压缩。先明确哪些参数对安全风险影响最大把它们作为主变量覆盖所有档位对影响较小的参数用更粗的步长或者随机抽样这样能把用例数降一个数量级又不至于显著损失覆盖度。3.3 场景库版本管理与审核场景库本身是需要“治理”的否则很快会变成一个没人敢动的黑洞。我的经验是场景库要像代码库一样做版本管理每次变更都要有变更记录场景文件要有命名规范和内部元数据描述场景类型、危险等级、适用功能、创建人、审核人。新增场景不能由一个人拍脑袋就加进去应该经过评审场景是否在ODD范围内参数设置是否合理期望的系统行为定义是否清晰这些环节在标准里没有细说但如果不做后期维护和追溯会非常痛苦。4. 仿真平台硬性要求与关键技术选型4.1 对仿真平台的性能约束标准对仿真平台的性能提出了几点硬性要求虽然没有在条文里直接写“必须用XX Hz”但字里行间是隐含约束的。第一是时间同步的精度。自动驾驶系统往往涉及多个传感器模型和多个计算节点如果各节点时间基准不统一传感器数据和车辆状态就对不齐测试结果毫无意义。我们在用dSPACE或者NI这类实时平台做HIL时时间同步一般要做到微秒级在非实时Simulink或CARLA环境里至少要保证整个仿真回路的步长一致。第二是动力学模型的保真度。标准的逻辑是“仿真环境要足以反映车辆的真实物理响应”。如果你做的是AEB测试那车辆纵向动力学制动响应、轮胎附着必须准确做的是高速变道那横向动力学、悬架特性就不能忽略。一款优秀的车辆动力学模型往往是测试是否可信的地基CarSim、VI-Grade这些商业模型之所以贵就是贵在模型经过大量实车验证。第三是传感器模型的真实感。标准对传感器仿真的要求是要能模拟出传感器视场角、探测范围、测量噪声和失效模式。换句话说不能假设传感器“全知全能”。常用的方案有两种一种是基于物理的渲染用Unreal或Unity引擎配合激光雷达/毫米波雷达模型得到接近真实的点云和雷达回波另一种是数据驱动的传感器模型通过真实传感器数据训练出噪声特征再在仿真中注入。物理仿真的优点是泛化性强数据驱动模型在特定传感器上精度更高实际项目中往往两者结合。4.2 主流仿真工具选型对比工具选型这件事不存在“最好”只存在“最适合”。我整理了一下目前行业里常用的几个组合各有优劣工具强项短板适用场景CARLA开源、传感器渲染效果好、社区活跃车辆动力学模型偏简单、高保真场景构建成本高算法快速验证、感知测试PreScan传感器模型成熟、场景编辑方便价格高、大规模并行能力一般HIL测试、传感器级仿真VTD场景和传感器一体化工装能力强、常用于OEM学习曲线陡、授权费用高大型OEM测试体系CarSim/VI-Grade车辆动力学模型业界标杆不擅长场景仿真与场景仿真工具联合使用SUMO微观交通流仿真、开源免费无传感器建模、和自动驾驶栈集成的接口简陋交通流级别的大规模测试我见过很多团队工具选型时只盯着“渲染多真实”看忽略了和自研算法栈的接口、批量并行的能力。实际上仿真测试平台的关键瓶颈往往不是画面而是吞吐量和自动化运维。一套能稳定跑1000个并行实例、支持容器化部署的平台比画面精美但一次只能跑几个场景的工具对项目的价值大得多。4.3 仿真步长与场景加载的参数配置建议最后给几组我常用的参数配置大家在搭平台时可以做个参考。在SIL环境下仿真步长一般取10ms算法控制周期也是10ms或20ms步长和控制周期保持一致或整数倍关系即可在HIL环境下由于要接入真实控制器的总线中断步长建议压到1ms~2ms否则传感器信号的时序会失真。场景加载环节注意自车的初始位置和速度必须和场景定义严格一致建议在场景启动前加一个“车辆状态检查”模块自动比对与目标状态的偏差超过阈值就自动重置别等到测试跑完再看数据才发现初始条件就错了。5. 实操现场常见问题、排查思路与避坑技巧5.1 场景可复现性差的问题这是我遇到过的最高频问题没有之一。表现是同一个场景文件同一套代码昨天跑是通过的今天跑就失败了或者两台机器跑同一个场景结果不一样。排查思路先看随机种子。很多仿真软件里交通车的行为模型、传感器噪声都有随机性必须把随机种子固定下来。再看并行仿真如果你用Kubernetes或者云批量跑多任务并行时资源竞争会导致时序抖动建议在关键场景上使用独占资源跑。最后看模型版本Simulink模型或者车辆模型有没有被无意中改动过。把环境配置纳入版本管理是解决这个问题的根本。5.2 仿真与实车行为不一致另一个常见问题是“仿真里能过上了车就出事”。这往往是仿真环境过于理想化导致的。典型的有几种一是传感器模型太干净没有加噪声、没有丢帧、没有遮挡效应导致感知模块在仿真里“看得太清楚”二是车辆动力学模型没有校准刹车距离、转向响应和实车对不上三是交通车模型过于程序化缺乏真实驾驶员随机行为的扰动。我们的经验是在仿真测试流程中加一个“真实性校准”步骤定期选取过去实车测试中记录的真实场景放到仿真环境里重放对比系统行为的一致性。如果偏差持续增大就要回头检查模型和参数。5.3 如何避免测试用例无限膨胀场景库会“膨胀”是必然的但可控的膨胀才是健康的。我们在管理测试集时用了“分层测试集”的思路冒烟测试集几十个场景每次提交代码都跑目标是发现基本功能是否被破坏、回归测试集几百到几千个场景每晚定时跑目标是锁定功能和性能的回归、全量测试集数万个场景每周或每个版本发布前跑。如果全量测试集里的用例长期没有发现任何问题就要考虑降级为回归集甚至归档控制成本反之新发现的线上问题要转化为新的仿真场景加入全量集。这样场景库才是活的而不是一个只增不减的堆料。5.4 结果判定指标的设计心得很多团队把仿真结果判定做成“碰撞失败没碰撞成功”这在标准框架下是非常粗糙的。建议至少要设计三层指标。第一层是安全类硬指标包括是否发生碰撞、最小离地间隙、最小安全距离等这一层是一票否决。第二层是合规类指标比如是否超速、是否压实线、是否占用对向车道这类指标反映系统是否遵守交通规则。第三层是绩效类指标包括平均车速、变道次数、乘坐舒适性的加速度冲击度等。每一类指标的权重也要分场景类型调整例如在“安全类场景”里绩效指标即使再差只要安全指标通过整体也应该是通过但在“效率类场景”里安全是底线绩效则是拉开差距的地方。5.5 自动化流程里的两个隐藏坑最后分享两个在自动化流程里容易踩的隐藏坑。第一个是日志和可视化视频的存储管理。仿真跑多了产生的数据量是以TB计的。如果每个用例都存视频成本完全不可控。我们的做法是默认只存结构化指标数据和关键帧截图只有在测试失败时才自动保存完整的视频和传感器数据。第二个是失败用例的自动入库。每次出现失败或异常用例要自动进入一个“待评审队列”由测试工程师判断是代码缺陷、场景异常还是测试设计问题分类处理后归档。如果不做这个环节失败用例只会被反复重跑问题永远沉淀不下来。回顾这几年做仿真测试的体会我觉得最关键的认知是仿真测试不是花钱买一套软件就完事它更像是在搭一套“虚拟试验场管理体系”。标准的出台给了大家一个共同的坐标系但真正的工程价值还是靠每一家团队在场景库建设、工具链整合和质量管控上一点点磨出来的。如果说要给刚接触这个领域的团队一个建议我会说别一上来就去追最新的硬件在环设备或者最炫的渲染引擎先把标准里那条测试流程完整走通把场景库的框架搭扎实后面所有事情都会顺很多。这比任何“智能”工具都要可靠。本文还有配套的精品资源点击获取
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻