CN112997128B - 一种自动驾驶场景的生成方法、装置及系统 - Google Patents

一种自动驾驶场景的生成方法、装置及系统 Download PDF

Info

Publication number
CN112997128B
CN112997128B CN202180000816.2A CN202180000816A CN112997128B CN 112997128 B CN112997128 B CN 112997128B CN 202180000816 A CN202180000816 A CN 202180000816A CN 112997128 B CN112997128 B CN 112997128B
Authority
CN
China
Prior art keywords
ads
automatic driving
driving scene
action
vehicle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202180000816.2A
Other languages
English (en)
Other versions
CN112997128A (zh
Inventor
钟胤
魏卓
李铁岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN112997128A publication Critical patent/CN112997128A/zh
Application granted granted Critical
Publication of CN112997128B publication Critical patent/CN112997128B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process

Abstract

本申请公开了一种自动驾驶场景的生成方法、装置及系统,可以解决现有技术因测试的驾驶场景有限,测试人员也没有真正的用户那么多,导致测试时间长,成本开销大,且难以覆盖所有驾驶场景的问题。该方法包括:获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息;基于所述反馈信息获取安全违规参数和覆盖参数;若所述安全违规参数或所述覆盖参数不满足预设指标,则基于所述反馈信息对所述参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标。

Description

一种自动驾驶场景的生成方法、装置及系统
技术领域
本申请涉及自动驾驶仿真技术领域,尤其涉及一种自动驾驶场景的生成方法、装置及系统。
背景技术
随着科技的飞速发展,车辆自动驾驶技术越来越普及。由于车辆的安全性是车辆自动驾驶的前提,要实现真正的自动驾驶,就需要确定车辆在自动驾驶时可能出现的安全问题,评估车辆的安全性。其中,安全问题包括信息安全问题(security)和功能安全问题(safety),security主要指人为恶意攻击导致的安全问题,如财产损失,隐私泄露,系统控制,系统故障等,safety主要指非人为的系统内部故障导致的安全问题,人为恶意攻击导致的信息安全问题也可引发系统被控制或系统故障等功能安全问题。
目前,传统车辆的安全性是通过认证进行评估的,如根据ISO-26262标准和ISO/PAS 21448 SOTIF标准认证车辆是否满足安全要求。然而,由于智能车辆存在以下两个问题:(1)难以手动检测规范的完整性,车辆的自动驾驶系统主要是机器学习系统,其感知、预测、规划和控制的逻辑是通过训练和学习来的,需求规范是模糊的;(2)难以手动检测实现的正确性,机器学习系统的神经网络是由输入层、输出层、多个隐藏层和众多神经元组成,其通过线性或非线性激活函数来传递高维向量,逻辑上是难以理解的。所以目前无法通过认证对智能车辆的安全性进行评估。
那么,智能车辆要解决安全问题并获得例如用户、监管机构、保险业者、政府部门等利益相关者的信任,只能通过充分的锻炼来提升车辆的智能水平和安全性,即尽可能执行更多的训练和测试。锻炼通常有下面两种途径:(1)通过用户真实驾驶来锻炼,即先把车卖出去,通过解决用户在使用的过程中发现的问题来提升车的智能水平和安全性,但这种方法显然与利益相关者的信任相冲突,在没有确定安全性之前上路,与用户的人身安全、保险业者的风险评估、监管机构和政府部门的监管职责相冲突;(2)通过实验性路测来锻炼,即在特定试验区由测试工程师而非真正的用户来测试各种驾驶场景,但因测试的驾驶场景有限,测试人员也没有真正的用户那么多,所以需要的时间非常长,成本开销大,且难以覆盖所有驾驶场景。
可见,在通过实验性路测锻炼车辆,进而提升车辆的智能水平和安全性时,因测试的驾驶场景有限,测试人员也没有真正的用户那么多,所以需要的时间非常长,成本开销大,且难以覆盖所有驾驶场景。
发明内容
本申请提供一种自动驾驶场景的生成方法、装置及系统,以解决现有技术因测试的驾驶场景有限,测试人员也没有真正的用户那么多,导致测试时间长,成本开销大,且难以覆盖所有驾驶场景的问题。
第一方面,本申请实施例提供一种自动驾驶场景的生成方法,包括:
获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息;其中,所述反馈信息包括车辆控制指令和神经网络行为信息;
基于所述反馈信息获取安全违规参数和覆盖参数;其中,所述安全违规参数用于指示在所述参考自动驾驶场景中所述ADS对应的车辆根据所述车辆控制指令行驶时安全违规的概率,所述覆盖参数用于指示在所述参考自动驾驶场景下进行测试时所述ADS对应的神经网络中激活的神经元和/或层级相关性;
若所述安全违规参数或所述覆盖参数不满足预设指标,则基于所述反馈信息对所述参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标。
基于上述技术方案,获取ADS在参考自动驾驶场景下进行测试时输出的反馈信息,基于反馈信息获取安全违规参数和覆盖参数,若安全违规参数或覆盖参数不满足预设指标,则基于反馈信息对参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于ADS在更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足预设指标,从而引导驾驶场景朝容易导致安全违规和以前未测试的方向更新,即生成最可能需要测试的容易导致安全违规和覆盖率较高的驾驶场景,不仅可以提高测试驾驶场景的效率,同时还可以覆盖更多的驾驶场景,另外,基于闭环的自动化测试可进一步降低时间开销和人力开销。
一种可能的设计中,获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息之前,还包括:
获取所述ADS的初始自动驾驶场景;
分析所述初始自动驾驶场景中的道路类型以及所述ADS对应的车辆在所述初始自动驾驶场景中行驶时安全违规的概率,基于分析结果,创建所述参考自动驾驶场景;其中,所述参考自动驾驶场景包括典型自动驾驶场景、缺失自动驾驶场景和易违规自动驾驶场景中的任一种或多种。
一种可能的设计中,所述安全违规参数包括所述ADS对应的车辆与其他车辆或行人的平行距离小于安全距离的概率,所述ADS对应的车辆与其他车辆或行人的垂直距离小于安全距离的概率,所述ADS对应的车辆违反交通灯指示的概率,所述ADS对应的车辆违反交通标志指示的概率,所述ADS对应的车辆违反交通警察指挥的概率和所述ADS对应的车辆超速的概率中的任一种或多种;
所述覆盖参数包括所述ADS对应的神经网络中激活的神经元的数量和所述ADS对应的神经网络的热力图中输入子集对预测结果的影响的权重中的任一种或多种。
一种可能的设计中,基于所述反馈信息对所述参考自动驾驶场景进行更新,包括:
获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作;其中,所述动作空间中的动作为自动驾驶场景中的道路拓扑、道路降解、动态时间、动态天气、动态交通或景观信息的离散或连续更新;
基于所述选择的动作对所述参考驾驶场景进行更新。
一种可能的设计中,所述强化学习智能体为基于反馈信息确定奖励和当前所述ADS对应的车辆的状态,并基于所述奖励和当前所述ADS对应的车辆的状态从所述动作空间中选择动作的智能体;
其中,所述奖励为基于安全违规的奖励和基于覆盖的奖励之和,所述基于安全违规的奖励为基于所述反馈信息中的车辆控制指令更新所述ADS对应的车辆的状态后所述ADS对应的车辆的安全违规概率接近预设指标的接近程度,所述基于覆盖的奖励为基于所述反馈信息中的神经网络行为信息确定的所述参考自动驾驶场景的覆盖率接近预设指标的接近程度,所述ADS对应的车辆的状态用于指示所述ADS对应的车辆在所述参考自动驾驶场景中的位置。
基于上述技术方案,先获取强化学习智能体基于反馈信息从参考自动驾驶场景的动作空间中选择的动作,其中,强化学习智能体为基于反馈信息确定奖励和当前ADS对应的车辆的状态,并基于奖励和当前ADS对应的车辆的状态从动作空间中选择动作的智能体,再基于选择的动作对参考驾驶场景进行更新,通过获取强化学习智能体以“试错”的方式进行强化学习后,基于反馈信息中的车辆控制指令和神经网络行为信息确定的奖励去指导行为,以强化学习智能体获得最大的奖励为目标从参考自动驾驶场景的动作空间中选择的动作,从而引导驾驶场景朝容易导致安全违规和以前未测试的方向更新,即生成最可能需要测试的容易导致安全违规和覆盖率较高的驾驶场景,不仅可以提高测试驾驶场景的效率,同时还可以覆盖更多的驾驶场景。
一种可能的设计中,所述强化学习智能体的神经网络模型包括价值网络和策略网络,所述价值网络用于计算设定状态下的设定动作的价值,所述策略网络用于获取设定状态下的动作概率分布;获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作之前,还包括:
获取当前所述ADS对应的车辆的第一状态,以及所述强化学习智能体基于所述策略网络从所述动作空间中选择的第一动作;
基于所述第一动作对所述参考自动驾驶场景进行更新,并获取所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息;
获取所述强化学习智能体基于所述反馈信息确定的所述第一动作的奖励和当前所述ADS对应的车辆的第二状态,以及基于所述策略网络从所述动作空间中选择的第二动作;
基于所述价值网络计算所述第一状态下的第一动作的第一价值和所述第二状态下的第二动作的第二价值;
基于所述第一价值、所述第二价值以及所述第一动作的奖励,确定时间差分误差;其中,所述时间差分误差为所述价值网络预测的价值和实际的价值之差;
获取所述价值网络和所述策略网络的梯度,并基于所述时间差分误差和所述价值网络的梯度更新所述价值网络的参数,基于所述时间差分误差和所述策略网络的梯度更新所述策略网络的参数。
基于上述技术方案,通过将价值网络和策略网络设置为强化学习智能体的神经网络模型,即将价值网络和策略网络这两个神经网络分别近似强化学习智能体的价值函数和策略函数,其中,价值函数是指智能体在强化学习中由环境提供的奖励对动作和状态的好坏作一种评价的规则,策略函数是指智能体在强化学习中使用的采用行为的规则,并对该强化学习智能体进行训练,以使该强化学习智能体可以基于反馈信息中的车辆控制指令和神经网络行为信息有策略地更新参考自动驾驶场景,从而引导自动驾驶场景朝容易导致安全违规和以前未测试的方向更新,即生成最可能需要测试的容易导致安全违规和覆盖率较高的驾驶场景,不仅可以提高测试驾驶场景的效率,同时还可以覆盖更多的驾驶场景。
第二方面,本申请还提供一种自动驾驶场景的生成装置,所述自动驾驶场景的生成装置具有实现上述第一方面或者第一方面的任一种可能的设计中方法的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块,比如包括第一获取模块、第二获取模块、更新模块。
所述第一获取模块,用于获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息;其中,所述反馈信息包括车辆控制指令和神经网络行为信息;
所述第二获取模块,用于基于所述反馈信息获取安全违规参数和覆盖参数;其中,所述安全违规参数用于指示在所述参考自动驾驶场景中所述ADS对应的车辆根据所述车辆控制指令行驶时安全违规的概率,所述覆盖参数用于指示在所述参考自动驾驶场景下进行测试时所述ADS对应的神经网络中激活的神经元和/或层级相关性;
所述更新模块,用于若所述安全违规参数或所述覆盖参数不满足预设指标,则基于所述反馈信息对所述参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标。
一种可能的设计中,所述装置还包括创建模块,用于:
获取所述ADS的初始自动驾驶场景;
分析所述初始自动驾驶场景中的道路类型以及所述ADS对应的车辆在所述初始自动驾驶场景中行驶时安全违规的概率,基于分析结果,创建所述参考自动驾驶场景;其中,所述参考自动驾驶场景包括典型自动驾驶场景、缺失自动驾驶场景和易违规自动驾驶场景中的任一种或多种。
一种可能的设计中,所述安全违规参数包括所述ADS对应的车辆与其他车辆或行人的平行距离小于安全距离的概率,所述ADS对应的车辆与其他车辆或行人的垂直距离小于安全距离的概率,所述ADS对应的车辆违反交通灯指示的概率,所述ADS对应的车辆违反交通标志指示的概率,所述ADS对应的车辆违反交通警察指挥的概率和所述ADS对应的车辆超速的概率中的任一种或多种;
所述覆盖参数包括所述ADS对应的神经网络中激活的神经元的数量和所述ADS对应的神经网络的热力图中输入子集对预测结果的影响的权重中的任一种或多种。
一种可能的设计中,所述更新模块,具体用于:
获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作;其中,所述动作空间中的动作为自动驾驶场景中的道路拓扑、道路降解、动态时间、动态天气、动态交通或景观信息的离散或连续更新;
基于所述选择的动作对所述参考驾驶场景进行更新。
一种可能的设计中,所述强化学习智能体为基于反馈信息确定奖励和当前所述ADS对应的车辆的状态,并基于所述奖励和当前所述ADS对应的车辆的状态从所述动作空间中选择动作的智能体;
其中,所述奖励为基于安全违规的奖励和基于覆盖的奖励之和,所述基于安全违规的奖励为基于所述反馈信息中的车辆控制指令更新所述ADS对应的车辆的状态后所述ADS对应的车辆的安全违规概率接近预设指标的接近程度,所述基于覆盖的奖励为基于所述反馈信息中的神经网络行为信息确定的所述参考自动驾驶场景的覆盖率接近预设指标的接近程度,所述ADS对应的车辆的状态用于指示所述ADS对应的车辆在所述参考自动驾驶场景中的位置。
一种可能的设计中,所述强化学习智能体的神经网络模型包括价值网络和策略网络,所述价值网络用于计算设定状态下的设定动作的价值,所述策略网络用于获取设定状态下的动作概率分布;所述装置还包括训练模块,用于:
获取当前所述ADS对应的车辆的第一状态,以及所述强化学习智能体基于所述策略网络从所述动作空间中选择的第一动作;
基于所述第一动作对所述参考自动驾驶场景进行更新,并获取所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息;
获取所述强化学习智能体基于所述反馈信息确定的所述第一动作的奖励和当前所述ADS对应的车辆的第二状态,以及基于所述策略网络从所述动作空间中选择的第二动作;
基于所述价值网络计算所述第一状态下的第一动作的第一价值和所述第二状态下的第二动作的第二价值;
基于所述第一价值、所述第二价值以及所述第一动作的奖励,确定时间差分误差;其中,所述时间差分误差为所述价值网络预测的价值和实际的价值之差;
获取所述价值网络和所述策略网络的梯度,并基于所述时间差分误差和所述价值网络的梯度更新所述价值网络的参数,基于所述时间差分误差和所述策略网络的梯度更新所述策略网络的参数。
第三方面,本申请还提供一种自动驾驶场景的生成系统,所述自动驾驶场景的生成系统可以包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器、通信接口;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,执行如上述第一方面或者第一方面的任一种可能的设计中方法的功能。
第四方面,本申请还提供一种计算机存储介质,所述计算机存储介质包括计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行上述第一方面或者第一方面的任一种可能的设计中方法。
第五方面,本申请还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述第一方面或者第一方面的任一种可能的设计中方法。
附图说明
图1为本申请实施例提供的强化学习的训练过程示意图;
图2为本申请实施例提供的一种自动驾驶场景的生成系统的结构示意图;
图3为本申请实施例提供的一种自动驾驶场景的生成方法的流程示意图;
图4为本申请实施例提供的一种自动驾驶场景的生成装置的结构示意图;
图5为本申请实施例提供的另一种自动驾驶场景的生成系统的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。
为便于理解本申请实施例,下面先对本申请实施例中涉及的专业术语进行解释说明。
一、自动驾驶系统(auto driving system,ADS)
自动驾驶系统是一种用于控制车辆的系统,车辆能够在自动驾驶系统的控制下实现自动驾驶。自动驾驶系统可以包括采集装置、两个主处理装置、辅处理装置以及车辆控制装置。其中,采集装置用于采集车辆的初始环境信息,并将该初始环境信息发送至两个主处理装置。主处理装置用于将接收到的初始环境信息进行处理以得到目标环境信息,之后再根据该目标环境信息生成车辆控制指令,并将该车辆控制指令发送至辅处理装置。辅处理装置用于将其中一个主处理装置发送的车辆控制指令发送至车辆控制装置,以使该车辆控制装置根据接收到的车辆控制指令对车辆进行控制(如前进、倒退或转弯等)。在其中一个主处理装置故障时,辅处理装置可将另一个主处理装置发送的车辆控制指令发送至车辆控制装置。
在利用自动驾驶系统对车辆进行自动驾驶训练和测试时,车辆的自动驾驶系统主要是一个机器学习系统,由神经网络构成,其中,神经网络包括输入层、输出层、多个隐藏层和众多神经元,激活的神经元的个数越多,层级相关性越高,说明对车辆进行自动驾驶训练和测试时的驾驶场景的覆盖率越高,即对车辆进行自动驾驶训练和测试时能够覆盖到越多的驾驶场景。
二、强化学习智能体
智能体(agent)是人工智能领域中一个很重要的概念,任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体。例如,智能体可以是某个特定的环境下的计算机系统或者计算机系统的一部分。智能体可以根据自身对环境的感知,按照已有的指示或者通过自主学习,并与其他智能体进行沟通协作,在其所处的环境中自主地完成设定的目标。智能体可以是软件或者软件和硬件结合的实体。
强化学习(Reinforcement Learning,RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题,即强化学习是智能体以“试错”的方式进行学习,通过动作(action)与环境进行交互获得的奖励(reward)指导行为,目标是使智能体获得最大的奖励。强化学习无需训练数据集,强化学习中将由环境提供的强化信号(即奖励)对动作的好坏作一种评价,而不是告诉强化学习系统如何去产生正确的动作。由于外部环境提供的信息很少,智能体必须靠自身的经历进行学习,通过这种方式,智能体在行动-评价(即奖励)的环境中获得知识,改进行动方案以适应环境。
示例性地,图1为本申请实施例提供的强化学习的训练过程示意图,如图1所示,强化学习主要包含四个元素:智能体(agent)、环境(environment)、状态(state)、动作(action)与奖励(reward)。其中,智能体的输入为状态,输出为动作。策略函数是指智能体在强化学习中使用的采用行为的规则,例如,在学习过程中,可以根据状态输出动作,并以此动作探索环境,以更新状态,策略函数的更新依赖于策略梯度(policy gradient,PG),策略函数通常为一个神经网络。当前技术中,强化学习的训练过程为:通过智能体与环境进行多次交互,获得每次交互的动作、状态、奖励,将多组动作、状态、奖励作为训练数据,对智能体进行一次训练,采用上述训练过程,对智能体进行下一轮次训练,直至满足收敛条件。
其中,获得一次交互的动作、状态、奖励的过程如图1所示,将环境当前状态s(t)输入至智能体,获得智能体输出的动作a(t),根据环境在动作a(t)作用下的相关性能指标计算本次交互的奖励r(t),至此,获得本次交互的动作a(t)与奖励r(t)。记录本次交互的动作a(t)与奖励r(t),以备后续用来训练智能体,同时还将记录环境在动作a(t)作用下的下一个状态s(t+1),以便实现智能体与环境的下一次交互。
三、模拟器(simulator)
模拟器可通过配置各种参数具有仿真驾驶场景的能力,比如配置路网、交通、行人、景观、天气等参数,模拟器中的主要模块包括相机图像(camera image)、雷达图像(radar image)、激光雷达图像(lidar image)、动力学模型,车辆位置更新以及惯导(即全球定位系统和惯性传感器(global positioning system+inertial measurement unit,GPS+IMU)),前三者捕捉仿真驾驶场景的图像,后三者主要用来动态更新车辆在驾驶场景中的位置。
目前,基于模拟器的仿真环境生成多个驾驶场景,并对生成的驾驶场景进行测试,通常有下面两种方法:
(1)暴力学习
基于模拟器的仿真环境,通过暴力的方式随机生成尽可能多的驾驶场景来进行测试和学习。步骤如下:随机选取真实驾驶场景或暴力选取真实驾驶场景,对选取的真实驾驶场景进行建模,如道路拓扑、交通状态、天气等,并在模拟器中配置模型;自动或非自动更新模拟器中的天气、景观等信息,从而在模拟器中生成仿真的驾驶场景;设置仿真的驾驶场景中的自车信息,例如自车的位置、传感器种类和位置等;利用ADS对模拟器生成的驾驶场景进行测试验证。由于这种方法的驾驶场景是通过暴力导入或随机生成的,因此具有盲目性,大量驾驶场景必然是重复的,且难以遍历所有驾驶场景,所以效率低下,不能有效提高测试的驾驶场景的覆盖度。
(2)形式方法
基于模拟器的仿真环境,通过正规的推理,构造安全相关的特定驾驶场景来进行测试和学习。这种方法的步骤如下:通过推理构造特定的驾驶场景,对特定的驾驶场景进行建模,如道路拓扑、交通状态、天气等,并在模拟器中配置模型;自动或非自动更新模拟器中的天气、景观等信息,从而在模拟器中生成仿真的驾驶场景;设置仿真的驾驶场景中的自车信息,例如自车的位置、传感器种类和位置等;利用ADS对模拟器生成的驾驶场景进行测试验证。由于这种方法的驾驶场景主要依靠人工推理,并手动构造特定的驾驶场景,因此构造效率低,且场景一般也比较简单,难以构造多样化的驾驶场景,不能提供安全担保。
由此可知,以上两种方法都有一定的缺点:基于暴力学习生成的驾驶场景具有随机性,生成的驾驶场景中有大量重复的驾驶场景,在对生成的驾驶场景进行测试时,难以遍历所有场景,存在时间和人力成本巨大,效率低下,不能有效提高测试的驾驶场景的覆盖度的问题;形式方法基本是手动生成驾驶场景,因此驾驶场景通常比较简单,存在构造效率低,且难以构造多样化的驾驶场景,不能提供安全担保的问题。即以上两种方法测试驾驶场景的效率都较低,且都难以提供多样化驾驶场景,无法快速提高测试的驾驶场景的覆盖度。
鉴于此,本申请实施例提供的一种自动驾驶场景的生成方法,通过强化学习有策略地更新驾驶场景,从而提高驾驶场景的多样化,同时,引导驾驶场景朝容易导致安全违规和以前未测试的方向更新,提高测试驾驶场景的效率,另外,基于闭环的自动化测试可进一步降低时间开销和人力开销。
应理解,本申请实施例可以应用到一种自动驾驶场景的生成系统中,示例性地,图2为本申请实施例提供的一种自动驾驶场景的生成系统的结构示意图,如图2所示,该自动驾驶场景的生成系统包括车辆100、ADS200、强化学习智能体300以及模拟器400,其中,ADS200可以设置在车辆100上,ADS200、强化学习智能体300以及模拟器400之间形成闭环。模拟器400用于配置各种参数仿真车辆100的自动驾驶场景。ADS200用于对仿真的车辆100的自动驾驶场景进行测试。强化学习智能体300用于将ADS200的输出当做环境,根据环境的奖励来更新车辆100的自动驾驶场景。
其中,ADS200可以包括依次连接的采集装置、主处理装置、辅处理装置和车辆的控制装置。可选地,采集装置可以包括:摄像头、雷达、陀螺仪、加速度计等多种传感器中的至少一种传感器。主处理装置的处理能力可以强于辅处理装置,主处理装置可以为集成有图像处理功能、标量计算功能、矢量计算功能和矩阵计算功能的装置。辅处理装置可以为微控制装置(microcontroller unit,MCU)。可选地,该ADS还可以包括目标雷达,且目标雷达与辅处理装置连接。需要说明的是,本发明实施例中的雷达均可以为激光雷达(lightdetection and ranging,Lidar),可选地,本发明实施例中的雷达还可以为其他类型的雷达,如毫米波雷达或超声波雷达,本发明实施例对此不作限定。
以上介绍了本申请实施例提供的自动驾驶场景的生成系统,接下来结合附图介绍本申请实施例提供的自动驾驶场景的生成方法。
应理解,本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合,例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c,或a和b和c。
图3为本申请实施例提供的一种自动驾驶场景的生成方法的流程示意图,该自动驾驶场景的生成方法可以应用于上述图2所示的或者与图2功能结构类似的自动驾驶场景的生成系统。如图3所示,该自动驾驶场景的生成方法的具体流程描述如下。
S301、获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息。
在一些实施例中,自动驾驶场景的生成系统在获取ADS在参考自动驾驶场景下进行测试时输出的反馈信息之前,需要获取ADS的初始自动驾驶场景,其中,初始自动驾驶场景可以包括道路、时间、天气、车辆、行人、交通灯、交通标志、交通警察以及景观中的任一种或多种,再对获取的初始自动驾驶场景进行分布分析(distribution analysis),从而确定初始自动驾驶场景中的道路类型,例如直路、丁字路口、立交桥、盘山公路等,以及ADS对应的车辆在初始自动驾驶场景中行驶时安全违规的概率,例如车辆发生安全事故或交通违规的概率,最后基于分布分析的结果,创建参考自动驾驶场景,其中,参考自动驾驶场景包括典型自动驾驶场景、缺失自动驾驶场景和易违规自动驾驶场景中的任一种或多种,本申请实施例对此不作限定。
需要说明的是,在本申请实施例中分布分析是离线的(off-line),即并非是在自动驾驶场景的生成系统中的模拟器中在线对初始自动驾驶场景进行分布分析,而是通过使用离线的分布分析,确定初始自动驾驶场景中的道路类型以及ADS对应的车辆在初始自动驾驶场景中行驶时安全违规的概率,进而降低分析难度。
在另一些实施例中,自动驾驶场景的生成系统在创建参考自动驾驶场景之后,可以通过配置自动驾驶场景的生成系统中的模拟器的各个参数,仿真参考自动驾驶场景,并获取自动驾驶场景的生成系统中的ADS在仿真的参考自动驾驶场景下进行测试时输出的反馈信息,其中,ADS输出的反馈信息包括参考自动驾驶场景下ADS的车辆控制指令和参考自动驾驶场景下ADS的神经网络行为信息。
需要说明的是,在本申请实施例中,车辆控制指令可以为转向信号、速度信号或车身控制信号,本申请实施例对此不作限定,示例性地,当ADS在仿真的参考自动驾驶场景下进行测试时,ADS的采集装置将采集参考自动驾驶环境下车辆的初始环境信息,并将该初始环境信息发送至两个主处理装置,主处理装置将接收到的初始环境信息进行处理以得到目标环境信息,之后再根据该目标环境信息生成车辆控制指令,从而以使车辆控制装置根据接收到的车辆控制指令对车辆进行如前进、倒退或转弯等控制。
需要说明的是,在本申请实施例中,ADS的神经网络可以为深度神经网络(deepneural networks,DNN),或者卷积神经网络(convolutional neural networks,CNN),或者循环神经网络(rerrent neural network,RNN),本申请实施例对此不作限定。
S302、基于反馈信息获取安全违规参数和覆盖参数。
在一些实施例中,自动驾驶场景的生成系统在获取ADS在参考自动驾驶场景进行测试时输出的反馈信息之后,可以基于反馈信息中的车辆控制指令和神经网络行为信息分别确定安全违规参数和覆盖参数。
需要说明的是,在本申请实施例中,安全违规参数用于指示在参考自动驾驶场景中ADS对应的车辆根据车辆控制指令行驶时安全违规的概率,例如,ADS对应的车辆与其他车辆或行人的平行距离小于安全距离的概率,或者ADS对应的车辆与其他车辆或行人的垂直距离小于安全距离的概率,或者ADS对应的车辆违反交通灯指示的概率,或者ADS对应的车辆违反交通标志指示的概率,或者ADS对应的车辆违反交通警察指挥的概率,或者ADS对应的车辆超速的概率,本申请实施例对此不作限定。
示例性地,若车辆控制指令为控制ADS对应的车辆前进50米或者后退100米,则可以根据车辆控制指令确定ADS对应的车辆在参考自动驾驶场景中与其他车辆或行人(或者路肩、障碍物等)的平行距离小于安全距离的概率,与其他车辆或行人(或者路肩、障碍物等)的垂直距离小于安全距离的概率,违反交通灯指示的概率,违反交通标志指示的概率,违反交通警察指挥的概率和车辆超速的概率。
需要说明的是,在本申请实施例中,覆盖参数用于指示在参考自动驾驶场景下进行测试时ADS对应的神经网络中激活的神经元和/或层级相关性,例如,神经网络中激活的神经元的数量和神经网络的热力图中输入子集对预测结果的影响,神经网络有时也叫做多层感知机(multi-layer perceptron,MLP),按不同层的位置划分,神经网络内部的神经网络层可以分为三类,输入层,隐藏层和输出层,一般来说第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层,层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连,所以当ADS在参考自动驾驶场景进行测试时,ADS的神经网络中激活的神经元的数量越高,或者ADS的神经网络中层级相关性越高,如热力图中输入子集对预测结果的影响越大,参考自动驾驶场景的覆盖率越高,即能够测试到以前未测试的自动驾驶场景,从而覆盖更多的自动驾驶场景。
示例性地,若神经网络行为信息为输入层激活的神经元的个数为2个,输出层激活的神经元的个数为1个,隐藏层激活的神经元的个数为6个,则可确定ADS在参考自动驾驶场景下进行测试时ADS的神经网络中激活的神经元的数量为8个;若神经网络行为信息为层级相关性,则可根据层级相关性,从输出层反向传播找到输入层的子集,确定神经网络的热力图,其中,热力图用于表示所有输入子集对输出结果的贡献或权重,从热力图可以直观看出输入子集对输出结果的影响。
S303、若安全违规参数或覆盖参数不满足预设指标,则基于反馈信息对参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于ADS在更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足预设指标。
在一些实施例中,自动驾驶场景的生成系统在基于反馈信息中的车辆控制指令和神经网络行为信息分别确定安全违规参数和覆盖参数之后,可以判断安全违规参数和覆盖参数是否满足预设指标,若安全违规参数或覆盖参数不满足预设指标,则基于反馈信息对参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于ADS在更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足预设指标。
示例性地,若安全违规参数包括ADS对应的车辆违反交通警察指挥的概率和ADS对应的车辆超速的概率,其中,ADS对应的车辆违反交通警察指挥的概率为40%,ADS对应的车辆超速的概率为30%,而预设指标中ADS对应的车辆违反交通警察指挥的概率和ADS对应的车辆超速的概率应均为80%,则测试结果不满足预设指标,或者,若覆盖参数包括神经网络中激活的神经元的数量,其中,神经网络中激活的神经元的数量为6个,而预设指标中神经网络中激活的神经元的数量应为8个,则测试结果不满足预设指标。
示例性地,当确定安全违规参数或覆盖参数不满足预设指标之后,获取强化学习智能体基于反馈信息从参考自动驾驶场景的动作空间中选择的动作,其中,动作空间中的动作为自动驾驶场景中的道路拓扑、道路降解、动态时间、动态天气、动态交通或景观信息的离散或连续更新,例如,道路拓扑为参考自动驾驶场景中的道路的类型,如直路、丁字路口、立交桥、盘山公路等,道路降解为参考自动驾驶场景中的道路退化的程度。基于选择的动作对参考驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于ADS在更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足预设指标。
需要说明的是,在本申请实施例中,自动驾驶场景的生成系统的强化学习智能体为基于反馈信息确定奖励和当前ADS对应的车辆的状态,并基于奖励和当前ADS对应的车辆的状态从参考自动驾驶场景的动作空间中选择动作的智能体。其中,奖励为基于安全违规的奖励和基于覆盖的奖励之和,ADS对应的车辆的状态用于指示ADS对应的车辆在参考自动驾驶场景中的位置。
需要说明的是,在本申请实施例中,基于安全违规的奖励为基于反馈信息中的车辆控制指令更新ADS对应的车辆的状态后ADS对应的车辆的安全违规概率接近预设指标的接近程度,例如,如果基于安全违规的奖励越大,即基于反馈信息中的车辆控制指令更新ADS对应的车辆的状态后ADS对应的车辆的安全违规概率接近预设指标的接近程度越高,则ADS对应的车辆在参考自动驾驶场景中行驶时安全违规的概率越高,从而可以鼓励参考自动驾驶场景朝容易安全违规的自动驾驶场景方向演变;
基于覆盖的奖励为基于反馈信息中的神经网络行为信息确定的参考自动驾驶场景的覆盖率接近预设指标的接近程度,例如,如果基于测试覆盖的奖励越大,即基于反馈信息中的神经网络行为信息确定的参考自动驾驶场景的覆盖率接近预设指标的接近程度越高,则ADS在参考自动驾驶场景进行测试时ADS对应的神经网络中激活的神经元和/或层级相关性越高,参考自动驾驶场景的覆盖率越高,从而可以鼓励参考自动驾驶场景朝之前未测试的自动驾驶场景方向演变,覆盖更多的自动驾驶场景。
需要说明的是,在本申请实施例中,为了自动驾驶场景的生成系统强化学习智能体可以基于反馈信息有策略地从参考自动驾驶场景的动作空间中选择动作,需要对强化学习智能体进行训练。具体的,设置强化学习智能体的神经网络模型为价值网络和策略网络,其中,价值网络用于计算设定状态下的设定动作的价值,策略网络用于获取设定状态下的动作概率分布。获取当前ADS对应的车辆的第一状态,以及强化学习智能体基于策略网络从参考自动驾驶场景的动作空间中选择的第一动作,基于第一动作对参考自动驾驶场景进行更新,并获取ADS在更新后的参考自动驾驶场景下进行测试时输出的反馈信息,获取强化学习智能体基于反馈信息确定的第一动作的奖励和当前ADS对应的车辆的第二状态,以及基于策略网络从参考自动驾驶场景的动作空间中选择的第二动作,基于价值网络计算第一状态下的第一动作的第一价值和第二状态下的第二动作的第二价值,基于第一价值、第二价值以及第一动作的奖励,确定时间差分误差,其中,时间差分误差为价值网络预测的价值和实际的价值之差,获取价值网络和策略网络的梯度,并基于时间差分误差和价值网络的梯度更新价值网络的参数,基于时间差分误差和策略网络的梯度更新策略网络的参数。
示例性地,策略函数是指智能体在强化学习中使用的采用行为的规则,例如,在学习过程中,可以根据状态输出动作,并以此动作探索环境,以更新状态。价值函数是指智能体在强化学习中由环境提供的强化信号(即奖励)对动作和状态的好坏作一种评价的规则,例如,动作价值用来评价动作的好坏,状态价值用来评价当前状态的好坏。设置强化学习智能体的神经网络模型为价值网络和策略网络,即将策略网络和价值网络这两个神经网络分别近似强化学习智能体的策略函数和动作价值函数,进而近似状态价值函数,例如,若V(s;θ,ω)是状态价值函数(即当前状态的价值),它是策略函数
Figure BDA0003027261720000111
(即动作的概率)和动作价值函数q(s,a;ω)(即动作的价值)的连加,如
Figure BDA0003027261720000112
对上述强化学习智能体进行训练的步骤如下:
(1)获取当前ADS对应的车辆的第一状态st,以及强化学习智能体基于神经网络模型中的策略网络随机从参考自动驾驶场景的动作空间中选择的第一动作at
(2)基于第一动作at对参考自动驾驶场景进行更新,并获取ADS在更新后的参考自动驾驶场景下进行测试时输出的反馈信息;
(3)获取强化学习智能体基于反馈信息确定第一动作at的奖励r1以及当前ADS对应的车辆的第二状态st+1,以及强化学习智能体基于神经网络模型中的策略网络随机从参考自动驾驶场景的动作空间中选择的第二动作at+1
(4)获取强化学习智能体基于神经网络模型中的价值网络计算的第一状态下的第一动作的第一价值qt=q(st,at;ωt)和第二状态下的第二动作的第二价值qt+1=q(st+1,at+1+;ωt+1);
(5)基于第一价值qt、第二价值qt+1以及第一动作at的奖励r1,确定时间差分误差(temporal-difference error,TD error),其中,TD error为价值网络预测的价值和实际的价值之差,如δt=qt-(r1+γ·qt+1);
(6)获取价值网络的梯度,如
Figure BDA0003027261720000121
ω=ωt
(7)基于TD error,使用下降的价值网络的梯度来更新价值网络的参数,如ωt+1=ωt-α·δt·dω,t
(8)获取策略网络的梯度,如
Figure BDA0003027261720000122
θ=θt
(9)基于TD error,使用上升的策略网络的梯度来更新策略网络的参数,如θt+1=θt+β·δt·dθ,t
上述技术方案,获取强化学习智能体基于反馈信息从参考自动驾驶场景的动作空间中选择的动作,其中,强化学习智能体为基于反馈信息确定奖励和当前ADS对应的车辆的状态,并基于奖励和当前ADS对应的车辆的状态从动作空间中选择动作的智能体,再基于选择的动作对参考驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标,通过获取强化学习智能体以“试错”的方式进行强化学习后,基于反馈信息中的车辆控制指令和神经网络行为信息确定的奖励去指导行为,以强化学习智能体获得最大的奖励为目标从参考自动驾驶场景的动作空间中选择的动作,从而引导驾驶场景朝容易导致安全违规和以前未测试的方向更新,即生成最可能需要测试的容易导致安全违规和覆盖率较高的驾驶场景,不仅可以提高测试驾驶场景的效率,同时还可以覆盖更多的驾驶场景,另外,基于闭环的自动化测试可进一步降低时间开销和人力开销。
上述各个实施例可以单独使用,也可以相互结合使用,以达到不同的技术效果。
上述本申请提供的实施例中,从自动驾驶场景的生成系统作为执行主体的角度对本申请实施例提供的方法进行了介绍。为了实现上述本申请实施例提供的方法中的各功能,自动驾驶场景的生成系统可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
基于同一技术构思,本申请实施例还提供一种自动驾驶场景的生成装置400,该装置400可以是自动驾驶场景的生成系统,或者是自动驾驶场景的生成系统中的装置,该装置400包括用于执行上述图3所示方法的模块。示例性地,参见图4,该装置400可以包括:
第一获取模块401,用于获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息;其中,所述反馈信息包括车辆控制指令和神经网络行为信息;
第二获取模块402,用于基于所述反馈信息获取安全违规参数和覆盖参数;其中,所述安全违规参数用于指示在所述参考自动驾驶场景中所述ADS对应的车辆根据所述车辆控制指令行驶时安全违规的概率,所述覆盖参数用于指示在所述参考自动驾驶场景下进行测试时所述ADS对应的神经网络中激活的神经元和/或层级相关性;
更新模块403,用于若所述安全违规参数或所述覆盖参数不满足预设指标,则基于所述反馈信息对所述参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标。
一种可能的设计中,所述装置还包括创建模块,用于:
获取所述ADS的初始自动驾驶场景;
分析所述初始自动驾驶场景中的道路类型以及所述ADS对应的车辆在所述初始自动驾驶场景中行驶时安全违规的概率,基于分析结果,创建所述参考自动驾驶场景;其中,所述参考自动驾驶场景包括典型自动驾驶场景、缺失自动驾驶场景和易违规自动驾驶场景中的任一种或多种。
一种可能的设计中,所述安全违规参数包括所述ADS对应的车辆与其他车辆或行人的平行距离小于安全距离的概率,所述ADS对应的车辆与其他车辆或行人的垂直距离小于安全距离的概率,所述ADS对应的车辆违反交通灯指示的概率,所述ADS对应的车辆违反交通标志指示的概率,所述ADS对应的车辆违反交通警察指挥的概率和所述ADS对应的车辆超速的概率中的任一种或多种;
所述覆盖参数包括所述ADS对应的神经网络中激活的神经元的数量和所述ADS对应的神经网络的热力图中输入子集对预测结果的影响的权重中的任一种或多种。
一种可能的设计中,所述更新模块403,具体用于:
获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作;其中,所述动作空间中的动作为自动驾驶场景中的道路拓扑、道路降解、动态时间、动态天气、动态交通或景观信息的离散或连续更新;
基于所述选择的动作对所述参考驾驶场景进行更新。
一种可能的设计中,所述强化学习智能体为基于反馈信息确定奖励和当前所述ADS对应的车辆的状态,并基于所述奖励和当前所述ADS对应的车辆的状态从所述动作空间中选择动作的智能体;
其中,所述奖励为基于安全违规的奖励和基于覆盖的奖励之和,所述基于安全违规的奖励为基于所述反馈信息中的车辆控制指令更新所述ADS对应的车辆的状态后所述ADS对应的车辆的安全违规概率接近预设指标的接近程度,所述基于覆盖的奖励为基于所述反馈信息中的神经网络行为信息确定的所述参考自动驾驶场景的覆盖率接近预设指标的接近程度,所述ADS对应的车辆的状态用于指示所述ADS对应的车辆在所述参考自动驾驶场景中的位置。
一种可能的设计中,所述强化学习智能体的神经网络模型包括价值网络和策略网络,所述价值网络用于计算设定状态下的设定动作的价值,所述策略网络用于获取设定状态下的动作概率分布;所述装置还包括训练模块,用于:
获取当前所述ADS对应的车辆的第一状态,以及所述强化学习智能体基于所述策略网络从所述动作空间中选择的第一动作;
基于所述第一动作对所述参考自动驾驶场景进行更新,并获取所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息;
获取所述强化学习智能体基于所述反馈信息确定的所述第一动作的奖励和当前所述ADS对应的车辆的第二状态,以及基于所述策略网络从所述动作空间中选择的第二动作;
基于所述价值网络计算所述第一状态下的第一动作的第一价值和所述第二状态下的第二动作的第二价值;
基于所述第一价值、所述第二价值以及所述第一动作的奖励,确定时间差分误差;其中,所述时间差分误差为所述价值网络预测的价值和实际的价值之差;
获取所述价值网络和所述策略网络的梯度,并基于所述时间差分误差和所述价值网络的梯度更新所述价值网络的参数,基于所述时间差分误差和所述策略网络的梯度更新所述策略网络的参数。
基于同一技术构思,参见图5,本申请实施例还提供一种自动驾驶场景的生成系统500,包括:
至少一个处理器501;以及,与所述至少一个处理器501通信连接的通信接口503;
其中,所述至少一个处理器501通过执行存储器502存储的指令,使得所述自动驾驶场景的生成系统500执行图3所示的方法。
可选的,所述存储器502位于所述自动驾驶场景的生成系统500之外。
可选的,所述自动驾驶场景的生成系统500包括所述存储器502,所述存储器502与所述至少一个处理器501相连,所述存储器502存储有可被所述至少一个处理器501执行的指令。附图5用虚线表示存储器502对于自动驾驶场景的生成系统500是可选的。
其中,所述处理器501和所述存储器502可以通过接口电路耦合,也可以集成在一起,这里不做限制。
本申请实施例中不限定上述处理器501、存储器502以及通信接口503之间的具体连接介质。本申请实施例在图5中以处理器501、存储器502以及通信接口503之间通过总线504连接,总线在图5中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,本申请实施例中提及的处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
示例性地,处理器可以是中央处理单元(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processing or,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data eateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)可以集成在处理器中。
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
基于同一技术构思,本申请实施例还提供一种计算机存储介质,包括计算机指令,当所述计算机指令在计算机上运行时,使得如图3所示的方法被执行。
基于同一技术构思,本申请实施例还提供一种芯片,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的程序指令,使得如图3所示的方法被执行。
基于同一技术构思,本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得如图3所示的方法被执行。
应理解,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的保护范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (14)

1.一种自动驾驶场景的生成方法,其特征在于,包括:
获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息;其中,所述反馈信息包括车辆控制指令和神经网络行为信息;
基于所述反馈信息获取安全违规参数和覆盖参数;其中,所述安全违规参数用于指示在所述参考自动驾驶场景中所述ADS对应的车辆根据所述车辆控制指令行驶时安全违规的概率,所述覆盖参数用于指示在所述参考自动驾驶场景下进行测试时所述ADS对应的神经网络中激活的神经元和/或层级相关性;
若所述安全违规参数或所述覆盖参数不满足预设指标,则基于所述反馈信息对所述参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标。
2.如权利要求1所述的方法,其特征在于,获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息之前,还包括:
获取所述ADS的初始自动驾驶场景;
分析所述初始自动驾驶场景中的道路类型以及所述ADS对应的车辆在所述初始自动驾驶场景中行驶时安全违规的概率,基于分析结果,创建所述参考自动驾驶场景;其中,所述参考自动驾驶场景包括典型自动驾驶场景、缺失自动驾驶场景和易违规自动驾驶场景中的任一种或多种。
3.如权利要求1或2所述的方法,其特征在于,所述安全违规参数包括所述ADS对应的车辆与其他车辆或行人的平行距离小于安全距离的概率,所述ADS对应的车辆与其他车辆或行人的垂直距离小于安全距离的概率,所述ADS对应的车辆违反交通灯指示的概率,所述ADS对应的车辆违反交通标志指示的概率,所述ADS对应的车辆违反交通警察指挥的概率和所述ADS对应的车辆超速的概率中的任一种或多种;
所述覆盖参数包括所述ADS对应的神经网络中激活的神经元的数量和所述ADS对应的神经网络的热力图中输入子集对预测结果的影响的权重中的任一种或多种。
4.如权利要求1所述的方法,其特征在于,基于所述反馈信息对所述参考自动驾驶场景进行更新,包括:
获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作;其中,所述动作空间中的动作为自动驾驶场景中的道路拓扑、道路降解、动态时间、动态天气、动态交通或景观信息的离散或连续更新;
基于所述选择的动作对所述参考驾驶场景进行更新。
5.如权利要求4所述的方法,其特征在于,所述强化学习智能体为基于反馈信息确定奖励和当前所述ADS对应的车辆的状态,并基于所述奖励和当前所述ADS对应的车辆的状态从所述动作空间中选择动作的智能体;
其中,所述奖励为基于安全违规的奖励和基于覆盖的奖励之和,所述基于安全违规的奖励为基于所述反馈信息中的车辆控制指令更新所述ADS对应的车辆的状态后所述ADS对应的车辆的安全违规概率接近预设指标的接近程度,所述基于覆盖的奖励为基于所述反馈信息中的神经网络行为信息确定的所述参考自动驾驶场景的覆盖率接近预设指标的接近程度,所述ADS对应的车辆的状态用于指示所述ADS对应的车辆在所述参考自动驾驶场景中的位置。
6.如权利要求5所述的方法,其特征在于,所述强化学习智能体的神经网络模型包括价值网络和策略网络,所述价值网络用于计算设定状态下的设定动作的价值,所述策略网络用于获取设定状态下的动作概率分布;获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作之前,还包括:
获取当前所述ADS对应的车辆的第一状态,以及所述强化学习智能体基于所述策略网络从所述动作空间中选择的第一动作;
基于所述第一动作对所述参考自动驾驶场景进行更新,并获取所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息;
获取所述强化学习智能体基于所述反馈信息确定的所述第一动作的奖励和当前所述ADS对应的车辆的第二状态,以及基于所述策略网络从所述动作空间中选择的第二动作;
基于所述价值网络计算所述第一状态下的第一动作的第一价值和所述第二状态下的第二动作的第二价值;
基于所述第一价值、所述第二价值以及所述第一动作的奖励,确定时间差分误差;其中,所述时间差分误差为所述价值网络预测的价值和实际的价值之差;
获取所述价值网络和所述策略网络的梯度,并基于所述时间差分误差和所述价值网络的梯度更新所述价值网络的参数,基于所述时间差分误差和所述策略网络的梯度更新所述策略网络的参数。
7.一种自动驾驶场景的生成装置,其特征在于,包括:
第一获取模块,用于获取自动驾驶系统ADS在参考自动驾驶场景下进行测试时输出的反馈信息;其中,所述反馈信息包括车辆控制指令和神经网络行为信息;
第二获取模块,用于基于所述反馈信息获取安全违规参数和覆盖参数;其中,所述安全违规参数用于指示在所述参考自动驾驶场景中所述ADS对应的车辆根据所述车辆控制指令行驶时安全违规的概率,所述覆盖参数用于指示在所述参考自动驾驶场景下进行测试时所述ADS对应的神经网络中激活的神经元和/或层级相关性;
更新模块,用于若所述安全违规参数或所述覆盖参数不满足预设指标,则基于所述反馈信息对所述参考自动驾驶场景进行更新得到更新后的参考自动驾驶场景,直至基于所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息获取的安全违规参数和覆盖参数满足所述预设指标。
8.如权利要求7所述的装置,其特征在于,所述装置还包括创建模块,用于:
获取所述ADS的初始自动驾驶场景;
分析所述初始自动驾驶场景中的道路类型以及所述ADS对应的车辆在所述初始自动驾驶场景中行驶时安全违规的概率,基于分析结果,创建所述参考自动驾驶场景;其中,所述参考自动驾驶场景包括典型自动驾驶场景、缺失自动驾驶场景和易违规自动驾驶场景中的任一种或多种。
9.如权利要求7或8所述的装置,其特征在于,所述安全违规参数包括所述ADS对应的车辆与其他车辆或行人的平行距离小于安全距离的概率,所述ADS对应的车辆与其他车辆或行人的垂直距离小于安全距离的概率,所述ADS对应的车辆违反交通灯指示的概率,所述ADS对应的车辆违反交通标志指示的概率,所述ADS对应的车辆违反交通警察指挥的概率和所述ADS对应的车辆超速的概率中的任一种或多种;
所述覆盖参数包括所述ADS对应的神经网络中激活的神经元的数量和所述ADS对应的神经网络的热力图中输入子集对预测结果的影响的权重中的任一种或多种。
10.如权利要求7所述的装置,其特征在于,所述更新模块,具体用于:
获取强化学习智能体基于所述反馈信息从所述参考自动驾驶场景的动作空间中选择的动作;其中,所述动作空间中的动作为自动驾驶场景中的道路拓扑、道路降解、动态时间、动态天气、动态交通或景观信息的离散或连续更新;
基于所述选择的动作对所述参考驾驶场景进行更新。
11.如权利要求10所述的装置,其特征在于,所述强化学习智能体为基于反馈信息确定奖励和当前所述ADS对应的车辆的状态,并基于所述奖励和当前所述ADS对应的车辆的状态从所述动作空间中选择动作的智能体;
其中,所述奖励为基于安全违规的奖励和基于覆盖的奖励之和,所述基于安全违规的奖励为基于所述反馈信息中的车辆控制指令更新所述ADS对应的车辆的状态后所述ADS对应的车辆的安全违规概率接近预设指标的接近程度,所述基于覆盖的奖励为基于所述反馈信息中的神经网络行为信息确定的所述参考自动驾驶场景的覆盖率接近预设指标的接近程度,所述ADS对应的车辆的状态用于指示所述ADS对应的车辆在所述参考自动驾驶场景中的位置。
12.如权利要求11所述的装置,其特征在于,所述强化学习智能体的神经网络模型包括价值网络和策略网络,所述价值网络用于计算设定状态下的设定动作的价值,所述策略网络用于获取设定状态下的动作概率分布;所述装置还包括训练模块,用于:
获取当前所述ADS对应的车辆的第一状态,以及所述强化学习智能体基于所述策略网络从所述动作空间中选择的第一动作;
基于所述第一动作对所述参考自动驾驶场景进行更新,并获取所述ADS在所述更新后的参考自动驾驶场景下进行测试时输出的反馈信息;
获取所述强化学习智能体基于所述反馈信息确定的所述第一动作的奖励和当前所述ADS对应的车辆的第二状态,以及基于所述策略网络从所述动作空间中选择的第二动作;
基于所述价值网络计算所述第一状态下的第一动作的第一价值和所述第二状态下的第二动作的第二价值;
基于所述第一价值、所述第二价值以及所述第一动作的奖励,确定时间差分误差;其中,所述时间差分误差为所述价值网络预测的价值和实际的价值之差;
获取所述价值网络和所述策略网络的梯度,并基于所述时间差分误差和所述价值网络的梯度更新所述价值网络的参数,基于所述时间差分误差和所述策略网络的梯度更新所述策略网络的参数。
13.一种自动驾驶场景的生成系统,其特征在于,所述系统包括存储器和处理器;所述存储器,用于存储计算机指令;所述处理器,用于调用所述存储器存储的计算机指令,以执行如权利要求1-6中任一项所述的自动驾驶场景的生成方法。
14.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行如权利要求1-6任一项所述的自动驾驶场景的生成方法。
CN202180000816.2A 2021-04-19 2021-04-19 一种自动驾驶场景的生成方法、装置及系统 Active CN112997128B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/088037 WO2022221979A1 (zh) 2021-04-19 2021-04-19 一种自动驾驶场景的生成方法、装置及系统

Publications (2)

Publication Number Publication Date
CN112997128A CN112997128A (zh) 2021-06-18
CN112997128B true CN112997128B (zh) 2022-08-26

Family

ID=76337132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180000816.2A Active CN112997128B (zh) 2021-04-19 2021-04-19 一种自动驾驶场景的生成方法、装置及系统

Country Status (2)

Country Link
CN (1) CN112997128B (zh)
WO (1) WO2022221979A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113485300B (zh) * 2021-07-15 2022-10-04 南京航空航天大学 一种基于强化学习的自动驾驶车辆碰撞测试方法
CN113326639B (zh) * 2021-08-03 2021-11-02 北京赛目科技有限公司 一种自动驾驶测试场景的确定方法、装置及电子设备
CN113609784B (zh) * 2021-08-18 2024-03-22 清华大学 一种交通极限场景生成方法、系统、设备和存储介质
CN113867367B (zh) * 2021-11-30 2022-02-22 腾讯科技(深圳)有限公司 测试场景的处理方法、装置及计算机程序产品
CN117730289A (zh) * 2022-01-13 2024-03-19 华为技术有限公司 测试方法及装置
CN116802100A (zh) * 2022-01-21 2023-09-22 华为技术有限公司 智能驾驶功能或系统的控制方法及装置
CN115392438B (zh) * 2022-09-14 2023-07-07 吉林建筑大学 基于多Agent环境的深度强化学习算法、设备和存储介质
CN115900725B (zh) * 2023-01-06 2023-06-16 阿里巴巴达摩院(杭州)科技有限公司 路径规划装置、电子设备、存储介质和相关方法
CN116824207B (zh) * 2023-04-27 2024-04-12 国科赛赋河北医药技术有限公司 一种基于强化学习模式的多维病理图像分类和预警方法
CN117718973A (zh) * 2024-02-08 2024-03-19 国机传感科技有限公司 基于轴向加速度的机器人离散控制系统及方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108791302A (zh) * 2018-06-25 2018-11-13 大连大学 驾驶员行为建模系统
CN110531754A (zh) * 2018-05-24 2019-12-03 通用汽车环球科技运作有限责任公司 自主车辆的控制系统、控制方法和控制器
CN111444604A (zh) * 2020-03-24 2020-07-24 上海汽车集团股份有限公司 一种虚拟测试场景的检测方法及装置
EP3783446A1 (de) * 2019-08-21 2021-02-24 dSPACE digital signal processing and control engineering GmbH Computerimplementiertes verfahren und testeinheit zum approximieren einer teilmenge von testergebnissen
CN112703459A (zh) * 2018-09-14 2021-04-23 华为技术有限公司 对抗场景的迭代生成
CN112784485A (zh) * 2021-01-21 2021-05-11 中国科学院软件研究所 一种基于强化学习的自动驾驶关键场景生成方法
CN113158560A (zh) * 2021-04-09 2021-07-23 中国科学院合肥物质科学研究院 一种基于场景对抗的智能驾驶车辆自主能力测试方法
CN113609016A (zh) * 2021-08-05 2021-11-05 北京赛目科技有限公司 车辆自动驾驶测试场景的构建方法、装置、设备及介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109902899B (zh) * 2017-12-11 2020-03-10 百度在线网络技术(北京)有限公司 信息生成方法和装置
CN110378460B (zh) * 2018-04-13 2022-03-08 北京智行者科技有限公司 决策方法
US10955842B2 (en) * 2018-05-24 2021-03-23 GM Global Technology Operations LLC Control systems, control methods and controllers for an autonomous vehicle
CN111091739B (zh) * 2018-10-24 2022-08-02 百度在线网络技术(北京)有限公司 自动驾驶场景的生成方法、装置和存储介质
US11157006B2 (en) * 2019-01-10 2021-10-26 International Business Machines Corporation Training and testing automated driving models
CN110597086B (zh) * 2019-08-19 2023-01-13 深圳元戎启行科技有限公司 仿真场景生成方法、无人驾驶系统测试方法以及装置
US11899748B2 (en) * 2019-09-06 2024-02-13 Volkswagen Aktiengesellschaft System, method, and apparatus for a neural network model for a vehicle
CN111122175B (zh) * 2020-01-02 2022-02-25 阿波罗智能技术(北京)有限公司 测试自动驾驶系统的方法以及装置
CN111625457A (zh) * 2020-05-27 2020-09-04 多伦科技股份有限公司 基于改进的dqn算法的虚拟自动驾驶测试优化方法
CN111950726A (zh) * 2020-07-09 2020-11-17 华为技术有限公司 基于多任务学习的决策方法、决策模型训练方法及装置
CN112130472A (zh) * 2020-10-14 2020-12-25 广州小鹏自动驾驶科技有限公司 一种自动驾驶的仿真测试系统和方法
CN112256590B (zh) * 2020-11-12 2022-04-29 腾讯科技(深圳)有限公司 虚拟场景有效性判定方法、装置和自动驾驶系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110531754A (zh) * 2018-05-24 2019-12-03 通用汽车环球科技运作有限责任公司 自主车辆的控制系统、控制方法和控制器
CN108791302A (zh) * 2018-06-25 2018-11-13 大连大学 驾驶员行为建模系统
CN112703459A (zh) * 2018-09-14 2021-04-23 华为技术有限公司 对抗场景的迭代生成
EP3783446A1 (de) * 2019-08-21 2021-02-24 dSPACE digital signal processing and control engineering GmbH Computerimplementiertes verfahren und testeinheit zum approximieren einer teilmenge von testergebnissen
CN111444604A (zh) * 2020-03-24 2020-07-24 上海汽车集团股份有限公司 一种虚拟测试场景的检测方法及装置
CN112784485A (zh) * 2021-01-21 2021-05-11 中国科学院软件研究所 一种基于强化学习的自动驾驶关键场景生成方法
CN113158560A (zh) * 2021-04-09 2021-07-23 中国科学院合肥物质科学研究院 一种基于场景对抗的智能驾驶车辆自主能力测试方法
CN113609016A (zh) * 2021-08-05 2021-11-05 北京赛目科技有限公司 车辆自动驾驶测试场景的构建方法、装置、设备及介质

Also Published As

Publication number Publication date
WO2022221979A1 (zh) 2022-10-27
CN112997128A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
CN112997128B (zh) 一种自动驾驶场景的生成方法、装置及系统
Wang et al. Formulation of deep reinforcement learning architecture toward autonomous driving for on-ramp merge
Hülsen et al. Traffic intersection situation description ontology for advanced driver assistance
Koren et al. Efficient autonomy validation in simulation with adaptive stress testing
CN109991987B (zh) 自动驾驶决策方法及装置
JP6916552B2 (ja) 走行途中に発生する走行シナリオを検出して、運転者の走行習慣を評価するための情報の提供する方法及び装置
US20200192393A1 (en) Self-Modification of an Autonomous Driving System
US20190317510A1 (en) System and method for full-stack verification of autonomous agents
Johnson et al. Experimental Evaluation and Formal Analysis of High‐Level Tasks with Dynamic Obstacle Anticipation on a Full‐Sized Autonomous Vehicle
Tuncali Search-based test generation for automated driving systems: From perception to control logic
Cai et al. Rule‐constrained reinforcement learning control for autonomous vehicle left turn at unsignalized intersection
Oquendo Architecting exogenous software‐intensive systems‐of‐systems on the internet‐of‐vehicles with SosADL
Mohammed et al. Reinforcement learning and deep neural network for autonomous driving
Youssef et al. Deep reinforcement learning with external control: Self-driving car application
Arbabi et al. Planning for autonomous driving via interaction-aware probabilistic action policies
EP3920070A1 (en) Testing and simulation in autonomous driving
Peng et al. RTA-IR: A runtime assurance framework for behavior planning based on imitation learning and responsibility-sensitive safety model
Dagdanov et al. DeFIX: detecting and fixing failure scenarios with reinforcement learning in imitation learning based autonomous driving
Meftah et al. Transfer learning for autonomous vehicles obstacle avoidance with virtual simulation platform
Ma et al. Evolving testing scenario generation method and intelligence evaluation framework for automated vehicles
Hawasly et al. Perspectives on the system-level design of a safe autonomous driving stack
Khezaz et al. Driving Context Detection and Validation using Knowledge-based Reasoning.
Sylnice et al. Dynamic evolution of simulated autonomous cars in the open world through tactics
Reddy et al. A Review on Autopilot using Neuro Evaluation of Augmenting Topologies
Pagojus et al. Simulation and Model Checking for Close to Realtime Overtaking Planning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant