CN116629114A - 多智能体的模型训练方法、系统、计算机设备和存储介质 - Google Patents

多智能体的模型训练方法、系统、计算机设备和存储介质 Download PDF

Info

Publication number
CN116629114A
CN116629114A CN202310581383.5A CN202310581383A CN116629114A CN 116629114 A CN116629114 A CN 116629114A CN 202310581383 A CN202310581383 A CN 202310581383A CN 116629114 A CN116629114 A CN 116629114A
Authority
CN
China
Prior art keywords
agent
data
model
intelligent agent
intelligent
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.)
Pending
Application number
CN202310581383.5A
Other languages
English (en)
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.)
Ningbo Lutes Robotics Co ltd
Original Assignee
Ningbo Lutes Robotics 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 Ningbo Lutes Robotics Co ltd filed Critical Ningbo Lutes Robotics Co ltd
Priority to CN202310581383.5A priority Critical patent/CN116629114A/zh
Publication of CN116629114A publication Critical patent/CN116629114A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M17/00Testing of vehicles
    • G01M17/007Wheeled or endless-tracked vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computer Hardware Design (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及一种多智能体的模型训练方法、系统、计算机设备和存储介质。所述方法包括:获取仿真场景中各智能体在各时刻的行驶数据;根据行驶数据,利用预设控制策略,计算各智能体在各时刻的规划数据;以各时刻的行驶数据以及规划数据为基础,制备训练样本;将训练样本输入到DRL模拟器的DNN神经网络架构中,以行驶数据作为模型输入、规划数据作为模型输出,根据智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。采用本方法能够无偏见地模拟交通场景中的长尾事件,同时兼顾长尾性和高维性;智能体之间相互影响和作用,可以通过协作、竞争、博弈等方式相互作用,共同完成任务。

Description

多智能体的模型训练方法、系统、计算机设备和存储介质
技术领域
本申请涉及自动驾驶测试技术领域,特别是涉及一种多智能体的模型训练方法、系统、计算机设备和存储介质。
背景技术
随着汽车自动驾驶技术的发展,自动驾驶测试技术越来越多元化。在实车测试中,驾驶员以“控制器”的角色,对车辆进行主观测试。在仿真测试中,对于交通参与者或智能体(tg)中的关键目标,通常配置有使用条件及动作,以控制关键目标的行为。现有针对大规模交通流环境,采用IDM模型(IDM,Intelligent Driver Model)以及MOBIL模型(MOBIL,Minimize Overall Braking Induced by Lane change)作为交通参与者横纵向的“控制器”角色。
然而,驾驶员本身可能会突发异常导致事故、或者驾驶员受环境因素作出不安全驾驶行为等情况,目前的IDM模型和MOBIL模型无法模拟出此类长尾行为。如果只能使用IDM模型和MOBIL模型控制交通参与者对主车进行测试,那么仿真过程中,长尾事件存在的概率极低,导致测试效率低下且难以捕捉长尾事件。人为配置的使用条件及动作以控制长尾仿真交通场景,存在搭建耗时、具有偏见、智能性不足等缺点,交通参与者无法处理高维动作,且行为模式单一,从而导致该类场景无法达到对主车进行智能性测试的要求。自动驾驶智能性测试在本质上是一个稀有事件在高维变量下的近似问题,但现在缺少同时兼顾长尾性和高维性的方案。
发明内容
基于此,有必要针对上述技术问题,提供一种兼顾长尾性和高维性的多智能体的模型训练方法、系统、计算机设备和存储介质。
本申请提供了一种多智能体的模型训练方法,应用于仿真测试中各智能体的控制器,所述方法包括:
获取仿真场景中各智能体在各时刻的行驶数据;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
在其中一个实施例中,所述获取仿真场景中各智能体在各时刻的行驶数据的步骤之前,包括:
搭建多智能体模型的初始仿真模型,所述初始仿真模型中加载有环形轨道和一个或多个智能体,通过所述环形轨道驱使各所述智能体在固定维度下无限环路行驶;
利用IDM算法以及MOBIL算法控制各所述智能体在所述环形轨道上执行预配置的驾驶任务,以便各所述智能体生成本地观测的行驶数据。
在其中一个实施例中,所述获取仿真场景中各智能体在各时刻的行驶数据的步骤,包括:
针对多个智能体,以其中任一所述智能体作为测试对象,搭建以所述测试对象为主的Frenet坐标系和全局坐标系;
利用所述Frenet坐标系和全局坐标系,获取所述测试对象本地观测的行驶数据;其中,所述行驶数据包括:
前方可行驶区域A=(xf,xr,xref);
xf表示智能体的前界,xf=(xf,yf,vf,af);
xr表示智能体的后界,xr=(xr,yr,vr,af);
在x、y为界中心点的全局坐标系中,v表示速度,a表示加速度;xref表示参考路径,通过所述Frenet坐标系表示所述参考路径。
在其中一个实施例中,所述预设控制策略包括纵向控制策略;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据的步骤,包括:
利用所述纵向控制策略中的增益公式a=Kp(vr-v),计算当前规划数据中的加速度;其中,v表示所述智能体的实际速度,vr表示所述智能体的期望速度,Kp表示预配置的增益比例。
在其中一个实施例中,所述预设控制策略包括横向控制策略;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据的步骤,包括:
获取行驶数据中所述智能体相对于车道中心线的横向位置Δlat
利用vlat,r=-Kp,latΔlat,将所述横向位置Δlat转换为横向速度指令vlat,r,其中,Kp,lat表示位置的比例控制增益;
利用将横向速度指令vlat,r的航向变化映射为Δψr
利用ψr=ψL+Δψr以及计算车道航向ψL、以及跟随车道航向和位置的目标航向ψr,其中,Kp,ψ表示航向的比例控制增益;
将目标航向ψr转换横摆率指令利用/>将横摆率指令ψr转换为前轮角度控制{。
在其中一个实施例中,针对同时刻仿真场景中的多个智能体,确定测试对象的同时,还确定其他智能体为参考对象;
将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法以进行模型训练,得到所需的多智能体模型的步骤,包括:
获取所述样本数据,确定所述样本数据的测试对象;
当所述智能体作为所述测试对象时,分配PPO算法,当智能体作为所述参考对象时,保持使用IDM算法、MOBIL算法在内的驾驶任务算法;
针对同时刻仿真场景中的多个智能体,通过所述PPO算法和驾驶任务算法的组合,进行模型训练,以得到所需的多智能体模型。
在其中一个实施例中,所述制备训练样本的步骤,还包括:
针对测试对象的行驶数据中,添加参考对象的行驶数据,以便所述智能体之间通信,从而基于所述智能体间的通信行为,获取参考对象的行驶数据后,输出符合预配置安全检查的规划数据。
本申请提供了一种多智能体的模型训练系统,所述系统包括:第一获取模块、第二获取模块、样本制备模块以及模型训练模块,其中,
第一获取模块,用于获取仿真场景中各智能体在各时刻的行驶数据;
第二获取模块,用于根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
样本制备模块,用于以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
模型训练模块,用于将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
本申请提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取仿真场景中各智能体在各时刻的行驶数据;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取仿真场景中各智能体在各时刻的行驶数据;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
上述多智能体的模型训练方法、系统、计算机设备和存储介质,通过获取仿真场景中各智能体在各时刻的行驶数据,作为训练模型的输入数据;根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据,作为训练模型的输出数据,以此获取各仿真场景下的样本数据,将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。通过多智能体的模型训练方法训练完成的控制器,可以无偏见地模拟交通场景中的长尾事件,同时兼顾长尾性和高维性。智能体之间相互影响和作用,可以通过协作、竞争、博弈等方式相互作用,共同完成任务,该训练框架下训练出的控制器,行为逻辑自洽;可以兼容不同仿真环境;可以模拟复杂多变的交通场景中出现的罕见但重要的事件(如事故、紧急刹车等),提高仿真效果和安全性;解决了多智能体之间的交互和协调问题,在不同情境下生成合理且有效的行为策略;同时可以更好地适应不同类型和规模的仿真环境,并保证输入输出格式统一且易于处理。
附图说明
图1为一个实施例中多智能体的模型训练方法的流程示意图;
图2为一个实施例中多智能体的模型工作原理图;
图3为一个实施例中多智能体的交通流示意图;
图4为一个实施例中环形轨道结构示意图;
图5为一个实施例中环形轨道剖视结构示意图;
图6为一个实施例中DNN模型中测试对象的本地监测示意图;
图7为一个实施例中DNN模型中测试对象的规划示意图;
图8为一个实施例中多智能体的仿真比较图;
图9为一个实施例中多智能体的模型训练系统的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当……时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。本申请使用的术语“或”、“和/或”、“包括以下至少一个”等可被解释为包括性的,或意味着任一个或任何组合。例如,“包括以下至少一个:A、B、C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A和B和C”,再如,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A和B和C”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
应该理解的是,虽然本申请实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
需要说明的是,在本文中,采用了诸如S10、S20等步骤代号,其目的是为了更清楚简要地表述相应内容,不构成顺序上的实质性限制,本领域技术人员在具体实施时,可能会先执行S20后执行S10等,但这些均应在本申请的保护范围之内。
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
在一个实施例中,提供了一种多智能体的模型训练方法,应用于仿真测试中各智能体的控制器。如图1所示,提供的多智能体的模型训练方法流程示意图,包括以下步骤:
步骤S10,获取仿真场景中各智能体在各时刻的行驶数据;
步骤S20,根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
步骤S30,以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
步骤S40,将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
在步骤S10,所述获取仿真场景中各智能体在各时刻的行驶数据的步骤之前,包括:搭建多智能体模型的初始仿真模型,所述初始仿真模型中加载有环形轨道和一个或多个智能体,通过所述环形轨道驱使各所述智能体在固定维度下无限环路行驶;利用IDM算法以及MOBIL算法控制各所述智能体在所述环形轨道上执行预配置的驾驶任务,以便各所述智能体生成本地观测的行驶数据。
其中,IDM算法用于构建交通流模型,以描述道路上个体驾驶员行为,基于驾驶员在驾驶过程中试图优化自己舒适度和安全性的想法,根据周围车辆的行动调整本地车辆的速度和跟随距离。IDM算法通常用于模拟预测交通流动,并评估交通控制系统的性能,还用于设计和优化运输系统和基础设施。MOBIL算法用于构建车道变换模型,用于预测和评估交通流中车道变换的安全性,以便驾驶员避免可能导致突然刹车或其他不安全情况的进行车道变换。
本实施例中的初始仿真模型采用代理模型(SMs,Surrogate Models),代理模型是在原模型的基础上构建的更简单或更高效的模型,用于加速模型和优化等任务。本实施例的初始仿真模型采用IDM算法以及MOBIL算法控制各智能体作为交通参与者进行基础模拟训练。进一步地,当智能体选中为测试对象时,将IDM算法以及MOBIL算法替换为PPO算法,具体参考附图2所示的仿真模型工作原理示意图。
其中,在训练过程中,如图2所示,左侧圈出的智能体表示参考对象,通过参考对象表示正常驾驶行为和正常的交通流动,右侧圈出的智能体表示测试对象,通过学习交通场景中的行为规则和驾驶技巧,来完成各种驾驶任务。
由于本实施例中的各智能体所对应的模型输入需要连续空间和固定维度,因此,在有限范围的普通仿真环境中,智能体在边界处无法获取仿真环境以外的前方感知信息,因此不符合真实场景中的交通流动场景。本实施例采用环形轨道,如图4-5所示的环形轨道示意图以及剖视图,各智能体在环形轨道中训练时,可以不考虑边界问题,也就是说,智能体可以无限地绕着环形轨道行驶,从而保证智能体所对应控制器的模型输入始终保持连续且维度固定。
在步骤S10,获取仿真场景中各智能体在各时刻的行驶数据的步骤,包括:
针对多个智能体,以其中任一所述智能体作为测试对象,搭建以所述测试对象为主的Frenet坐标系和全局坐标系;
利用所述Frenet坐标系和全局坐标系,获取所述测试对象本地观测的行驶数据;其中,所述行驶数据包括:
前方可行驶区域A=(xf,xr,xref);
xf表示智能体的前界,xf=(xf,yf,vf,af);
xr表示智能体的后界,xr=(xr,yr,vr,ar);
在x、y为界中心点的全局坐标系中,v表示速度,a表示加速度;xref表示参考路径,通过所述Frenet坐标系表示所述参考路径。
其中,xref表示参考路径的信息,比如,前界与后界的里程距离l。通过Frenet坐标系表示参考路径,Frenet坐标系呈“蛇形”体现,根据不同的目标定义不同的参考路径的原点,每个参考路径都有自己的Frenet坐标系(即为,蛇的形状不同)。随着仿真进行,每辆智能体的实时动态变化。进一步说明,给定一行驶在参考路径上的智能体,其绝对坐标(x(t),y(t))转换为沿路径的纵向位置s(t)和路径的横向偏差d(t),举例说明,在当前时刻的智能体可以选择左中右3条蛇形路径,xref的数量为3且实时变换(蛇的长短,xf和xr决定了蛇头和蛇尾)。
在一种实施例中,步骤S20中的预设控制策略包括纵向控制策略。进一步,在步骤S20,根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据的步骤,包括:
利用所述纵向控制策略中的增益公式a=Kp(vr-v),计算当前规划数据中的加速度;其中,v表示所述智能体的实际速度,vr表示所述智能体的期望速度,Kp表示预配置的增益比例。
在一种实施例中,步骤S20中的预设控制策略包括横向控制策略。进一步,在步骤S20,根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据的步骤,包括:
获取行驶数据中所述智能体相对于车道中心线的横向位置Δlat
利用vlat,r=-Kp,latΔlat,将所述横向位置Δlat转换为横向速度指令vlat,r,其中,Kp,lat表示位置的比例控制增益;
利用将横向速度指令vlat,r的航向变化映射为Δψr
利用ψr=ψL+Δψr以及计算车道航向ψL、以及跟随车道航向和位置的目标航向ψr,其中,Kp,ψ表示航向的比例控制增益;
将目标航向ψr转换横摆率指令利用/>将横摆率指令/>转换为前轮角度控制{。
进一步说明,智能体通过横纵两个方向的控制策略,控制低级驾驶行为,以此达到高级驾驶行为,比如,巡航控制和车道变更。通过纵向控制策略获取速度,进而允许在离散的速度范围内的控制车辆,比如(60,80,3)表示目标速度为60、70、80三档。通过横向控制策略获取左变道、右变道及保持不变在内的三种高级别控制信号。其中,根据各智能体预配置的车辆性能、速度及加速度状态,控制智能体到达目标速度和目标车道的时间。通过预配置的控制手段,能够将高级的车辆控制指令转换为低级的运动学控制信号,使智能体能够巡航并保持在给定车道的中心线上行驶。
在步骤S30,以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本的步骤中,将各智能体的各时刻的行驶数据和规划数据作为一组样本数据,获取多个智能体在多个时刻的样本数据。
在步骤S40中,针对同时刻仿真场景中的多个智能体,确定测试对象的同时,还确定其他智能体为参考对象。步骤S40,将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法以进行模型训练,得到所需的多智能体模型的步骤,包括:
步骤S41,获取所述样本数据,确定所述样本数据的测试对象;
步骤S42,当所述智能体作为所述测试对象时,分配PPO算法,当智能体作为所述参考对象时,保持使用IDM算法、MOBIL算法在内的驾驶任务算法;
步骤S43,针对同时刻仿真场景中的多个智能体,通过所述PPO算法和驾驶任务算法的组合进行模型训练,以得到所需的多智能体模型。
其中,深度强化学习DRL(DRL,deep reinforcement learning)的核心是深度神经网络(DNN),深度强化学习DRL是一种结合深度学习和强化学习的技术,旨在让智能体能够通过与环境的交互来学习执行任务的最佳策略,与传统的机器学习算法不同,深度强化学习DRL的算法不需要明确的标签或先验知识。相反,机器通过与环境交互来学习如何选择最佳的行动,以最大化奖励或最小化惩罚。而深度强化学习DRL由于其核心是深度神经网络DNN,可以从大量的输入数据中提取特征并预测最佳动作。深度神经网络DNN可以通过多种算法来训练,使得智能体可以在不断的试错中逐渐调整策略,以获得更好的结果。
在一种实施例中,深度神经网络DNN的输入数据为智能体的本地观测,比如,以智能体为主视角,其有关周围环境的全局观测、局部观测、TTC等行驶数据,被前述的所涵盖,比如TTC等效于/>如图6所示,轨道上包括障碍物和智能体,智能体正以一定速度在最右侧车道向前行驶。左侧的3行14列数组表示车辆动作空间的左、中、右三个位置的TTC信息。第3行全为1表示右侧不能通行。第2行第2列标记为0.5表示前方1秒存在障碍物。第一行全为0表示左侧可以通行。
深度神经网络DNN的输出数据为智能体的规划轨迹,即规划数据,已知当前智能体的状态及当前智能体的动作,利用预配置的控制策略所呈现的车辆动力学,即可得出智能体未来的位置信息,如图7所示,测试对象的轨迹规划示意图。根据测试对象1s前的行驶数据,计算测试对象在1s后的规划数据。
本实施例中对所述测试对象分配PPO(Proximal Policy Optimization,近端策略优化)算法,通过所述PPO算法对测试对象的控制器进行模型训练。基于近端策略优化的算法,过大的策略更新的幅度可以被剪切技术限制住。PPO算法由OpenAI提出,利用DRL技术进行控制器决策时,使用马尔可夫决策过程的原理对复杂驾驶环境进行建模。进一步说明,本实施例将测试对象周围的状态视为马尔可夫状态,将测试对象的每一时刻控制动作,视为决策过程的动作,采用决策树表示交通片段场景,从初始状态到结束状态,以此实现将连续的高维环境转化为时空独立的离散环境,加速模型的训练与推理,在一种实施例中,利用配备有AMD 5600X、16G RAM、GTX 1080ti的计算机进行模型训练,在实操过程中,单个任务学习过程仅用大约30分钟即可收敛。
本实施例中的多智能体模型通常基于仿真模型中一系列的组合驾驶任务,比如,避障、到达目的地、或违反交通规则等,仿真模型的训练策略以这些组合驾驶任务为目标,并通过最大化回报来实现多智能体模型的核心训练目标。
针对仿真模型中的任一智能体,通常以快速通行、避免碰撞目的,在一种实施例中,公式:采用由速度项和碰撞项组成的奖励函数来实现多智能体模型的最大化回报,以便确认模型训练后收敛。
进一步说明,本实施例中得到的多智能体模型基于深度强化学习DRL技术,是一种强化学习中的一种模型,由多个智能体以不同的角色参与任务完成。在任意时刻的仿真场景中,智能体之间相互影响相互作用,可以通过协作、竞争、博弈等方式相互作用,共同完成任务。本实施例中的多智能体模型可以广泛应用于机器人控制、智能交通等领域。进一步地,通过多智能体模型搭建多智能体交通环境,进而同时训练及部署多辆基于DRL的智能体。
在一种实施例中,制备训练样本的步骤,还包括:针对测试对象的行驶数据中,添加参考对象的行驶数据,以便所述智能体之间通信,从而基于所述智能体间的通信行为,获取参考对象的行驶数据后,输出符合预配置安全检查的规划数据。
进一步说明,多智能体模型中,通过添加参考对象的行驶数据,可以以主观视角观测参考对象的驾驶行为。相当于多智能体模型添加了智能体之间的额外通信,通信内容为各自对标真实交通环境中,经验丰富的驾驶员可以通过观测他车的刹车、转向灯等驾驶行为,对当前交通情况做出判断,并给出合理的驾驶动作。基于所述智能体间的通信行为,多智能体模型还预配置有基于(TTC,Time to collision)的安全检查系统(SCS,Safey CheckSystem),各智能体在执行自动驾驶车辆的驾驶任务之前,预先进行安全检查,以此保证整个智能体系统的安全。如下表所示,
表1
如表1所示,带安全检查的PPO算法,使得多智能体可以满足包括安全性和秩序合理性在内的综合要求。
碰撞检测是通过计算匀速、加速、减速三种行驶情况下的碰撞时间TTC来实现的。基于智能体之间相互通信,当发现有碰撞风险时,产生更安全的驾驶动作,以替代控制器预配置的输出动作。其执行步骤包括:首先,所有的智能体根据控制器预配置的输出动作计算碰撞时间,并将其广播给其他智能体;每个智能体根据收到的碰撞时间对其他智能体进行风险排序;如果某个智能体的碰撞时间低于时间阈值,它就被认为是高危智能体,并且会优先选择更安全的动作。进一步重新计算每个可能的动作所对应的碰撞时间,并选取碰撞时间最大的那个动作作为新动作。在选择新动作后,高危智能体会广播自己的目标车道和速度给其他智能体;最后,低危智能体会重复上述过程,直到所有智能体都达到安全状态。
如图8所示,仿真结果表明,即使在交通密集的情况下,本实施例得到的多智能体模型也能有效提高到达率,降低碰撞率。附图中的横坐标表示训练时间,纵坐标表示多智能体完成任务的次数,位于上方的曲线表示带安全检测SCS的碰撞时间TTC输入,相比不带安全检测SCS的碰撞时间TTC的输入和运动学(Kinemat)输入有大幅提升。
上述多智能体的模型训练方法,通过获取仿真场景中各智能体在各时刻的行驶数据,作为训练模型的输入数据;根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据,作为训练模型的输出数据,以此获取各仿真场景下的样本数据,将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。通过多智能体的模型训练方法训练完成的控制器,可以无偏见地模拟交通场景中的长尾事件,同时兼顾长尾性和高维性。智能体之间相互影响和作用,可以通过协作、竞争、博弈等方式相互作用,共同完成任务,该训练框架下训练出的控制器,行为逻辑自洽;可以兼容不同仿真环境;可以模拟复杂多变的交通场景中出现的罕见但重要的事件(如事故、紧急刹车等),提高仿真效果和安全性;解决了多智能体之间的交互和协调问题,在不同情境下生成合理且有效的行为策略;同时可以更好地适应不同类型和规模的仿真环境,并保证输入输出格式统一且易于处理。
在一个实施例中,如图9所示,提供了一种多智能体的模型训练系统,包括:第一获取模块100、第二获取模块200、样本制备模块300以及模型训练模块400,其中:
第一获取模块100,用于获取仿真场景中各智能体在各时刻的行驶数据。
第二获取模块200,用于根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据。
样本制备模块300,用于以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本。
模型训练模块400,用于将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
关于多智能体的模型训练系统的具体限定可以参见上文中对于多智能体的模型训练方法的限定,在此不再赘述。上述多智能体的模型训练系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储样本数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多智能体的模型训练方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取仿真场景中各智能体在各时刻的行驶数据;根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取仿真场景中各智能体在各时刻的行驶数据;根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种多智能体的模型训练方法,应用于仿真测试中各智能体的控制器,其特征在于,所述方法包括:
获取仿真场景中各智能体在各时刻的行驶数据;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
2.根据权利要求1所述的多智能体的模型训练方法,其特征在于,所述获取仿真场景中各智能体在各时刻的行驶数据的步骤之前,包括:
搭建多智能体模型的初始仿真模型,所述初始仿真模型中加载有环形轨道和一个或多个智能体,通过所述环形轨道驱使各所述智能体在固定维度下无限环路行驶;
利用IDM算法以及MOBIL算法控制各所述智能体在所述环形轨道上执行预配置的驾驶任务,以便各所述智能体生成本地观测的行驶数据。
3.根据权利要求2所述的多智能体的模型训练方法,其特征在于,所述获取仿真场景中各智能体在各时刻的行驶数据的步骤,包括:
针对多个智能体,以其中任一所述智能体作为测试对象,搭建以所述测试对象为主的Frenet坐标系和全局坐标系;
利用所述Frenet坐标系和全局坐标系,获取所述测试对象本地观测的行驶数据;其中,所述行驶数据包括:
前方可行驶区域
表示智能体的前界,/>
表示智能体的后界,/>
在x、y为界中心点的全局坐标系中,v表示速度,a表示加速度;表示参考路径,通过所述Frenet坐标系表示所述参考路径。
4.根据权利要求1所述的多智能体的模型训练方法,其特征在于,所述预设控制策略包括纵向控制策略;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据的步骤,包括:
利用所述纵向控制策略中的增益公式a=Kp(vr-v),计算当前规划数据中的加速度;其中,v表示所述智能体的实际速度,vr表示所述智能体的期望速度,Kp表示预配置的增益比例。
5.根据权利要求X所述的多智能体的模型训练方法,其特征在于,所述预设控制策略包括横向控制策略;
根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据的步骤,包括:
获取行驶数据中所述智能体相对于车道中心线的横向位置Δlat
利用vlat,r=-Kp,latΔlat,将所述横向位置Δlat转换为横向速度指令vlat,r,其中,Kp,lat表示位置的比例控制增益;
利用将横向速度指令vlat,r的航向变化映射为Δψr
利用ψr=ψL+Δψr以及计算车道航向ψL、以及跟随车道航向和位置的目标航向ψr,其中,Kp,ψ表示航向的比例控制增益;
将目标航向ψr转换横摆率指令利用/>将横摆率指令/>转换为前轮角度控制δ。
6.根据权利要求X所述的多智能体的模型训练方法,其特征在于,针对同时刻仿真场景中的多个智能体,确定测试对象的同时,还确定其他智能体为参考对象;
将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法以进行模型训练,得到所需的多智能体模型的步骤,包括:
获取所述样本数据,确定所述样本数据的测试对象;
当所述智能体作为所述测试对象时,分配PPO算法,当智能体作为所述参考对象时,保持使用IDM算法、MOBIL算法在内的驾驶任务算法;
针对同时刻仿真场景中的多个智能体,通过所述PPO算法和驾驶任务算法的组合,进行模型训练,以得到所需的多智能体模型。
7.根据权利要求X所述的多智能体的模型训练方法,其特征在于,所述制备训练样本的步骤,还包括:
针对测试对象的行驶数据中,添加参考对象的行驶数据,以便所述智能体之间通信,从而基于所述智能体间的通信行为,获取参考对象的行驶数据后,输出符合预配置安全检查的规划数据。
8.一种多智能体的模型训练系统,其特征在于,所述系统包括:
第一获取模块,用于获取仿真场景中各智能体在各时刻的行驶数据;
第二获取模块,用于根据所述行驶数据,利用预设控制策略,计算各所述智能体在各时刻的规划数据;
样本制备模块,用于以各时刻的所述行驶数据以及所述规划数据为基础,制备训练样本;
模型训练模块,用于将所述训练样本输入到DRL模拟器的DNN神经网络架构中,以所述行驶数据作为模型输入、所述规划数据作为模型输出,根据所述智能体的角色分配算法,以进行模型训练,得到所需的多智能体模型。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202310581383.5A 2023-05-22 2023-05-22 多智能体的模型训练方法、系统、计算机设备和存储介质 Pending CN116629114A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310581383.5A CN116629114A (zh) 2023-05-22 2023-05-22 多智能体的模型训练方法、系统、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310581383.5A CN116629114A (zh) 2023-05-22 2023-05-22 多智能体的模型训练方法、系统、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN116629114A true CN116629114A (zh) 2023-08-22

Family

ID=87609297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310581383.5A Pending CN116629114A (zh) 2023-05-22 2023-05-22 多智能体的模型训练方法、系统、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN116629114A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117933096A (zh) * 2024-03-21 2024-04-26 山东省科学院自动化研究所 一种无人驾驶对抗测试场景生成方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117933096A (zh) * 2024-03-21 2024-04-26 山东省科学院自动化研究所 一种无人驾驶对抗测试场景生成方法及系统

Similar Documents

Publication Publication Date Title
CN111222630B (zh) 一种基于深度强化学习的自主驾驶规则学习方法
Althoff et al. Model-based probabilistic collision detection in autonomous driving
EP3588226B1 (en) Method and arrangement for generating control commands for an autonomous road vehicle
CN111795832B (zh) 一种智能驾驶车辆测试方法、装置及设备
DE102020103509A1 (de) Erkennung und vermeidung von kollisionsverhalten
Banjanovic-Mehmedovic et al. Autonomous vehicle-to-vehicle (v2v) decision making in roundabout using game theory
CN111332283A (zh) 用于控制机动车的方法和系统
CN113581182B (zh) 基于强化学习的自动驾驶车辆换道轨迹规划方法及系统
CN114564016A (zh) 一种结合路径规划和强化学习的导航避障控制方法、系统及模型
CN111290399B (zh) 一种车队协同驾驶组队控制方法
JP7048455B2 (ja) 学習装置、シミュレーションシステム、学習方法、およびプログラム
CN111661045B (zh) 训练用于察觉碰撞的轨迹预测的生成器单元和鉴别器单元
CN114013443A (zh) 一种基于分层强化学习的自动驾驶车辆换道决策控制方法
Liu et al. A three-level game-theoretic decision-making framework for autonomous vehicles
CN116629114A (zh) 多智能体的模型训练方法、系统、计算机设备和存储介质
Wei et al. Game theoretic merging behavior control for autonomous vehicle at highway on-ramp
CN112784867A (zh) 利用合成图像训练深度神经网络
CN115079697A (zh) 一种结合深度强化学习和rss策略的商用车队列路径规划方法、控制器、存储装置
CN111290400A (zh) 一种车队协同驾驶拆分控制方法
Kaur et al. Scenario-based simulation of intelligent driving functions using neural networks
CN116127853A (zh) 融合时序信息的基于ddpg的无人驾驶超车决策方法
CN113635900B (zh) 一种预测巡航过程中基于能量管理的换道决策控制方法
US20230192118A1 (en) Automated driving system with desired level of driving aggressiveness
CN111267858B (zh) 一种车队协同驾驶换道控制方法
CN114148349A (zh) 一种基于生成对抗模仿学习的车辆个性化跟驰控制方法

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