掌桥专利:专业的专利平台
掌桥专利
首页

车辆处理方法、装置、计算机设备及存储介质

文献发布时间:2023-06-19 16:04:54



技术领域

本申请涉及互联网技术领域,具体涉及自动驾驶领域,尤其涉及一种车辆处理方法、装置、计算机设备及存储介质。

背景技术

在诸如自动驾驶仿真等仿真场景中,通常需要在地图中设置持续进入仿真系统的背景交通车辆,以验证测试车辆在交通流中的决策算法。其中,测试车辆是指搭载有需进行测试验证的决策算法(或称为自动驾驶算法)的仿真车辆,其可以是仿真场景中的主车或者其他车辆,对此不作限定;背景交通车辆可简称为交通车辆,其是指在仿真场景中用于影响测试车辆的驾驶决策行为的其他车辆。目前,通常是由用户依次手工添加若干辆交通车辆,并分别定义各交通车辆的驾驶行为的;这种依赖于手工的车辆设置方式,可能会造成用户生成的交通车辆不符合交通规律,且会因操作繁琐而导致效率低下。

发明内容

本申请实施例提供了一种车辆处理方法、装置、计算机设备及存储介质,可以自动地在指定区域中持续产生符合交通规律的交通车辆,提升交通车辆的合理性以及车辆设置效率。

一方面,本申请实施例提供了一种车辆处理方法,所述方法包括:

根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;

每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系。

另一方面,本申请实施例提供了一种车辆处理装置,所述装置包括:

确定单元,用于根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;

处理单元,用于每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系。

再一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括输入接口和输出接口,所述计算机设备还包括:

处理器,适于实现一条或多条指令;以及,

计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:

根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;

每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系。

再一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如下步骤:

根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;

每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系。

再一方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序;所述计算机程序被处理器执行时,实现上述所提及的车辆处理方法。

本申请实施例可根据出车点在道路区域中的参考点,从道路区域中确定出车点的出车区域,该出车区域可以是以参考点为中心,基于一定半径所确定出的圆形区域;每当出车点的出车时刻到达时,控制出车点根据交通基本图在出车区域中产生交通车辆。由于交通基本图描述了交通网络中的交通流量、车流密度和速度之间的关系,因此通过结合交通基本图所产生的交通车辆对应的车流密度和速度均符合客观的交通规律。可见,本申请实施例可通过支持用户通过简单地设置一些参数(如用于产生交通基本图的参数等),实现出车点根据交通基本图自动在固定位置(参考点)周边一定半径的出车区域内持续产生一些符合交通规律的交通车辆,这样可有效交通车辆的合理性以及车辆设置效率。

附图说明

为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1a是本申请实施例提供的一种交通基本图的示意图;

图1b是本申请实施例提供的另一种交通基本图的示意图;

图2是本申请实施例提供的一种车辆处理方法的流程示意图;

图3a是本申请实施例提供的一种出车区域的示意图;

图3b是本申请实施例提供的一种出车区域是否覆盖车道的示意图;

图3c是本申请实施例提供的一种基于车辆的质心确定区域的示意图;

图4是本申请另一实施例提供的一种车辆处理方法的流程示意图;

图5a是本申请实施例提供的一种与参考点相邻的车道中心线的示意图;

图5b是本申请实施例提供的一种确定出车点的主车道的示意图;

图5c是本申请实施例提供的一种确定出车点的从车道的示意图;

图5d是本申请实施例提供的一种主车道的出车线的示意图;

图5e是本申请实施例提供的一种出车区域覆盖无关区域中的部分区域的示意图;

图5f是本申请实施例提供的一种主车道的出车线以及从车道的出车线的示意图;

图5g是本申请实施例提供的一种确定当前位置的示意图;

图6是本申请实施例提供的一种在出车区域中产生交通车辆的流程示意图;

图7是本申请实施例提供的一种车辆处理装置的结构示意图;

图8是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

本申请实施例涉及人工智能(Artificial Intelligence,AI)技术,所谓的人工智能技术是指利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。

随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如:自动驾驶、无人驾驶、常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人机、机器人、智能医疗、智能客服、智能视频服务,等等。其中,自动驾驶技术通常可包括自动驾驶仿真和实车测试(即控制车辆在实际车道上行驶),且自动驾驶仿真作为一种零风险、快速迭代、可复现的测试方法,为自动驾驶技术上路奠定了坚实的基础。所谓的自动驾驶仿真又可称为道路交通仿真,其是研究复杂交通问题的重要工具;尤其是当一个系统过于复杂,无法用简单抽象的数学模型描述时,交通仿真的作用就更为突出。自动驾驶仿真可以清晰地辅助分析预测交通堵塞的地段和原因,对城市规划、交通工程和交通管理的有关方案进行比较和评价,在问题成为现实以前,尽量避免,或有所准备。总结而言,交通仿真技术是应用仿真硬件和仿真软件通过仿真实验,借助某些数值计算和问题求解,反映系统行为或过程的仿真模型技术。

针对自动驾驶仿真、交通仿真或任何有需要在特定地点持续产生交通车辆的仿真场景,本申请实施例提出了一种车辆处理方法。该车辆处理方法可通过支持用户通过简单地设置一些参数(如交通密度、自由流车速等用于产生交通基本图的参数),通过交通基本图自动在固定位置周边一定半径的区域内,持续产生一些符合交通规律的交通车辆,从而有效提升交通车辆的合理性以及车辆设置效率;并且,该车辆处理方法同时还设置了一套产生交通车辆的规则,实现在保证了车辆状态多样性的同时,一并保证不同仿真软件根据同一场景文件生成的交通车辆的车辆状态的一致性。

上述所提及的交通基本图(Fundamental diagram of traffic flow)又可称为宏观基本图;在交通流理论中,交通基本图可用于描述交通网络中的宏观交通流量(简称为交通流量)、车流密度(或称为车辆密度)和速度之间的关系。具体的,交通基本图可设置在以车流密度为横轴,以通行能力为纵轴的坐标系中;典型的交通基本图可以近似为图1a所示的两条直线段和横轴所组成的一个三角形,直线段上的每一个点可以代表车辆的一种交通状态(如通行能力、车流密度、速度等)。其中,图1a中的第一段直线段11描述的是车辆的自由行驶状态,其斜率是自由流车速V

需要说明的是:交通基本图中的阻塞密度K

进一步的,在给定车流密度的情况下,根据交通基本图便可唯一确定车辆所处的交通状态,从而确定车辆的速度;也就是说,可先确定车辆对应的车流密度k,再根据交通基本图和该车流密度k确定其所处的交通状态,从而得出该车辆的速度V。具体的,速度V的单位是米/秒;其计算公式为:若k≤K

在具体实现中,本申请实施例所提出的车辆处理方法可由一个计算机设备执行,该计算机设备可以是终端或服务器;或者,该车辆处理方法也可由终端和服务器共同执行,对此不作限定。为便于阐述,后续均以计算机设备执行该车辆处理方法为例进行说明。其中,此处所提及的终端可以包括但不限于:智能手机、平板电脑、笔记本电脑、台式计算机、智能手表、智能电视、智能车载终端等;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content DeliveryNetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。进一步的,计算机设备中可包括仿真软件,该车辆处理方法所涉及到的逻辑算法可以嵌入在该仿真软件中,以用于在仿真过程中,在特定位置周边一定半径的区域内,持续产生符合交通规律的背景交通车辆(即交通车辆)。其中,此处所提及的仿真软件可以是一种微观交通仿真软件(TAD Sim),该微观交通仿真软件可以包括但不限于需要联网的仿真软件或者不需要联网的仿真软件;可以理解的是,交通仿真按照仿真的精确程度和范围分为宏观仿真、中观仿真和微观仿真,微观交通仿真以个人车辆行为为研究对象,描述交通系统中每个车辆的状态的仿真。

下面结合图2所示的流程示意图,对本申请实施例提出的车辆处理方法的具体流程进行阐述。请参见图2,该车辆处理方法可包括以下步骤S201-S202:

S201,根据出车点在道路区域中的参考点,从道路区域中确定出车点的出车区域。

在ASAM(Association for Standardization of Automation and MeasuringSystems,自动化及测量系统标准协会)制定的Open Scenario(用于描述自动驾驶仿真测试场景的国际标准)中,定义了一种在特定位置(中心参考点)的一定半径区域内持续产生车辆的方法source(出车点);具体的,Open Scenario中的出车点的相关描述如下:

Class TrafficSourceAction//集体交通源行动

Applied Stereotypes://应用类型:

XSDcomplex Type//XSD复杂类型

Defines a source of traffic at a specific position.//在特定位置定义一个交通的出车点。

Used in://被用于:

TrafficAction//交通行动

