diff --git a/critical/undergraduate/content/chapter2.tex b/critical/undergraduate/content/chapter2.tex index 544ffec1..450a0564 100644 --- a/critical/undergraduate/content/chapter2.tex +++ b/critical/undergraduate/content/chapter2.tex @@ -1,395 +1,261 @@ -%!TEX root = ../../csuthesis_main.tex -\chapter{相关背景知识介绍} -\section{自动驾驶仿真技术} -\subsection{carla仿真平台} +%!TEX root = ../hutbthesis_main.tex +\chapter{相关理论基础与实验平台} +\section{CARLA仿真平台与OpenSCENARIO标准} +\subsection{CARLA仿真平台架构} +作为一个专门面向自动驾驶领域的开源项目,CARLA基于虚幻引擎4开发,可以CARLA的核心架构主要包括以下几个模块: -CARLA 是基于虚幻引擎构建的开源自动驾驶仿真平台,提供高保真的3D虚拟环境与物理模拟,支持多传感器(如摄像头、激光雷达、雷达等)的动态数据生成与可配置参数。其核心功能包括动态天气系统、可编辑城市地图、交通流控制,以及丰富的Python/C++ API接口,便于与外部算法(如ROS)集成。CARLA采用Server-Client架构,Server端负责环境渲染,Client端通过API控制车辆行为与传感器配置,同时支持场景回放和自定义地图导入。尽管其高保真图形和灵活扩展性备受认可,但对硬件性能(尤其是GPU)要求较高,且需熟悉Unreal Engine与API的使用,学习成本较大。 +(1)仿真服务器(Server)是主要负责进行大量计算工作的部分,包括物理建模、传感器数据仿真以及环境变化等重要功能,在固定的时间间隔下进行循环工作,其中包括车辆动力学建模、碰撞检测算法制定以及天气条件的变化等一系列的技术手段并且对它们进行了优化以提高效率。 -\subsection{Scenario Runner} +(2)客户端接口(Client):该模块支持 Python、C++ 两种编程语言接入方式,用于在仿真环境中进行各种实体对象操作以及管理等。用户可以利用该接口给系统发送命令并获得传感器数据以及整个环境变化情况,这样就增加了系统的灵活性并且降低了开发难度,便于使用。 +(3)交通管理模块(Traffic Manager)是CARLA框架的重要组成部分,在整个模拟系统中起着重要作用,即负责管理并控制仿真环境中所有非玩家控制实体的行为变化,具有路径规划、速度控制以及换道等能力,能够使生成的交通更加逼真。 -Scenario Runner是CARLA的扩展工具,专注于复杂驾驶场景的自动化测试与执行。它支持通过Python脚本或标准化格式(如OpenSCENARIO)定义场景,涵盖车辆行为、行人交互、天气变化及触发条件(如碰撞、时间限制)。工具提供场景管理功能,可同步/异步执行多场景,并通过触发器机制动态激活事件(如行人突然横穿)。典型场景包括基础操作(跟车、变道)和极端测试(紧急避障、恶劣天气),助力算法在安全与效率上的验证。尽管其灵活性与标准化支持提升了测试效率,但OpenSCENARIO的语法学习复杂,且复杂场景调试耗时,需结合CARLA的仿真环境协同工作,形成从场景生成到数据评估的完整闭环测试链路。 +(4)地图资源及资产管理模块:该模块使用的是CARLA官方提供的标准地图资源库,包括Town01到Town07等不同类型的场景,有不同的道路网络结构,不同的交通标示系统以及不同的建筑布局特点,在RoadRunner等第三方软件支持下,可以对现有的地图内容进行一定程度上的修改或是添加新的自定义地图元素以适应研究工作的需要。 -\section{多目标优化算法(NSGA-II)的功能与应用} +CARLA平台包含丰富的虚拟传感器类型,如RGB摄像头、深度传感器、语义分割模块、激光雷达、雷达设备、惯性测量单元(IMU)等主要部分。开发人员可以将它们添加到模拟车辆中并得到类似真车传感器的行为表现,这有利于无人驾驶相关研究及开发工作。 -\subsection{多目标优化算法(NSGA-II)的功能} +\subsection{OpenSCENARIO格式与.xosc文件} +作为由ASAM(自动化与测量系统标准化协会)提出的自动驾驶仿真场景描述语言,OpenSCENARIO使用XML文件形式来定义一个非常真实的复杂的动态道路交通场景,在此之中详细规定了车辆起始状态、行驶路径规划、速度设定以及触发条件等各方面内容,为自动驾驶相关研究和测试工作提供便利\cite{yu2021openscenario}。 -NSGA-II(非支配排序遗传算法Ⅱ)是一种基于遗传算法改进的高效多目标优化工具,核心功能是通过非支配排序和拥挤度比较机制,解决目标相互冲突的复杂优化问题。其首先将解集按支配关系分层(优先保留更优的Pareto前沿解),再通过计算解的拥挤距离(衡量解在目标空间中的分布密度)维持种群多样性,避免局部最优。算法结合精英保留策略(合并父代与子代筛选最优解)与无参数化设计,无需预设目标权重即可生成一组均衡的Pareto最优解集。NSGA-II在收敛速度、解集分布广度及计算效率(复杂度为O(MN²))上显著优于传统方法,适用于连续/离散变量、线性/非线性约束的工程、科学及金融优化场景,但需应对高维目标下的“维度灾难”挑战。 +一个标准的OpenSCENARIO文件(后缀为.xosc)一般由以下几个部分组成。 -\subsection{多目标优化算法(NSGA-II)的应用} +(1)FileHeader:文件元数据,如版本号、生成工具、描述等. -NSGA-II广泛应用于自动驾驶、工程设计、机器学习等领域,解决多目标权衡问题。例如,在自动驾驶中优化车辆路径规划(平衡路径长度、安全性、能耗)或传感器布局(权衡成本与感知精度);在工程领域优化机械结构(最小化重量与最大化强度)或电机参数(效率、成本、发热量);在机器学习中同步优化模型精度与训练效率,或电网调度中协调发电成本与碳排放。其通过生成Pareto解集,为决策者提供直观的全局权衡方案,典型应用步骤包括问题编码、目标评价、非支配排序及迭代进化,最终从解集中选择符合需求的最优策略(如优先安全或成本),成为复杂系统多目标优化的核心工具。 +(2)参数配置模块:用于定义场景内不断改变的因素的标准设置,如车辆行驶速度、行程距离以及外界情况等重要参数,在大量仿真场景创建和多种情况下参数测试方面起到重要作用。 +(3)CatalogLocations:目录位置指定,用于引用外部文件(如车辆模型、驾驶员模型等)。 -\section{ASIL安全标准与危险场景分类} +(4)RoadNetwork:道路网络定义,在该场景中使用路网文件(一般为OpenDRIVE格式的.xodr文件)。 -\subsection{ASIL安全标准概述} +(5)Entities:实体定义,在场景中有何类型的实体出现,如主车、对抗车辆、行人等。每一个实体都需要给出其所对应的模型、类型以及初始状态。 -ASIL(Automotive Safety Integrity Level,汽车安全完整性等级)是ISO 26262标准的核心概念,用于量化汽车电子系统的安全风险等级。根据潜在危害的严重度(Severity)、暴露概率(Exposure)和可控性(Controllability),将安全需求划分为四个等级: +(6)作为场景构成的重要一环,故事板的作用是设计以及展示动态动作之间的关系。行动(Act)是基本单位,行动中有许多操作(Maneuver)和事件(Event),而这些都可以用一些条件来决定它们发生与否以及何时发生。 -ASIL A(低风险)至 ASIL D(最高风险),例如: +本文利用强化学习方法对对抗性车辆进行动力学优化并使用OpenSCENARIO格式导出场景描述文件(.xosc)。该文件具有良好的通用性,在CARLA等主流仿真平台上可以准确复现并且进行相关功能验证,也可以适用于符合ASAM标准的所有软件工具上,用于实现复杂的道路环境仿真实验以及评价。 +\section{深度强化学习理论基础} +\subsection{强化学习基本框架} +作为机器学习一个重要的领域,强化学习研究的是如何让智能体(agent)通过与环境不断交互以及尝试和错误的过程来达到某种最优策略。不同于需要有标记的数据或者结构性特征来进行训练的监督学习和无监督学习,强化学习是利用得到的反馈奖励来学习,并追求最终的效果更好\cite{pan2021reinforcement}。 -\begin{table}[htb] - \centering - \caption{分类规则} - \label{T.example} - \begin{tabular}{lll} - \hline - ASIL等级 & 碰撞风险阈值 & 最小安全距离阈值 \\ - \hline - D & ≤0.1 & ≥10m \\ - \hline - C & ≤0.3 & ≥7m \\ - \hline - B & ≤0.5 & ≥5m \\ - \hline - A & ≤0.7 & ≥3m \\ - \hline - QM & 其他情况 & - \\ - \hline - \end{tabular} -\end{table} - - -\subsection{危险场景分类方法} - -危险场景分类旨在识别驾驶环境中可能引发安全风险的场景,通常分为: - -功能场景:系统正常行为下的边界条件(如急转弯、跟车距离不足)。 - -故障场景:硬件/软件失效引发的风险(如摄像头故障、通信中断)。 - -环境场景:外部环境导致的威胁(如暴雨、道路施工、行人突然闯入)。 - -交互场景:多交通参与者复杂博弈(如无保护左转、交叉路口冲突)。 - - - - - - -\chapter{智能驾驶危险仿真场景优化算法} -\section{智能驾驶危险仿真场景优化算法整体框架设计} - -围绕智能驾驶危险场景的仿真、优化与评估展开,通过 CARLA仿真平台 构建动态交通场景,结合 多目标进化算法(NSGA-II) 与 随机搜索算法 筛选高风险场景,并基于 ISO 26262 ASIL等级 分类与统计检验评估算法性能。整体流程分为 环境配置、场景生成、仿真执行、优化筛选、安全评估、统计验证、可视化 七大模块。 - -\begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure1.png} % 调整宽度为文本宽度的80% - \caption{智能驾驶危险仿真场景与优化算法整体框架} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} - - -\section{智能驾驶危险仿真场景优化算法概述} - -智能驾驶危险仿真场景优化算法旨在通过智能化的多目标优化与系统化评估,高效筛选高风险场景以提升自动驾驶系统的安全测试效率。该算法基于CARLA仿真平台与Scenario Runner工具链构建动态交通场景,通过模板驱动或对抗生成技术批量生成变道、跟车等多样化危险场景,并记录关键指标如最小安全距离、碰撞风险及制动响应时间\cite{孟琳2016真实交通危险工况下驾驶员转向避撞相关因素分析}。核心优化采用多目标进化算法NSGA-II,通过非支配排序与拥挤度计算,在Pareto前沿上平衡安全性与风险性目标,对比随机搜索算法可显著提升高风险场景的覆盖率和多样性。优化后的场景通过ISO 26262标准进行ASIL等级分类(如ASIL D要求碰撞风险≤0.1且安全距离≥10米),并借助Mann-Whitney U检验与效应量分析验证算法差异的统计显著性。技术亮点包括混合优化策略(结合局部搜索加速收敛)、自动化流水线集成及对抗生成技术增强边缘场景。该框架可将高风险场景筛选效率提升30\%-50\%,直接支持功能安全认证流程,并为感知、决策算法的迭代优化提供数据反馈。未来将探索在线动态优化、多模态传感器融合评估以及仿真与实车数据的闭环迭代,进一步推动自动驾驶测试的智能化与标准化\cite{李霖2014驾驶员在真实交通危险工况中的制动反应时间}。 - -\section{危险场景描述与分析} -\subsection{危险场景描述} -智能驾驶危险场景可根据 触发条件 与 交互对象 分为以下类型,其核心特征与风险点如下: - - -\begin{table}[h] - \centering - \begin{tabular}{|p{3cm}|p{4cm}|p{6cm}|} - \hline - \textbf{场景类型} & \textbf{典型示例} & \textbf{关键风险参数} \\ \hline - 变道冲突 & 自车高速变道时,相邻车道车辆突然加速逼近 & - \begin{tabular}[c]{@{}l@{}} - \(\bullet\) 变道初始速度(m/s)\\ - \(\bullet\) 目标车道车辆间距(m)\\ - \(\bullet\) 后车加速度(m/s²) - \end{tabular} \\ \hline - 交叉路口碰撞 & 路口左转车辆与直行行人/非机动车抢行 & - \begin{tabular}[c]{@{}l@{}} - \(\bullet\) 路口可见度(m)\\ - \(\bullet\) 行人移动速度(m/s)\\ - \(\bullet\) 自车制动延迟时间(s) - \end{tabular} \\ \hline - 跟车追尾 & 前车紧急制动,自车因感知延迟导致碰撞 & - \begin{tabular}[c]{@{}l@{}} - \(\bullet\) 跟车距离(m)\\ - \(\bullet\) 前车减速度(g)\\ - \(\bullet\) 自车制动系统响应时间(s) - \end{tabular} \\ \hline - 非机动车闯入 & 行人从视觉盲区突然横穿马路(如公交车后方) & - \begin{tabular}[c]{@{}l@{}} - \(\bullet\) 行人出现距离(m)\\ - \(\bullet\) 自车初始速度(km/h)\\ - \(\bullet\) 环境光照条件(昼/夜/雨雾) - \end{tabular} \\ \hline - 复杂道路耦合 & 弯道+湿滑路面+对向远光灯干扰下保持失效 & - \begin{tabular}[c]{@{}l@{}} - \(\bullet\) 道路曲率半径(m)\\ - \(\bullet\) 轮胎-路面摩擦系数\\ - \(\bullet\) 光照干扰强度(lux) - \end{tabular} \\ \hline - \end{tabular} - \caption{表格标题} - \label{tab:my_label} -\end{table} -\subsection{危险场景关键特征} - -动态耦合性多参与者的行为相互影响(如“鬼探头”场景中行人、障碍物与自车的时空耦合)。 - -数学描述:碰撞风险=f(v\_{ego},a\_{obj},d\_{min},t\_{TTC}) - -其中$ t\_{TTC}=\dfrac{d\_{rel}}{v\_{rel}}$(Time to Collision) - -长尾性极端场景发生概率低但危害大(如高速公路上动物突然闯入,概率<0.1\%但致死率高)。 -环境敏感性天气(雨/雪/雾)、光照(逆光/夜间)、道路条件(湿滑/坑洼)显著放大风险。 - - -\chapter{智能驾驶危险仿真场景生成实验和优化算法设计与方法} - -\section{实验环境搭建} -\subsection{实验准备} - -ChatScene: - -在用户用自然语言描述危险场景需求的时候,当前领域专用LLM的解析能力还能进一步提升,可以引入迁移学习技术,利用大量自动驾驶领域相关的文本数据对模型做微调,让它对专业术语和复杂语义的理解变得更加精准,就像对于“在高速公路上遇到团雾且前方车辆紧急制动”这样的描述,模型能够更准确地提取出里面的关键信息,并且生成相应的场景参数,建立语义纠错和完善机制也是非常重要的,当用户输入模糊或者不完整的描述的时候,系统可以通过主动提问的方式和用户进行交互,以此获取更多的细节信息,比如用户仅仅输入“生成夜间场景”,系统可以询问“是否有特定的道路类型”“是否包含特殊的交通参与者行为?” 等问题,从而完善场景描述,提高生成场景的准确性和实用性。​ - - -多模态对齐方面结合DetDiffusion的感知增强生成技术,在把文本指令映射为多视图场景数据时探索更多先进的生成模型,比如引入Transformer - based的生成模型,利用其强大长序列建模能力更好处理文本与多模态数据间复杂关系来进一步提升几何精度,为更直观展示几何精度的提升效果通过实际案例进行对比分析,选取不同复杂度的场景描述分别用原方法和改进后方法生成多视图场景数据,计算Chamfer Distance误差并绘制误差对比图表,同时展示生成的多视图场景图像,直观呈现改进后在场景细节和几何准确性上的优势,\cite{吴斌2018基于自然驾驶研究的直行追尾危险场景诱导因素分析}。​ +强化学习的基本框架由以下五个要素组成: +(1)状态(State, s ∈ S):是对于某一个时间点而言整个系统的总况,在自动驾驶中,这个概念是由很多个参数组成的,比如目标车所在的位置、速度以及方向,还需要加上周围的物体的位置、运动轨迹还有它们的变化情况等信息。 -约束嵌入就是在通过三路组合方法生成场景等价类的时候能够优化约束条件的设定,基于历史事故数据以及交通规则来构建更精细的约束规则库,比如在考虑道路结构和交通参与者行为的组合时要根据不同道路类型像城市道路、高速公路等设定不同约束条件以避免生成不符合实际交通规则和安全逻辑的场景组合,此外还可以采用并行计算技术来进一步提升生成效率,把场景生成任务分解成多个子任务利用多核处理器或者分布式计算平台并行处理从而大幅缩短单位时间内场景生成的时间,同时通过实时监控生成过程动态调整计算资源分配以确保生成效率达到最大化。 +(2)动作(Action, a ∈ A):智能体能够采取的行为方式,在本文中对抗车辆的动作有加速、减速、转向、变道等控制命令。 -项目ASIL-Gen: +(3)状态转移概率(Transition Probability, P(s'|s,a)):它是从给定的状态s以及采取的动作a出发,系统会以某个概率进入新的状态s'的概率分布,在确定性环境下,这个过程就是一种一一对应的关系。 -动态安全等级映射是在依据场景风险参数动态分配ASIL等级的时候,可引入机器学习模型来进行更准确的风险评估,需要收集大量实际场景数据,其中包含已发生事故的场景以及模拟测试场景,提取相关风险参数当作特征,以实际的ASIL等级作为标签来训练一个分类或回归模型,比如可以使用随机森林、支持向量机或者深度学习中的神经网络模型,通过模型学习风险参数与ASIL等级之间的复杂关系,从而实现更精准的动态安全等级映射,同时要建立ASIL等级动态调整机制,随着自动驾驶技术的发展以及新的安全需求的出现,定期更新风险评估模型和ASIL等级映射规则,例如,当出现新的传感器技术或自动驾驶功能时,重新评估相关风险参数对 ASIL 等级的影响,确保安全评估的时效性和准确性。​ +(4)奖励函数(Reward Function,记作R(s,a)):该函数用来衡量智能体处于某个状态s下采取一个行为a所得到的即时数值化的回报大小。设计良好的奖励函数对于引导智能体的行为以及使智能体达成目标有着至关重要的作用。 +(5)折现率(Discount factor, γ ∈ [0, 1]):用来衡量现在所获得收益与将来可能得到回报之间关系的重要因素,在数值上越接近1说明决策者更注重长远利益以及它所带来的好处。 -五维安全验证是参考华为CAS 4.0体系来做的,进行五维安全验证时可针对每个维度开展更深入测试,全时速测试方面,除现有的速度范围之外,还可增加极端速度条件下的测试,像超低速蠕行以及接近车辆最高时速的高速行驶场景,以此评估自动驾驶系统在极端速度下的安全性,全方向感知测试当中,要引入更复杂的多目标交互场景,模拟多个交通参与者从不同方向同时接近的情况,测试自动驾驶系统的感知和决策能力,全目标识别部分,除了行人和车辆以外,要增加对非机动车、动物、道路障碍物等特殊目标的识别和应对测试,全天候测试要结合气象模拟技术,生成更逼真的极端天气场景。如强台风、沙尘暴等,评估系统在恶劣天气下的安全性\cite{焦准2006基于证据理论的多传感器信息融合目标识别方法}。​ - - -形式化验证工具以Pro - SiVIC作为基线,结合MTGS多轨迹数据融合技术保证物理真实性时,能够拓展数据融合的范围和方式,除了车道宽度、护栏间距这类几何数据之外,还融合车辆动力学数据、交通流数据等,以此构建更全面的物理模型,比如通过实时采集真实道路的交通流数据,将其融入模拟场景里,让场景中的车辆行驶行为更贴合实际交通情况,同时利用虚拟现实(VR)和增强现实(AR)技术,对验证结果进行可视化展示,开发专门的可视化工具,把模拟场景以VR或AR的形式呈现出来,测试人员能够沉浸式体验和评估场景的物理真实性与安全性,提升验证的直观性和有效性。 - -\subsection{数据准备} -测试场景库构建 -场景类型:基于ChatScene生成的13类危险场景(如行人横穿、车辆抢行、障碍物突现)。 -数量分配:每类场景生成100个变体,共1300个测试用例,覆盖不同天气(雨天、夜间)、交通密度。 -场景数据:在公平对比基线实验中,使用scenario/scenario\_data/scenic\_data中的场景文件,这些文件有手动修改以确保使用相同的 10 条路线进行公平对比。在动态模式下,将场景描述文本写入retrieve/scenario\_descriptions.txt,运行python retrieve.py获取对应的 Scenic 代码。 -模型配置:默认使用scenario/agent/config/adv\_scenic.yaml中的配置,从 Safebench-v1 加载预训练的 RL 模型控制 ego agent,周围的对抗 agent 由 Scenic 控制。 - -指标采集方法碰撞率是借助CARLA内置的碰撞传感器也就是sensor.other.collision来记录碰撞事件,成功完成率的条件是要同时满足无碰撞、无闯红灯、无越界也就是车道保持误差小于0.5米,并且要在时间限制内到达目标点比如交叉路口场景限时30秒,检测工具是基于高德MapDR规则引擎实时校验交通违规行为,平均决策时间是在RL代理的决策循环中嵌入时间戳记录即time.perf\_counter(),排除感知模块耗时只统计从状态输入到控制输出的计算延迟,恢复能力方面诱导偏离是在场景中注入噪声比如突然横向风力、GPS信号丢失,恢复判定是车辆在5秒内返回原车道且速度稳定波动小于10 。 - -预生成场景数据:解压Scenario Dataset/Scenario\_Dataset\_1-4.zip,将其中的.py场景文件复制到scenario\_runner/srunner/scenarios/目录,.xml配置文件复制到 - -scenario\_runner/srunner/examples/目录,以便利用预生成的场景进行实验。 -自定义场景数据(可选):利用Scenario Generation Scripts/目录下的脚本生成新的场景变化,如执行python script\_change\_lane.py生成新的变道场景,满足特定实验需求。 - -\section{危险仿真场景提取的特征参数确定} - -很多因素变化会让驾驶员在行驶过程中判定某个场景是危险的,包括车辆因素、环境因素、复杂多变的交通流等。但是将所有因素都列为判断场景是否危险是不切实际的。某些因素虽然会对驾驶员产生干扰,但影响很小可以忽略不计,因此在各种影响因素前如何筛选出表征车辆危险状态的重要指标是当前重要工作。危险场景的筛选主要是研究人员和驾驶员观看驾驶视频,通过研究人员主观判断以及驾驶员回忆当时真实驾驶感受筛选出部分危险片段。当驾驶员在行车过程中,制动操作是用于区分驾驶车辆间的安全和危险状态的判断标准之一。在驾驶人行车时,前车初始制动时刻或前车制动灯亮起可以认为是驾驶员还处于正常的安全跟车状态。一旦前车紧急制动快速缩短两车之间的驾驶距离时,该场景下的危险系数逐渐增加,驾驶人会根据车辆间的状态变化来调整自车的运行状态,开始制动操作或者打方向盘改变车道,以避免陷入危险碰撞事件。此时,自车驾驶员开始制动或者打方向盘时刻即为危险开始时刻。通过上述分析,跟车时驾驶员的安全和危险状态判断可被视为二分类。以驾驶人判断作为因变量,影响驾驶员判断的车辆状态参数作为自变量,筛选出能够明显区分驾驶员判断的自变量作为危险场景筛选的关键要素。前车制动紧急程度一定程度上影响驾驶员的操作反应,随着前车制动减速带来的场景变化是两车之间的相对距离逐渐减小。在自车速度很低,相对距离很短的情况下,驾驶场景可能并不危险,或者相对速度很小,但速度很高的情况下,驾驶场景可能并不安全,故在此引入车头时距 THW 和碰撞时间 TTC 两个物理量。THW 是两车间距离和自车速度的比值,表征前车突然静止时自车在不减速情况下撞上前车所用的时间,单位是秒;TTC 是两车间距离和两车相对速度的比值,表征前车在保持原先驾驶状态情况下自车撞上所用的时间,单位是秒。在此相对速度是前车速度减去自车速度,自车速度大于前车速度才有可能发生碰撞,故相对速度为负值,计算出的 TTC 也为负值。THW 能弥补 TTC 中存在潜在危险识别不出的缺陷,例如在相对距离较近时,两车速度都很高,相对速度趋近与 0,计算出的 TTC 很大,然而实际驾驶存在潜在危险;TTC 能弥补 THW 过度筛选的缺陷,例如在高速行驶时,临近车道有车加速切入自车道前方,在切入时刻短时间内 THW 会很小,但实际上于驾驶员而言并不危险。因此,下文将自车纵向减速度、THW 和 TTC 作为提取危险场景的特征参数,并结合国外参考文献中用到的车辆横摆角速度和横向加速度的阈值共同提取场景\cite{范云锋2019一种基于三次样条曲线的目标航迹拟合与插值方法研究}。 - -\subsection{场景提取参数确定} - -在危险场景提取方法的研究过程里,场景提取参数的确定属于关键步骤之一,它会直接影响提取结果的准确性与可靠性,下面是关于参数确定关键点和研究方向的总结以供参考,参数确定的核心目标包括精准性,即参数要能够有效区分危险场景和非危险场景,鲁棒性指的是参数在不同数据集或者环境变化时要保持稳定,可解释性表示参数需和危险场景的物理或行为特征存在强相关性 。 - -参数确定的关键步骤: -(1) 数据驱动的参数初选 -数据特征分析:通过统计分析(如分布、相关性)确定候选参数。 -例如:碰撞时间(TTC)、最小安全距离、加速度突变、行为异常频率等。 -领域知识融合:结合交通规则、事故报告或行业标准筛选参数(如ISO 26262中对功能安全的要求)。 -(2) 参数阈值设定 -统计方法:基于历史数据的分位数(如95%分位数)或极值理论(EVT)设定阈值。 -机器学习:通过监督学习(如SVM、决策树)划分危险/非危险类别边界。 -动态阈值:针对不同场景(如天气、道路类型)自适应调整阈值。 -(3) 参数优化与验证 -敏感性分析:评估参数变化对结果的影响(如蒙特卡洛模拟)。 -多目标优化:平衡参数间的冲突(如灵敏性与误报率)。 -交叉验证:通过K折交叉验证或留出法验证参数的泛化能力。 - +强化学习目标就是寻求最优策略π*,使从某个初始状态出发所获得的总折现奖励期望最大,即: +\begin{equation} +\pi^* = \arg\max_{\pi} \mathbb{E}_{\pi}\left[ \sum_{t=0}^{\infty} \gamma^t R(s_t, a_t) \right] +\end{equation} -\begin{table}[htb] - \centering - \caption{典型场景参数的分类} - \label{T.example} - \begin{tabular}{lll} - \hline - 参数类型 & 示例 & 适用场景 \\ - \hline - 时间相关 & 碰撞时间(TTC)、反应时间 & 车辆避撞、行人交互 \\ - \hline - 空间行为 & 最小安全距离、车道偏离率 & 车道保持、超车场景 \\ - \hline - 行为相关 & 急加速/急减速、转向角变化 & 驾驶员异常行为检测 \\ - \hline - 环境相关 & 光照条件、能见度、路面摩擦系数 & 恶劣天气下的危险场景 \\ - \hline - \end{tabular} -\end{table} +\subsection{DQN算法原理} +深度Q网络(Deep Q-Network, DQN)是在2013年由DeepMind提出的,最大的贡献是把深度神经网络应用到经典的强化学习中Q-learning当中,在此之前大多数的方法都是基于一些简单的特征表示进行学习,而DQN则可以处理高维的状态空间,可以从大量的、复杂的、多维的观测(比如图片等)直接得到相应的动作,这极大地扩大了强化学习的应用范围并且推动了该领域的发展\cite{xiu2024dqn}。 +深度强化学习(DQN)的基本思路为用一个较深的神经网络拟合状态动作价值函数(Q(s,a)),这个值表示在给定状态下采取某个动作后能得到的平均未来奖励,而它的最终目的是让经验数据学习尽可能接近贝尔曼最优方程给出的目标。 +\begin{equation} +Q^{*}(s,a) = R(s,a) + \gamma \sum_{s'} P(s'|s,a) \max_{a'} Q^{*}(s',a') +\end{equation} -参数确定中的挑战数据不均衡:危险场景数据稀疏,需通过过采样(SMOTE)或生成对抗网络(GAN)增强数据。多参数耦合:参数间可能存在非线性关系,需采用主成分分析(PCA)或因果推理方法解耦。实时性要求:参数计算复杂度需适应实际系统的实时处理能力(如边缘计算场景)。 -该段落可能为AI生成的概率为:89.8% -前沿研究方法强化学习(RL)通过环境交互动态调整参数,例如在自动驾驶中优化紧急制动阈值。贝叶斯优化基于概率模型高效搜索最优参数组合,减少实验成本。可解释 AI(XAI)利用 SHAP值或 LIME方法解释参数对危险场景分类的贡献度。联邦学习在保护数据隐私的前提下,跨多源数据联合优化参数。 -该段落可能为AI生成的概率为:85.1% -验证与评估指标定量指标:准确率(Accuracy)、召回率(Recall)、F1-Score、AUC-ROC曲线。定性分析:通过案例研究(Case Study)验证参数合理性,如对比人工标注结果。工程指标:计算延迟、内存占用等硬件兼容性指标。\cite{陈华0面向智能辅助驾驶系统的驾驶员行为分析与建模} +DQN在传统Q学习的基础上引入了两项关键改进: +(1)经验重放缓冲技术(Experience Replay):在DQN的基础上增加了一个经验池,用来保存智能体与环境之间交互得到一系列四元组(即状态-动作-奖励-下一状态),然后从中随机抽取一小部分进行网络权重更新的操作。这种方法可以降低序列之间的相关性并且极大地提高算法鲁棒性和样本利用率。 -\subsection{评估指标} +(2)目标网络(Target Network):为了使策略学习和价值估计分开,在DQN的基础上增加了一个双网络的方法。其中主网络用于进行每次动作的选择,而目标网络只用来求出目标Q值并且保持其参数基本不变,在每隔一段时间之后,目标网络就会用来自主网络的权值更新自身的权值从而提高整个算法的鲁棒性和收敛速度,它的损失函数可以用如下的方式来表示: +\begin{equation} +L(\theta) = \mathbb{E}_{(s,a,r,s') \sim D} \left[ \left( r + \gamma \max_{a'} Q(s',a';\theta^-) - Q(s,a;\theta) \right)^2 \right] +\end{equation} -评估指标 -碰撞率:通过CARLA内置的碰撞传感器(sensor.other.collision)记录碰撞事件。 +其中θ是主网络的参数,θ−是目标网络的参数。 -成功完成率 +由于DQN算法对于离散的动作空间具有良好的适用性,在该应用场景下,可以将目标车辆可进行的操作对应到一定数量离散的状态集(例如加速、减速、变道等),利用DQN来学习各个状态下最优的动作。 +\subsection{PPO算法原理} +一种基于OpenAI于2017年提出的一种新的策略梯度优化方法——近端策略优化(Proximal Policy Optimization, PPO),它打破了传统的强化学习的思想是以价值函数为中心的思想。不同于以往使用价值函数来进行间接选择的方法,PPO是直接对策略网络π(a|s)进行优化得到每一个状态下的各个动作的概率大小。这使得PPO具有更好的效果以及更广泛的应用场景。 -条件:同时满足以下两点: -无碰撞、无闯红灯、无越界(车道保持误差 < 0.5米)。 -在时间限制内到达目标点(如交叉路口场景限时30秒)。 -检测工具:基于高德MapDR规则引擎实时校验交通违规行为。 +Proximal Policy Optimization (PPO) 的主要思想是在策略更新时找到一个在每一轮都可使算法得到改进同时又不至于因为调整过大而导致不稳定的方法,在此基础之上提出了梯度裁剪的方法来限制每个训练步骤中对策略参数的改变量,进而避免由于改变过多带来的问题。 -平均决策时间 +PPO的目标函数为: +\begin{equation} +L^{\text{CLIP}}(\theta) = \mathbb{E}_t\left[ \min\left( r_t(\theta)\hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon)\hat{A}_t \right) \right] +\end{equation} -在RL代理的决策循环中嵌入时间戳记录(time.perf\_counter())。 -排除感知模块耗时(仅统计从状态输入到控制输出的计算延迟)。 +其中: -恢复能力 +(1)PPO在训练时使用了一个概率比来表示新旧策略变化大小。 +\begin{equation} +r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{\text{old}}}(a_t|s_t)} +\end{equation} -诱导偏离:在场景中注入噪声(如突然横向风力、GPS信号丢失)。 -恢复判定:车辆在5秒内返回原车道且速度稳定(波动 < 10\%)。 +(2)$A_t$是优势函数的估计值,在状态$s_t$下执行动作$a_t$相比于平均值的优势。 +(3)剪辑技术用来对策略参数的变化幅度进行限制,以免造成过大变化使系统变得不稳定,在如图~\ref{img-2}所示PPO算法里,CLIP目标函数的设计正是这一思想的应用,它通过添加一个剪辑的操作来大幅减小策略更新时可能出现的大波动。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.6\textwidth]{figure_2.png} + \caption{CLIP目标函数可视化示意图} + \label{img-2} +\end{figure} -\begin{table}[htb] - \centering - \caption{指标对比} - \label{T.example} - \begin{tabular}{llllll} - \hline - 指标& ChatScene & 随机搜索 & LiDARGen & 提升率 \\ - \hline - 碰撞率 & 8.2\% & 15.7\% & 22.4\% & -47.8\% \\ - \hline - 成功完成率 & 89.5\% & 76.3\% & 68.1\% & +17.2\% \\ - \hline - 平均决策时间 & 86 ms & 120 ms & 145 ms& -28.3\% \\ - \hline - 恢复成功率 & 92\% & 78\% & 65\% & +18.0\% \\ - - \hline - \end{tabular} +\subsection{DQN与PPO的对比分析} +与DQN相比,PPO具有以下优势\cite{zhang2025deep}: + +(1)支持连续动作空间,可以输出更加细粒度的动作(如油门开度0.3、转向角度-0.2); + +(2)采用随机策略,具有更强的探索能力; + +(3)训练更加稳定,不易出现Q值过估计或发散问题。 + +本文基于Proximal Policy Optimization (PPO) 算法,提出更加复杂以及具有较高难度极限驾驶任务的同时也对这两种经典方法进行比较研究。为了更好地突出两者区别,本文从不同方面对其进行对比,包括它们的基本原理、学习速度以及鲁棒性等(如表~\ref{tab:dqn_ppo_compare}所示)\cite{zhang2025deep}。 +\begin{table}[htbp] + \centering + \caption{DQN与PPO算法对比表} + \label{tab:dqn_ppo_compare} + \begin{tabular}{ccc} + \toprule + 对比维度 & DQN & PPO \\ + \midrule + 算法类型 & 价值基(Value-based) & 策略基(Policy-based) \\ + 策略形式 & 确定性策略($\varepsilon$-贪心) & 随机策略(概率分布) \\ + 动作空间 & 离散 & 连续或离散 \\ + 更新方式 & 异策略(Off-policy) & 同策略(On-policy) \\ + 样本效率 & 较高(经验回放) & 较低(数据一次性使用) \\ + 训练稳定性 & 较不稳定 & 较稳定(剪切机制) \\ + \bottomrule + \end{tabular} \end{table} +\section{极端驾驶场景的定义与分类} +\subsection{极端驾驶场景的定义} +极端驾驶情境是对自动驾驶系统感知、决策和控制提出极大考验的一种特殊的道路行驶情况,在一般道路上出现的概率较低,风险较高并且变化较快,是评价自动驾驶安全性的一个重要指标。 -关键结论: - +而在自动驾驶技术研发与测试过程中,场景是一定时间段内所有交通参与主体、道路设施以及外界条件所组成整体。由于它抽象程度不同,可以分为三个不同层次:基础层、中间层和高层\cite{sun2025autonomous}。 -碰撞率与安全等级关联:ASIL-D级场景的碰撞率(23.5\%)显著高于ASIL-A级(4.1\%),验证了ASIL分类的有效性。 -决策时间影响:当决策时间 > 150ms时,碰撞率上升至18.3\%(vs. <100ms时的7.1\%),凸显实时性对安全性的重要性。 -恢复能力与场景复杂度:在动态障碍物交叉场景中,恢复成功率降至83\%(vs. 变道场景的95\%),表明需针对复杂场景优化控制策略。 +(1)功能场景(Functional Scenario):用自然语言对主要因素进行说明并且尽可能少提及具体的数字或者量化的数值等,比如:在下雨天的情况下,前车突然实施紧急制动。 +(2)逻辑场景(Logical Scenario):用参数区间描述场景中各个元素所具有的取值范围。比如降雨强度介于60%-90%,前车加速度为-4到-8m/s²,两车间距为10到30m。 +(3)具体场景(Concrete Scenario):为逻辑场景中的各个参数设置具体的值从而得到可以在仿真中运行的具体例子。 -\section{讨论与改进方向} -ChatScene 项目: +本研究中场景生成是在逻辑场景限定条件下,利用强化学习方法寻找使主车危险度最大的具体场景参数取值。 +极端驾驶场景的核心特征可归纳为以下四个方面: -拓展场景生成能力方面,当前虽然能够基于文本描述生成场景,不过场景多样性或许会受到限制,可引入更多类型知识,像交通规则细则以及不同地区驾驶习惯数据,让生成的场景更贴合复杂现实情况,在依据文本描述生成场景时,结合真实事故案例数据,生成更具针对性和危险性的场景,以此提升自动驾驶系统测试的全面性。优化模型性能方面,训练场景选择和优化过程的计算成本可能比较高,要优化参数优化算法,减少不必要的计算步骤,提高场景选择效率,采用更高效的采样策略,在减少采样数量的同时保证所选场景质量,加快训练速度并降低实验成本。加强与其他技术融合方面,目前在与GPT - 4o集成还处于beta阶段\cite{thiemann2008estimating},后续应当持续优化集成效果,充分利用大语言模型强大的语言理解和生成能力,生成更自然、复杂的场景描述,探索与传感器模拟技术相结合,使生成的场景能够直接对接传感器数据模拟,为自动驾驶系统感知模块提供更真实的测试数据。 +(1)小概率事件,在一般驾驶过程中出现几率较小,但是一旦发生后果严重。 +(2)高危险性:主车在场景中与周围交通参与者之间有较高的概率发生碰撞,或者碰撞造成严重后果。 -ASIL - Gen 项目: +(3)突发性和不确定性:在极端情况下,驾驶员的行为往往是突发性的并且难以预料,比如前方车辆突然刹车、侧面车辆未提前发出信号就变道或者行人突然过马路等。因为这些情况出现的概率较小而且没有一定的规律性,因此这对自动驾驶汽车感知预测以及决策规划的能力带来了极大的挑战。 +(4)环境复杂性:极端工况往往伴随着恶劣气候状况,如大雨、大雾或者夜晚能见度较低等情况,而这些都会极大地影响传感器获取的数据质量以及准确性并给汽车本身带来不利的影响从而加大了系统的控制难度以及安全隐患。 +\subsection{场景分类体系} +为了有条理地组织以及产生极端驾驶情境,在此给出一种划分方法。该方法根据危险源、环境以及人来进行划分。 -要对场景类型和参数进行丰富处理,现有 13 种场景类型可进一步增添特殊场景,比如极端天气下的驾驶场景以及道路施工场景等,针对每个场景要细化相关参数,就像在跟车场景里增加前车不同加减速模式参数,以此让场景更具多样性和真实性,进而更全面地评估自动驾驶系统安全性。要对优化算法进行改进完善,在 NSGA - II 和随机搜索算法基础上探索结合其他智能优化算法,例如遗传算法、粒子群优化算法的优点,改进场景选择策略以提高选择效率和准确性,开发自适应算法依据场景特点和实验需求自动调整搜索策略,提升算法通用性。要完善 ASIL 分类标准,当前 ASIL 分类脚本计算方式或许存在一定局限性,结合更多实际因素如车辆动力学特性、环境干扰因素等来完善分类标准,使计算出的 ASIL 等级更准确反映场景真实安全风险,建立动态 ASIL 分类机制随着场景实时变化调整分类结果并结合两个项目 。 -改进方向是统一场景评估体系,ChatScene重点在于场景生成,ASIL - Gen主要侧重于场景评估,要把两者的场景评估指标进行统一,从而让ChatScene生成的场景能够直接运用ASIL - Gen的ASIL分类标准来评估安全性,以此提高场景生成和评估的连贯性与效率,要相互补充场景资源,ChatScene动态生成场景的能力比较强,ASIL - Gen具备丰富的预生成场景以及详细的分类\cite{薛薇2009SPSS},ChatScene可以将生成的场景补充到ASIL - Gen场景库中,ASIL - Gen的预生成场景也能够为ChatScene提供训练和对比数据,进而拓展双方的场景资源,要协同优化实验流程,在实验流程方面进行协同,ChatScene生成的场景经过ASIL - Gen筛选和分类,确定高风险场景之后再运用ChatScene训练和评估自动驾驶模型,形成完整且高效的实验流程,以此推动自动驾驶系统安全性能的提升。 +根据以上分类方式以及本文的研究目的,把极端驾驶环境分为以下几大类:极端天气类、车辆对抗类、行人危险类以及多种因素共同作用下形成的一系列极端驾驶情况\cite{zhan2025deep}。 +(一)极端天气类场景 -\section{算法设计与优化} -\subsection{NSGA-II算法设计} +极端天气条件下危险主要是由于外界环境影响感知系统及控制系统而造成的危险。 +(1)大雨情况:下雨对摄像头成像以及激光雷达点云有较大影响,而且湿滑路面使得汽车刹车距离延长30%-50%。 -NSGA-II(非支配排序遗传算法 II) 是一种多目标优化算法,由 Kalyanmoy Deb 等人于 2002 年提出,专为解决多目标优化问题设计。其核心思想是通过 非支配排序(Non-dominated Sorting) 和 拥挤度计算(Crowding Distance) 维护解的多样性与收敛性,找到 Pareto 最优解集。 +(2)大雾环境:由于大雾天气下光散射造成画面反差很小,在能见度小于50m情况下很难识别行人。 +(3)夜间或者低照度情况下:由于缺乏足够的光线使图像传感器信噪比降低,行人以及小型目标难以被检测到。 -非支配排序 -目标:将种群中的解按支配关系分层,形成多个前沿(Front)。 +(二)车辆对抗类场景 -支配关系定义 -解 \( x \) 支配解 \( y \),当且仅当: +车辆对抗类场景的危险来源于对抗车辆主动制造的突发性危险状况\cite{zhou2025vehicle}。 -\begin{itemize} - \item \( x \) 在所有目标上不劣于 \( y \),即 \( f_i(x) \leq f_i(y) \) (\( \forall i \))。 - \item \( x \) 至少在一个目标上严格优于 \( y \),即 \( \exists j \),\( f_j(x) < f_j(y) \)。 -\end{itemize} +(1) 前车急刹车:前车采用较大加速度(-4m/s²到-8m/s²)进行急刹车,考察主车反应时间以及制动能力。 -排序流程: +(2) 强行加塞:对抗车辆从旁边车道以较近距离进入主车前面,切入角度为10°-20°,切入时间为1s-3s. -计算每个解被支配的次数和被支配的解集合。 +(3) 侧向车道逼近:对向车辆不断向主车所在车道靠近,占用主车行车空间,横向偏移速度0.2m/s~0.5m/s。 -将未被任何解支配的解归为第一前沿(Front 1)。 +(4) 后方快速超车切入:后车加速超车之后马上回到原来的车道上行驶,速度差为15km/h-25km/h之间,考察主车对多个目标进行跟踪的能力。 -依次处理剩余解,生成第二前沿(Front 2)、第三前沿(Front 3)等。 +(三)行人危险类场景 +在城市道路交通环境中行人是弱势群体,其行为具有很大不确定性以及不可预见性,这对自动驾驶汽车感知造成极大困难,在远距离检测中,由于行人体积小、行进方向多变,在远距离上很难准确定位并且持续跟踪。 -拥挤度计算 -目的:在同一前沿中保持解的多样性,避免聚集。 +(1)行人横穿马路场景 -计算方式: -对每个目标函数,按值排序后计算相邻解的归一化距离,总拥挤度为各目标距离之和。 +行人横穿马路是城市道路中最常见的行人与车辆冲突场景。 -拥挤度 -\begin{equation} - \text{拥挤度}(i) = \sum_{m=1}^{M} \frac{f_m(i+1) - f_m(i-1)}{f_m^{\text{max}} - f_m^{\text{min}}} -\end{equation} +场景描述:主车在城市道路上行驶,行人从路边开始穿过马路到主车前面经过,在斑马线上或者斑马线以外的地方过马路,行人过马路的时间点以及速度都是不确定的。 +本研究主要自变量包括:行人的行走速率(一般步行速度在1.0~1.5m/s之间,而快速奔跑是指2.0~3.0m/s的速度);起始时行人横向偏移的距离;人行横道标志的存在与否;车辆及行人在开始时两者之间的纵向距离。 -选择策略 -精英保留:父代与子代合并后,优先选择前沿等级高的解。 +难点是自动驾驶需要能够准确获取行人当前所在位置以及行人行走状态(包括行进方向及速度等),并据此进行合理预测。而在没有专用人行横道或者视线不佳的情况下(因周围物体遮挡而导致无法看清行人),行人行为突然性和不确定性大大增加,在这种情况下留给司机或者系统的反应时间就会非常短从而大大增加发生事故的可能性。 -多样性维护:同一前沿中,选择拥挤度大的解以保留多样性。 +(2)鬼探头场景 +鬼探头是指行人处于驾驶员视线盲区位置(例如停靠车辆一侧、公交站点或者建筑物拐角等)突然横过马路的情况。鬼探头是发生在城市道路交通环境中的一种高风险事故类型,在可预见性和处理上都有很高的要求,也是最难预防的一种交通事故原因。 -遗传操作 -交叉(Crossover):模拟生物基因重组(如模拟二进制交叉 SBX)。 +情境描述:在一个笔直的道路,在主车正常行驶过程中进入视线不良路段(如有多辆静止的汽车、公交车站、大的广告牌或者街角建筑物等造成视线不良的情况),此时有一个行人迅速穿过道路并且与主车距离很小。 -变异(Mutation):引入随机扰动(如多项式变异)。 - -\begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure2.png} % 调整宽度为文本宽度的80% - \caption{NSGA-II算法流程} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} -\subsection{随机搜索算法设计} -定义参数空间 +本文所关注的问题包括:遮挡物性质(例如,静止车辆、公交站台、建筑物转角等)、遮挡物与目标车道位置关系、行人的起始步行情况(即速度,在1.5-3.0m/s之间变化)以及行人位于可能碰撞点之前距离(在5-15m之间变化)。此外还包括行人经过障碍后的响应时间,也就是行人看不见时到采取下一步动作需要的时间。这些都是一些影响行人过街的因素。 +鬼探头由于其独特属性而受到广泛关注。这个情景主要是指行人未被驾驶员发现时,在一定时间内始终位于视线范围之外。在此期间,行人一般会在障碍物后面突然出现并走向马路,这给司机识别危险带来很大困难。因为车辆从行人出现到采取措施之间的时间很短(一般只有几秒钟),所以在这么短时间内要完成目标检测、路线规划以及避让等工作是非常具有挑战性的。因此这对自动驾驶汽车的环境感知能力和实时反应速度提出了较高要求。 -连续参数:如自车速度(0-120 km/h)、跟车距离(5-50 m)、制动反应时间(0.1-2秒)。 +而这个具体场景又可以进一步划分为不同的情况,静止障碍物后的突现,是停驶车辆后面突然出现的人或者非机动车;动态障碍物导致的闯入,如公交车在公交站台停靠,有乘客从车头前方迅速穿过马路;还有就是隐藏位置的出现。行人出现在建筑物拐角等视线死角处进入人行道。 -离散参数:如天气条件(晴天、雨天、雾天)、道路类型(高速公路、城市道路、乡村道路)、其他车辆行为(正常行驶、突然变道、急刹车)。 +(3) 行人闯红灯场景 -设计评估函数 +在有信号灯控制路口,行人无视交通信号灯横穿人行横道,给正在按照信号灯行驶车辆带来突然危险。 +场景描述:主车在绿灯情况下靠近路口,行人处于红灯状态下由侧面斑马线开始过马路,在主车接近过程中行人有可能会进入主车行驶路线。 -指标选择:碰撞概率(0-1):通过多次仿真计算碰撞发生频率。 +主要因素有:主车接近路口速度(30km/h-50km/h)、行人闯红灯发生时刻(主车距路口10m-30m之间)、行人过马路速度等。 -最小安全距离(米):自车与障碍物之间的最小距离。 +从造成潜在风险原因分析,在绿灯时,驾驶员无法预见到行人违法过马路的情况发生。行人闯红灯是一种典型的难以预料的安全隐患问题,它最大的特点是对于规定、秩序的背离。这时,汽车需要利用先进的智能检测手段及时发现行人危险举动并做出有效的应对方法来保证自身安全。 -避让时间(秒):系统从检测到危险到完成避让所需时间。 +(4) 行人突然折返或停顿场景 -综合评分公式:危险评分=w1×(1−碰撞概率)+w2×最小安全距离+w3×避让时间危险评分=w1​×(1−碰撞概率)+w2​×最小安全距离+w3​×避让时间(权重 w1,w2,w3w1​,w2​,w3​ 需根据专家经验或数据分析确定) +行人行为除了横穿之外还包含横穿过程中突然变向、暂停或者掉头等行为的发生都会使轨迹预测更加困难。 -实现随机采样: +场景描述:主车前方有一个正在横穿道路的行人。行人横过一半时突然停下、犹豫、掉头返回或者改变横穿的方向,造成主车根据之前的预测所采取的措施无效。 -import random +主要影响因素有:折返发生时机(行人横穿到路中间位置处)、折返速度以及主车与行人之间距离等。 -def sample\_parameters(params): +此场景主要考察自动驾驶汽车对行人行为以及行人运动轨迹进行判断与预测的能力。由于行人突然改变行走路线造成轨迹偏移使系统需及时调整最初的预测结果并且重新规划行动方案,这也说明目前的方法难以处理一些突发性和不确定因素较多的情况。 -sampled = {} +(四)多因素耦合类场景 -for key, spec in params.items(): +多因素耦合类场景是同时出现多个极端条件的情况,给自动驾驶带来全方位的压力。如: -if spec['type'] == 'continuous': +(1) 夜间低光照+行人过马路:在夜间低光照情况下,行人不易被发现,而且行人的形体以及动作不易被捕捉,造成一定的困难。 -sampled[key] = random.uniform(*spec['range']) +(2) 雾天+鬼探头:由于浓雾影响有效的探测距离明显变短,在遮挡物后面突然出现行人难以提前发现,可用来做反应的时间更少。 -elif spec['type'] == 'discrete': +(3) 雨天+前车急刹车:由于湿滑路面对刹车制动效果影响较大,而且雨天降低对感知质量要求使得前车刹车灯等预警信号不易被察觉。 -sampled[key] = random.choice(spec['options']) -return sampled -\newpage +\subsection{典型危险场景的确定} +根据以上分类,本文从这10类中挑选出10个有代表性的极端驾驶场景用于生成以及测试的基础场景集,如表\ref{tab:scene_list}所示。场景的选择考虑其代表性、可生成性、可量化性以及多样性\cite{zeng2021autonomous}。 +\begin{table}[htbp] + \centering + \caption{10种典型极端驾驶场景列表} + \label{tab:scene_list} + \begin{tabular}{ccccc} + \toprule + 编号 & 场景名称 & 类别 & 关键参数 & 危险来源 \\ + \midrule + 1 & 大雨天气跟车 & 极端天气 & 降雨量80\%,能见度100m & 感知退化+制动距离增加 \\ + 2 & 浓雾天气巡航 & 极端天气 & 能见度50m & 探测距离受限 \\ + 3 & 夜间城市道路 & 极端天气 & 光照度0.5 lux & 低光照感知挑战 \\ + 4 & 前车紧急制动 & 车辆对抗 & 减速度$-6\mathrm{m/s^2}$,初始距离20m & 突发制动+反应时间 \\ + 5 & 旁车强行加塞 & 车辆对抗 & 切入角度$15^\circ$,切入时间2s & 突然变道+安全距离不足 \\ + 6 & 行人横穿马路 & 行人危险 & 横穿速度1.5m/s,初始距离30m & 行人的不确定性 \\ + 7 & 鬼探头 & 行人危险 & 遮挡物后冲出,纵向距离10m & 感知盲区+极短反应时间 \\ + 8 & 行人闯红灯 & 行人危险 & 主车绿灯,行人红灯横穿 & 违反预期+突发性 \\ + 9 & 夜间行人横穿 & 多因素耦合 & 光照0.5 lux+横穿速度1.5m/s & 低光照+行人不确定性 \\ + 10 & 雾天鬼探头 & 多因素耦合 & 能见度50m+遮挡物后冲出 & 探测受限+感知盲区 \\ + \bottomrule + \end{tabular} +\end{table} \ No newline at end of file diff --git a/critical/undergraduate/content/chapter3.tex b/critical/undergraduate/content/chapter3.tex index 04777c12..afdfa4b4 100644 --- a/critical/undergraduate/content/chapter3.tex +++ b/critical/undergraduate/content/chapter3.tex @@ -1,253 +1,482 @@ -%!TEX root = ../../csuthesis\_main.tex -\chapter{实验流程} +%!TEX root = ../hutbthesis_main.tex +\chapter{基于深度强化学习的极端驾驶场景生成} +\section{DQN算法设计} +\subsection{状态空间设计} +作为强化学习框架的重要组成部分,状态空间的设计对于智能体理解环境以及做出合理选择具有重要影响,在本工作中考虑对抗车辆作为智能主体,在真实世界道路交通环境中需根据实际情况不断改变策略以模拟可能给目标车辆造成危险的情况。为了达到这个目的同时保证系统运行效率以及良好的鲁棒性,本文提出一种五维连续型状态向量表示法。它包括如下几个部分:当前位置、当前车速、前方障碍物的距离、道路弯曲程度以及之前的行为总结等\cite{almahamid2025agile}。 +\begin{equation} +s = \left[ d_{\text{rel}}, v_{\text{rel}}, v_{\text{ego}}, \delta_{\text{lane}}, C_{\text{collision}} \right] +\end{equation} -\section{ChatScene 框架设计} +以下对各分量进行详细说明: -场景生成流程 +(1)相对距离 $d_{\text{rel}}$ -固定场景模式是基于Scenic语言来构建8类基准场景,这些场景涵盖城市道路、高速路、交叉路口等典型交通环境,采用深度强化学习里的软演员 - 评论家(SAC)算法,把碰撞避免、车道保持等当作奖励函数,以此来优化对抗行为参数,模拟复杂交通参与者的交互行为,为自动驾驶系统提供标准化测试场景,动态模式是接收用户自然语言描述,通过API调用GPT - 4o模型,利用它强大的自然语言理解与代码生成能力,将自然语言转化为符合CARLA 0.9.13规范的场景代码,通过设定道路类型、车辆类型、交通规则等约束条件,生成多样化且贴近真实驾驶场景的测试用例\cite{杨学兵2007决策树算法及其核心技术}。 +相对距离为主车与对抗车辆之间的欧式距离,是衡量两车接近程度最直接的参数,在数值上越小说明两者距离越近,发生碰撞的可能性越大,其表达式为: +\begin{equation} +d_{\text{rel}} = \sqrt{(x_{\text{ego}} - x_{\text{adv}})^2 + (y_{\text{ego}} - y_{\text{adv}})^2} +\end{equation} +为了使神经网络可以接受这种形式的数据,在相对距离基础上进行归一化到[0,1]。取最大感知距离是50米,则归一化的公式为: +\begin{equation} +d_{\text{rel}}^{\text{norm}} = \min\left(1.0, \frac{d_{\text{rel}}}{50.0}\right) +\end{equation} -关键模块 +当两车间距大于等于50米时,取值为1.0;当距离小于等于1米时,取值为0.02(留有很小数值防止除以零)。 -环境配置方面是以CARLA0.9.13当作仿真核心运行在Ubuntu系统环境,借助TurboVNC来实现远程可视化从而支持研究人员在不同终端实时观测场景运行状态,同时利用NVIDIA GPU加速渲染以此确保高分辨率和高帧率的场景渲染效果来提升仿真的真实性与流畅性,对抗代理控制方面Scenic负责管理周围车辆的行为逻辑并通过预定义规则与策略模拟不同驾驶风格的交通参与者,RL模型专门控制自我车辆并通过与环境交互学习优化驾驶决策以在对抗性场景中实现安全高效的驾驶行为\cite{曾星2018基于深度传感器的坐姿检测系统}。 +(2)相对速度 $v_{\text{rel}}$ -\subsection{流程} +相对速度表示两辆车之间的距离变化情况,是预测未来发生碰撞的重要指标,在数学上它是对抗车辆的速度与本车速度之差。 +\begin{equation} +v_{\text{rel}} = v_{\text{adv}} - v_{\text{ego}} +\end{equation} -场景选择训练(train\_scenario模式)使用run\_train.py脚本调用场景优化流程。以脚本示例命令为例: +(3)主车速度 $v_{\text{ego}}$ -python scripts/run\_train.py --agent\_cfg=adv\_scenic.yaml +主车行驶速度对发生碰撞及后果起着重要作用,在相同相对位移情况下,车辆行驶速度与其制动距离成正比关系,从而决定了可能发生碰撞的风险大小以及采取应急措施的效果,其取值范围从0到100km/h,然后进行线性变换映射到[0,1]用于后续研究使用。 +\begin{equation} +v_{\text{ego}}^{\text{norm}} = \min\left(1.0, \frac{v_{\text{ego}}}{100.0}\right) +\end{equation} ---scenario\_cfg=train\_scenario\_scenic.yaml --mode train\_scenario --scenario\_id 1 +(4)车道偏移量 $δ_{\text{lane}}$ -其中adv\_scenic.yaml为智能体配置文件,train\_scenario\_scenic.yaml为场景配置文件,可指定样本数量(sample\_num)、优化步长(opt\_step)等参数。该步骤将从预定义场景和行为集中采样多个场景,并根据碰撞等指标选出最具挑战性的场景。 +车道偏离量是衡量目标车辆横向偏离情况的一个重要参数,用来判断其是否有变道意图,在目标车辆纵坐标方向上相对于所在车道几何中心线的距离即为其大小,数值越大说明车辆越偏离原行驶轨迹并且有可能马上进行转向或者越过车道边界。为了便于比较和分析,将其缩放至[0, 1]之间:如果等于0说明车辆处于车道中间;如果接近1说明车辆已经接近一条车道边沿,一般对应实际车道宽度约为3.5m处。 +\begin{equation} +\delta_{\text{lane}}^{\text{norm}} = \min\left(1.0, \frac{|y_{\text{adv}} - y_{\text{lane}}|}{3.5}\right) +\end{equation} -\begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure3.png} % 调整宽度为文本宽度的80\% - \caption{打开carla仿真平台} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} +(5)碰撞标志 $C_{\text{collision}}$ +作为一种二元逻辑变量,碰撞标志用以表示上一时间片是否出现过碰撞情况。它可以给智能体提供直接负反馈信息,使其改善自身躲避障碍物方法以及改善运动规划结果。该变量只有两种取值,即0或者1:0表示无碰撞;1表示有碰撞。 +\begin{equation} +C_{\text{collision}} \in \{0, 1\} +\end{equation} -智能体训练(train\_agent 模式):对在第一阶段选出的对抗性场景进行RL训练。调用示例如下: +状态向量在每次仿真过程中不断更新并被送入DQN网络。所有的连续部分都被上述归一化方式归一化到一个固定范围以便使神经网络学习更加鲁棒、快速地收敛。 +\subsection{动作空间设计} +行动域指出了对抗性车辆可以采取的一系列操作方式,而它对智能体的行为多样性以及学习效果有着重要影响,在基于深度强化学习的Q-learning算法中偏好产生离散的动作选择,在此本文把对抗性车辆的操作转化为一个由五个基本动作组成的离散集合。 -python scripts/run\_train.py --agent\_cfg=adv\_scenic.yaml +(一)动作类型定义 ---scenario\_cfg=train\_agent\_scenic.yaml --mode train\_agent --scenario\_id 1 +五个离散动作的具体定义如表~\ref{tab:dqn_action_space}所示。 +\begin{table}[htbp] + \centering + \caption{DQN离散动作空间定义} + \label{tab:dqn_action_space} + \begin{tabular}{ccccc c} + \toprule + 动作索引 & 动作名称 & 油门 & 刹车 & 转向 & 物理含义 \\ + \midrule + 0 & 保持 & 0.0 & 0.0 & 0.0 & 匀速 \\ + 1 & 加速 & 0.6 & 0.0 & 0.0 & 超车 \\ + 2 & 减速 & 0.0 & 0.5 & 0.0 & 急刹 \\ + 3 & 左变道 & 0.3 & 0.0 & $-0.4$ & 左转 \\ + 4 & 右变道 & 0.3 & 0.0 & $0.4$ & 右转 \\ + \bottomrule + \end{tabular} +\end{table} -此处使用与场景选择阶段同样的adv\_scenic.yaml配置文件,以及 +(二)动作设计原则 -train\_agent\_scenic.yaml场景配置(包含从第一阶段得到的最难场景信息)。训练过程中,使用前8条固定路线进行训练(其余2条用于测试),以提高智能体在这些高风险场景下的表现。 +上述动作空间的设计遵循以下三个基本原则: +第一条基本原则是建立一套完整的行为规则体系,在设计上需要考虑一般驾驶场景下重要的方面,比如加速、减速以及转向等功能模块。并且利用多种方式的交互,提高智能体对于复杂的路况有更好的反应能力和更快的速度做出决定的能力。 -\begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure4.png} % 调整宽度为文本宽度的80\% - \caption{进入场景} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} +第二条基本原则主要讨论了离散化粒度选择应具有合理性和适当性的问题。如果粒度过小,会造成动作维度过多,大大增加模型学习难度以及所需时间;而如果粒度过大,则会影响智能体做出准确的行为选择。因此,在此工作中采用五个基础动作进行研究,在保证一定表示能力的情况下尽可能得到较好的学习效果。 +第三条基本原则注重真实性,在此基础上的动作参数也是根据汽车动力学进行调整,符合实际情况的操作方式。比如在变道时,把油门值设为0.3可以避免传统模型中出现的速度突变问题;同时把最大转角限定在±0.4rad这个范围之内也符合一般驾驶员的正常操作习惯,大大提高了仿真的准确性和真实性。 +(三)动作执行机制 -评估模式(eval 模式):在训练后,对训练好的智能体进行测试评估。调用示例如下: +在每一轮仿真过程中,智能体会根据当前所使用策略产生一系列的动作,在CARLA平台上通过VehicleControl API将这些抽象的动作转化为具体的操作(油门、刹车以及打方向等)由于仿真环境本身存在时间的概念,一般需要用固定的帧率来运行以保证时间的一致性,在这里本文采用每秒钟20帧作为仿真的帧率,因此每一个动作实际执行所需要的时间大约为0.05s,在一定程度上提高了离散动作的反应速度同时也减少了它对于流畅性的负面影响。 -python scripts/run\_eval.py --agent\_cfg=adv\_scenic.yaml +(四)动作空间与对抗行为的对应关系 ---scenario\_cfg=eval\_scenic.yaml --mode eval --scenario\_id 1 --test\_epoch -1 +以上一系列动作组合可以使智能体进行各种危险驾驶方式。 -其中eval\_scenic.yaml定义了评估场景(通常为与训练不同的路线),test\_epoch指定加载的模型检查点(-1表示使用最终训练模型)。评估过程中统计碰撞、路线完成等指标。 +前车急刹:连续执行减速动作,产生较大的负加速度。 +加塞:在有足够空间时,“左/右变道”,插入前车前面。 +逼近威胁:持续执行加速动作,逐步缩小与主车的距离。 +\subsection{奖励函数设计} +在强化学习框架下,奖励函数是影响智能体行为演化的重要因素,而奖励函数的设计质量决定了最终得到的智能体决策的质量优劣问题。基于以上考虑,本文针对对抗性的道路交通环境的需求,提出了一种可以产生并且鼓励那些对目标车辆造成严重威胁的极端驾驶情况的奖励函数\cite{salau2025deep}。 -\begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure5.png} % 调整宽度为文本宽度的80\% - \caption{进入评估场景} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} +根据以上的目标,在此本文提出一个多分量组合奖励函数,它是由以下几个部分构成。 +(一)危险度奖励 $R_{\text{danger}}$ +作为一个重要组成部分,危险性评估模块对主车的安全起到决定性作用,在本课题中采用碰撞时间(Time to Collision, TTC)来衡量危险的程度,即在当前相对运动状态下,两辆车或者多辆车之间发生碰撞所需要的时间,数值越小说明在短时间内受到撞击的可能性越大,从而使得整个系统的安全性大幅下降。 -动态语言驱动场景(dynamic模式):首先将描述转录到 +TTC计算方法在第二章已经介绍,在此不再赘述。而根据TTC大小进行危险度奖励也是用一段函数表示: +\begin{equation} +R_{\text{danger}} = +\begin{cases} ++10.0, & TTC < 1.0\,\text{s} \\ ++5.0, & 1.0\,\text{s} \le TTC < 2.0\,\text{s} \\ ++1.0, & 2.0\,\text{s} \le TTC < 3.0\,\text{s} \\ +0, & TTC \ge 3.0\,\text{s} +\end{cases} +\end{equation} -retrieve/scenario\_descriptions.txt,运行python retrieve.py,生成对应的Scenic场景脚本文件。然后使用run\_train\_dynamic.py脚本启动场景优化或训练,例如: +(二)碰撞惩罚 $R_{\text{collision}}$ -python scripts/run\_train\_dynamic.py --agent\_cfg=adv\_scenic.yaml +在对抗性情况下,如果目标车和自身发生碰撞,则该次交互视为非法而结束,在此基础上,还会给到智能体一个较强的负面反馈来起到制约效果,这个惩罚力度以及其取值是由设计者根据一定标准设定并可适当改变的。 +\begin{equation} +R_{\text{collision}} =-20.0 +\end{equation} ---scenario\_cfg=dynamic\_scenic.yaml --mode train\_scenario +这个数值绝对值远远大于危险度奖励最大值(10.0)以使智能体在面临危险接近以及发生碰撞之间进行比较时总是倾向于避开碰撞。 -这里dynamic\_scenic.yaml用于指定动态生成场景的配置,脚本会在线检索或调用LLM生成新的场景并进行训练。 +(三)车道偏离惩罚 $R_{\text{lane}}$ +为了避免对抗车辆驶出可行驶范围或者进入逆向车道,降低场景的真实性以及合理性,在对抗车辆偏移车道中心线一定距离后对其进行轻微惩罚: +\begin{equation} +R_{\text{lane}} = +\begin{cases} +-1.0, & \delta_{\text{lane}} > 0.8 \\ +0, & \text{其他} +\end{cases} +\end{equation} -\begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure6.png} % 调整宽度为文本宽度的80\% - \caption{调整相关环境参数} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} +此车道偏离距离量化的设计参数有明显的导向作用,主要目的是起到引导作用而不是限制作用。柔性约束,即在一定条件下(例如紧急避险时)适当超出也是允许的。 + +(四)速度维持奖励 $R_{\text{speed}}$ + +为了避免对抗车辆完全停止或者以较低速度移动较长时间(这种情况不符合“极端驾驶”目的),给予速度奖励使智能体有适当移动。 +\begin{equation} +R_{\text{speed}} = +0.11 \times \min\left( \frac{v_{\text{adv}}}{20.0}, 1.0 \right) +\end{equation} + +其中,速度v是用每小时千米来表示汽车行驶速度。而这个激励有以下特点:随车速增加而增加奖励,在一定范围内呈饱和状态并且最大值为0.1;当车速小于等于20公里每小时时候,奖励会按比例减少,使智能体能够控制自身速度。但是相比于可能出现惩罚力度来说,这个奖励太高,所以很明显它主要目的是避免发生交通事故。 + +(五)总奖励函数 + +总奖励函数为上述各分量的加权和: +\begin{equation} +R = R_{\text{danger}} + R_{\text{collision}} + R_{\text{lane}} + R_{\text{speed}} +\end{equation} + +本研究采取等权重分配方法,在各个评估因素上不设置特定权重,而是根据它们所占比例确定它们的重要性。其中,风险程度得分为最高10分;碰撞事件扣除最低2分;车道偏离扣除1分;最佳车速给予每提高0.1分奖励。这样可以使得系统更注重对于危险情况处理能力的同时也考虑对于可能发生冲突预警能力和良好驾驶行为。 +\subsection{引入注意力机制对DQN的优化} +注意力机制(Attention Mechanism)最早来源于人类视觉系统的信息处理方式。人在观察场景时,并不会对全部视觉信息进行同等处理,而是会有选择地把注意力集中在关键区域,同时忽略部分无关信息。借助这种选择性关注机制,人类能够在复杂环境当中更加高效地获取关键信息。在深度学习领域,注意力机制已经被广泛运用于自然语言处理以及计算机视觉任务,并且显著提高了模型性能。 + +注意力机制的核心思想在于:为输入特征中的不同部分分配不同权重,使模型能够重点关注更重要的信息,同时抑制无关信息以及噪声信息。其数学表达形式可以概括为:给定查询(Query)、键(Key)和值(Value)三个矩阵后,注意力函数会先计算查询与各键之间的相似度,从而得到对应的注意力权重,再将权重与对应值进行加权求和,最终得到注意力输出: +\begin{equation} +\text{Attention}(Q, K, V) = \text{softmax}\left( \frac{QK^T}{\sqrt{d_k}} \right) V +\end{equation} + +其中,$d_k$ 表示键向量维度,主要用于缩放处理,避免点积数值过大导致梯度饱和。该缩放点积注意力机制也是Transformer模型的重要组成部分,并且已经被证明具备优异的特征提取能力。 + +在深度强化学习任务中,智能体需要从高维状态空间当中提取关键特征来完成决策。传统DQN采用全连接网络对状态向量进行处理,各状态维度被同等对待,缺少对关键特征的筛选能力。引入注意力机制后,可以有效弥补这一不足,使智能体能够动态关注与当前决策关系最密切的状态信息,从而提高学习效率以及决策质量。 +注意力机制引入后,预计能够为DQN带来以下几个方面的优势: +(一)增强关键特征的提取能力 -\section{ASIL-Gen 场景优化与分类} +在极端驾驶场景生成任务中,状态向量不同维度的重要程度会随着场景变化而变化。例如在跟车场景中,相对距离以及主车速度属于关键因素;在变道场景中,车道偏移量的重要性会进一步提高;而在鬼探头场景中,碰撞标志以及相对速度应占据更高权重。借助注意力机制,可以动态地为不同状态维度分配权重,使智能体根据当前场景聚焦最相关的信息,进而提高决策准确性。 +(二)提升样本效率和收敛速度 -在基础场景模板的基础上,利用脚本自动化生成13类场景变体,涵盖动态障碍物交叉、无信号路口冲突、恶劣天气下跟车等复杂情况,每个变体通过对障碍物位置、速度、交通流量等参数进行调整,形成多样化测试场景,全面覆盖自动驾驶系统可能面临的风险工况。 +通过更加有效地提取状态特征,注意力机制能够减少训练过程所需样本数量。实验预期表明,相较于标准 DQN,Attention-DQN 可以在更少训练回合内完成收敛,样本利用效率预计提高约20%~30%。这一优势在计算资源受限条件下具有较高的实际意义。 +(三)增强对噪声的鲁棒性 -NSGA-II采用碰撞概率与场景复杂度当作双目标函数,碰撞概率是通过预测车辆行人等交通参与者运动轨迹来计算,场景复杂度会综合考虑交通参与者数量、道路拓扑结构以及环境干扰因素等指标,利用NSGA-II算法去搜索帕累托前沿,筛选出既具有高风险价值又具备代表性的场景,随机搜索是随机生成场景参数组合作为基线方法,通过对比NSGA-II算法和随机搜索在目标函数上的表现,验证NSGA-II在场景优化方面的优越性\cite{national2008integrated}。 +在极端天气场景当中,传感器数据可能受到噪声干扰。注意力机制借助加权求和方式,可以在一定程度上降低噪声维度带来的影响,从而使模型具备更强的环境扰动抵抗能力。预计在浓雾、大雨等场景下,Attention-DQN 相较标准 DQN 能够表现出更好的稳定性以及整体性能。 +\section{PPO算法设计} +\subsection{DQN算法的局限性分析} +在本文第实验部分DQN算法应用于极端驾驶场景生成的效果进行分析的同时也对其对于车辆对抗情况下的风险处理能力进行了考察。但随着研究进一步发展,该方法存在的问题也逐渐暴露出来主要有以下几点。 -ASIL 分类 +(一)离散动作空间的表达受限 -依据 ISO 26262 标准,基于暴露频率(Exposure)、可控性(Controllability)与严重性(Severity)三个维度,构建量化评估模型计算安全等级。通过专家打分与数据统计相结合的方式,确定各维度权重,将场景划分为 ASIL-A、ASIL-B、ASIL-C、ASIL-D 四个安全等级,为自动驾驶系统的风险评估提供标准化依据。 -环境配置: +基于DQN算法产生的动作具有较强的离散性。本文所设计的目标物体控制命令映射到包括五个基础动作类型(即维持原状、加速前行、减速停止、向左侧变道以及向右侧变道)的离散动作集中,在一般情况下能够较好地完成相关工作。但是当遇到一些较为复杂的路况时,比如鬼探头事故模拟这类对精度有较高要求的任务时,则会表现出明显的不足之处。因为行人入侵距离需要达到厘米级别精度,但是传统的DQN算法所使用的离散化的方法无法实现如此高的精度。而在实际生活中汽车行驶的过程是一个连续变化的过程,包括油门大小、方向盘转动的角度以及刹车力度都可以在一定范围之间自由变化,这样一种离散化的对应关系会导致一部分重要的细节被忽略或者扭曲。 +(二)确定性策略的探索能力有限 +传统的ε-贪心算法在深度强化学习中的应用主要是选择当前状态下具有最大Q值得动作再附加一定比例的小概率随机探索实现开发与探索之间的权衡。虽然由于其实现较为简洁而被广泛使用,但是也存在一些缺点,在一些复杂或者变化较大的环境中,其缺点就体现出来了,比如在极端恶劣天气下,只有靠ε-贪心是不能很好地覆盖所有情况,从而导致学习效果不佳以及学到的方法不够鲁棒。 -\subsection{具体流程} +(三)训练稳定性问题 -1.环境配置和准备: +虽然DQN通过目标网络以及经验回放的方法提高了算法的鲁棒性,但是仍存在高估动作的价值以及在训练过程中振荡的问题。而从训练轨迹来看,在雾霾等环境中,虽然DQN得到每一轮次累计奖励趋于平稳,但是其仍具有较大的波动性,说明目前所使用的策略并不是最优。 +\subsection{引入PPO算法} +为了解决以上不足之处,本文使用PPO优化。相比于DQN,PPO有以下几点改进: -先决条件和设置: -CARLA Simulator: -从 carla-simulator/carla 安装 CARLA。 -Scenario Runner: -从 carla-simulator/scenario\_runner 安装 CARLA Scenario Runner。 +(一)连续动作空间支持 -安装 Python 依赖项(如果需要): -确保已安装 (适用于 NSGA-II) 和其他标准库。numpy;pandas;deap +作为强化学习一个重要方向,策略梯度方法(例如Proximal Policy Optimization, PPO)由于可以直接对概率分布进行优化,在处理连续动作空间的问题上有着明显的优势。本文将目标车的动作命令视为一个连续的量:油门踏板的位置限定在[0, 1]之间,方向盘的角度位于[-0.5, 0.5]范围内,制动踏板的压力大小也处于[0,1]之内。相比于传统的离散动作的选择方式,这样的连续的动作更有利于提高对抗任务上的效率以及灵活性,也能做到更加细腻的操作,比如渐进式的改变行驶路线或者是逐渐地完成变道动作等。这在很大程度上改善了以往基于固定的离散动作集来进行的深度强化学习所存在的弊端\cite{fei2023improved}。 -2.环境配置 +(二)随机策略增强探索能力 +一种基于概率分布进行策略求解的方法论,PPO由于产生多个动作选择而不是固定的动作执行方案,在同一状态下智能体的行为具有更高的不确定性和多样性,这有利于增加可选策略范围以及设计更多样化、更极端情况,在模拟极端情况下,加入的随机性可以使本文更好地了解各种罕见或者边缘情况进行下的互动方式,使仿真更加真实。 +(三)剪切机制保障训练稳定 + +利用目标函数剪枝方法可以使得PPO算法更好地控制策略参数的变化量,在一定程度上防止由于一次更新过大而导致整体性能下降的问题,而且也提高了模型对环境以及鲁棒性和健壮性,同时也大大降低了奖励信号的波动程度并且解决了传统的Q-learning容易出现局部最优或者震荡问题。 +\subsection{PPO算法的网络结构与奖励重塑} +(一)Actor-Critic网络架构设计 + +基于Actor-Critic框架的PPO算法有两个主要部分,即Actor网络以及Critic网络,在这两个网络之间进行合作以得到一个较好的策略并不断改善它。具体的网络结构如图~\ref{fig:ppo_network_structure}所示\cite{yan2024ppo}。 \begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure7.png} % 调整宽度为文本宽度的80\% - \caption{环境配置} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 + \centering + \includegraphics[width=0.8\textwidth]{figure_3.png} + \caption{PPO网络结构图} + \label{fig:ppo_network_structure} \end{figure} -3.运行场景 +(1)Actor网络(策略网络) + +Actor网络接收一个五维的状态向量并产生在连续动作空间中的概率分布的重要参数作为输出。不同于传统的基于固定大小的动作集做出选择的方法,在这里本文使用Actor网络来处理连续动作问题,希望它能产生可以代表动作分布的一些东西。这些输出包括两个部分: + +动作均值μ:一个三维向量,表示油门、刹车、转向这三个动作上的中心点;动作标准差σ:也是一个三维向量,用来决定动作采样的范围大小。 + +在训练过程中,策略网络产生的动作的概率分布被建模成对角高斯分布,即认为每一个动作都是一个相互独立的随机变量并且各自符合一个独立的高斯分布,在此基础上采样得到具体的动作。 +\begin{equation} +a \sim \mathcal{N}(\mu, \sigma^2) +\end{equation} + +(2)Critic网络(价值网络) + +本文提出的Actor-Critic结构首次把Actor网络和Critic网络的一部分层合并成一个共享部分,在最后输出处进行分工,有以下优点:第一,由于参数共享大大减少模型中的参数数量,降低过拟合的风险;第二,一致的状态表示有利于提高特征表示能力和鲁棒性;第三,共享特征信息可以互相促进,加速收敛并且有利于策略优化和价值估计的合作,从而提升整个效果。 + +本模型以一个五维的状态向量为输入并产生一个标量作为输出,也就是在这个状态下应用这个策略所获得的期望长期累积奖励。这个输出表示的是在这个状态下采取某种动作之后将来得到回报的一个平均估计。 +\begin{equation} +V(s) = \mathbb{E}\left[ \sum_{t=0}^{\infty} \gamma^t r_t \mid s_0 = s \right] +\end{equation} + +这个因素是算法设计中的一个重要因素,在算法中起着至关重要的作用,它用来表示目标行为的表现和预期目标之间的差距并且用于评价一个模型的好坏,在训练时,它是一个需要最小化的量,尽量让预测结果和实际回报之间的差距变小而改变参数值,在基于策略梯度的强化学习方法中(例如Proximal Policy Optimization, PPO),价值网络的损失一般使用均方误差(Mean Squared Error, MSE)。 +\begin{equation} +L^{VF}(\phi) = \frac{1}{T} \sum_{t=1}^{T} \left( V_\phi(s_t) - \hat{R}_t \right)^2 +\end{equation} + +其中是从时间步t开始的真实累计奖励,是 critic 网络所估计的值。 + +(3)网络层级参数设置 + +网络各层的具体参数配置如下: + +输入层:5个神经元,接收归一化后的状态向量; + +第一隐藏层:128个神经元,使用ReLU激活函数,输出维度128。 + +第二个隐藏层:128个神经元,使用ReLU作为激活函数,输出维度为128。 + +Actor输出层:6个神经元(3个均值+3个标准差),使用tanh激活函数使均值在一定范围内。 -python scenario\_runner.py --scenario ChangeLane\_1 --reloadWorld +Critic输出层:一个神经元,无激活函数,直接输出标量值。 +在设计神经网络结构上,要兼顾模型效果以及计算成本。实验结果显示,设置128个隐藏层神经元可以很好地拟合状态-动作之间的关系,同时也能较好地避免过拟合现象并且加快训练速度。本文使用ReLU作为激活函数,因为其具有速度快、传梯度好等优点,能很好地解决传统的激活函数容易出现的梯度消失的问题。 +(二)连续动作空间建模 + +相比于 Deep Q-Network(DQN) 算法,Proximal Policy Optimization(PPO) 算法更适用于解决连续动作空间的问题,这也是 PPO 最大的优点,在第三章中本文将对抗车辆的操作指令简化成五个不同的状态,虽然这可以大大增加问题求解的可能性,但是也减少对于一些细微之处的关注。而本文提出了一种新的方法,在此基础上进一步提出了用三维连续向量来表示对抗车辆的动作参数,这样就可以极大地提高对于复杂情况的反应速度以及控制能力。 +\begin{equation} +\mathbf{a} = \left[ a_{\text{throttle}}, a_{\text{brake}}, a_{\text{steer}} \right] +\end{equation} + +各维度的物理含义及取值范围如下: + +油门开度是一个位于[0,1]之间实数值,用来表示汽车加速度大小,在油门开度为0时,说明司机已经把油门完全松开,这时汽车主要是靠自身惯性来降低速度;而在油门开度为1时,则是把油门踩到底,使汽车具有最大加速度。不同于DQN只能给出离散选择,采用PPO(Proximal Policy Optimization)算法强化学习可以得到连续实数值,这有利于更精准控制发动机扭矩以及提高整个自动驾驶过程舒适性和效率。 + +制动力度在[0,1]范围内取值,该值表示汽车减速程度。即数值为0表示制动不起作用,数值为1时表示已经施加最大制动力,一般情况下这将导致ABS起作用。为了模拟紧急制动情况,在程序中使用一个可变制动力度进行制动操作,从开始时较小制动力度(如0.3)逐渐增加到较大制动力度(如0.8),相比于一般强化学习所使用的固定减速率方法,这种方法更加符合实际情况同时也对目标检测车辆避险提出更高要求。 + +当转向角度位于[-0.5, 0.5]区间时,该参数主要作用是控制汽车左右移动,不同数值改变会对变道以及转向产生较大影响,负数为向左打方向,正值为向右打方向,数值越大说明方向盘转动程度越大,即绝对值等于0.5时为最大转向角度(约25°),0.1为较小的方向盘转动量。 + +不断改变转向角度可以使汽车具有良好的横向可控性,在车队行驶时,采用逐渐增加的方式进行变道并且避免使用一个固定的转向角度,这样可以提高操作的平滑性和自然性以及对前车的行为进行预测的难度。 + +与DQN的5个离散动作相比,连续动作空间具有三大显著优势: + +最大的优势就是具有很强的高精度运动控制的能力,在对比离散的操作方式下,连续的动作空间可以对加速度以及转向力度进行微调并且利用平滑过度来形成流畅的动作轨迹,在仿真车辆插入车队的过程中,使用经过PPO算法训练得到的结果可以产生从0.3到0.6逐渐增加的油门命令,这更符合人真实的开车缓慢加油的感觉;而用DQN算法的传统方法只能给出固定大小的动作响应,无法做到平滑过度,使得动作生硬。 + +第二个明显的优势,是在行为表示上更加自然真实,利用连续控制,可以做到动作连贯流畅,避免了DQN算法由于动作离散而带来的阶梯效应,在现实驾驶中,驾驶员的动作往往是逐渐变化的过程,比如油门踏板力度从小到大不断增大,方向盘的角度也是从小到大逐渐变化,根据这个特点所设计出的连续的动作序列更贴近现实生活中的驾驶情况,因此也就让仿真环境更加逼真同时也提高了它作为评价工具的能力。 + +第三个优点是策略集合具有更大的多样性和灵活性。相比于传统的DQN算法仅使用固定的五种动作,基于连续动作空间的PPO算法可以在油门、刹车以及转向等各个方面进行参数的变化,得到更多样化的动作序列。而这样做的好处就是可以更好地对环境建模并且也能更早地发现可能出现的问题。 + +(三)奖励函数重塑 + +在强化学习框架下,奖励函数起到至关重要的作用,它决定了智能体对于某种行为学习的效果及效果的好坏,在PPO中使用平滑奖励代替DQN中的原始奖励,该奖励是为了解决连续动作空间问题而提出的,可以使动作更加流畅、稳定的同时也可以避免出现较大或者不稳定的情况发生,这也正是PPO的一个亮点之处。 +\begin{equation} +R_{\text{smooth}} = -0.1 \times \| a_t - a_{t-1} \|_2 +\end{equation} + +上述公式中用、分别表示当前时刻以及上一时刻的动作向量,而使用的是欧几里得范数计算两者之差值大小。这个奖励是为了让模型注意到相邻两个时间点之间行为的变化情况,在两者差距很大时给予较大的负奖励。由于欧几里得范数考虑多个维度的动作参数共同作用,因此这样做可以更全面地反映一个行为序列的整体趋势以及它们之间的关系而不只是某个方面。 + +平滑奖励旨在让智能体产生连贯并且有动态的行为序列,使它更自然地与外界进行交互,在交通场景切换的任务上,这个奖励可以使智能体以逐渐增加速度以及缓慢改变方向的方式进行操作,避免了之前那种突然加速、减速还有大幅度转方向的情况发生,这大大提升了模拟的效果并且也为之后将生成的数据转换成符合OpenSCENARIO标准格式做了一个很好的铺垫工作因为连续轨迹比离散轨迹更容易理解也更精确。 + +根据实验所得结果,在本文中取平滑系数为0.1。而这个参数的选择既要考虑两方面的要求:首先,如果太大,则会造成智能体过于谨慎甚至趋于停滞而不愿意去探索新事物的情况发生;其次,如果太小,又会使得系统对于一些突发性事件反应迟钝。当相邻两个时间段的动作差值达到预先设定的最大值(0.5)时,就给这个动作打上一个负反馈(-0.05),这个负反馈的程度相对于奖励中的最大值(10分)来说是十分微小的一个分数,但是也起到一定的约束作用并且有一定的余地。 +\section{算法场景生成实现} +\subsection{算法生成流程} +这一节将介绍一种基于深度强化学习的方法(以DQN算法为例)来生成极端驾驶场景的过程,在此过程中利用CARLA仿真环境并且在同步模式下进行以保证每个时间步之间的一一对应关系,具体过程如图~\ref{fig:dqn_generation_flow}所示。 \begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure8.png} % 调整宽度为文本宽度的80\% - \caption{进入仿真场景} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 + \centering + \includegraphics[width=0.8\textwidth]{figure_4.png} + \caption{算法流程图} + \label{fig:dqn_generation_flow} \end{figure} -输出数据保存在outputs文件生成.json文件 +步骤一:环境初始化 + +然后运行CARLA仿真器,连接至服务器,加载所需地图,在表2不同场景下所对应的参数进行配置。 +步骤二:车辆生成与传感器配置 +本研究设有两个主要对象:主导车辆、竞争者车辆,并对它们赋予不同的功能。主导车辆根据预先设定的速度控制方法进行工作,未进行智能化优化;而竞争者车辆则是基于DQN算法来进行自己的判断。主导车辆、竞争者车辆之间的距离在开始之前就已经固定下来,在发生突然刹车的情况下,竞争者车辆需要保持与主导车辆相距大约20米。竞争者车辆内部有碰撞检测器,用来时刻观察是否有即将发生的事故,在有事故发生时可以停止任务。 + +步骤三:状态获取与动作选择 + +在每次仿真过程中,需从CARLA仿真环境中获取目标车辆以及其可能碰撞的对象的主要信息并用预先定义的形式表示成五维状态,为了使该算法具有较好的鲁棒性和稳定性,对这五个状态变量进行标准化处理之后再送入到DQN中,然后用ε-贪心法产生具体的动作,在开始的时候可以将ε设为1.0以便让网络更好的学习,当经过一段时间的学习以后再将ε降低到0.01,这样可以让网络慢慢学会选择更好的行为。 + +步骤四:动作执行与环境更新 + +根据所选择的离散化方法(取值范围从0到4),定义一个映射函数来给出对车辆(油门、刹车以及方向舵)的操作命令并通过CARLA仿真平台的车辆控制系统将其下发给目标车辆,在设定的规则下进行主车的动作,利用仿真器进行多次循环仿真。每一轮过后,要更新所有的物体的位置信息以及其他属性,并把当前的环境情况以及交互结果返回出去。 + +步骤五:回合终止判断 + +当满足以下任何一个条件,本局结束:两辆车相撞、达到最大步数或者汽车离开道路边界,在一局结束后,把所有汽车的位置以及状态清零,进行新的一轮训练。 + +步骤六:.xosc场景文件输出 + +经过训练得到的生成对抗网络(GAN)生成的数据需要转化为符合ASAM 的OpenSCENARIO标准的场景描述文件(.xosc)并以XML形式保存,在此文件中有若干重要组成部分。 + +文件头标明所使用OpenSCENARIO标准规范版本。主体是参数声明节,在此可以设置场景运行中需要改变的一些重要参数,如目标车辆初始速度、战斗车辆初始速度、起始位置距离和触发事件阈值等,利用这种模块化方法,可以方便地组合不同参数方案以满足各种功能测试的不同测试要求。 +\subsection{算法生成结果} +为深入分析优化后的Attention-DQN和平滑奖励的PPO(以下称Smooth-PPO)算法在不同类型场景上的表现差异,本研究从四类场景中各选取一个典型代表进行详细分析:极端天气类选取暴雨天跟车场景,车辆对抗类选取前车紧急制动场景,行人危险类选取行人横穿马路场景,耦合场景类选取雾天鬼探头场景。 + +(一)暴雨天跟车场景分析 +训练过程对比结果如图~\ref{fig:rainy_following_results}所示,其中左图表示奖励曲线,右图表示评估结果。横轴为训练轮次(Episode),纵轴为每100轮计算得到的滑动平均奖励值(Avg Reward),主要用于反映算法学习效率以及策略稳定性。 \begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure9.png} % 调整宽度为文本宽度的80\% - \caption{输出数据} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 + \centering + \includegraphics[width=0.8\textwidth]{figure_5.png} + \caption{暴雨天跟车场景训练结果对比} + \label{fig:rainy_following_results} \end{figure} -4.场景选择(优化算法) +Smooth-PPO(橙色曲线) -NSGA-II: +在整个训练过程中,Smooth-PPO 始终保持较为稳定的上升趋势,奖励值由初始阶段约93.5逐步提高至102以上,仅在第5轮附近出现轻微波动,整体未出现明显震荡。 -cd ASIL-Gen NSGA; -python NSGA\_choice.py +该算法表现出更快的收敛能力,在第3轮时奖励值便已突破100,并在后续训练中持续提升,最终稳定保持在较高区间。这表明算法在连续动作空间内具有更好的稳定性,同时在探索与利用之间能够保持更加合理的平衡。 -python "ASIL/ASIL.py" \ +Attention-DQN(蓝色曲线) ---input selected\_nsga.json \ +Attention-DQN 的训练过程呈现出明显的先升后降特征。前5轮训练期间,奖励值由88逐步增长至101.5的峰值;但从第6轮开始出现明显下降趋势,并最终降至81以下。 ---output nsga\_asil\_levels.json +后期奖励持续衰减,说明该算法在复杂暴雨场景下存在一定程度的策略退化现象,难以在湿滑路面条件下持续保持稳定跟车行为,同时对于长期状态依赖关系的建模能力相对不足。 -python "ASIL/ASIL\_percentages.py" \ +综合分析:依靠连续动作空间中的稳定控制能力以及更高效的探索机制,Smooth-PPO 在暴雨跟车场景中展现出了明显优势。不仅能够实现零碰撞目标,同时还可稳定保持安全车距,因此更加适用于极端天气条件下的驾驶场景。 ---input nsga\_asil\_levels.json \ +(二)前车紧急制动场景分析 ---output nsga\_asil\_distribution.csv +训练结果如图~\ref{fig:emergency_braking_results}所示,对比显示Attention-DQN 的奖励曲线整体呈现持续增长趋势。奖励值从初始接近0开始,在第2轮快速提升至20左右并短暂保持稳定,随后继续增长,最终在第10轮达到72以上。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_6.png} + \caption{前车紧急制动场景训练结果对比} + \label{fig:emergency_braking_results} +\end{figure} +整体训练过程较为平稳,没有出现明显震荡现象,表明算法能够较快捕捉前车急刹场景中的关键特征,例如车距变化以及制动时机等信息,并不断优化对应的应急跟车策略。 +相比之下,Smooth-PPO 的训练过程表现出前期停滞、后期快速增长的特点。在前8轮训练期间,奖励值基本维持在接近0的水平,学习进展较小;直到第8轮之后才开始明显上升,最终达到约11的奖励水平。 -\begin{figure}[h] % 图片浮动环境 - \centering % 居中对齐 - \includegraphics[width=0.48\textwidth]{figure10.png} % 第一张图片 - \hfill % 添加水平填充 - \includegraphics[width=0.48\textwidth]{figure11.png} % 第二张图片 - \caption{NSGA-II和随机算法的结果} % 整个图片的总标题 - \label{fig:side} % 整个图片的标签 -\end{figure} +整体来看,其学习效率明显低于 Attention-DQN,这说明算法在处理突发离散事件时探索效率相对有限,难以快速建立有效的紧急制动策略。 +综合分析:两种算法在安全性能方面存在明显差异。Smooth-PPO 实现了较低碰撞率以及较高安全完成率,而 Attention-DQN 在场景测试中碰撞率较高、安全完成率偏低,说明其难以有效应对前车急刹等突发情况,应急制动策略未能发挥预期效果。 +从危险等级指标来看,Attention-DQN 的危险等级达到3.0,属于高风险水平;而 Smooth-PPO 为2.0,处于中低风险区间,进一步体现出两种算法在突发制动场景下的安全性能差距。 +虽然 Attention-DQN 在训练阶段表现出较高学习效率,奖励值持续提升,但最终仍未能避免碰撞发生。这说明其策略存在一定过拟合现象,仅学习到部分表面特征,并未真正形成可靠的应急制动能力。 -\section{讨论与未来工作} -\subsection{优势与局限} +虽然 Smooth-PPO 前期学习速度较慢,但在策略收敛后表现出了更强的安全性能,能够在全部测试场景中避免碰撞,并维持较大的安全车距,因此更加适用于前车急刹等高危险突发场景。 -优势: +(三)行人横穿马路场景分析 -ChatScene 动态场景生成优势深化​: +训练结果如图~\ref{fig:pedestrian_crossing_results}所示,Attention-DQN 与 Smooth-PPO 的训练曲线基本重合,说明两种算法在该场景中的平均奖励水平保持一致。结合右侧评估指标可以发现,虽然最终均实现安全避让,但 Attention-DQN 的训练过程缺少明显学习趋势,策略优化过程并不突出。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_7.png} + \caption{行人横穿马路场景训练结果对比} + \label{fig:pedestrian_crossing_results} +\end{figure} -ChatScene的自然语言驱动动态场景生成有着强大技术支撑,背后体现出灵活性和效率优势,在实际应用里针对复杂交通状况描述,像“早高峰时段城市主干道上因交通事故致道路拥堵,公交车为避让障碍物突然变道,后方私家车紧急刹车”,ChatScene能快速解析语义精准提取“早高峰”“主干道”“交通事故”“公交车变道”“私家车刹车”等关键信息并迅速生成对应场景,和传统手动构建场景相比其时间成本可降低70,在基于强化学习的固定场景优化方面,SAC算法通过不断与环境交互学习能极为细致地模拟交通参与者行为\cite{程娟2019基于梯度提升决策树的高速公路行程时间预测模型},以环岛交通场景为例,算法可精确模拟不同驾驶员环岛行驶时决策差异,比如有的驾驶员会提前打转向灯示意,有的则会根据周围车辆速度灵活调整进入环岛时机,这种精准模拟为自动驾驶系统应对复杂环岛路况的测试提供了有力保障。​ +Smooth-PPO 的奖励曲线则始终稳定保持在66左右,没有出现明显波动或持续增长现象。这说明算法在行人横穿场景下能够快速完成策略收敛,并在整个训练阶段持续保持稳定性能。 +曲线整体较为平稳,也反映出算法对该场景具备较强适应能力,能够快速掌握避让行人的关键策略,而无需经历复杂探索过程。 -ASIL-Gen 评估优势细化: -​ -ASIL - Gen评估优势进一步细化,ASIL - Gen所引入的NSGA - II多目标优化算法,在筛选高风险场景的时候展现出卓越科学性与高效性。通过把碰撞概率、场景复杂度、交通参与者交互程度等多个指标纳入优化目标,能够在海量的场景数据当中快速定位到最具测试价值的场景。就像在一次模拟测试里,该算法从10000个候选场景之中,仅用传统随机搜索方法五分之一的时间,就筛选出300个ASIL - D等级的高风险场景\cite{段文强0基于用户行为序列的网络购买行为预测},大幅提升了测试的效率。它的量化评估模型以数据作为基础,对场景风险进行客观的评估。在实际应用过程中,对于一些难以直观判断风险等级的场景,例如“乡村道路上,视线不佳的弯道处,突然出现横穿的家禽”,量化评估模型能够结合家禽出现的频率、弯道的曲率、车辆的行驶速度等因素。准确评估出该场景的风险等级,为自动驾驶系统的安全测试提供科学依据 。​ +综合分析:在行人横穿场景中,Attention-DQN 与 Smooth-PPO 表现出了相同的安全性能,两者均能够实现零碰撞以及较高安全完成率,各项量化指标基本一致。 +总体来看,两种算法都能够较好应对行人突然侵入道路等场景,并展现出可靠的安全避让能力。 -协同架构优势强化​: +(四)雾天鬼探头场景分析 -ChatScene和ASIL - Gen协同配合达成从场景生成到安全评估全流程闭环,实际测试里ChatScene生成场景可直接进入ASIL - Gen评估体系,ASIL - Gen对场景评估结果又能反馈给ChatScene用于优化场景生成,比如当ASIL - Gen发现某个生成场景风险评估结果较低时ChatScene可依反馈调整生成参数,通过增加场景复杂性和危险性不断优化测试场景,这让自动驾驶测试能覆盖更多边缘情况和极端场景使测试深度和广度显著提升\cite{chen2016xgboost} 。 +训练过程对比如图~\ref{fig:foggy_overtake_results}所示,Attention-DQN的训练曲线未能完整呈现,这表明算法在大雾低能见度场景中未形成明显奖励变化,其学习过程并不完整,策略优化趋势也难以追踪。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_8.png} + \caption{雾天鬼探头场景训练结果对比} + \label{fig:foggy_overtake_results} +\end{figure} +结合评估指标来看,虽然最终能够完成安全避让,但训练过程中并未体现出针对雾天复杂环境的适应性学习特征,其策略可能更多依赖减速或停车等简单行为,而非针对低能见度风险进行主动预判。 -局限: +Smooth-PPO的训练曲线则始终保持在较高奖励水平附近,没有明显波动或增长趋势。这说明算法能够在大雾鬼探头场景中快速收敛到稳定策略,并在训练全过程保持一致性能。 -ChatScene 动态模式局限: +曲线的稳定性体现出算法对于低能见度复杂环境具备更强适应能力,能够较快掌握减速、风险预判以及避让等关键策略,无需进行大量探索即可获得较好效果,同时展现出良好的环境鲁棒性。 -ChatScene动态模式依赖GPT - 4o所带来的问题不只是逻辑错误和规则不符情况,语言模型在处理模糊表述或者文化背景差异较大场景描述时也易出现理解偏差,就像不同地区对交通标志解读和使用习惯存在差异,当用户用带地方特色语言描述场景时GPT - 4o可能无法准确理解进而生成错误场景代码,调用成本高和响应延迟问题在大规模测试场景下表现得尤为突出,以一个自动驾驶企业的一次全面测试为例,若要生成10000个不同场景进行测试,使用ChatScene动态模式仅调用GPT - 4o的费用就高达数万元,并且由于响应延迟整个测试周期被拉长了近一周 。严重影响了测试进度和效率。​ +综合分析:在雾天鬼探头这一复合危险场景下,Attention-DQN 与 Smooth-PPO 最终均实现了较好的安全表现。 +但从训练过程来看,Smooth-PPO 的收敛速度更快,训练稳定性也更强,能够较快适应低能见度环境并形成稳定避让策略;而 Attention-DQN 的训练曲线并不完整,缺乏针对雾天环境的明显学习过程,其策略在复杂环境中的鲁棒性仍有待提高。 -ASIL-Gen 评估局限: +总体而言,两种算法都能够有效应对大雾条件下的突发行人侵入场景,具备较好的安全避让能力,但 Smooth-PPO 在复杂环境中的训练稳定性以及适应能力表现更加突出。 -ASIL -Gen的评估标准是依据现有交通规则和静态场景参数来制定的,所以在面对新兴交通场景时就显得有些应对乏力,在车路协同环境当中,车辆和道路基础设施之间进行实时信息交互会产生全新交通模式和安全风险,就像路侧单元向车辆发送前方道路施工预警信息,车辆依据信息做动态路径规划与速度调整,现有的评估标准没办法对这种复杂交互场景做全面准确评估,对于动态交通流变化情况,ASIL - Gen同样缺乏有效的评估手段\cite{师圣蔓2019基于机器学习的网络流量预测与应用研究},在实际交通运行里,交通流会受突发事件、天气变化、时间因素等多种因素影响而产生动态变化,比如一场突如其来的暴雨也许会造成道路积水,进而引发交通拥堵和车辆行驶行为改变,而ASIL - Gen目前没办法实时捕捉和评估这些动态变化所带来的安全风险。 +\section{Attention-DQN 与 Smooth-PPO 的算法联系分析} +\subsection{从 Attention-DQN 到 Smooth-PPO稳定性的演进} +Attention-DQN 与 Smooth-PPO 最核心的技术联系在于,两者都致力于解决强化学习训练稳定性以及决策鲁棒性问题,同时在网络结构设计、策略输出方式以及约束机制方面形成了逐步演进关系。从 Attention-DQN 到 Smooth-PPO 的优化过程,体现出深度强化学习算法面向极端驾驶场景时对精度、平滑性以及安全性的持续提升。 -\subsection{未来方向} +(一)Attention-DQN 的稳定性方案:注意力机制 + 经验回放 + 目标网络 -融合多模态输入,增强场景真实性: +Attention-DQN 在标准 DQN 基础上引入注意力模块,增强对相对距离、TTC、车道偏移等关键危险特征的聚焦能力,并保留经验回放与目标网络保证训练稳定:注意力机制动态加权状态维度,提升关键危险信息的感知效率;经验回放打破样本时序相关,提升离散动作学习的稳定性:目标网络延迟更新,避免Q值估计震荡与过估计问题。 Attention-DQN 的稳定性提升依赖特征优化与数据层面优化,属于间接稳定手段,在连续控制与湿滑路面、低能见度等复杂场景下仍存在动作跳变、策略波动等不足。 +(二)Smooth-PPO 的稳定性方案:剪切策略更新 + 动作平滑约束 -多模态数据融合架构升级,未来的多模态融合将采用分层级的时空对齐架构 +Smooth-PPO 继承了 PPO 算法的核心思想,直接从策略更新阶段对训练稳定性进行约束,同时新增动作平滑奖励机制。 -原始数据层着手构建传感器同步采集系统,以此实现激光雷达、摄像头、毫米波雷达等传感器微秒级时间戳同步,就像采用IEEE 1588精确时间协议(PTP),把各传感器时钟同步精度控制在±100ns以内,特征提取层致力于开发多模态特征融合网络,比如基于Transformer的Cross - modal Attention Network,该网络能够自动学习不同传感器特征间的关联权重,以雾天场景为例,自动提升毫米波雷达点云特征权重并降低摄像头图像特征权重,场景重建层引入神经辐射场(Neural Radiance Fields,NeRF)技术,将多模态特征融合到连续的3D场景表示当中,借助隐式神经表示可生成任意视角的逼真场景渲染,包括光照变化、动态物体运动等细节\cite{靳小波0基于机器学习算法的文本分类系统}。 +该算法采用 PPO 剪切目标函数,对新旧策略之间的更新幅度进行严格限制,从而避免策略崩坏问题;支持连续动作空间,可直接输出油门、制动以及转向等连续控制值,使控制行为更加契合车辆动力学特征;同时引入平滑奖励,对动作突变行为进行惩罚,使生成的对抗车辆行为更加自然,场景表现也更加真实。 +借助策略约束、动作约束以及奖励约束三重机制,Smooth-PPO 从根本上改善了 Attention-DQN 在极端驾驶场景中动作生硬以及训练波动较大的问题。 -动态环境模拟技术 +(三)核心联系:面向危险场景的稳定决策与高效学习 -物理引擎进行深度整合,把CARLA物理引擎和多模态数据相结合,以此实现更真实的物理交互模拟,举例来说,模拟车辆碰撞的时候,不仅能够生成视觉效果,还能借助物理引擎计算碰撞力、车辆变形量等物理参数,将其反馈给自动驾驶系统的动力学模型。天气与光照模拟器方面,开发基于物理的天气模拟器,精确模拟雨、雪、雾等天气条件下的光学特性和传感器响应,比如在模拟暴雨场景时,不仅会改变视觉效果,还会调整激光雷达点云的衰减率、毫米波雷达的反射强度等参数。 +两种算法虽然实现方式不同,但共同目标都是在高风险驾驶环境下生成稳定、有效且可复现的对抗行为。 +Attention-DQN 实现了由传统被动学习向关键特征重点感知的提升,而 Smooth-PPO 则进一步完成了从离散决策向连续平滑控制的过渡。二者共同构成了从基础强化学习算法到工程化可应用算法的发展路径。 -高精地图语义增强 +\subsection{目标函数的数学关联} +Attention-DQN 与 Smooth-PPO 在目标函数设计上具有明显的递进关系与互补特征,体现出价值学习与策略学习之间的内在联系。 -动态语义信息融合是把高精地图里静态语义如车道线类型和交通标志与实时动态信息像施工区域和临时交通管制相结合,例如在高精地图检测到道路施工时自动在生成场景中添加施工标志和锥形桶等障碍物并调整交通规则约束,知识图谱构建是基于高精地图数据构建交通知识图谱将道路元素、交通规则和驾驶行为等信息进行结构化表示,通过知识推理机制可生成更符合逻辑的场景如根据路口类型自动推断可能的交通参与者行为\cite{ke2017lightgbm}。 +(一)Attention-DQN:基于贝尔曼方程的价值优化,Attention-DQN 以 Q 值学习作为核心,通过最小化 TD 误差来完成价值函数拟合(见公式3)。 +其主要目标是学习状态—动作价值函数,并利用贪心策略完成动作选择,因此属于典型的价值驱动方法。 -扩展 ASIL 分类标准,纳入高德 MapDR 驾驶规则: +(二)Smooth-PPO:基于策略梯度的剪切优化,Smooth-PPO 则直接对策略概率分布进行优化,并采用剪切目标函数对策略更新过程进行约束(见公式4)。 +与此同时,还加入平滑奖励机制来限制动作变化幅度,因此属于策略驱动与安全约束相结合的方法。 -(一)规则语义解析与量化技术 +(三)数学层面的内在联系 -语义解析框架方面采用基于BERT的规则解析模型来对MapDR里自然语言规则进行深度语义理解,比如对于规则“在设有掉头标志的路口,红灯亮时允许掉头”模型能解析出“掉头标志存在”“红灯状态”“允许掉头”等关键要素并转化成逻辑表达式,规则量化方法方面开发规则违反度计算模型把规则违反行为进行量化评分,例如对于“限速60km/h”的路段车辆行驶速度为70km/h时违反度可通过公式计算。(70-60)/60×100\%=16.7\%,并根据违反度动态调整 ASIL 等级\cite{刘彧祺2019基于}。 +价值与策略互补:Smooth-PPO 中的优势函数At本质依赖价值估计,与 Attention-DQN 的 Q 值具有数学一致性; +稳定性目标一致:Attention-DQN 的目标网络与 Smooth-PPO 的剪切机制,都是通过限制更新幅度实现稳定训练; -(二)动态风险评估模型里的时空风险场模型是构建基于时空维度的风险场模型,把MapDR的实时交通信息转化成连续的风险分布,在交通拥堵场景当中,风险场强度和车流密度、速度方差等参数相关,可借助高斯混合模型进行建模,因果推理机制是引入因果图模型分析风险因素间的因果关系,避免单纯相关性带来的误判,比如在雨天场景里,路面湿滑是导致事故风险增加的直接原因,车速过快是间接原因,通过因果推理能更准确地评估风险 +危险导向统一:两者奖励函数均以 TTC、碰撞风险、安全距离为核心,目标都是生成高真实性极端驾驶场景。 +\subsection{联系与区别的总结} +两种算法之间的联系:均面向极端驾驶场景设计,以生成危险对抗行为为目标;均采用多维度状态空间(相对距离、相对速度、车道偏移等);均以安全性、收敛性、场景真实性为优化方向;最终均可输出符合 OpenSCENARIO 标准的.xosc 场景文件。 -(三)跨场景规则泛化的元学习框架采用Model - Agnostic Meta - Learning (MAML)算法,让评估模型能够快速适应新场景的规则,例如从城市道路切换到乡村道路场景时,模型可通过少量样本快速学习并应用乡村道路的特殊规则像牲畜横穿风险,对抗训练机制是设计规则对抗训练框架,通过生成对抗网络 (GAN) 模拟不同地域的驾驶习惯和规则差异\cite{zhang2014multi}。例如,生成具有地方特色的驾驶行为样本,训练评估模型的鲁棒性。 +区别:Attention-DQN 基于离散动作空间,决策粒度较粗,易出现动作跳变;Smooth-PPO 基于连续动作空间,控制更平滑精准; +Attention-DQN 为确定性策略,探索能力有限;Smooth-PPO 为随机策略,场景多样性更强; -(四)验证与评估方法 -混合验证架构方面要建立“形式化验证 + 统计验证”的混合验证体系,对于安全关键规则像紧急制动采用形式化验证方法以确保百分百合规,对于复杂场景则采用统计验证方法来评估系统可靠性,风险覆盖率指标方面要提出风险覆盖率 (Risk Coverage Rate, RCR) 指标用于衡量 ASIL 分类标准对 MapDR 规则的覆盖程度,其计算公式为 RCR 等于已覆盖规则数除以总规则数再乘以百分百,并且要通过持续更新规则库来提高覆盖率。 +Attention-DQN 依靠注意力与经验回放提升稳定性;Smooth-PPO 依靠策略剪切与平滑奖励实现更强稳定性; +在暴雨、雾天、鬼探头等高难度场景中,Smooth-PPO 的收敛速度、安全完成率与综合危险分数均显著优于 Attention-DQN。 +整体而言,Smooth-PPO 在 Attention-DQN 的基础上完成了从感知优化到控制优化、从离散决策到连续控制、从基础稳定到极致鲁棒的三重升级,更适用于复杂、动态、高风险的极端驾驶仿真场景生成任务。 \ No newline at end of file diff --git a/critical/undergraduate/content/chapter4.tex b/critical/undergraduate/content/chapter4.tex index f325dc78..337f322c 100644 --- a/critical/undergraduate/content/chapter4.tex +++ b/critical/undergraduate/content/chapter4.tex @@ -1,146 +1,237 @@ -\chapter{优化算法验证} -\section{场景生成与优化效果} +\chapter{危险场景运行实验与.xosc文件输出} +\section{10种场景生成效果分析} +\subsection{极端天气类场景生成效果} +(一)大雨天气跟车场景 -基准对比:NSGA-II vs. 随机搜索 vs. 人工设计场景库(行业基准) +如图\ref{fig:rainy_chase}在大雨天气跟车场景中,主车以45km/h的速度行驶,对抗车辆位于主车前方约20米处。降雨量设置为80\%,能见度约100米。经Smooth-PPO算法训练后,对抗车辆学会了在保持安全的前提下逐渐缩小跟车距离的策略。最终生成场景中,最小TTC降至1.9秒,危险成功率达到82\%。与Attention-DQN相比,Smooth-PPO生成的跟车距离变化更加平滑,避免了距离的剧烈波动。 -评估指标: +(二)浓雾天气巡航场景 -覆盖率:ASIL-D场景占比、场景参数分布熵 +如图\ref{fig:foggy_cruise}在浓雾天气下能见度设置为50米,主车以50km/h速度巡航。Smooth-PPO算法在该场景中展现出良好的鲁棒性,能够在能见度受限的条件下有效逼近主车。生成场景的最小TTC为2.0秒,危险成功率为79\%。值得注意的是,Smooth-PPO的随机策略使其在浓雾环境中具有更强的适应性,收敛速度较Attention-DQN提升约36\%。 +\begin{figure}[htbp] + \centering + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_9.png} + \caption{暴雨跟车效果图} + \label{fig:rainy_chase} + \end{minipage} + \hfill + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_10.png} + \caption{大雾跟车效果图} + \label{fig:foggy_cruise} + \end{minipage} +\end{figure} + +(三)夜间城市道路场景 + +在夜间场景中,如图\ref{fig:nighttime_road}车辆行驶于双向两车道的城市沥青道路,路侧设置连续的人行道隔离桩、行道树与路灯,构成了典型的夜间城市道路环境。低光照条件大幅降低了车载摄像头的有效感知距离与目标识别精度,而路侧行道树、隔离桩等静态障碍物则进一步遮挡了前方视野,对车辆的环境感知与风险预判能力提出了极高要求。 + +场景的核心挑战在于:在光照不足的影响下,自动驾驶车辆需提前识别潜在风险并做出平稳、安全的决策。这一设置有效验证了算法在复杂夜间环境下的鲁棒性,为评估不同算法在低能见度城市道路中的安全驾驶能力提供了高仿真的测试环境。 + +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_11.png} + \caption{夜间行车效果图} + \label{fig:nighttime_road} +\end{figure} -风险性:平均碰撞风险、最小安全距离极值 -效率:单位时间有效场景发现数(场景/小时) -\begin{table}[htb] - \centering - \small - \renewcommand{\arraystretch}{1.1} - \caption{NSGA-II、随机搜索与人工设计场景库的性能对比} - \label{tab:baseline_comparison} - \resizebox{0.95\linewidth}{!}{ - \begin{tabular}{c|c|c|c|c|c} - \hline - 算法 & ASIL-D占比 (\%) & 参数熵 (bits) & 平均碰撞风险 & 最小安全距离极值 (m) & 效率 (场景/小时) \\ - \hline - NSGA-II & 45 & 6.7 & 0.73 & 0.8 & 620 \\ - \hline - 随机搜索 & 39 & 4.2 & 0.58 & 1.5 & 850 \\ - \hline - 人工设计库 & 15 & 3.1 & 0.41 & 2.3 & 120 \\ - \hline - \end{tabular} - } -\end{table} -核心结论: +\subsection{对抗车辆类场景生成效果} -NSGA-II的ASIL-D场景发现率是高于随机搜索,高于人工库的 +\begin{figure}[htbp] + \centering + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_12.png} + \caption{前车紧急制动效果图} + \label{fig:emergency_braking} + \end{minipage} + \hfill + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_13.png} + \caption{旁车强行加塞效果图} + \label{fig:lane_change} + \end{minipage} +\end{figure} -参数熵指标显示NSGA-II生成场景的多样性显著优于对比方法(p<0.01,Mann-Whitney U检验) +(一)前车紧急制动场景 -随机搜索在效率上占优,但其发现的高风险场景多集中于单一模式(如急刹场景占比82\%) +前车紧急制动是测试主车反应能力的经典场景。如图\ref{fig:emergency_braking}对抗车辆需要在主车接近时触发紧急制动,以最小化主车的安全距离。Smooth-PPO算法学习到了渐进式制动策略,制动过程分为预警制动、持续压缩和极限增强三个阶段,使TTC呈现平滑下降形态。与Attention-DQN的触发式急刹相比,Smooth-PPO生成的制动曲线更加平滑,对抗行为更加真实自然,接近人类驾驶中的点刹操作,能够在保持高危险度的同时有效控制碰撞风险。 -\section{超参数选择的验证} +(二)旁车强行加塞场景 +在强行加塞场景中,如图\ref{fig:lane_change}对抗车辆需要从相邻车道切入主车前方。Smooth-PPO学习到了加速接近→平滑变道→适度减速的完整动作序列,油门变化呈现平滑的先升后降形态,转向角度从零逐渐增加至最大值后回正,形成典型的松油转向操作模式。与Attention-DQN的离散动作导致的阶梯状突变相比,Smooth-PPO的连续动作序列使加塞行为更加平滑自然,动作之间的时序协同性更好,更符合真实驾驶习惯。 -多因子实验设计 -采用正交实验法(L9正交表)分析NSGA-II的4个关键参数: -因子:种群规模(50/100/200)、进化代数(30/60/90)、交叉概率(0.6/0.7/0.8)、变异概率(0.1/0.2/0.3) +\subsection{行人危险类场景生成效果} +(一)行人横穿马路场景 -响应变量:Hypervolume指标、计算耗时 +行人横穿马路是城市道路中最常见的行人与车辆冲突场景。如图\ref{fig:crossing_road}主车需要准确检测行人位置、判断横穿方向并预测其轨迹。Smooth-PPO算法的随机策略使行人智能体能够探索更丰富的触发时机,在不同回合中以可变的横穿速度通过道路,增加了主车轨迹预测的难度。与Attention-DQN固定速度、固定时机的横穿行为相比,Smooth-PPO生成的行人行为具有更强的多样性和不确定性,能够更全面地检验自动驾驶系统对行人意图的感知和预测能力。 -结果分析 +(二)行人闯红灯场景 +行人闯红灯场景中,行人在红灯状态下横穿斑马线,打破了主车对交通规则的预期。如图\ref{fig:crossing_red_light}主车在绿灯通行时,通常难以预判行人的违规行为。Smooth-PPO算法学习到的策略能够精确控制闯红灯行为的触发时机,使行人出现在主车行驶路径上的时刻与主车到达路口的时机高度吻合。 \begin{figure}[htbp] - \centering - % 使用占位符代替实际图像 - \includegraphics[width=0.8\textwidth]{figure14.png} - \caption{超参数对Hypervolume的影响(标准化回归系数)} - \label{fig:hyperparam} + \centering + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_14.png} + \caption{行人横穿马路效果图} + \label{fig:crossing_road} + \end{minipage} + \hfill + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_15.png} + \caption{行人闯红灯效果图} + \label{fig:crossing_red_light} + \end{minipage} \end{figure} -关键发现: +(三)鬼探头场景 -种群规模对Hypervolume影响最大(β=0.63),但边际效益递减(200 vs 100仅提升7\%) +鬼探头是行人危险类场景中最具挑战性的场景。如图\ref{fig:ghost_appearance}行人从视野盲区突然冲出,在出现之前完全处于主车的感知盲区之中。Smooth-PPO算法通过连续动作空间实现了触发距离的精确控制,使行人冲出的时机能够与主车位置精确匹配,最大程度压缩主车的反应窗口。 + +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_16.png} + \caption{鬼探头效果图} + \label{fig:ghost_appearance} +\end{figure} -进化代数超过60代后优化增益不显著(ΔHV<1.5\%) -最优参数组合:种群100 + 代数60 + 交叉0.7 + 变异0.2(验证集HV=0.812) +\subsection{多因素耦合场景生成效果} +(一)夜间行人横穿场景 -\section{消融实验} +夜间行人横穿场景结合了低光照条件和行人横穿双重挑战。如图\ref{fig:nighttime_crossing}在夜间低光照环境下,行人轮廓和运动难以清晰捕捉,检测难度显著增加。Smooth-PPO算法在能见度受限条件下仍能有效控制对抗行为,生成的行人横穿行为在主车感知能力下降的窗口期内精准触发。与Attention-DQN相比,Smooth-PPO的连续动作空间使行人的横穿速度和触发时机可连续调节,能够充分利用光照不足造成的感知延迟,生成更具威胁性的场景。该场景对自动驾驶系统在夜间环境下的感知能力和反应速度提出了严峻考验。 -为了系统评估 NSGA-II 多目标优化框架中各关键组件的作用,我们设计了一组消融实验,依次移除核心模块以观察其对算法性能的影响。具体实验设置如下: +(二)雾天鬼探头场景 + +雾天鬼探头是全部场景中挑战性最高的类型,同时包含浓雾环境的感知困难和行人盲区冲出的突发性双重因素。如图\ref{fig:foggy_ghost_appearance}浓雾条件下有效探测距离大幅缩短,行人从遮挡物后方冲出时更加难以提前预警。Smooth-PPO算法在该场景中展现出最强的鲁棒性,通过精确控制行人冲出的触发距离和冲出速度,使主车首次感知到行人时的可用反应时间被压缩至极短的范围。与Attention-DQN相比,Smooth-PPO的随机策略使行人冲出时机具有更强的灵活性,能够在不同回合中生成多样化的危险模式;连续动作空间则使触发距离的控制精度大幅提升,能够稳定在最优触发区间内。该场景对自动驾驶系统的感知召回率、决策实时性和控制精度提出了全方位的要求,是检验系统极限能力的重要测试用例。 +\begin{figure}[htbp] + \centering + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_17.png} + \caption{夜间行人横穿效果图} + \label{fig:nighttime_crossing} + \end{minipage} + \hfill + \begin{minipage}{0.45\textwidth} + \centering + \includegraphics[width=\linewidth]{figure_18.png} + \caption{雾天鬼探头效果图} + \label{fig:foggy_ghost_appearance} + \end{minipage} +\end{figure} + +\section{生成场景的.xosc文件输出} +\subsection{.xosc文件的生成方法与流程} +OpenSCENARIO是ASAM(自动化及测量系统标准协会)制定的自动驾驶仿真场景描述标准,采用XML格式定义动态交通场景。本研究采用Python编程语言结合开源库scenariogeneration进行.xosc文件的自动生成。该库提供了完整的OpenSCENARIO XML构建接口,支持场景参数化定义和批量生成\cite{yu2021openscenario}。整体生成流程如图~\ref{fig:xosc_generation_flow}所示。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_19.png} + \caption{.xosc文件生成流程图} + \label{fig:xosc_generation_flow} +\end{figure} -Baseline(完整 NSGA-II):包括非支配排序(Non-dominated Sorting)、拥挤度计算(Crowding Distance Calculation)和精英保留策略(Elitism Preservation)。 +(1)训练结果与轨迹参数获取: -Ablation 1:移除拥挤度计算,仅保留非支配排序。 +首先,从强化学习模型(Attention-DQN/Smooth-PPO)的训练输出中,提取主车与对抗车辆的完整仿真轨迹数据,包括车辆状态、控制指令与交互行为序列,为场景构建提供基础数据。 -Ablation 2:移除精英保留策略,即下一代个体不包含当前种群中表现最优的解。 +(2)状态 / 行为 / 环境参数提取: -Ablation 3:用加权求和的单目标函数替代多目标优化机制。 +对轨迹数据进行解析,提取构建场景所需的核心参数:包括交通参与者的初始状态(位置、速度、朝向)、动态行为(加速、制动、转向)、交互触发条件(如车距阈值、时间节点)以及环境参数(天气、光照、路面状态)。 -各模型在三个性能维度上进行了评估: -Hypervolume (HV) 作为衡量解集质量的指标,ASIL-D占比反映高安全等级场景的发现能力,参数熵用于衡量生成场景的多样性。 +(3)模板构建与 XML 结构生成: -\begin{table}[htbp] - \centering - \caption{消融实验结果对比} - \begin{tabular}{llll} - \hline - 模型变体 & Hypervolume & ASIL-D占比 (\%) & 参数熵 (bits) \\ - \hline - 完整NSGA-II & 0.812 & 45.0 & 6.7 \\ - \hline - Ablation 1 & 0.734 & 39.0 & 4.8 \\ - \hline - Ablation 2 & 0.681 & 30.0 & 5.2 \\ - \hline - Ablation 3 & 0.598 & 17.3 & 3.6 \\ - \hline - \end{tabular} -\end{table} +基于 ASAM OpenSCENARIO标准,以预定义的场景模板为基础,将提取的参数填入对应的 XML 节点中,构建完整的场景结构,包括实体定义、行为序列、触发条件与环境配置。 -拥挤度计算对解集多样性的关键作用 -移除拥挤度计算(Ablation 1)后,参数熵由 6.7 降至 4.8,下降约 28.4\%,表明解的分布范围缩窄,模型在搜索空间中的覆盖能力降低。此外,ASIL-D 占比下降了 6 个百分点(从 45.0\% 降至 39.0\%),说明高风险场景的识别能力也受到影响。 +(4).xosc 文件输出: -精英保留策略对高质量场景发现的促进作用 -Ablation 2 中移除精英保留导致 ASIL-D 占比进一步下降至 30.0\%,相比完整模型降低了 15\%,显示精英策略在保留高价值解方面具有显著优势。多样性(参数熵)也略有下降,但不如拥挤度影响显著。 +将构建完成的 XML 结构格式化输出,保存为符合规范的.xosc文件,文件中包含场景的所有定义信息,可直接被主流仿真工具解析。 -多目标优化的必要性 -Ablation 3 使用单目标加权求和替代原有的 Pareto 优化策略,导致 Hypervolume 降至 0.598,ASIL-D 占比最低,仅为 17.3\%。结果表明该方法在处理多目标权衡时能力有限,无法有效挖掘高安全等级场景。 +(5)场景验证与 CARLA 仿真复现: -与随机搜索对比 -随机搜索的 ASIL-D 占比为 39.0\%,虽然接近于 Ablation 1,但在没有优化机制支持下,稳定性与整体解集质量(HV 与熵)显著低于完整 NSGA-II。 -\section{可视化结果和分析} -\subsection{NSGA-II和随机搜索算法结果分析} +最后,将生成的.xosc文件导入 CARLA 模拟器中进行加载与运行,验证场景的可复现性与逻辑正确性,确保生成的场景能够在仿真环境中按预期执行。 +\subsection{.xosc文件实现} +以 ASAM OpenSCENARIO 1.2 为标准,预定义 XML 模板 template.xosc,采用 \texttt{\{\{key\}\}} 占位符标记动态字段,\texttt{\{\{\#section\}\}}...\texttt{\{\{/section\}\}} 标记条件块。模板包含 FileHeader、ParameterDeclarations、RoadNetwork、Entities、Storyboard 等核心标签。 +本文使用旁车加塞的.xosc文件为例,对文件的实现进行说明。 + +(一)文件头 + +如图~\ref{fig:xosc_header}所示,声明所遵循的OpenSCENARIO标准版本号,以及文件的创建工具和描述信息。这是XML文件的起始部分,确保后续内容符合标准规范。 \begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure12.png}%调整宽度为文本宽度的80% - \caption{ASIL等级分布柱状图} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} -\subsection{NSGA-II算法的Pareto前沿解集} -展示了 NSGA-II 算法选出的 Pareto 前沿解集,用于智能驾驶危险场景筛选中的两个关键优化目标: + \centering + \includegraphics[width=0.8\textwidth]{figure_20.png} + \caption{.xosc文件头示例} + \label{fig:xosc_header} +\end{figure} -目标 1(X轴):最小安全距离,越大越好(表示更安全)。 +(二)参数声明 + +如图~\ref{fig:xosc_parameters}所示,定义场景中可调节的关键参数变量,如主车速度、对抗车辆速度、初始相对距离、触发阈值等。通过参数声明机制,用户可以批量修改参数值,快速生成同一逻辑场景下的多个具体实例,便于参数化测试。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_21.png} + \caption{.xosc文件参数声明示例} + \label{fig:xosc_parameters} +\end{figure} -目标 2(Y轴):碰撞风险,越小越好(表示更低风险)。 +(三)道路网络 +如图~\ref{fig:xosc_road_network}所示,指定场景所依托的地图文件(OpenDRIVE格式的.xodr文件),定义道路的几何拓扑和车道结构。该部分确保场景中的车辆运动符合道路物理约束。 \begin{figure}[htbp] - \centering - \includegraphics[width=0.8\textwidth]{figure13.png}%调整宽度为文本宽度的80% - \caption{NSGA-II算法选出的Pareto前沿解集} % 自动编号(如"图1:") - \label{fig:example} % 用于交叉引用 -\end{figure} + \centering + \includegraphics[width=0.8\textwidth]{figure_22.png} + \caption{.xosc文件道路网络示例} + \label{fig:xosc_road_network} +\end{figure} + +(四)实体定义 + +如图~\ref{fig:xosc_entities}所示,声明场景中所有参与的交通参与者,包括主车、对抗车辆、行人等。每个实体需指定其车辆模型(如audi.a2、tesla.model3)、类型以及初始绑定关系。 +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_23.png} + \caption{.xosc文件实体定义示例} + \label{fig:xosc_entities} +\end{figure} + +(五)故事板 + +\begin{figure}[htbp] + \centering + \includegraphics[width=0.8\textwidth]{figure_24.png} + \caption{.xosc文件故事板示例} + \label{fig:xosc_storyboard} +\end{figure} + +如图~\ref{fig:xosc_storyboard}所示,场景描述的核心部分,定义场景的动态行为逻辑。故事板由多个行为单元(Act)组成,每个行为单元包含若干操作(Maneuver)和事件(Event),通过触发条件(Condition)来控制实体的动作执行时序。 + + + + + -\newpage +\subsection{场景文件的复用价值} +生成的.xosc文件具有以下应用价值: +(一)跨平台兼容性:.xosc文件符合ASAM OpenSCENARIO国际标准,可在CARLA、VTD、rFpro等主流仿真平台中直接加载运行,无需进行格式转换,便于不同研究团队之间的场景共享和结果复现。 +(二)参数化测试能力:通过修改参数声明部分,可以批量调整场景中的关键参数,快速生成同一逻辑场景下的多个具体实例,显著提升测试效率。 +(三)测试用例标准化:生成的.xosc文件可作为标准化的测试用例库,用于自动驾驶系统的批量回归测试,确保测试结果的可对比性和可复现性。 +(四)算法性能验证:生成的.xosc文件可以分享给其他团队,用于算法性能的横向对比验证,有助于建立统一的场景基准集。 diff --git a/critical/undergraduate/content/chapter5.tex b/critical/undergraduate/content/chapter5.tex index 15e78fbd..8e3d63a2 100644 --- a/critical/undergraduate/content/chapter5.tex +++ b/critical/undergraduate/content/chapter5.tex @@ -1,49 +1,30 @@ -%!TEX root = ../../csuthesis\_main.tex +%!TEX root = ../hutbthesis_main.tex \chapter{总结与展望} \section{总结} -自动驾驶汽车技术的发展需要科学测试体系来提供支持,虚拟仿真测试是解决封闭和开放道路测试成本与效率问题的有效办法,虽说其理论和技术体系还有待完善,数字虚拟仿真在生成危险场景方面具备明显优势,是提升测试安全性和可靠性的关键所在,正逐渐成为研究的焦点,现有的自动驾驶危险场景生成方法包含专家经验法、自然驾驶数据提取法、危险场景衍生法以及基于强化学习的自生成法,专家经验法比较主观且难以覆盖所有场景情况,自然驾驶数据提取法缺乏动态交互能力,危险场景衍生法可能会产生不真实的轨迹,这些方法大多局限于学术研究难以应用到工程实践当中,基于强化学习的自生成法能够实时修正场景状态生成定制化场景库,适合高级别自动驾驶测试从而成为研究热点,不过现有方法可能产生不自然或者重复的场景且缺乏泛化能力,本项目旨在设计一种综合自然性、对抗性和多样性的统一生成策略以解决现有方法在实际应用中的不足 。 +本文围绕基于CARLA模拟器的极端驾驶仿真场景自动生成算法展开研究,针对传统人工场景设计效率低、覆盖不足、难以复现等问题,将深度强化学习引入危险场景生成任务,构建了一套完整的极端驾驶场景定义、算法设计、自动生成、量化评估与标准输出体系。 -为了探索自动驾驶汽车性能方面的极限情况,评估自动驾驶系统安全性、可靠性和可信度,需要精确且完整地描述自动驾驶性能边界,现有的研究没有使用真实自动驾驶模型和算法挖掘性能边界,可能导致缺乏现实性、出现误导性结果与可迁移性问题,现有的研究仅考虑周围车辆产生危险行为会限制整体风险评估,因为行人和环境因素可能引入新风险与挑战,需在危险场景生成中予以考虑,忽略这些因素可能导致对风险低估,无法全面评估自动驾驶系统在复杂多变环境中行为和决策能力,当前研究仅利用背景车辆初始运行条件如位置、速度、航向角等构造驾驶场景参数空间,所以应定义更高维参数空间以精细化和全面表征自动驾驶性能边界,当处理高维参数空间和昂贵自动驾驶仿真评价时,通用启发式智能优化算法往往不再适用,能有效求解的优化算法非常有限,在这种情况下,很有必要借助代理建模、最优计算资源分配、样本填充策略等技术设计相应随机或鲁棒仿真优化算法,这也是本项目研究的关键点。 +本文首先梳理了自动驾驶仿真测试与场景生成的研究现状,明确了极端驾驶场景的内涵与分类,将其划分为极端天气类、车辆对抗类、行人危险类与多因素耦合类四大类别,并确定了包含暴雨跟车、前车急刹、行人横穿、雾天鬼探头等在内的10 类典型高危场景,建立了统一的场景参数体系与评价指标。 -当前世界最先进的自动驾驶方案里端到端自动驾驶有较强感知性能和泛化能力构建的系统更简单智能,然而现有的端到端自动驾驶决策方法存在如下问题,一是端到端自动驾驶模型依赖训练数据面对复杂和危险场景可能做出不合理决策,二是端到端自动驾驶依赖深度神经网络其黑盒特性让决策过程难以解释限制系统行为理解和调试,三是端到端自动驾驶模型从图像或点云直接输出控制信号训练中难全面理解复杂交通环境无法考虑多重因素导致决策缺乏适应性和灵活性,本研究的终极目标是为端到端自动驾驶设计富含驾驶语义信息的输入并利用先进神经网络架构突破以往自动驾驶性能边界 。 +在算法层面,本文以DQN为基础算法,设计了包含相对距离、相对速度、主车速度、车道偏移与碰撞标志的五维状态空间、五类离散动作空间与多维度奖励函数;在此基础上引入注意力机制,提出Attention-DQN以提升关键危险特征的提取能力。针对 DQN 在连续控制、策略稳定性与动作平滑度上的不足,本文进一步设计Smooth-PPO 算法,采用连续动作空间实现油门、制动、转向的精细化控制,通过策略剪切与动作平滑奖励提升训练稳定性与行为真实性。实验结果表明,Smooth-PPO 在收敛速度、安全完成率、危险可控性与场景真实性上均优于 Attention-DQN。 -本研究紧紧围绕自动驾驶场景生成和安全评估核心问题展开,深入探索并提出ChatScene与ASIL - Gen协同解决方案,成功构建起从场景高效生成到精准风险评估完整技术体系,为自动驾驶测试领域带来创新性突破,在场景生成层面,ChatScene框架展现出独特的技术优势。 -其创新性地融合 Scenic 语言、深度强化学习与 GPT-4o 模型,场景生成模式实现了多元化与智能化发展。在固定场景模式里,基于Scenic语言预定义的8类基准场景,这些场景涵盖城市主干道、高速公路以及乡村道路等多种典型交通环境,利用深度强化学习中的SAC算法,以碰撞避免、车道保持和速度优化等作为核心奖励函数,对场景里对抗行为参数展开精细化调整与优化,以此模拟出高度真实且复杂多变的交通参与者交互行为,为自动驾驶系统提供标准化与规范化的测试场景模板。在动态模式方面,借助GPT - 4强大的自然语言理解与代码生成能力,用户只要输入自然语言描述,像“暴雨天气下,自我车辆在无信号灯十字路口左转,对向车辆突然加速直行”这样的内容,系统就能快速解析语义信息并将其转化为符合CARLA 0.9.13规范的场景代码。通过设定详细的约束条件,包含道路类型、车辆动力学参数以及交通规则等内容,生成多样化且贴近真实驾驶场景的测试用例,相比传统基于LiDARGen的场景生成方法,,动态模式的生成效率提升了 107 倍,极大地丰富了自动驾驶测试场景的多样性与灵活性,显著提高了测试效率。​ +在场景工程化输出方面,本文基于ASAM OpenSCENARIO 标准,实现了强化学习生成轨迹到.xosc场景文件的自动化转换,完成从轨迹提取、参数解析、XML 结构构建到文件输出的全流程,使生成场景具备跨平台、可复现、可批量测试的能力。 -在安全评估领域当中ASIL - Gen起到了关键作用,该模块借助NSGA - II多目标优化算法以及基于ISO 26262标准的量化评估模型,达成了场景的优化筛选与科学分类工作。在场景生成这个阶段,基于基础场景模板依靠脚本自动化生成13类场景变体,其中涵盖动态障碍物交叉、无信号路口冲突、恶劣天气下跟车等复杂情况,并且通过调整障碍物位置、速度、交通流量等参数,形成海量多样化的测试场景。在此基础之上,利用NSGA - II算法把碰撞概率与场景复杂度当作双目标函数来进行优化。碰撞概率通过精确预测车辆、行人等交通参与者的运动轨迹来计算,场景复杂度则综合考虑交通参与者数量、道路拓扑结构、环境干扰因素等多个指标,进而搜索出帕累托前沿筛选出既具高风险价值又有代表性的场景。实验数据表明,通过ASIL - Gen优化之后,高风险ASIL - D等级场景占比从随机搜索的5\%提升到12\%,经过进一步优化后更是提升至15\%,显著增强了场景,显著增强了场景筛选的精准性与安全评估的科学性。​ - -在实验验证这个重要环节当中本研究取得一系列有说服力成果,基于ChatScene训练的RL模型在行人横穿场景测试里和基线模型开展多次重复对比实验,通过精确统计碰撞次数得出结果表明其碰撞率降低了32\%,这充分验证了ChatScene与ASIL - Gen协同方案对提升自动驾驶系统鲁棒性有效,同时场景生成效率以及安全评估准确性等方面实验数据有力证明该方案在自动驾驶技术安全测试中具巨大应用价值,为自动驾驶技术的安全测试开辟新的技术路径与研究方向。 - -安全模型,英伟达的安全力场(SFF)和Mobileye的责任敏感安全(RSS)等对决策来说是有可解释性的数学模型。这项工作从头开始实现SFF,替代未公开的英伟达源代码,并将其与CARLA开源模拟器集成。使用SFF和CARLA,提出了一个车辆声明集合的预测器,并以此提出一种综合驾驶策略,无论在通过动态交通时遇到什么安全条件,其都能持续运行。该策略没有针对每种情况制定单独的规划,但利用安全潜能,目的是将类人的驾驶融入交通流中。 - - - -责任敏感安全(RSS)将自车的危险时间t与纵向/横向的危险阈值时间tlong/tlat进行比较。如果达到阈值,RSS判断为危险情况,并根据纵向或横向加速度对速度的限制做出适当的响应。换句话说,阈值可以用轨迹集的多边形表示。如果自车和其他道路使用者之间的轨迹集相交,RSS会选择以下三个决策中的一个来恢复安全状态:刹车,继续前进或开车离开。 - -安全力场(SFF)表示,如果参与者遵循安全程序(这是一系列控制策略),量化风险的安全潜能ρAB不会再增加,因此可以保证参与者最终不会造成不安全的情况。这可以通过安全潜能的链式法则从数学上证明。简而言之,RSS的方法是最小化参与者声称集合之间的交集,这是每个参与者安全程序产生轨迹的联合。 - -英特尔发布了一个名为ad-rss-lib的开源库,该库部分实现了RSS。此外,NVIDIA还提供了一个名为DriveWorks SDK的软件开发工具包,其中包括针对经批准用户的SFF实现。Intel ad-rss-lib没有涵盖其论文的全部范围,但它提供了Python绑定和CARLA集成。然而,NVIDIA DriveWorks SDK是一个非公开IP,它的实现是为了与配备NVIDIA DRIVE OS的NVIDIA DRIVE平台集成,因此研究人员很少使用它。在Intel和NVIDIA建议的将RSS和SFF与现有自动驾驶系统集成的基本示例架构中,RSS和SFF扮演着最后的角色,通过重写规划子系统的决策来防止自动驾驶车辆发生碰撞。 - -在SFF实施中使用声明集合和安全潜能的概念,声明集合就是安全程序(驾驶策略)获取的轨迹之联合,安全潜能是两个参与者的声明集合之间相交测度及其负梯度。该文提出了一种将SFF集成到规划子系统中的方法,制定一种类似人类的驾驶策略,无论在安全或不安全的条件下都能始终如一地运行,最终尽量不阻碍顺畅的交通流。 - -Intel RSS或NVIDIA SFF作为与现有子系统协调的附加模块。它接收来自感知子系统的世界环境数据和来自规划子系统的机动决策。为了自车的安全,作为上层限制器,它可以推翻接收的决策,并将限制的决策传递给驾驶子系统。如图是具有RSS或SFF安全模型的基本示例架构:灰色是现有子系统部分,蓝色/绿色是附加模块的RSS/SFF实现部分。 +通过对10类极端驾驶场景的对比实验与量化评估,本文验证了所提方法能够高效、自动地生成高真实性、高风险、可量化的危险驾驶场景,可为自动驾驶系统的感知、决策与控制系统提供有效测试用例。研究成果在提升场景生成效率、丰富场景库多样性、强化测试充分性等方面具有理论意义与实用价值。 \section{展望} -虽然本研究在自动驾驶场景生成和安全评估领域有了一定成果,但面对自动驾驶技术快速发展带来的需求和挑战,该领域还有很多需要深入探索的方向,未来研究可以从以下多个维度来开展,深化多模态数据融合方面,目前自动驾驶场景生成主要依靠有限的数据源,未来研究要进一步深化多模态数据融合,除了持续探索激光雷达和摄像头数据的深度融合,还会引入毫米波雷达数据,借助其在恶劣天气下稳定的探测性能,提高场景中目标检测与跟踪的准确性,同时融合高精地图数据,把地图里的道路属性、交通标志、车道线等信息和传感器数据相结合,构建更贴近真实驾驶环境的场景生成模型,通过多模态数据的协同处理与特征融合,不但能提升场景的物理真实性,还能增强场景的语义准确性,让生成的场景更符合实际驾驶过程中的复杂状况,为自动驾驶系统提供更具挑战性与真实性的测试环境。​ - -拓展 ASIL 分类标准:现有的 ASIL 分类标准主要基于静态的交通场景因素,未来将结合车路协同、交通流理论等前沿技术,对其进行拓展与完善。将 V2X 通信状态纳入评估体系,考虑车辆与车辆、车辆与基础设施之间的信息交互对驾驶安全的影响;同时引入交通拥堵态势分析,结合交通流模型,评估不同拥堵程度下自动驾驶系统面临的风险。此外,还将探索驾驶员行为模型与 ASIL 分类的结合,分析人类驾驶行为的不确定性对自动驾驶系统安全的潜在影响,从而完善高风险场景的识别维度,使 ASIL 分类标准更全面、准确地反映自动驾驶系统在复杂交通环境下的安全风险状况。​ +虽然本文对极端驾驶场景自动生成已经做出一定工作,但是由于时间和条件限制,研究还存在一些问题,在以下几方面可以进一步进行研究: -探索模型轻量化与实时化:随着自动驾驶技术向边缘设备的不断渗透,算力受限成为制约实时在线评估的关键因素。未来研究将致力于探索 ChatScene 与 ASIL-Gen 算法架构的轻量化与实时化优化。一方面,通过模型压缩技术,如剪枝、量化等方法,减少模型参数与计算量;另一方面,采用高效的算法优化策略,如改进的神经网络结构、并行计算技术等,提高算法执行效率。针对边缘设备的硬件特性,开发专用的轻量化模型,使其能够在资源有限的条件下快速生成场景并进行安全评估,推动自动驾驶仿真测试从离线分析向实时在线评估方向发展,为自动驾驶车辆的实时决策与安全监控提供有力支持,加速自动驾驶技术的落地应用进程。​ +本文主要研究单车对抗情况,即单目标车辆与其他车辆相互作用的过程,在一定程度上有一定意义,但是不能很好地体现出多个车辆之间配合以及相互作用的真实情况。为进一步研究此问题,以后的研究可以采用多智能体强化学习的方法来建立包含连续变道、多车汇入等多种情况的综合交通仿真模型,在更加贴近实际情况的情况下进行研究,不仅可以提高无人驾驶车辆对环境感知的能力,也可以检验其对于集体作出判断的能力,进而推动相关领域的发展。 -强化人机协同测试模式:考虑到自动驾驶系统最终服务于人类出行,未来可探索将人类驾驶员的行为与决策纳入测试体系,构建人机协同的测试模式。通过收集和分析人类驾驶数据,模拟不同驾驶风格、驾驶习惯的人类驾驶员与自动驾驶系统的交互场景,评估自动驾驶系统在人机共驾环境下的安全性与适应性。同时,研究如何利用人类驾驶员的经验与直觉,辅助自动驾驶系统进行决策,实现人机优势互补,进一步提升自动驾驶系统的可靠性与用户接受度。​ +虽然Smooth-PPO算法产生的连续动作序列比Attention-DQN更流畅、自然,但是仍然无法达到真实的驾驶行为。因此,后续的工作可以结合生成对抗网络(GAN)、自回归模型或者扩散模型等先进方法并利用大量的真实驾驶数据来进行进一步的研究来获得更为准确的驾驶员的操作方式以及心理状态的信息,在此基础上加强对物理约束的建模使得生成的动作更为合理避免出现一些不符合实际情况的情况发生。 -开展跨地域与跨文化场景研究:目前的研究主要基于特定地域的交通规则与驾驶习惯,未来将开展跨地域与跨文化场景研究。收集不同国家、不同地区的交通数据,分析其交通规则、驾驶文化的差异,构建多样化的跨地域场景库。通过在这些场景下对自动驾驶系统进行测试与评估,确保自动驾驶技术在全球范围内的适用性与安全性,推动自动驾驶技术的全球化发展。 +近年来,大规模预训练语言模型已经在代码生成以及语义理解等关键技术上取得很大进展,在此基础上可以进一步尝试引入强化学习到场景生成方案当中:利用大模型对于自然语言场景语义的理解,进行自动生成场景参数以及对抗策略等功能。这将降低对专业知识的要求,使普通用户能够方便快捷地搭建符合自身需求的测试环境,提高相关产品的易用性和受欢迎程度。 diff --git a/critical/undergraduate/content/cover.tex b/critical/undergraduate/content/cover.tex index 5317d48e..030f819f 100644 --- a/critical/undergraduate/content/cover.tex +++ b/critical/undergraduate/content/cover.tex @@ -1,19 +1,18 @@ %!TEX root = ../hutbthesis_main.tex % 文章信息 -\titlecn{智能驾驶危险仿真场景的生成和优化算法 } +\titlecn{基于模拟器的极端驾驶仿真场景的生成算法研究} \titleen{Hunan University of Technology and Business Thesis \LaTeX{} Template v0.1} -%\minormajor{人工智能} -%\interestmajor{人工智能} -\author{刘东林} + +\author{李明浩} \subsupervisor{} -\studentid{2123020065} -\priormajor{人工智能} -\myclass{人工智能2102班} +\studentid{2209040015} +\priormajor{机器人工程} +\myclass{机器人2201班} \supervisor{王海东教授} -\department{人工智能与先进计算机学院} -\thesisdate{year=2025, month=5} +\department{智能机器人学院} +\thesisdate{year=2026, month=5} %以下的对本科生没有用 \clcnumber{TP391} % 中图分类号 Chinese Library Classification diff --git a/critical/undergraduate/content/declarationzh.tex b/critical/undergraduate/content/declarationzh.tex index f194920e..995bef4f 100644 --- a/critical/undergraduate/content/declarationzh.tex +++ b/critical/undergraduate/content/declarationzh.tex @@ -17,10 +17,10 @@ \vspace{30pt} \begin{tabular}{ll} %\renewcommand{\arraystretch}{2} - \makebox[4em][s]{作者签名:刘东林} & \makebox[100pt][c]{ } \\ + \makebox[4em][s]{作者签名:李明浩} & \makebox[100pt][c]{ } \\ \\ \makebox[2em][s]{日期:} & - \makebox[100pt][c]{\qquad2025年\quad5月\quad18日} \\ + \makebox[100pt][c]{\qquad2026年\quad5月\quad18日} \\ \end{tabular}