其中,上述表格中的redius为半径,rate为出车点产生车辆的频率(可称为出车频率),velocity为速度,position为出车点的中心参考点位置,trafficdefinition为交通流定义,double为双精度浮点型,XSDattribute为XSD属性,XSD为一种文件类型。进一步的,上述表格中的redius的Description为“Defines the redius of the traffic sourcewhere vehicles appear around the specific position.Unit:m.Range:[0...inf[.”;相应的中文释义大致为:定义车辆出现在特定位置周围的交通源的半径;单位:米;范围:[0…inf[。上述表格中的rate的Description为“Defines the rate on which vehiclesappear at the source location.Unit:vehicles/s.Range:[0...inf[.”;相应的中文释义大致为:定义车辆出现在源位置的速率;单位:车辆/秒;范围:[0…inf[。上述表格中的velocity的Description为“The optional starting velocity of a scenarioobject.Unit:vehicles/s.Range:[0...inf[.”;相应的中文释义大致为:场景对象的可选起始速度;单位:车辆/秒;范围:[0…inf[。上述表格中的position的Description为“Defines the position of the traffic source”;相应的中文释义大致为:定义交通源的位置。上述表格中的trafficdefinition的Description为“Defines the vehicle andcontroller distribution for the source”;相应的中文释义大致为:定义源的车辆和控制器分布。

基于此,为保证和标准尽量一致,本申请实施例所提及的出车点可兼容上述OpenScenario中所提及的出车点的相关描述;也就是说,本申请实施例所提及的出车点可理解成是用于持续产生车辆的方法或代码。示例性的,该出车点可具有redius,rate,velocity,position以及trafficdefinition等多个属性;即本申请实施例可用radius来定义出车点的半径,用rate来定义出车点产生交通车辆的频率,用velocity来定义出车点产生的交通车辆的初始速度,用position来定义出车点的中心参考点的位置,等等。其中,position所指示的中心参考点可理解成是出车点在道路区域中的参考点。

基于上述描述,在具体实现中,计算机设备在执行步骤S201之前,可先获取场景文件,通过解析场景文件来得到出车点的radius和position,从而根据position确定出车点在道路区域中的参考点(即中心参考点)。那么,在步骤S201的具体实施过程中,计算机设备可将该参考点作为圆心,在道路区域中确定一定半径(即radius的取值)的圆圈区域作为出车点的出车区域,如图3a所示;此处的出车区域又可称为出车圈,其是支持出车点产生交通车辆的区域。应理解的是,由于交通车辆在以参考点(事先定义好)为圆心,radius为半径定义的圆圈区域内产生,因此参考点需设置在道路区域中准备出车的目标道路(可包括至少一条车道)的路面区域内,不能设置于准备出车的目标道路的路面区域之外或者地图之外。

需说明的是,道路区域中包括一条或多条车道,由于参考点和半径皆通过用户定义,因此可能会使得通过步骤S201所确定出的出车区域较大或适中,从而使得出车区域可覆盖道路区域中的至少一条车道;也可能会使得通过步骤S201所确定的出车区域较小,从而使得出车区域无法覆盖道路区域中的任一条车道,对此不作限定。其中,出车区域覆盖车道的含义是指:出车区域与该车道的车道中心线相交;所谓的车道中心线是指用于标识车道的中心的线,即车道中心线到车道左右两侧的距离是相等的。例如,参见图3b所示:图3b中的左侧图示例性地表示了出车区域未覆盖车道1的情况,图3b中的右侧图示例性地表示了出车区域覆盖车道1的情况。

进一步的,本申请实施例还可以为出车点设置一个有效期,从而使得出车点在有效期内持续产生交通车辆。具体的,可通过时间或车数来设置出车点的有效器。例如,用户可以设置出车点被激活的时间段,如从t1到t2时刻激活出车点,而在激活之外的时间,出车点失效,不产生车辆;那么,此情况下的有效期可包括出车点的激活时间段,且该激活时间段为t1到t2之间的时间段。又如,用户可以设置出车点持续的时间T,如自动从t'=0仿真开始时刻激活出车点,而到T时刻截止,出车点失效,之后不产生车辆;那么,此情况下的有效期可包括出车点的激活时间段,且该激活时间段为仿真开始时刻到T时刻之间的时间段。再如,用户可以设置出车点出车的最大数量(即目标数量),当出车点已产生的交通车辆的数量到达最大数量后,出车点失效,该出车点不产生车辆;此情况下的有效期可包括仿真开始时刻到目标时刻之间的时间段,所谓的目标时刻是指:出车点已产生的交通车辆的数量等于目标数量的时刻。由此可见,出车点的有效期可包括:出车点的激活时间段,或者从仿真开始时刻到目标时刻之间的时间段。

S202,每当出车点的出车时刻到达时,控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆。

其中,步骤S202可以是在仿真过程中被执行的;步骤S202所提及的出车点的出车时刻是指:出车点需产生交通车辆的时刻。具体的,出车点的首个出车时刻包括:出车点的激活时间段的起始时刻。例如,若出车点的激活时间段为t1到t2之间的时间段,则首个出车时刻便可以为t1;若激活时间段为仿真开始时刻到T时刻之间的时间段,则首个出车时刻便可以为仿真开始时刻。出车点的非首个出车时刻是根据前一个出车时刻和出车点的出车时距确定的,所谓的出车时距可称为出车间隔,其是指每产生两辆车之间所需经过的时长;也就是说,非首个出车时刻可理解成是:在前一个出车时刻的基础上,经过一个出车时距所到达的时刻。例如,设首个出车时刻为仿真开始时刻(即t'=0),且第一个出车时距为t1,则第二个出车时刻便是t1时刻;若第二个出车时刻为t2,则第二个出车时刻便是(t1+t2)时刻,以此类推。

需要说明的是,在一种实施方式中,可设置出车点的出车频率为r车/秒(r为正整数),并设定出车点的出车时距和出车频率之间的关系为倒数关系;那么在此实施方式下,出车点的出车时距为固定值,即出车时距等于1/r秒,此处对其分布不加限定。即此情况下,当首个出车时刻到达后,后续的每个出车时刻与前一个出车时刻之间的时间间隔均是相同的,出车点可用于固定地每隔1/r秒产生一个交通车辆。另一种实施方式中,可设置出车点的出车频率为r车/秒,并设定出车点的出车数量服从泊松分布;那么在此实施方式下,出车点的出车时距服从指数分布。即此情况下,当首个出车时刻到达后,后续的每个出车时刻与前一个出车时刻之间的时间间隔是从指数分布中确定的。示例性的,指数分布的公式可以为P(X>t)=e

在一种具体实现中,每当出车点的出车时刻到达时,若出车区域覆盖道路区域中的至少一条车道(即出车区域与至少一条车道的车道中心线相交),则计算机设备可触发执行控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆控制的步骤。在此具体实现中,控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆的具体方式可以是:在出车区域所覆盖的至少一条车道中,选取一个位于出车区域中的点作为当前位置;具体的,可以在出车区域所覆盖的至少一条车道的车道中心线上,选取一个位于出车区域中的点作为当前位置。然后,可根据当前位置的位置信息判断当前位置是否满足可行条件。若根据当前位置的位置信息判定前位置满足可行条件,则可控制出车点在当前位置处产生一个交通车辆;并基于交通基本图为当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律。

另一种具体实现中,每当出车点的出车时刻到达时,计算机设备便可触发执行控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆控制的步骤。在此具体实现中,控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆的具体方式可以是:在出车区域中随机选取一个位置作为当前位置,并根据当前位置的位置信息判断当前位置是否满足可行条件。若当前位置满足可行条件,则表明当前位置可行,此时可控制出车点在当前位置处产生一个交通车辆;并基于交通基本图为当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律。若当前位置不满足可行条件,则可等待出车点的下一个出车时刻到达;或者,若当前位置不满足可行条件,则在出车区域中重新选取一个新的当前位置,并迭代上述过程(即判断当前位置是否满足可行条件等步骤),直至找到一个满足可行条件的当前位置。需要说明的是,此实施方式可无需约束出车区域是否覆盖道路区域中的至少一条车道。并且,在此实施方式下,若出车区域覆盖了道路区域中的至少一条车道,则计算机设备在出车区域中随机选取当前位置时,可以是在出车区域所覆盖的各条车道的车道中心线上来选取的,也可以是出车区域所覆盖的各条车道中除车道中心线以外的位置来选取的,对此不作限定。

基于上述两种实施方式可知,本申请实施例在执行步骤S202的过程中,需要先找到一个可行的位置(即满足可行条件的位置),然后再控制出车点生成交通车辆。其中,可行条件可包括以下至少一项:位置相关且位置可摆放;当可行条件同时包括位置相关和位置可摆放时,位置可行便是指该位置既相关又可摆放。考虑到出车点所产生的各个交通车辆用于影响道路区域中的测试车辆的驾驶行为;因此,位置相关和位置可摆放的定义如下:

位置相关:考虑到从测试自动驾驶算法(即决策算法)的角度来看,处于与本车(即测试车辆)相同的道路上,和本车的行进方向相同的车辆对本车的影响最大,这类车辆可被认为是相关车辆,它们被摆放的位置可被称为相关位置。因此,这里考虑处于本车相同的道路上中,且和本车的行进方向相同的交通车辆的产生,如果出车区域的范围覆盖了其他区域(如与本车所在车道的车道方向不同的车道,或者不同方向的道路/路口等),则认为这些其他区域是不相关区域,即这些区域中的位置均是不相关位置,此情况下便可轮询下一个位置来产生交通车辆。基于此,位置相关可理解成:处于测试车辆所在的道路上,且与测试车辆所在车道的车道方向相同。

位置可摆放:即位置上可以放置一辆车。考虑到本申请实施例所提及的车辆的位置都指的是车辆的参照点的位置,车辆的参照点可以是车辆的质心或中心点等;以参照点为质心为例,假设质心和代表车辆的长方形的几何中心重合,那么若在纵向上基于质心向两侧分别扩展车辆长度的一半,以及在横向上基于质心向两侧分别扩展车辆宽度的一半后所形成的区域(如图3c中的区域31)中,没有障碍物(如锥形桶、石头、车辆)使得该区域无法放置新车辆,则可认为该位置上可以放置一辆车。基于此,针对任一位置而言,若基于车辆尺寸在该任一位置处所确定的区域中不存在障碍物,则表明该任一区域可摆放。需要说明的是,本申请实施例可适用于考虑交通车辆生成于车道中心线,且初始航向角与车道方向相同的情况。其中,横向是指与测试车辆所在车道垂直的方向(即目标车道的车道法线所在的方向),纵向是指与测试车辆所在车道相平行的方向。

本申请实施例可根据出车点在道路区域中的参考点,从道路区域中确定出车点的出车区域,该出车区域可以是以参考点为中心,基于一定半径所确定出的圆形区域;每当出车点的出车时刻到达时,控制出车点根据交通基本图在出车区域中产生交通车辆。由于交通基本图描述了交通网络中的交通流量、车流密度和速度之间的关系,因此通过结合交通基本图所产生的交通车辆对应的车流密度和速度均符合客观的交通规律。可见,本申请实施例可通过支持用户通过简单地设置一些参数(如用于产生交通基本图的参数等),实现出车点根据交通基本图自动在固定位置(参考点)周边一定半径的出车区域内持续产生一些符合交通规律的交通车辆,这样可有效交通车辆的合理性以及车辆设置效率。

基于上述图2所示的方法实施例,本申请实施例提供的另一种车辆处理方法的流程示意图;本申请实施例中,仍以计算机设备执行该车辆处理方法为例进行说明。并且,本申请实施例在仿真开始时,可启动一个仿真时钟,所谓的仿真时钟可简称为仿真钟,其可用于表示仿真时间的变化;仿真时钟每推进一步(即推进一格,一步或一格等于一个时间步长),便可触发计算机设备执行仿真过程所需的仿真操作,如检测出车点的出车时刻是否到达等操作。参见图4所示,该车辆处理方法可包括以下步骤S401-S407:

S401,根据出车点在道路区域中的参考点,从道路区域中确定出车点的出车区域。其中,出车区域是以参考点为圆心,以radius为半径的圆形区域。

S402,基于参考点在道路区域中的位置,从道路区域中确定与参考点相邻的至少一条车道中心线。

其中,任一车道中心线与参考点相邻是指:任一车道中心线与参考点之间不存在其他的车道中心线。通常来说,沿着参考点所在车道的车道方向,参考点的左侧可存在一条车道中心线与其相邻,且参考点的右侧也可存在一条车道中心线与其相邻,即通常可存在两条车道中心线与参考点相邻。但应理解的是,也可能存在一些特殊情况,使得道路区域中存在一条车道中心线与参考点相邻;例如参见图5a的左右两侧图所示:沿着参考点所在车道的车道方向,当参考点靠近道路区域的最左侧边界时,可能会使得参考点的左侧不存在一条车道中心线与其相邻,而只在参考点的右侧存在一条车道中心线与其相邻;或者,当参考点靠近道路区域的最右侧边界时,可能会使得参考点的右侧不存在一条车道中心线与其相邻,而只在参考点的左侧存在一条车道中心线与其相邻。

S403,根据参考点与各条车道中心线之间的距离,从至少一条车道中心线中选取最小的距离所对应的车道中心线;并将被选取的车道中心线所在的车道,作为出车点的主车道。

在具体实现中,可分别从参考点向至少一条车道中心线中的各条车道中心线做垂线,从而将各条垂线的长度确定为参考点与相应车道中心线之间的距离。然后,计算机设备可从至少一条车道中心线中选取最小的距离所对应的车道中心线;需要说明的是,若与参考点相邻的车道中心线的数量为两条,且参考点与这两条车道中心线中的每条车道中心线之间的距离相同,则计算机设备可从驾驶员角度(即参考点所在车道的车道方向),从两条车道中心线中选择位于参考点左侧的车道中心线。在选取了车道中心线之后,计算机设备将被选取的车道中心线所在的车道,作为出车点的主车道。

由此可见,本申请实施例可从给定的参考点向邻近的车道中心线做垂线,垂线段最短的车道中心线所在车道被定义为该出车点的主车道;如果参考点到两侧车道中心线的垂线段距离相同,则可选择在左侧(从驾驶员视角)的一条车道中心线所在车道为主车道。当然,在其他实施例中,也可从两条车道中心线中随机选取一条车道中心线,或选取位于参考点右侧的车道中心线,对此不作限定。应理解的是,若主车道的车道中心线与出车区域相交,则可确定主车道被出车区域覆盖。还应理解的是,无论出车区域的半径R有多大,出车点在道路区域中最少可拥有一个主车道;且该主车道可能被出车区域覆盖,也可能不被出车区域覆盖。例如参见图5b所示,出车区域51中的参考点52与道路区域中的车道53的车道中心线相邻,以及与车道54的车道中心线相邻;但参考点52与车道53的车道中心线之间的距离小于参考点52与车道54的车道中心线之间的距离,因此可选择车道53作为出车点的主车道。但由于出车区域51较小,因此车道53未被出车区域51覆盖。

进一步的,若出车区域与主车道具有相同方向且位于同一道路上的其他车道的车道中心线相交,则将这些其他车道可被定义为该出车点的从车道。也就是说,计算机设备还可根据道路区域中的各条车道的车道中心线与出车区域之间的位置关系,在道路区域中查询满足车道条件的车道;此处的车道条件包括:车道方向与主车道的车道方向相同,且车道中心线与出车区域相交。若道路区域中存在满足车道条件的车道,则将满足车道条件的车道作为出车点的从车道,并确定从车道被出车区域覆盖。应理解的是,当出车区域的半径R较小时,可能会使得出车点不存在从车道;当出车区域的半径R较大时,可能会使得出车点存在一条或多条从车道。例如,参见图5c中的左侧图所示,此情况下的出车区域未与任何一条车道中心线相交,因此出车点不存在从车道;而参见图5c的右侧图所示,此情况下的出车区域分别与车道53、车道54以及车道55这三条车道的车道中心线相交,而车道53为出车点的主车道,且车道54和车道55与车道53同向,因此出车点可存在车道54和车道55这两条从车道。

S404,每当出车点的出车时刻到达时,若出车区域覆盖道路区域中的至少一条车道,则控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆。具体的,控制出车点根据交通基本图,在出车区域中产生符合交通规律的交通车辆这一步骤的具体实施方式,可至少包括以下步骤s11-s13:

s11,在出车区域所覆盖的至少一条车道中,选取一个位于出车区域中的点作为当前位置。

在步骤s11的一种具体实现中,计算机设备可在出车区域所覆盖的至少一条车道中,随机选取一个位于出车区域中的点作为当前位置;此情况下,选取出的当前位置可能位于某一条车道的车道中心线上,也可能未位于任一条车道的车道中心线上,对此不作限定。

在步骤s11的另一种具体实现中,计算机设备可在出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置,该每条车道的出车线均位于出车区域内。由于出车区域覆盖车道是指出车区域与车道的车道中心线相交,因此出车区域所覆盖的任一条车道的出车线的确定方式包括:确定任一条车道的车道中心线与出车区域之间的两个交点,并在两个交点之间的线段中确定任一车道的出车线。具体的,计算机设备可将两个交点之间的线段,直接确定为任一车道的出车线。也就是说,本申请实施例针对被出车区域覆盖的任一条车道(例如主车道或从车道)而言,可将该车道的车道中心线上被出车区域截断的线段(两个交点之间的线段)定义为该车道的出车线;如图5d所示,可将主车道的车道中心线被出车区域截断的线段56,定义为主车道的出车线。

或者,由前述可知,道路区域可包括准备出车的目标道路的路面区域,参考点位于路面区域中;所谓的准备主车的目标道路可包括至少一条车道,且出车点所产生的各个交通车辆可行驶在该目标道路中的各条车道上。考虑到道路区域除了包括该目标道路的路面区域之外,还可能包括其他的无关区域(或称为不相关区域);并且可能会存在因参考点和半径设置匹配的问题,而导致出车区域覆盖了无关区域中的全部或部分区域,如图5e所示。那么此情况下,便会导致车道中心线与出车区域之间的两个交点之间的线段被无关区域截断;所谓的线段被无关区域截断的含义是指线段中存在部分线段位于目标区域内,此处的目标区域是指道路区域中除路面区域之外的无关区域与路面区域之间的重叠区域。在此情况下,可认为是任一车道的出车线被缩短,此时可将两个交点之间的线段中未位于目标区域中的剩余线段确定为任一车道的出车线。基于此,计算机设备在两个交点之间的线段中确定任一车道的出车线时,可先在出车区域中检测目标区域。若未检测到目标区域,或者检测到目标区域但两个交点之间的线段未位于目标区域中,则可将两个交点之间的线段,作为任一车道的出车线;若检测到目标区域,且两个交点之间的线段中存在部分线段位于目标区域内,则可将两个交点之间的线段中未位于目标区域内的剩余线段,作为任一车道的出车线。

由此可见,本申请实施例针对被出车区域覆盖的任一条车道(例如主车道或从车道)而言,当被出车区域截断的线段又被无关区域截断时,可将被出车区域截断的线段中,未位于目标区域之内的剩余线段定义为该车道的出车线;如图5f所示:主车道的车道中心线与出车区域之间的两个交点之间的线段,以及从车道的车道中心线与出车区域之间的两个交点之间的线段,均被无关区域截断,因此主车道的出车线可以是图5f中的57所标识的线段,从车道的出车线可以是图5f中的58所标识的线段。应理解的是,当参考点位于主车道的车道中心线上时,主车道的车道中心线与出车区域之间的两个交点之间的线段为出车区域的直径;那么,若主车道的车道中心线与出车区域之间的两个交点之间的线段未被无关区域截断,则可知最长的出车线为出车区域的直径。

基于上述描述,计算机设备在出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,可具有如下几种实施方式:

实施方式一:由前述可知,当出车区域较小时,其可能只与一条车道中心线相交,而出车点的主车道的车道中心线离出车区域的中心(即参考点)最近;那么可知:此时与出车区域相交的车道中心线是主车道的车道中心线。由此可见,当出车区域所覆盖的至少一条车道的车道数量为1时,该至少一条车道为出车点的主车道。在此情况下,计算机设备在出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,可在主车道的出车线上,随机选取一个点作为当前位置。也就是说,当出车区域较小时,其只与一条车道中心线相交时,该车道中心线所在车道为主车道,且主车道的车道中心线上被出车区域所截取的线段,为此情况下唯一的出车线,如前述图5e所示。

实施方式二:由前述可知,当出车区域较大时,其除了与主车道的车道中心线相交之外,还可与其他车道的车道中心线相交。由此可见,当出车区域所覆盖的至少一条车道的车道数量大于1时,该至少一条车道包括:出车点的主车道以及出车点的从车道,从车道的数量为正整数。在此情况下,计算机设备在出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,可将出车点的主车道和各条从车道放入车道选择池中,以进行车道选择。然后,从车道选择池中选取一条车道作为当前车道;具体的,此步骤的实施方式可包括以下几种:

在一种实施方式中,可设定各条车道的出车概率是相同的(即交通车辆从各条车道上产生的概率相同)。在此实施方式下,计算机设备在从车道选择池中选取一条车道作为当前车道时,可以按照概率均等的选择策略,采用第一车道选择算法从车道选择池中随机选取一条车道作为当前车道;此处对第一车道选择算法以及用于随机选取车道的随机种子不加限定,只需保证定义好第一车道选择算法和随机种子后,可以复现出所选择的车道即可。

另一种实施方式中,可设定各条车道的出车概率不相同,例如需要保证在某条车道上产生的交通车辆的数量比其他车道上产生的交通车辆的数量更多,则可以设置车道级的概率参数,该概率参数用于指示车道的出车概率。在此实施方式下,计算机设备在从车道选择池中选取一条车道作为当前车道时,可以采用第二车道选择算法从车道选择池中选取一条车道作为当前车道;此处对第二车道选择算法不加限定,例如第二车道选择算法所遵循的逻辑是:出车概率越大的车道,被选择的可能性(概率)越大;应理解的是,应设置第二车道选择算法以及各个车道的出车概率等参数,以保证后续可依据这些参数复现车道的选择。

另一种实施方式中,计算机设备在从车道选择池中选取一条车道作为当前车道时,也可按照各车道的优先级,从车道选择池中选取一条车道作为当前车道;其中,主车道的优先级高于从车道的优先级。或者,计算机设备也可沿着车道方向,按照从左往右的顺序,从车道选择池中选取一条车道作为当前车道,等等。

在通过上述任一种实施方式确定出当前车道后,计算机设备可从当前车道的出车线上选取一个点作为当前位置。在一种实施方式中,计算机设备可从当前车道的出车线上,随机选取一个点作为当前位置;此处对用于随机选点的随机种子以及用于选择点的算法不加限定(如所选点在出车线上均匀分布),但应保证定义好用于选择点的算法和随机种子后,可以复现出所选择的点。另一种实施方式中,每条车道的车道中心线上可预先被设置多个候选点,由于出车线位于车道中心线上,因此计算机设备可按照车道方向,从当前车道的出车线上的全部候选点中,选取一个未被选取过的候选点作为当前位置。

s12,若根据当前位置的位置信息判定当前位置满足可行条件,则控制出车点在当前位置处产生一个交通车辆。

具体的,当前位置的位置信息可包括:当前位置所在车道的车道方向,以及当前位置所对应的区域指示信息,区域指示信息用于指示:基于车辆尺寸在当前位置处所确定的区域,该区域的具体确定方式可参见前述图3c的相关描述。基于此,计算机设备根据当前位置的位置信息判断当前位置是否满足可行条件的方式可以是,判断当前位置所在车道的车道方向是否与测试车辆所处车道的车道方向相同,以及检测区域指示信息所指示的区域中是否存在障碍物。若当前位置所在车道的车道方向与测试车辆所处车道的车道方向相同,且区域中不存在障碍物,则判定当前位置满足可行条件。若当前位置所在车道的车道方向与测试车辆所处车道的车道方向不同,或者若当前位置所在车道的车道方向与测试车辆所处车道的车道方向相同,但区域中存在障碍物,则判定当前位置不满足可行条件。

s13,基于交通基本图为当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律。

在具体实现中,计算机设备在基于交通基本图为当前位置上所产生的交通车辆设置初始速度时,可为当前位置上所产生的交通车辆,确定第一速度。其中,该第一速度是预设的,即此情况下的第一速度是固定值,出车点所产生的各个交通车辆所对应的第一速度均是一样的;或者,该第一速度是通过速度分布产生的,即此情况下的第一速度是实时生成的,出车点所产生的各个交通车辆所对应的第一速度可能相同,可能不同。此处所提及的速度分布是指:在车辆速度为随机变量的情况下,车辆速度所符合的分布;其表现形式可以是函数或其它形式,对此不作限定。例如车辆速度符合一个正态分布N(μ

进一步的,考虑到仿真器通过电脑程序产生的随机数都是伪随机数,因此为了保持一致性,可给定一种随机数生成方式和一个随机数种子seed,以保证用户在使用不同的仿真器所产生的随机数序列是一致的。此处对速度分布,随机数生成方式和随机数种子的选择不加限定,但应保证在给定这几个参数时,无论用户使用什么仿真器,通过这些参数均可还原成完全一致的随机数序列{y

除了为当前位置上所产生的交通车辆确定第一速度外,还可确定当前位置上所产生的交通车辆所对应的车辆间距。设当在当前位置上产生交通车辆的时刻,为出车点的第i个出车时刻;且当i大于1时,当前位置上所产生的交通车辆对应一个出车时距,且该出车时距是第i个出车时刻和第i-1个出车时刻之间的间隔。假设出车频率为r车/秒,且出车点的出车时距等于1/r秒这一固定值,即出车点每产生两个交通车辆之间的平均时距是1/r秒,如果出车点(或出车区域)覆盖m条车道(m为正整数),且交通车辆从各条车道上生成的概率相同,则对于同一条车道来说,每两个交通车辆之间的平均时距是m/r秒;如果产生的交通车辆的第一速度为v米/秒,且假设在同一车道上的下一个交通车辆产生之前,其对应的第一速度不变,则同一车道上的两个交通车辆之间的车辆间距(平均车间距离)为m×v/r米;而车流密度是车辆间距的倒数,所以对应的每条车道的车流密度为r/(m×v)(单位是辆/米/车道)。

基于此原理,当出车时距服从指数分布时,采用ti表示第i个出车时刻所产生的交通车辆对应一个出车时距,采用vi’表示第i个出车时刻所产生的交通车辆的第一速度,则采用ti替换上述公式m×v/r中的1/r,采用vi’替换m×v/r中的v,便可得到第i个出车时刻产生的交通车辆对应的车辆间距di,di=vi’×ti×m。应理解的是,di的计算公式也可适用于出车时距为固定值的情况。基于此,在出车区域覆盖道路区域中的至少一条车道的情况下,计算机设备确定当前位置上所产生的交通车辆所对应的车辆间距的方式可以如下:对所产生的交通车辆对应的出车时距,第一速度以及出车区域所覆盖的车道的数量进行乘法运算,得到当前位置上所产生的交通车辆所对应的车辆间距。

在确定出车辆间距后,计算机设备可根据确定出的车辆间距确定相应的车流密度;具体的,可将确定出的车辆间距的倒数确定为相应的车流密度,采用ki表示车流密度,则ki=1/di。然后,计算机设备将确定出的车流密度在交通基本图中所对应的速度,确定为第二速度(采用vi”表示)。然后,计算机设备可将第一速度和第二速度中的最小速度,设置为当前位置上所产生的交通车辆的初始速度。进一步的,为了使产生出的车流符合交通规律,在第一速度为固定值的场景下,用户初始给定的第一速度可以低于或等于通过交通基本图计算出的第二速度。

同时,如果出车点的下游有距离很近的拥堵车流,新产生的交通车辆的速度不应使得它刚产生出来就来不及制动刹车而与下游拥堵车辆相撞。基于此,计算机设备还可在当前位置所在车道中,沿着当前位置的下游方向,观察与当前位置相距车辆间距的范围内,是否存在其他车辆。若不存在其他车辆,则触发执行将第一速度和第二速度中的最小速度,设置为当前位置上所产生的交通车辆的初始速度的步骤;若存在其他车辆,则可确定其他车辆的行驶速度(即车速),并将第一速度、第二速度和行驶速度中的最小速度,设置为当前位置上所产生的交通车辆的初始速度。可选的,若其他车辆的数量为多个,则计算机设备可确定离当前位置最近的其他车辆的行驶速度,从而将第一速度、第二速度和行驶速度中的最小速度,设置为当前位置上所产生的交通车辆的初始速度。

综上可知,在出车点可以从m条车道上产生交通车辆的情况下,当ti时间已经经过并生成交通车辆i时,可先根据预设的速度分布生成一个第一速度vi’,并计算出对应的车辆间距vi’×ti×m,对应的车流密度为车辆间距的倒数ki=1/di,然后根据交通基本图(从车辆密度得到速度)得出相应的第二速度vi”。同时,可在本车道前方下游向前观察di(Frenet坐标系(使用道路的中心线作为参考线,使用参考线的切线向量和法线向量建立的坐标系)下与车道平行方向)范围内的是否存在其他车辆,如果存在其他车辆j距离交通车辆i最近且车速为vj,则交通车辆i的初始速度vi为上述几个速度的最小值,即vi=min(vi’,vi”,vj)。引入和vj的对比是为了避免交通车辆i刚刚生成,就因为下游存在较慢的其他车辆j从而来不及刹车而相撞。可选的,本申请实施例还可规定在出车点产生的交通车辆还在出车区域内时,不允许换道。并且,在为交通车辆设置初始速度后,可控制仿真时钟继续推进,以触发检测下一个出车时刻是否到达。

需要说明的是,上述均是以i大于1的情况为例,对如何为交通车辆设置初始速度的具体方式进行说明的。当i=1时,即在当前位置上产生交通车辆的时刻,为出车点的首个出车时刻,也可按照上述逻辑来为交通车辆设置初始速度,此情况下的车辆间距可默认为0。或者,计算机设备可直接将第一速度设置为交通车辆的初始速度。

进一步的,若根据当前位置的位置信息判定当前位置不满足可行条件,则计算机设备可根据前述步骤s11所提及的两种实施方式的不同,执行不同的逻辑;具体如下:

如果计算机设备是通过前述步骤s11中提及的实施方式一确定当前位置的,即出车区域只覆盖出车点的主车道,计算机设备是在主车道的出车线上,随机选取一个点作为当前位置的,那么若根据当前位置的位置信息判定当前位置不满足可行条件,则计算机设备可控制仿真时钟继续推进。或者,计算机设备也可跳转至步骤s11,以重新在主车道的出车线上选取当前位置,直至找到满足可行条件的当前位置为止。又或者,计算机设备可跳转至步骤s11以重新在主车道的出车线上选取当前位置,并通过步骤s12判断当前位置是否满足可行条件;在迭代执行预设次数的步骤s11后,仍未找到满足可行条件的当前位置,则控制仿真时钟继续推进。

如果计算机设备是通过前述步骤s11中提及的实施方式二确定当前位置的,即出车区域覆盖了出车点的主车道和从车道,计算机设备是通过将出车点的主车道和各条从车道放入车道选择池中,从车道选择池中选取一条车道作为当前车道,从而从当前车道的出车线上选择一个点作为当前位置的,那么若根据当前位置的位置信息判定当前位置不满足可行条件,则计算机设备可在车道选择池中剔除当前车道。一种实施方式中,计算机设备在判定当前位置不满足可行条件时,可直接在车道选择池中剔除当前车;另一种实施方式中,计算机设备也可跳转至步骤s11,以在当前车道的出车线上重新选取当前位置,并通过步骤s12判断当前位置是否满足可行条件;在迭代执行预设次数的步骤s11后,仍未找到满足可行条件的当前位置,则再在车道选择池中剔除当前车道。在剔除当前车道后,计算机设备可判断车道选择池中是否存在车道。若车道选择池中存在车道,则重新从车道选择池中选取当前车道,直至找到满足可行条件的当前位置,或直至车道选择池中不存在车道。若车道选择池中不存在车道,则控制仿真时钟继续推进。

S405,每当出车点的出车时刻到达时,若出车区域未覆盖道路区域中的任一条车道,则从参考点向出车点的主车道的车道中心线做垂线以得到垂足,将垂足所在的位置确定为当前位置;例如,参见图5g所示,可将垂足59所在的位置确定为当前位置。在确定了当前位置之后,计算机设备可接着执行后续步骤S406-S407。

S406,若根据当前位置的位置信息判定当前位置满足可行条件,则控制出车点在当前位置处产生一个交通车辆;并基于交通基本图为当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律。

需要说明的是,此情况下的基于交通基本图为当前位置上所产生的交通车辆设置初始速度的具体实施过程,与前述步骤s13的具体实施过程是相同的,在此不再赘述。但是两个具体实施过程,关于如何确定车辆间距这一步骤的具体细化存在一些差异;在步骤S406所对应的场景下(即出车区域未覆盖道路区域中的任一车道的情况下),计算机设备确定当前位置上所产生的交通车辆所对应的车辆间距的方式为:对所产生的交通车辆对应的出车时距,和第一速度进行乘法运算,得到当前位置上所产生的交通车辆所对应的车辆间距。

S407,若根据当前位置的位置信息判定当前位置不满足可行条件,则控制仿真时钟继续推进。其中,仿真时钟每推进一步,就触发检测出车点的出车时刻是否到达,以在检测到出车时刻到达,跳转至步骤S404。

基于上述步骤S401-S407的相关描述可知,本申请实施例可通过支持用户通过简单地设置一些参数(如用于产生交通基本图的参数等),实现出车点根据交通基本图自动在固定位置(参考点)周边一定半径的出车区域内持续产生一些符合交通规律的交通车辆,这样可有效交通车辆的合理性以及车辆设置效率。并且,通过设置了一套产生交通车辆的规则,可在保证车辆状态多样性的同时,一并保证不同仿真软件根据同一场景文件生成的交通车辆的车辆状态的一致性。

基于上述图4的方法实施例的相关描述可知,本申请实施例可对出车点在出车区域中产生交通车辆的轮询顺序加以定义,以保证出车点在出车区域中产生的交通车辆的位置和顺序是一致的,从而保证不同的仿真器可以解析出同样的结果。具体的,当出车点存在主车道和从车道时,一种示例性的轮询顺序可以如下:

1、当在t=0时刻(即首个出车时刻到达时),首先做车道选择。车道选择的一种方法可以是:将所有的从车道和主车道放在一起作为车道选择池,做概率均等的选择,以选取出当前车道;此处对选择车道的算法不加限定,但应保证定义好算法和随机种子后,用户可以复现所选择的车道。

2、在车道选择好之后,在当前车道上做出车线上选点。方法可以是:在所选定的当前车道的出车线上随机选取一个点,此处对选择点的算法不加限定(如所选点在出车线上均匀分布),但应保证定义好算法和随机种子后,用户可以复现所选择的点。

3、如果这个点不可摆放(即不满足可行条件),即已经有车占据了要生成新交通车辆的位置,则将当前车道剔除出车道选择池,并重新做车道选择,以及重新做出车线上选点,如果重新选取的点仍不可摆放,则继续上面的过程。如果所有主车道和从车道均已找遍,仍未找到可摆放的点,则等待下一个出车时刻再继续上面的过程。如果可以找到一个可以摆放的点,则生成一辆交通车辆,并按上述方法计算该交通车辆的初始速度,并对出车点所生成的的交通车辆的数量执行加一操作。

4、仿真继续进行,当仿真时钟推进到基于固定值或者指数分布的下一个时间间隔所确定出的下一个出车时刻时,按上面的车道选择/出车线上选点的流程来找到下一个可摆放的点,以生成相应的交通车辆并赋值初始速度。

5、在出车点有效期内,重复上面的操作。出车点失效后,不再产生车辆。

下面结合图6所示的流程图,对按照本申请实施例所定义的轮询顺序,在出车区域中持续产生交通车辆的具体过程作进一步阐述:

步骤a:进行仿真初始化设置,确定用户给定的速度分布(或固定的第一速度),并根据用户给定的出车点的参考点和半径,在道路区域中确定出车点的出车区域,并在道路区域中分辨出车点的主车道和从车道。另外,还可赋值i=1。

步骤b:判断仿真是否结束,或出车点的激活时间段是否已过,或出车点已产生的交通车辆的数量是否到达最大数量。若是(即包括仿真结束、激活时间段已过和已到达最大数量中的至少一项),则确定出车点的出车过程完成。若否,(此处的否是指仿真未结束,激活时间段未过,且未到达最大数量),则执行步骤c。

步骤c:判断仿真时钟是否已推进到出车点的下一个出车时刻。若是,则执行步骤d;若否,则控制仿真时钟继续推进。

步骤d:判断出车区域是否覆盖至少一条车道。若否,则执行步骤e;若是,则执行步骤h。

步骤e:以参考点向主车道的车道中心线引垂线,将垂足所在的位置作为当前位置,并执行步骤f。

步骤f:判断当前位置是否可行(即是否满足可行条件)。若可行,则执行步骤g;若不可行,则控制仿真时钟继续推进。

步骤g:控制出车点在当前位置处产生一个交通车辆,并计算该交通车辆的初始速度;然后,对出车点已经产生的交通车辆的数量进行加一操作,并执行i=i+1。

步骤h:判断出车区域是否只覆盖主车道。若是,则在主车道的出车线上选点作为当前位置,并跳转至步骤f;若否,则将主车道和从车道放入车道选择池中,并执行步骤i。

步骤i:在车道选择池中进行车道选择,然后在被选择的当前车道的出车线上选点作为当前位置,接着执行步骤j。

步骤j:判断当前位置是否可行。若可行,则跳转至步骤g;若不可行,则将当前车道剔除出车道选择池,并执行步骤k。

步骤k:判断车道选择池中是否还有车道。若是,则跳转至步骤i;若否,则控制仿真时钟继续推进。

需要说明的是,在上述过程中,仿真时钟每推进一步后,便可触发执行步骤b。并且,每次执行上述步骤h时,所涉及的车道选择池是相互独立,互不影响的。另外可理解的是,每次产生的交通车辆在被设置初始速度后,便可在道路区域中开始行驶;因此,虽然每次迭代执行上述步骤e时所确定出的当前位置均是垂足所在的位置,但是每次判断当前位置是否可行时,仍然可能存在当前位置可行的情况。例如,若前一次在垂足所在位置产生的交通车辆的初始速度较大,则在本次判断当前位置是否可行时,前一次产生的交通车辆已行驶较远,此时便可使得当前位置可行(即当前位置可摆放一个交通车辆)。当然,也可能存在当前位置不可行的情况;例如,若前一次在垂足所在位置产生的交通车辆的初始速度较小,则在本次判断当前位置是否可行时,前一次产生的交通车辆只行驶了一小段距离,其所处位置和当前位置之间的区域无法摆放一个交通车辆,此时便会使得当前位置不可行。

还需要说明的是,图2、图4以及图6均是以结合交通基本图来产生交通车辆为例进行说明的;如果用户不希望采用交通基本图的方式产生交通车辆,而是想根据自己的意愿产生,则可以在场景文件中加开关参数,使得用户可以根据自己的需要产生任意间距和速度组合(不一定符合交通规律)的车群。并且,如果用户不希望只在与测试车辆相同道路上,或同方向的路面上产生交通车辆,也可以加开关参数,以实现在和测试车辆所处道路的相反方向的路面上产生交通车辆。

基于上述图2、图4以及图6的相关描述可知,本申请实施例可以在仿真开始前通过简单参数设定,以交通基本图为基础在固定位置持续生成状态多样的交通流车辆,而且通过标准化的形式保证相同参数设定时产生的车辆状态(位置,速度)等完全一致,从而保证了生成场景的一致性。通过引入一些参数来使得在指定地点持续产生的交通车辆既符合交通规律,满足车辆状态多样性的同时,又可以在不同仿真器解析时得到唯一的车辆状态。例如,引入的参数可包括:①定义交通基本图的要素的参数,如阻塞密度,自由流车速,临界密度,最大通行能力等。②用于定义速度分布的参数,如定义正态分布的均值方差,产生随机数所涉及的方法和随机种子。③用于进行车道选择和线上选点的随机算法,以及随机种子。④出车点的有效期(时段或者车辆数)。

基于上述车辆处理方法实施例的描述,本申请实施例还公开了一种车辆处理装置,所述车辆处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码)。该车辆处理装置可以执行图2、图4以及图6所示的方法流程中的各个步骤。请参见图7,所述车辆处理装置可以运行如下单元:

确定单元701,用于根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;

处理单元702,用于每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系。

在一种实施方式中,所述出车点的首个出车时刻包括:所述出车点的激活时间段的起始时刻;

所述出车点的非首个出车时刻是根据前一个出车时刻和所述出车点的出车时距确定的;其中,所述出车点的出车时距为固定值,或者所述出车点的出车时距服从指数分布。

另一种实施方式中,所述出车点在有效期内产生交通车辆;

其中,所述有效期包括:所述出车点的激活时间段,或者从仿真开始时刻到目标时刻之间的时间段;所述目标时刻是指:所述出车点已产生的交通车辆的数量等于目标数量的时刻。

另一种实施方式中,所述道路区域中包括一条或多条车道;且每当所述出车点的出车时刻到达时,若所述出车区域覆盖所述道路区域中的至少一条车道,则触发处理单元702执行所述控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆的步骤;

其中,处理单元702在用于控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆时,可具体用于:

在所述出车区域所覆盖的至少一条车道中,选取一个位于所述出车区域中的点作为当前位置;

若根据所述当前位置的位置信息判定所述当前位置满足可行条件,则控制所述出车点在所述当前位置处产生一个交通车辆;

基于交通基本图为所述当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律。

另一种实施方式中,处理单元702还可用于:

基于所述参考点在所述道路区域中的位置,从所述道路区域中确定与所述参考点相邻的至少一条车道中心线;

根据所述参考点与各条车道中心线之间的距离,从所述至少一条车道中心线中选取最小的距离所对应的车道中心线;并将被选取的车道中心线所在的车道,作为所述出车点的主车道;

若所述主车道的车道中心线与所述出车区域相交,则确定所述主车道被所述出车区域覆盖。

另一种实施方式中,处理单元702还可用于:

根据所述道路区域中的各条车道的车道中心线与出车区域之间的位置关系,在所述道路区域中查询满足车道条件的车道;所述车道条件包括:车道方向与所述主车道的车道方向相同,且车道中心线与所述出车区域相交;

若所述道路区域中存在满足所述车道条件的车道,则将满足所述车道条件的车道作为所述出车点的从车道,并确定所述从车道被所述出车区域覆盖。

另一种实施方式中,处理单元702在用于在所述出车区域所覆盖的至少一条车道中,选取一个位于所述出车区域中的点作为当前位置时,可具体用于:

在所述出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置,所述每条车道的出车线均位于所述出车区域内;

其中,所述出车区域覆盖车道是指所述出车区域与车道的车道中心线相交;所述出车区域所覆盖的任一条车道的出车线的确定方式包括:确定所述任一条车道的车道中心线与所述出车区域之间的两个交点,并在所述两个交点之间的线段中确定所述任一车道的出车线。

另一种实施方式中,处理单元702在用于在所述两个交点之间的线段中确定所述任一车道的出车线时,可具体用于:

在所述出车区域中检测目标区域,所述道路区域包括:准备出车的目标道路的路面区域,所述参考点位于所述路面区域中;所述目标区域包括:所述道路区域中除所述路面区域之外的无关区域,与所述路面区域之间的重叠区域;

若未检测到所述目标区域,或者检测到所述目标区域但所述两个交点之间的线段未位于所述目标区域中,则将所述两个交点之间的线段,作为所述任一车道的出车线;

若检测到所述目标区域,且所述两个交点之间的线段中存在部分线段位于所述目标区域内,则将所述两个交点之间的线段中未位于所述目标区域内的剩余线段,作为所述任一车道的出车线。

另一种实施方式中,当所述出车区域所覆盖的至少一条车道的车道数量为1时,所述至少一条车道为所述出车点的主车道;

相应的,处理单元702在用于在所述出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,可具体用于:在所述主车道的出车线上,随机选取一个点作为当前位置。

另一种实施方式中,仿真开始时,仿真时钟被启动,所述仿真时钟每推进一步,就触发检测所述出车点的出车时刻是否到达;处理单元702还可用于:

若根据所述当前位置的位置信息判定所述当前位置不满足可行条件,则控制所述仿真时钟继续推进。

另一种实施方式中,当所述出车区域所覆盖的至少一条车道的车道数量大于1时,所述至少一条车道包括:所述出车点的主车道以及所述出车点的从车道;相应的,处理单元702在用于在所述出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,可具体用于:

将所述出车点的主车道和各条从车道放入车道选择池中;

从所述车道选择池中选取一条车道作为当前车道,并从所述当前车道的出车线上选取一个点作为当前位置。

另一种实施方式中,仿真开始时,仿真时钟被启动,所述仿真时钟每推进一步,就触发检测所述出车点的出车时刻是否到达;处理单元702还可用于:

若根据所述当前位置的位置信息判定所述当前位置不满足可行条件,则在所述车道选择池中剔除所述当前车道;

在剔除所述当前车道后,判断所述车道选择池中是否存在车道;

若所述车道选择池中存在车道,则重新从所述车道选择池中选取当前车道,直至找到满足所述可行条件的当前位置,或直至所述车道选择池中不存在车道;

若所述车道选择池中不存在车道,则控制所述仿真时钟继续推进。

另一种实施方式中,处理单元702还可用于:

每当所述出车点的出车时刻到达时,若所述出车区域未覆盖所述道路区域中的任一条车道,则从所述参考点向所述出车点的主车道的车道中心线做垂线以得到垂足,将所述垂足所在的位置确定为当前位置;

若根据所述当前位置的位置信息判定所述当前位置满足可行条件,则控制所述出车点在所述当前位置处产生一个交通车辆;并基于交通基本图为所述当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律;

若根据所述当前位置的位置信息判定所述当前位置不满足可行条件,则控制仿真时钟继续推进;所述仿真时钟每推进一步,就触发检测所述出车点的出车时刻是否到达。

另一种实施方式中,处理单元702在用于基于交通基本图为所述当前位置上所产生的交通车辆设置初始速度时,可具体用于:

为所述当前位置上所产生的交通车辆,确定第一速度;所述第一速度是预设的,或者所述第一速度是通过速度分布产生的;

确定所述当前位置上所产生的交通车辆所对应的车辆间距,并根据确定出的车辆间距确定相应的车流密度;以及,将确定出的车流密度在所述交通基本图中所对应的速度,确定为第二速度;

将所述第一速度和所述第二速度中的最小速度,设置为所述当前位置上所产生的交通车辆的初始速度。

另一种实施方式中,处理单元702还可用于:

在所述当前位置所在车道中,沿着所述当前位置的下游方向,观察与所述当前位置相距所述车辆间距的范围内,是否存在其他车辆;

若不存在其他车辆,则触发执行所述将所述第一速度和所述第二速度中的最小速度,设置为所述当前位置上所产生的交通车辆的初始速度的步骤;

若存在其他车辆,则确定所述其他车辆的行驶速度,并将所述第一速度、所述第二速度和所述行驶速度中的最小速度,设置为所述当前位置上所产生的交通车辆的初始速度。

另一种实施方式中,当在所述当前位置上产生交通车辆的时刻,为所述出车点的第i个出车时刻,且i大于1时,所述当前位置上所产生的交通车辆对应一个出车时距,且所述出车时距是第i个出车时刻和第i-1个出车时刻之间的间隔;其中:

在所述出车区域覆盖所述道路区域中的至少一条车道的情况下,处理单元702在用于确定所述当前位置上所产生的交通车辆所对应的车辆间距时,可具体用于:对所产生的交通车辆对应的出车时距,所述第一速度以及所述出车区域所覆盖的车道的数量进行乘法运算,得到所述当前位置上所产生的交通车辆所对应的车辆间距;

在所述出车区域未覆盖所述道路区域中的任一条车道的情况下,处理单元702在用于所述确定所述当前位置上所产生的交通车辆所对应的车辆间距时,可具体用于:对所产生的交通车辆对应的出车时距,和所述第一速度进行乘法运算,得到所述当前位置上所产生的交通车辆所对应的车辆间距。

另一种实施方式中,所述出车点所产生的各个交通车辆用于影响所述道路区域中的测试车辆的驾驶行为;

其中,所述当前位置的位置信息包括:所述当前位置所在车道的车道方向,以及所述当前位置所对应的区域指示信息,所述区域指示信息用于指示:基于车辆尺寸在所述当前位置处所确定的区域;处理单元702还可用于:

若所述当前位置所在车道的车道方向与所述测试车辆所处车道的车道方向相同,且所述区域中不存在障碍物,则判定所述当前位置满足可行条件;

若所述当前位置所在车道的车道方向与所述测试车辆所处车道的车道方向不同,或者若所述当前位置所在车道的车道方向与所述测试车辆所处车道的车道方向相同,但所述区域中存在障碍物,则判定所述当前位置不满足可行条件。

根据本申请的另一个实施例,图7所示的车辆处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于车辆处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。

根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2、图4或图6中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7中所示的车辆处理装置设备,以及来实现本申请实施例的车辆处理方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。

本申请实施例可根据出车点在道路区域中的参考点,从道路区域中确定出车点的出车区域,该出车区域可以是以参考点为中心,基于一定半径所确定出的圆形区域;每当出车点的出车时刻到达时,控制出车点根据交通基本图在出车区域中产生交通车辆。由于交通基本图描述了交通网络中的交通流量、车流密度和速度之间的关系,因此通过结合交通基本图所产生的交通车辆对应的车流密度和速度均符合客观的交通规律。可见,本申请实施例可通过支持用户通过简单地设置一些参数(如用于产生交通基本图的参数等),实现出车点根据交通基本图自动在固定位置(参考点)周边一定半径的出车区域内持续产生一些符合交通规律的交通车辆,这样可有效交通车辆的合理性以及车辆设置效率。

基于上述方法实施例以及装置实施例的描述,本申请实施例还提供一种计算机设备。请参见图8,该计算机设备至少包括处理器801、输入接口802、输出接口803以及计算机存储介质804。其中,计算机设备内的处理器801、输入接口802、输出接口803以及计算机存储介质804可通过总线或其他方式连接。计算机存储介质804可以存储在计算机设备的存储器中,所述计算机存储介质804用于存储计算机程序,所述计算机程序包括程序指令,所述处理器801用于执行所述计算机存储介质804存储的程序指令。处理器801(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。

在一个实施例中,本申请实施例所述的处理器801可以用于进行一系列的车辆处理,具体包括:根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系,等等。

本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了计算机设备的操作系统。并且,在该存储空间中还存放了适于被处理器801加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机存储介质。

在一个实施例中,可由处理器加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关图2、图4或图6所示的方法实施例中的相应步骤;具体实现中,计算机存储介质中的一条或多条指令可由处理器加载并执行如下步骤:

根据出车点在道路区域中的参考点,从所述道路区域中确定所述出车点的出车区域;

每当所述出车点的出车时刻到达时,控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆;其中,所述交通基本图用于描述交通网络中的交通流量、车流密度和速度之间的关系。

在一种实施方式中,所述道路区域中包括一条或多条车道;且每当所述出车点的出车时刻到达时,若所述出车区域覆盖所述道路区域中的至少一条车道,则触发执行所述控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆的步骤;

其中,在控制所述出车点根据交通基本图,在所述出车区域中产生符合交通规律的交通车辆时,所述一条或多条指令可由处理器加载并具体执行:

在所述出车区域所覆盖的至少一条车道中,选取一个位于所述出车区域中的点作为当前位置;

若根据所述当前位置的位置信息判定所述当前位置满足可行条件,则控制所述出车点在所述当前位置处产生一个交通车辆;

基于交通基本图为所述当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律。

另一种实施方式中,所述一条或多条指令可由处理器加载并具体执行:

基于所述参考点在所述道路区域中的位置,从所述道路区域中确定与所述参考点相邻的至少一条车道中心线;

根据所述参考点与各条车道中心线之间的距离,从所述至少一条车道中心线中选取最小的距离所对应的车道中心线;并将被选取的车道中心线所在的车道,作为所述出车点的主车道;

若所述主车道的车道中心线与所述出车区域相交,则确定所述主车道被所述出车区域覆盖。

另一种实施方式中,所述一条或多条指令可由处理器加载并具体执行:

根据所述道路区域中的各条车道的车道中心线与出车区域之间的位置关系,在所述道路区域中查询满足车道条件的车道;所述车道条件包括:车道方向与所述主车道的车道方向相同,且车道中心线与所述出车区域相交;

若所述道路区域中存在满足所述车道条件的车道,则将满足所述车道条件的车道作为所述出车点的从车道,并确定所述从车道被所述出车区域覆盖。

另一种实施方式中,在所述出车区域所覆盖的至少一条车道中,选取一个位于所述出车区域中的点作为当前位置时,所述一条或多条指令可由处理器加载并具体执行:

在所述出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置,所述每条车道的出车线均位于所述出车区域内;

其中,所述出车区域覆盖车道是指所述出车区域与车道的车道中心线相交;所述出车区域所覆盖的任一条车道的出车线的确定方式包括:确定所述任一条车道的车道中心线与所述出车区域之间的两个交点,并在所述两个交点之间的线段中确定所述任一车道的出车线。

另一种实施方式中,在所述两个交点之间的线段中确定所述任一车道的出车线时,所述一条或多条指令可由处理器加载并具体执行:

在所述出车区域中检测目标区域,所述道路区域包括:准备出车的目标道路的路面区域,所述参考点位于所述路面区域中;所述目标区域包括:所述道路区域中除所述路面区域之外的无关区域,与所述路面区域之间的重叠区域;

若未检测到所述目标区域,或者检测到所述目标区域但所述两个交点之间的线段未位于所述目标区域中,则将所述两个交点之间的线段,作为所述任一车道的出车线;

若检测到所述目标区域,且所述两个交点之间的线段中存在部分线段位于所述目标区域内,则将所述两个交点之间的线段中未位于所述目标区域内的剩余线段,作为所述任一车道的出车线。

另一种实施方式中,当所述出车区域所覆盖的至少一条车道的车道数量为1时,所述至少一条车道为所述出车点的主车道;

相应的,在所述出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,所述一条或多条指令可由处理器加载并具体执行:在所述主车道的出车线上,随机选取一个点作为当前位置。

另一种实施方式中,仿真开始时,仿真时钟被启动,所述仿真时钟每推进一步,就触发检测所述出车点的出车时刻是否到达;所述一条或多条指令可由处理器加载并具体执行:

若根据所述当前位置的位置信息判定所述当前位置不满足可行条件,则控制所述仿真时钟继续推进。

另一种实施方式中,当所述出车区域所覆盖的至少一条车道的车道数量大于1时,所述至少一条车道包括:所述出车点的主车道以及所述出车点的从车道;相应的,在所述出车区域所覆盖的每条车道的出车线上,选取一个点作为当前位置时,所述一条或多条指令可由处理器加载并具体执行:

将所述出车点的主车道和各条从车道放入车道选择池中;

从所述车道选择池中选取一条车道作为当前车道,并从所述当前车道的出车线上选取一个点作为当前位置。

另一种实施方式中,仿真开始时,仿真时钟被启动,所述仿真时钟每推进一步,就触发检测所述出车点的出车时刻是否到达;所述一条或多条指令可由处理器加载并具体执行:

若根据所述当前位置的位置信息判定所述当前位置不满足可行条件,则在所述车道选择池中剔除所述当前车道;

在剔除所述当前车道后,判断所述车道选择池中是否存在车道;

若所述车道选择池中存在车道,则重新从所述车道选择池中选取当前车道,直至找到满足所述可行条件的当前位置,或直至所述车道选择池中不存在车道;

若所述车道选择池中不存在车道,则控制所述仿真时钟继续推进。

另一种实施方式中,所述一条或多条指令可由处理器加载并具体执行:

每当所述出车点的出车时刻到达时,若所述出车区域未覆盖所述道路区域中的任一条车道,则从所述参考点向所述出车点的主车道的车道中心线做垂线以得到垂足,将所述垂足所在的位置确定为当前位置;

若根据所述当前位置的位置信息判定所述当前位置满足可行条件,则控制所述出车点在所述当前位置处产生一个交通车辆;并基于交通基本图为所述当前位置上所产生的交通车辆设置初始速度,以使产生的交通车辆符合交通规律;

若根据所述当前位置的位置信息判定所述当前位置不满足可行条件,则控制仿真时钟继续推进;所述仿真时钟每推进一步,就触发检测所述出车点的出车时刻是否到达。

另一种实施方式中,在基于交通基本图为所述当前位置上所产生的交通车辆设置初始速度时,所述一条或多条指令可由处理器加载并具体执行:

为所述当前位置上所产生的交通车辆,确定第一速度;所述第一速度是预设的,或者所述第一速度是通过速度分布产生的;

确定所述当前位置上所产生的交通车辆所对应的车辆间距,并根据确定出的车辆间距确定相应的车流密度;以及,将确定出的车流密度在所述交通基本图中所对应的速度,确定为第二速度;

将所述第一速度和所述第二速度中的最小速度,设置为所述当前位置上所产生的交通车辆的初始速度。

另一种实施方式中,所述一条或多条指令可由处理器加载并具体执行:

在所述当前位置所在车道中,沿着所述当前位置的下游方向,观察与所述当前位置相距所述车辆间距的范围内,是否存在其他车辆;

若不存在其他车辆,则触发执行所述将所述第一速度和所述第二速度中的最小速度,设置为所述当前位置上所产生的交通车辆的初始速度的步骤;

若存在其他车辆,则确定所述其他车辆的行驶速度,并将所述第一速度、所述第二速度和所述行驶速度中的最小速度,设置为所述当前位置上所产生的交通车辆的初始速度。

另一种实施方式中,当在所述当前位置上产生交通车辆的时刻,为所述出车点的第i个出车时刻,且i大于1时,所述当前位置上所产生的交通车辆对应一个出车时距,且所述出车时距是第i个出车时刻和第i-1个出车时刻之间的间隔;其中:

在所述出车区域覆盖所述道路区域中的至少一条车道的情况下,在确定所述当前位置上所产生的交通车辆所对应的车辆间距时,所述一条或多条指令可由处理器加载并具体执行:对所产生的交通车辆对应的出车时距,所述第一速度以及所述出车区域所覆盖的车道的数量进行乘法运算,得到所述当前位置上所产生的交通车辆所对应的车辆间距;

在所述出车区域未覆盖所述道路区域中的任一条车道的情况下,在所述确定所述当前位置上所产生的交通车辆所对应的车辆间距时,所述一条或多条指令可由处理器加载并具体执行:对所产生的交通车辆对应的出车时距,和所述第一速度进行乘法运算,得到所述当前位置上所产生的交通车辆所对应的车辆间距。

另一种实施方式中,所述出车点所产生的各个交通车辆用于影响所述道路区域中的测试车辆的驾驶行为;

其中,所述当前位置的位置信息包括:所述当前位置所在车道的车道方向,以及所述当前位置所对应的区域指示信息,所述区域指示信息用于指示:基于车辆尺寸在所述当前位置处所确定的区域;所述一条或多条指令可由处理器加载并具体执行:

若所述当前位置所在车道的车道方向与所述测试车辆所处车道的车道方向相同,且所述区域中不存在障碍物,则判定所述当前位置满足可行条件;

若所述当前位置所在车道的车道方向与所述测试车辆所处车道的车道方向不同,或者若所述当前位置所在车道的车道方向与所述测试车辆所处车道的车道方向相同,但所述区域中存在障碍物,则判定所述当前位置不满足可行条件。

本申请实施例可根据出车点在道路区域中的参考点,从道路区域中确定出车点的出车区域,该出车区域可以是以参考点为中心,基于一定半径所确定出的圆形区域;每当出车点的出车时刻到达时,控制出车点根据交通基本图在出车区域中产生交通车辆。由于交通基本图描述了交通网络中的交通流量、车流密度和速度之间的关系,因此通过结合交通基本图所产生的交通车辆对应的车流密度和速度均符合客观的交通规律。可见,本申请实施例可通过支持用户通过简单地设置一些参数(如用于产生交通基本图的参数等),实现出车点根据交通基本图自动在固定位置(参考点)周边一定半径的出车区域内持续产生一些符合交通规律的交通车辆,这样可有效交通车辆的合理性以及车辆设置效率。

需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2、图4或图6所示的方法实施例方面的各种可选方式中提供的方法。应理解的是,以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

相关技术
  • 车辆信息处理方法、装置、计算机设备、车辆及存储介质
  • 车辆数据处理方法、装置、计算机设备和存储介质
技术分类

06120114698208