本申请涉及自动驾驶技术领域,具体而言,涉及一种在路口调度自动驾驶车辆的系统与方法。
背景技术:
随着车辆智能化与路口智能交通信号灯的发展,如何使路口拥有更加高效的通行效率成为城市交通研究领域的一个热点,其中,路口的智能调度是一个重要部分。现有技术中,部分城市在路口设置智能交通信号灯,该智能交通信号灯会根据当前路口各个车道等待的车流量,经过计算,分配红绿灯的时长,可以一定程度的减少拥堵,但该方法也有一定的缺点:红灯方向的车辆还是可能需要停车等待,车辆通过路口的效率较低;车辆停车再启动也会造成一定燃油浪费,智能化和自动化水平较低。结合自动驾驶车辆技术的发展,如何通过云端统一调度,使得自动驾驶车辆可以在路口高效同行,摆脱红绿灯的约束,是亟待解决的问题。
技术实现要素:
本申请正是基于上述问题,提出了一种新的技术方案,可以解决在自动驾驶环境下摆脱红绿灯约束,提高通过路口的安全性以及效率的技术问题。
本申请的第一方面提出了一种用于在路口调度具有自动驾驶功能的车辆的方法,包括:在当前时段,服务器接收从至少一辆车发送的通过路口请求,所述通过路口请求包括所述至少一辆车在当前时段的状态,所述状态包括位置、速度和规划行驶路径;所述服务器获取当前时段的先前车辆的规划行驶轨迹,所述先前车辆包括在当前时段之前驶入且未驶离路口调度区域的车辆;根据所述先前车辆的规划行驶轨迹以及所述通过路口请求,所述服务器生成速度规划指令;以及所述服务器向所述至少一辆车发送所述速度规划指令。
在一些实施例中,所述通过路口请求可以由所述至少一辆车在进入所述路口调度区域时发出,所述路口调度区域包括路口区域及其延伸道路。
在一些实施例中,所述服务器生成速度规划指令可以包括:根据所述先前车辆的规划行驶轨迹以及所述通过路口请求,所述服务器确定所述至少一辆车驶入所述路口区域的驶入时刻;以及根据所述至少一辆车在当前时刻的状态以及所述驶入时刻,所述服务器生成所述速度规划指令。
在一些实施例中,所述当前时段可以对应于所述服务器的响应周期,所述服务器可以对一个响应周期内接收到的通过路口请求运行一次所述调度方法。
在一些实施例中,所述当前时段可以包括从第一时刻为开始时刻的预设时长,所述第一时刻可以为从当前时段之前的时段结束之后的第一辆车驶入所述路口调度区域的时刻。
在一些实施例中,所述先前车辆的规划行驶轨迹可以由所述先前车辆在当前时段之前根据从所述服务器接收到的先前车辆速度规划指令确定,所述先前车辆速度规划指令由所述服务器根据所述调度方法生成。
在一些实施例中,所述速度规划指令可以进一步包括满足约束模型的速度规划,所述约束模型包括约束目标:所述至少一辆车通过所述路口调度区域的总时间同目标用时相比之差最小;以及以下约束条件中的至少一个:
所述至少一辆车以及所述先前车辆中,对于同一车道上的车辆,先驶入所述路口调度区域的车辆先驶入所述路口区域;
所述至少一辆车中,对于任意两辆存在路径重叠点的车辆,两车分别通过所述路径重叠点的时刻差值大于安全阈值;以及
对于所述至少一辆车中的任意一辆车,对于该辆车以及与其存在路径重叠点的所述先前车辆,所述与其存在路径重叠点的先前车辆构成先前车辆组,该车辆通过所述路径重叠点的时刻晚于所述先前车辆组中的任何一辆到达所述路径重叠点的时刻。
在一些实施例中,所述服务器生成所述速度规划指令可以包括:对于所述至少一辆车中的每一辆,根据该车辆对应的驶入时刻,以及当前的位置和速度,规划该车在其规划行驶路径上的速度变化曲线,所述速度变化曲线满足:按照所述速度变化曲线行驶时,该车在其对应的驶入时刻驶入所述路口区域。
在一些实施例中,所述延伸道路可以包括第一段道路和第二段道路,所述第二段道路连接所述路口区域,所述速度变化曲线可以进一步满足:按照所述速度变化曲线行驶时,所述至少一辆车中的每一辆车行驶到第一段道路末端时达到第一预设速度,行驶到第二段道路末端时达到第二预设速度。
本申请的第二方面提出了一种服务器;包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前文所述的用于具有自动驾驶功能的车辆的路口调度方法的步骤。
本申请的第三方面提出了一种一种路口调度装置。所述路口调度装置包括数据获取单元,数据存储单元,指令生成单元以及指令发送单元。所述数据获取单元可以用于在当前时段接收从至少一辆车发送的通过路口请求。所述通过路口请求可以包括所述至少一辆车在当前时段的状态。所述状态可以包括位置、速度和规划行驶路径。所述数据存储单元可以存储当前时段的先前车辆的规划行驶轨迹。所述先前车辆可以包括在当前时段之前驶入且未驶离路口调度区域的车辆。所述数据获取单元可以进一步从所述数据存储单元获取所述先前车辆的规划行驶轨迹。所述指令生成单元可以用于根据所述先前车辆的规划行驶轨迹以及所述通过路口请求生成速度规划指令。所述指令发送单元可以向所述至少一辆车发送所述速度规划指令。
本申请的第四方面提出了一种计算机可读存储介质,其上存储有计算机程序。所述计算机程序被处理器执行时可以实现如前文所述的路口调度方法的步骤。
本申请提出的用于在路口调度具有自动驾驶功能的车辆的装置和方法等,通过采集需要通过路口区域的车辆的状态数据,基于路口当前的通行状况,综合安全性和效率两个方面的考量,合理安排每辆车的行驶策略,可以在保证安全的前提下提升整个路口的通行效率。
附图说明
以下附图详细描述了本申请中披露的示例性实施例。其中相同的附图标记在附图的若干视图中表示类似的结构。本领域的一般技术人员将理解这些实施例是非限制性的、示例性的实施例,附图仅用于说明和描述的目的,并不旨在限制本申请的范围,其他方式的实施例也可能同样的完成本申请中的发明意图。其中:
图1是本申请中的在路口进行车辆调度的的一个实施例的场景示意图;
图2是根据本申请的一些实施例的具有自动驾驶能力的示例性车辆和自动驾驶系统的框图;
图3是信息处理单元的示例性硬件和软件组件的示意图;
图4是本申请中的一种在路口调度具有自动驾驶功能车辆的示例性流程图;
图5为本申请中的根据先前车辆的规划行驶轨迹以及当前时段车辆的通过路口请求确定速度规划指令的一个示例性流程图;
图6是本申请中的一个速度变化曲线示意图;以及
图7是本申请中的一种路口调度装置的示意图。
具体实施方式
本申请披露了一种用于在路口调度具有自动驾驶功能的车辆的系统与方法。所述具有自动驾驶功能的车辆可以接收速度规划指令,并根据指令要求进行行驶(以下关于具有自动驾驶功能的车辆的描述可以替换为″自动驾驶车辆″或″车辆″)。服务器可以接收所述路口附近一定范围内车辆的需要通过路口的请求,并根据所述请求中包含的车辆信息统一对一段时间内需要通过该路口的车辆进行统一调度,从而实现整体上路口通行效率的提升,以及避免车辆的碰撞。上述系统和方法也可以应用于其他具有自动驾驶功能的交通参与装置的调度。比如上述系统和方法可以用于空中飞行器、水面船只、水下舰艇等设备的航道调度等。
为了给本领域普通技术人员提供相关披露的透彻理解,在以下详细描述中通过示例阐述了本发明的具体细节。然而本申请披露的内容应该理解为与权利要求的保护范围一致,而不限于该具体发明细节。比如,对于本领域普通技术人员来说,对本申请中披露的实施例进行各种修改是显而易见的;并且在不脱离本申请的精神和范围的情况下,本领域的普通技术人员可以将这里定义的一般原理应用于其他实施例和应用。再比如,这些细节如果没有以下披露,对本领域普通技术人员来说也可以在不知道这些细节的情况下实践本申请。另一方面,为了避免不必要地模糊本申请的内容,本申请对公知的方法,过程,系统,组件和/或电路做了一般性概括而没有详细描述。因此,本申请披露的内容不限于所示的实施例,而是与权利要求的范围一致。
本申请中使用的术语仅用于描述特定示例实施例的目的,而不是限制性的。比如除非上下文另有明确说明,本申请中如果对某要件使用了单数形式的描述(比如,″一″、″一个″和/或等同性的说明)也可以包括多个该要件。在本申请中使用的术语″包括″和/或″包含″是指开放性的概念。比如a包括/包含b仅仅表示a中有b特征的存在,但并不排除其他要件(比如c)在a中存在或添加的可能性。
应当理解的是,本申请中使用的术语,比如″系统″,″单元″,″模块″和/或″块″,是用于区分不同级别的不同组件,元件,部件,部分或组件的一种方法。但是,如果其他术语可以达到同样的目的,本申请中也可能使用该其他术语来替代上述术语。
本申请中描述的模块(或单元,块,单元)可以实现为软件和/或硬件模块。除非上下文另有明确说明,当某单元或模块被描述为″接通″、″连接到″或″耦合到″另一个单元或模块时,该表达可能是指该单元或模块直接接通、链接或耦合到该另一个单元或模块上,也可能是指该单元或模块间接的以某种形式接通、连接或耦合到该另一个单元或模块上。在本申请中,术语″和/或″包括一个或多个相关所列项目的任何和所有组合。
在本申请中,术语″自动驾驶车辆″可以指能够感知其环境并且在没有人(例如,驾驶员,飞行员等)输入和/或干预的情况下对外界环境自动进行感知、判断并进而做出决策的车辆。术语″自动驾驶车辆″和″车辆″可以互换使用。术语″自动驾驶″可以指没有人(例如,驾驶员,飞行员等)输入的对周边环境进行智能判断并进行导航的能力。
考虑到以下描述,本申请的这些特征和其他特征、以及结构的相关元件的操作和功能、以及部件的组合和制造的经济性可以得到明显提高。参考附图,所有这些形成本申请的一部分。然而,应该清楚地理解,附图仅用于说明和描述的目的,并不旨在限制本申请的范围。应理解,附图未按比例绘制。
本申请中使用的流程图示出了根据本申请中的一些实施例的系统实现的操作。应该清楚地理解,流程图的操作可以不按顺序实现。相反,操作可以以反转顺序或同时实现。此外,可以向流程图添加一个或多个其他操作。可以从流程图中移除一个或多个操作。
本申请中使用的定位技术可以基于全球定位系统(gps),全球导航卫星系统(glonass),罗盘导航系统(compass),伽利略定位系统,准天顶卫星系统(qzss),无线保真(wifi)定位技术等,或其任何组合。一个或多个上述定位系统可以在本申请中互换使用。
此外,尽管本申请中的系统和方法主要描述了关于调度自动驾驶车辆的系统与方法,但是应该理解,这仅是示例性实施例。本申请的系统或方法可以应用于任何其他类型的运输系统。例如,本申请的系统或方法可以应用于不同环境的运输系统,包括陆地,海洋,航空航天等,或其任何组合。运输系统的自动驾驶车辆可包括出租车,私家车,挂车,公共汽车,火车,子弹列车,高速铁路,地铁,船只,飞机,宇宙飞船,热气球,自动驾驶车辆等,或其任何组合。在一些实施例中,该系统或方法可以在例如物流仓库,军事事务中找到应用。
图1是本申请中的在路口进行车辆调度的的一个实施例的场景示意图。如图1所示,图中路口为双向六车道的没有红绿灯的十字路口,应当注意的是,本申请提出的路口调度方法不仅仅可以应用于图示十字路口情形,而同样可以用于丁字路口,环岛等其他存在多出入口的道路情况。所述车道情形也不局限于图中所示双向六车道,如四车道,单行道等情形同样适用本申请提出的方案。在图1所示的场景下,车道1-12上,每个车道都可以有车辆驶入。所述车辆可以是自动驾驶车辆130,也可以是具有部分自动驾驶功能的车辆。
所述自动驾驶车辆130可包括非自动驾驶车辆所有的一些常规结构,例如,发动机、车轮、方向盘等,还可以包括自动驾驶车辆特有的电子设备,所述电子设备可以包括感知模块140、规划模块150和控制模块160。所述感知模块140可以获取自动驾驶车辆130周围的环境信息,比如周围道路情况,障碍物情况,其他车辆情况,天气情况等。所述规划模块150可以根据感知模块140获取的数据进行行驶策略的决策,比如感知模块140探测到前方有障碍物,规划模块150可以做出刹停车辆的决策,也可以做出绕开障碍物的决策等。所述规划模块150可以将做出的决策传输给控制模块160。所述控制模块160可以根据收到的决策控制车辆的机械结构以实现决策的效果。所述具有部分自动驾驶功能的车辆可以包括所述自动驾驶车辆130中的感知模块140和控制模块160。
所述车辆(包括自动驾驶车辆130和具有部分自动驾驶功能的车辆)可以和服务器110进行数据交互。比如,所述车辆可以向所述服务器110发送车辆状态信息,所述服务器110可以向所述车辆发送行驶策略信息。所述服务器110可以包括云端服务器,所述车辆可以通过无线网络与所述服务器110之间进行数据交互。所述服务器也可以包括位于所述路口附近的本地服务器。所述本地服务器的信号覆盖范围可以包括至少一个路口。所述车辆在驶入所述本地服务器的覆盖范围后可以与所述本地服务器建立数据交互的连接。比如在一些实施例中,所述本地服务器可以设置于十字路口中间,用于调度经过该十字路口的车辆。
在图1所示场景中,每辆车有其既定的行驶路径,同一车道中行驶的车辆路径可以相同也可以不同。如在图1中车道12的车辆的行驶路径120-1为在路口右转。在另外的实施例中,行驶在车道12上的车辆也可以采取直行或者在路口掉头等不同的行驶路径。在一些实施例中,每辆车的行驶路径可以预先通过无线通讯(比如internet,4g网络,5g网络等)通知远端的服务器110和/或交通指挥中心,从而在服务器110和/或交通指挥中心的角度。在一些实施例中,所述每辆车的行驶路径可以是由所述服务器110和/或交通指挥中心确定的。例如,所述车辆将其需要通过路口区域的起点和终点位置发送给所述服务器110,所述服务器110可以根据所述起点和终点位置为该车辆确定一条行驶路径。不同的车辆可能在图中路口区域有路径重叠点。如果每辆车按照其既定行驶路径继续行驶,由于缺乏红绿灯的约束,则车辆可能会在所述路径重叠点处发生碰撞。本申请提出的方法包括让车辆与所述服务器110之间建立沟通,由服务器为进入路口的车辆规划行驶策略,进而提升整个路口的通行效率和安全性。
图2是根据本申请的一些实施例的具有自动驾驶能力的示例性车辆和自动驾驶系统200的框图。如图2所示,所述自动驾驶车辆130可包括感知模块140、规划模块150和控制模块160,存储器220,网络230,网关模块240,控制器区域网络(can)250,以及车辆机械系统260。所述感知模块可以进一步包括传感器组141和感知定位单元142。所述传感器组141可以用于感知周围的环境信息(如第三方车辆,行人,车道信息,障碍物等)。所述传感器组141可以包括视觉传感器(如单目摄像头、双目摄像头、鱼眼摄像头和广角摄像头等)、激光雷达和毫米波雷达等。所述感知定位单元142可以根据所述传感器组141探测到的数据可以实现对车辆进行定位、可行驶区域检测和障碍物检测等功能。
在一些实施例中,所述感知模块140可以采集车辆前方道路的环境信息,例如道路信息,其他车辆信息和交通信号信息等,所述其他车辆信息和交通信号信息包括但不限于:其他车辆的实时速度、位置和加速度等、交通灯的颜色和最高限速(例如,当前路段的最高限速、路口的最高限速等)。所述视觉传感器可以检测所述交通灯110的状态(例如,所述交通灯110的颜色)、车道线、标示牌和其他车辆等,并将检测的视觉信息传送给所述规划模块150。所述传感器组141可以测量所述自动驾驶车辆130与目标的距离,例如,所述目标可以是所述自动驾驶车辆130周围的其他车辆等,并将其测量信息传送给所述规划模块150。在一些实施例中,所述传感器组141可基于所述自动驾驶车辆130的定位信息和所述目标在地图上的位置信息,以测量二者的距离。在一些实施例中,所述传感器组141可以包括激光雷达或毫米波雷达,对所述自动驾驶车辆130的周围环境进行三维建模。所述传感器组141可以测量所述第三方车辆110的实时行驶速度,并将其测量信息传送给所述规划模块150。所述传感器组141可以测量所述第三方车辆110的实时加速度,并将其测量信息传送给所述规划模块150。所述感知定位单元142可以对所述自动驾驶车辆130和第三方车辆110进行实时定位,并将定位信息传送至所述规划模块150。在一些实施例中,所述感知定位单元142可以包括为高精度gps定位单元。
所述规划模块150可以接收所述感知模块140获取的信息,并生成行驶决策信息。在一些实施例中,当所述感知模块140识别到路径重叠点170时,规划模块150生成的行驶决策信息可以为:向所述车辆130下发加速通过,保持当前速度,或减速的行驶指令。
所述控制模块160可以处理与车辆驾驶(例如,自动驾驶)有关的信息和/或数据,以执行本申请中描述的一个或多个功能。在一些实施例中,所述控制模块160可以接收所述决策信息,并根据所述决策信息控制所述自动驾驶车辆130执行决策的行驶指令。在一些实施例中,所述控制模块160可以根据从所述服务器110接收到的控制信号对车辆进行控制。在一些实施例中,所述控制模块160可以配置成自主地驱动车辆。例如,所述控制模块160可以向所述车辆机械系统260输出多个控制信号。多个控制信号可以被配置为由所述车辆的机械系统260的多个电子控制模块(electroniccontrolunits,ecu)接收,以控制车辆的驱动。在一些实施例中,所述控制模块160可基于车辆的环境信息(例如,周围第三方车辆的行驶状况)确定车辆的行驶速度。在一些实施例中,所述控制模块160可以包括一个或多个处理引擎(例如,单核处理引擎或多核处理器)。仅作为示例,所述控制模块160可以包括中央处理单元(centralprocessingunit,cpu),专用集成电路(application-specificintegratedcircuit,asic),专用指令集处理器(application-specificinstruction-setprocessor,asip),图形处理单元(graphicsprocessingunit,gpu),物理处理单元(physicsprocessingunit,ppu),数字信号处理器(digitalsignalprocessor,dsp),场可编程门阵列(fieldprogrammablegatearray,fpga),可编程逻辑器件(programmablelogicdevice,pld),控制器,微控制器单元,精简指令集计算机(reducedinstruction-setcomputer,risc),微处理器(microprocessor)等,或其任何组合。
所述存储器220可以存储数据和/或指令。在一些实施例中,所述存储器220可以存储从所述自动驾驶车辆130获得的数据(例如,所述感知模块140中各传感器测量的数据)。在一些实施例中,所述存储器220可以存储高精度地图,高精度地图中还包括车道数量、车道宽度、道路曲率、道路坡度、最高速度和推荐行驶速度等信息。在一些实施例中,所述存储器220可以存储所述控制模块160可以执行或使用的数据和/或指令,以执行本申请中描述的示例性方法。在一些实施例中,所述存储器220可以包括大容量存储器,可移动存储器,易失性读写存储器(volatileread-and-writememory),只读存储器(rom)等,或其任何组合。作为示例,比如大容量存储器可以包括磁盘,光盘,固态驱动器等;比如可移动存储器可以包括闪存驱动器,软盘,光盘,存储卡,拉链盘,磁带;比如易失性读写存储器可以包括随机存取存储器(ram);比如ram可以包括动态ram(dram),双倍数据速率同步动态ram(ddrsdram),静态ram(sram),可控硅ram(t-ram)和零电容器ram(z-ram);比如rom可以包括掩模rom(mrom),可编程rom(prom),可擦除可编程rom(eprom),电可擦除可编程rom(eeprom),光盘rom(cd-rom),以及数字通用磁盘rom等。在一些实施例中,存储可以在云平台上实现。仅作为示例,云平台可以包括私有云,公共云,混合云,社区云,分布式云,云间云,多云等,或其任何组合。
在一些实施例中,所述存储器220可以连接到所述网络230以与自动驾驶车辆130的一个或多个组件(例如,控制模块160,传感器组141)通信。所述自动驾驶车辆130中的一个或多个组件可以经由所述网络230访问存储在所述存储器220中的数据或指令。在一些实施例中,所述存储器220可以直接连接到所述自动驾驶车辆130中的一个或多个组件或与其通信(例如,控制模块160,传感器组141)。在一些实施例中,所述存储器220可以是自动驾驶车辆130的一部分。
所述网络230可以促进信息和/或数据的交换。在一些实施例中,所述自动驾驶车辆130中的一个或多个组件(如感知模块140,控制模块160等)可以经由所述网络230与所述服务器110之间建立数据交互。如所述感知模块140将感知到的自车信息通过网络230发送给所述服务器110。所述控制模块160可以通过所述网络230从所述服务器110接收控制指令以控制所述自动驾驶车辆。
在一些实施例中,所述自动驾驶车辆130中的一个或多个组件(例如,控制模块160,传感器组141)可以经由所述网络230将信息和/或数据发送到所述自动驾驶车辆130中的其他组件。例如。所述控制模块160可以经由所述网络230获得/获取车辆的动态情况和/或车辆周围的环境信息。在一些实施例中,所述网络230可以是任何类型的有线或无线网络,或其组合。仅作为示例,所述网络230可以包括有线网络,有线网络,光纤网络,远程通信网络,内联网,因特网,局域网(lan),广域网(wan),无线局域网(wlan),城域网(man),广域网(wan),公共电话交换网(pstn),蓝牙网络,zigbee网络,近场通信(nfc)网络等,或其任何组合。在一些实施例中,所述网络230可以包括一个或多个网络接入点。例如,所述网络230可以包括有线或无线网络接入点,例如基站和/或互联网交换点230-1,......,230-1。通过该自动驾驶车辆130的一个或多个部件可以连接到网络230以交换数据和/或信息。
所述网关模块240可以基于车辆的当前驾驶状态确定多个ecu的命令源。命令源可以来自人类驾驶员,来自所述控制模块160等,或其任何组合。
所述网关模块240可以确定车辆的当前驾驶状态。车辆的驾驶状态可以包括手动驾驶状态,半自动驾驶状态,自动驾驶状态,错误状态等,或其任何组合。例如,所述网关模块240可以基于来自人类驾驶员的输入将车辆的当前驾驶状态确定为手动驾驶状态。又例如,当前道路状况复杂时,所述网关模块240可以将车辆的当前驾驶状态确定为半自动驾驶状态。作为又一示例,当发生异常(例如,信号中断,处理器崩溃)时,所述网关模块240可以将车辆的当前驾驶状态确定为错误状态。
在一些实施例中,所述网关模块240可以判断车辆的当前驾驶状态是手动驾驶状态做出响应,将人类驾驶员的操作发送到多个ecu。例如,确定了车辆的当前驾驶状态是手动驾驶状态后,所述网关模块240可以做出响应将由人类驾驶员执行的对所述自动驾驶车辆130的加速器的按压操作发送到车辆机械系统260。确定了车辆的当前驾驶状态是自动驾驶状态后,所述网关模块240可以做出响应将所述控制模块160的控制信号发送到多个ecu。例如,确定车辆的当前驾驶状态是自动驾驶状态后,网关模块240可以做出响应将与转向操作相关联的控制信号发送到所述车辆机械系统260。所述网关模块240可以响应于车辆的当前驾驶状态是半自动驾驶状态的结论,将人驾驶员的操作和所述控制模块160的控制信号发送到多个ecu。当确定了车辆的当前驾驶状态是错误状态的时候,所述网关模块240可以做出响应将错误信号发送到多个ecu。
所述控制器区域网络(can总线)250是个可靠的车辆总线标准(例如,基于消息的协议message-basedprotocol),其允许微控制器(例如,控制模块160)和设备(例如,车辆机械系统260等)在没有主计算机的应用程序中彼此通信。所述can250可以被配置为将所述控制模块160与所述车辆机械系统260的多个ecu连接。
图3是信息处理单元300的示例性硬件和软件组件的示意图。所述信息处理单元300上可以承载实施所述服务器110对所述路口区域车辆的调度方法。例如,所述服务器110可以包括至少一个所述信息处理单元300,所述信息处理单元300可以处理至少一个路口的车辆调度工作。
所述信息处理单元300可以是专门设计用于处理来自所述车辆的通过路口请求,产生车辆控制指令并发送到所述车辆的专用计算机设备。
例如,所述信息处理单元300可以包括连接到与其连接的网络的com端口350,以便于数据通信。所述信息处理单元300还可以包括处理器320,处理器320以一个或多个处理器的形式,用于执行计算机指令。计算机指令可以包括例如执行本文描述的特定功能的例程,程序,对象,组件,数据结构,过程,模块和功能。例如,所述处理器320可以获得即将进入路口车辆的位置,速度,加速度。或类似物,或其任何组合。所述处理器320可以进一步产生每辆车的行驶策略并通过i/o组件360向车辆发送。
在一些实施例中,所述处理器320可以包括一个或多个硬件处理器,例如微控制器,微处理器,精简指令集计算机(risc),专用集成电路(asic),特定于应用的指令-集处理器(asip),中央处理单元(cpu),图形处理单元(gpu),物理处理单元(ppu),微控制器单元,数字信号处理器(dsp),现场可编程门阵列(fpga),高级risc机器(arm),可编程逻辑器件(pld),能够执行一个或多个功能的任何电路或处理器等,或其任何组合。
所述信息处理单元300可以包括内部通信总线310,程序存储和不同形式的数据存储(例如,磁盘370,只读存储器(rom)330,或随机存取存储器(ram)340)用于由计算机处理和/或发送的各种数据文件。所述信息处理单元300还可以包括存储在rom330,ram340和/或将由处理器320执行的其他类型的非暂时性存储介质中的程序指令。本申请的方法和/或过程可以作为程序指令实现。所述信息处理单元300还包括i/o组件360,支持计算机和其他组件(例如,用户界面元件)之间的输入/输出。所述信息处理单元300还可以通过网络通信接收编程和数据。
仅仅为了说明问题,在本申请中所述信息处理单元300中仅描述了一个处理器。然而,应当注意,本申请中的所述信息处理单元300还可以包括多个处理器,因此,本申请中披露的操作和/或方法步骤可以如本申请所述的由一个处理器执行,也可以由多个处理器联合执行。例如,如果在本申请中信息处理单元300的处理器320执行步骤a和步骤b,则应该理解,步骤a和步骤b也可以由信息处理中的两个不同处理器联合或分开执行(例如,第一处理器执行步骤a,第二处理器执行步骤b,或者第一和第二处理器共同执行步骤a和b)。
图4是本申请中的一种在路口调度具有自动驾驶功能车辆的示例性流程图。该方法主要包括所述服务器110获取即将进入路口车辆的状态信息,经过统一处理后为每辆车生成行驶策略,并通过所述网络230下发包含所述行驶策略的控制指令到所述车辆以达到统一调度的目的。仅仅作为展示之用,本披露将以自动驾驶车辆为例描述本申请中的发明点,然而本领域的普通技术人员会了解本披露中的发明点也可以应用在人工驾驶的车辆中。比如所述人工驾驶的车辆具有行驶至路口时服从调度的功能,即所述人工驾驶车辆在即将进入路口区域时交由所述服务器110发送的控制指令来控制,以达到多车辆快速协同通过路口,增加路口通行效率的目的。所述服务器110可以包括至少一组图3所示的结构,用于处理路口附近车辆发送的通过路口请求并下发控制指令。
在410中,在当前时段,所述服务器110可以接收从至少一辆车发送的通过路口请求。所述通过路口请求可以包括所述至少一辆车在当前时段的状态。所述状态包括位置、速度和规划行驶路径。所述路口包括不同道路存在重叠的区域,即路口区域。如图1所示的场景中,所述路口区域为图中点划线对应的方形区域。所述车辆在进入路口调度区域时即向所述服务器110发送所述通过路口请求。所述路口调度区域包括所述路口区域以及通过路口区域的外围延伸道路(如图中各车辆当前所处的区域)。在一些实施例中,所述延伸道路的长度为预设值(如100米、300米、1公里、5公里等)。
在一些实施例中,所述服务器110可以周期性地对其接收到的通过路口请求进行处理。所述当前时段对应一个周期的时间长度。比如,所述服务器110每隔5秒对在这5秒接收到的通过路口请求进行一次处理。所述当前时段可能对应其中的一个5秒的时间长度。在这5秒中的第1秒、第3秒和第4秒分别有三辆车向所述服务器110发送通过路口请求,则这三辆车的通过路口请求被服务器110识别为属于当前时段,这些车辆也被归为一组,即当前时段的车辆组。再比如,所述服务器110可以每隔1秒对在这1秒接收到的通过路口请求进行一次处理。相应地,所述当前时段可能对应其中的一个1秒的时间长度。在这1秒中如果有一辆或者多辆车向所述服务器110发送通过路口请求,则这些车辆的通过路口请求被服务器110识别为属于当前时段,这些车辆也被归为一组,即当前时段的车辆组。
在一些实施例中,所述服务器110也可以响应式地对一个时段内的通过路口请求进行处理。比如在20秒的时间内没有车辆进入所述路口调度区域,则服务器处于待命状态。在第21-22秒之间有第一辆车进入所述路口调度区域并向服务器发送所述通过路口请求,则所述服务器110可以以21秒为开始时刻,以一个预设时长(如5秒、1秒,等等)作为一个时段。同理,在该时段结束后,以下一辆车进入所述路口调度区域并发送所述通过路口请求的时刻起算下一个时段。
所述车辆在进入所述路口调度区域时向所述服务器110发送所述通过路口请求。所述进入路口调度区域时对应的时刻可以是车头刚刚进入所述路口调度区域的时刻,也可以是预设好的部分车身进入所述路口调度区域的时刻或者整个车身全部进入所述路口调度区域的时刻。
所述车辆的状态可以通过所述车辆的感知模块140获取。在一些实施例中,所述车辆的规划行驶路径可以通过所述规划模块150确定。比如在当前时段之前,所述车辆的规划模块150已经根据目的地位置、自车位置以及高精度地图确定了一条通过所述路口调度区域的规划行驶路径。
在一些实施例中,在固定车道行驶的车辆的规划行驶路径可以是预先设定好的。比如在图1所示的场景中,各车道对应的行驶路径是固定的。在三个车道中,左侧车道对应左转路径,右侧车道对应右转路径,中间车道对应直行路径。并且,每条路径在图中所示路口区域中的轨迹是固定的,例如路径120-2对应车道1来车的行驶路径。所述车辆在进入所述路口调度区域时,其决策单元150可以根据其对应的车道确定其规划行驶路径或者根据既定的规划行驶路径来决定是否并道到对应的车道中。
每辆车的行驶路径可以预先通过无线通讯(比如internet,4g网络,5g网络等)通知远端的服务器110和/或交通指挥中心,从而在服务器110和/或交通指挥中心的角度,每辆通过所述路口的车辆的行驶路径都为预先决定的。所述预先决定的车辆行驶轨迹可以对应于固定的行车道,(例如,所述所述车辆行驶轨迹可以由所述服务器110根据车辆发送请求时候的信息确定。所述信息可以包括驶入车道与驶出车道,根据驶入车道与驶出车道。)。服务器110和/或交通指挥中心将对路口车辆的行驶速度和位置做统筹规划。在一些实施例中,所述规划行驶轨迹可以进一步包括所述车辆位于所述路口区域内时,不同时刻对应的位置信息。或者说所述规划行驶路径可以进一步包括所述车辆位于所述路口区域内,沿着所述规划行驶路径的行驶速度。所述行驶速度可以是所述路口区域允许的最大限速。在一些实施例中,所述车辆可以以同样的预设速度通过所述路口区域。所述预设速度可以是所述路口区域的最大限速。
在420中,所述服务器获取当前时段的先前车辆的规划行驶轨迹。所述先前车辆包括在当前时段之前驶入且未驶离路口调度区域的车辆。在当前时段之前,已经有先前车辆驶入所述路口调度区域并且在当前时段的末尾时刻仍未驶出所述路口调度区域。所述驶出路口调度区域可以包括车头或车尾越过所述路口区域。所述先前车辆的规划行驶轨迹包括在当前时段之后的一段时间内,所述先前车辆的行驶路径和在其行驶路径上的速度。所述当前时段之后的一段时间包括所述先前车辆按照其规划行驶轨迹从当前时段到驶出所述路口区域的时间段。所述先前车辆的规划行驶轨迹可以存储在所述服务器110的存储设备中(例如只读存储器330、随机存储器340和磁盘370等)。所述服务器110可以从所述存储设备中调取所述先前车辆的规划行驶轨迹。
在一些实施例中,所述存储设备中存储的先前车辆的规划行驶轨迹可以是在当前时段之前,所述服务器110运行本申请所述的路口调度方法为所述先前车辆确定的。比如在当前时段之前的第一时段,有一号先前车辆驶入所述路口调度区域,在第一时段之前的第二时段,有二号先前车辆驶入所述路口调度区域。所述服务器110运行本申请所述的方法根据二号先前车辆的规划行驶轨迹确定所述一号先前车辆的规划行驶轨迹。在当前时段,所述一号先前车辆的规划行驶轨迹中对应于当前时段之后的部分可以作为相对于当前时段进入所述路口调度区域的车辆的先前车辆的规划行驶轨迹。比如所述一号车辆在t=0时由服务器110确定的规划行驶轨迹为在t=30时驶出所述路口调度区域。如果当前时段对应t=10,则所述一号车辆的规划行驶轨迹中t=10至t=30的部分可以作为在当前时段一号先前车辆的规划行驶轨迹。所述服务器110在根据所述一号先前车辆的规划行驶轨迹生成控制指令并下发所述一号先前车辆时,可以将该指令信息存储到所述存储设备中,以供当前时段或之后时段调用。
在一些实施例中,所述存储设备中存储的先前车辆的规划行驶轨迹可以是在当前时段之前,所述先前车辆将其规划行驶轨迹发送给所述服务器110的。比如,所述先前车辆驶入所述路口调度区域时,所述路口调度区域内没有其他车辆,所述先前车辆将其规划模块150确定的规划行驶轨迹包括进所述通过路口请求并发送给所述服务器110后,所述服务器110可以将所述规划行驶轨迹存入所述存储设备中并发送(或不发送)不需进行行驶策略调整的指令给所述先前车辆。
在430中,所述服务器110可以根据所述先前车辆的规划行驶轨迹以及所述通过路口请求生成速度规划指令。所述速度规划指令包含控制所述车辆速度的控制命令,用于改变所述车辆在其规划行驶路径行驶上的速度,以达到避免碰撞的目的。比如,所述车辆根据其当前行驶状态可能与先前车辆或当前时段的其他车辆在所述路口区域发生碰撞,则该控制命令可以改变所述车辆在进入所述路口区域前和/或后的速度,使得所述车辆到达路径重叠点的时刻先于或后于可能与其碰撞的车辆。关于生成所述速度规划指令的细节,请见图5及其相关描述。
在440中,所述服务器110向所述至少一辆车发送所述速度规划指令指示所述至少一辆车按照所述速度规划指令调整车速。所述服务器可以在当前时段结束后将获取的当前时段进入所述路口调度区域的车辆的通过路口请求统一处理,即运行一次本申请所述的方法后,分别将每辆车的速度规划指令通过网络230向每辆车下发。此外,所述服务器110也可以将所述每辆车的速度规划指令与其通过路口请求中包括的规划行驶路径存入所述存储设备,以作为当前时段之后的时段为后续车辆进行速度规划时调用。所述速度规划指令包括预设的数据结构。比如所述预设的数据结构包括指令部分和速度规划部分。所述指令部分可以被所述至少一辆车自动执行;所述速度规划部分包括车速描述内容。当所述至少一辆车接到所述速度规划指令的时候,会自动运行所述指令部分,而所述指令部分引导所述至少一辆车按照所述速度规划部分来规划速度。
图5为本申请中的根据先前车辆的规划行驶轨迹以及当前时段车辆的通过路口请求确定速度规划指令的一个示例性流程图。所述服务器110可以根据通过路口请求中包含的规划行驶路径以及先前车辆的规划行驶轨迹在所述路口区域中确定若干路径重叠点。在图1所示的场景下,以每条车道对应的路径是固定的情况为例(本领域的普通技术人员也可以理解,在每条车道对应的车辆路径不固定的情况下,本申请所介绍的方法也成立),其中任意一条车道对应的路径与其他车道对应的路径是否存在路径重叠点,或存在路径重叠点的具体位置是固定的,如图中所示的16个路径重叠点。
应当注意的是,本申请用图1所示场景图来解释流程图是仅仅是为了方便表述,不构成对本申请的限制。本领域内普通技术人员应当认识到本申请披露的方法可以应用到其他类似场景,例如双向四车道、单行道等场景。
可能发生碰撞的两车分别通过对应路径重叠点的时刻差值大于一定阈值可以避免两车在路口区域发生碰撞。对于所述速度规划控制指令,可以包括调高或调低所述车辆的速度的命令,使得所述车辆可以错开可能与其在所述路径重叠点发生碰撞的车辆。
在一些实施例中,所述车辆和先前车辆通过路口区域时的速度为同一预设值。则所述车辆/先前车辆从驶入所述路口区域(车头驶入或车尾驶入)到路径重叠点的时间为固定值。因此所述速度规划指令可以包括调高或调低所述车辆速度的命令,使得其提前或推迟驶入所述路口区域,即可错开可能与其在所述路径重叠发生碰撞的车辆。
在510中,所述服务器110可以根据所述先前车辆的规划行驶轨迹以及所述通过路口请求,确定所述至少一辆车驶入所述路口区域的驶入时刻。在一些实施例中,所述速度规划指令可以包括使车辆减速的命令以实现推迟驶入所述路口区域的目的。所述减速的程度可以用延迟时间来衡量。所述延迟时间可以是所述车辆根据其当前状态及路网限速最快能够驶入所述路口区域的时刻(理想到达路口时间),与为了避开碰撞而减速后驶入所述路口区域的实际时刻(实际到达路口时刻)之差。也即所述服务器110可以根据所述延迟时间和所述车辆状态来确定所述车辆的驶入时刻。在本申请的一些实施例中,所述延迟时间满足一个约束模型,所述约束模型包括以下约束条件中的至少一个:
优化目标:所述至少一辆车到达路口区域的总时间与理想情况下到达路口区域的总时间的差值最小。
约束条件1.所述至少一辆车以及所述先前车辆中,对于同一车道上的车辆,先驶入所述路口调度区域的车辆先驶入所述路口区域;
约束条件2.所述至少一辆车中,对于任意两辆存在路径重叠点的车辆,两车分别通过所述路径重叠点的时刻差值大于安全阈值;以及
约束条件3.对于所述至少一辆车中的任意一辆车,对于该辆车以及与其存在路径重叠点的所述先前车辆,所述与其存在路径重叠点的先前车辆构成先前车辆组,该车辆通过所述路径重叠点的时刻晚于所述先前车辆组中的任何一辆到达所述路径重叠点的时刻。
为了方便解释,以下给出所述约束模型的一个实施例,不应视为对本申请披露范围的限制:
优化目标(目标函数):
约束条件1:(oti di)-(otj dj)≥hmin(limljm)........................(2);
约束条件2:|(oti di τmn)-(otk dk τmn)|δτ(limlkncmn)..................(3);
约束条件3:(oti di τmn)≥max[(otf df τmn),(otp dp τmn)].........(4);
约束条件4:
其中,i、j、k、f和p表示车辆编号,m和n表示车道编号,ψ表示所述路口区域所有车道集合;
ω1:当前时段驶入所述路口调度区域的车辆集合;
ω0:先前车辆集合;
ω:当前时刻所述路口调度区域内所有车辆的集合,ω=ω0 ω1;
di:车辆i实际到达路口的时刻(at)与理想到达路口的时刻(ot)差,也即所述的延迟时间,即:di=ati-oti;
hmin:同一个车道上,两车之间要保持的安全距离;
lim:编号为i车辆驶入编号为m的车道时,该值为1,否则为0;
cmn:m车道来车与n车道来车的路径重叠点,有路径重叠点时该值为1,否则为0;
τmn:m车道来车从驶入所述路口区域开始到行驶到与n车道来车的路径重叠点时的时间长度,或者表示n车道来车从驶入所述路口区域开始到行驶到与m车道来车的路径重叠点时的时间长度。τmn为车辆和车道的函数,对于m车道上向路口行驶的车辆,τmn表示m车道来车从驶入所述路口区域开始到行驶到与n车道来车的路径重叠点时的时间长度,对于n车道上向路口行驶的车辆,τmn表示n车道来车从驶入所述路口区域开始到行驶到与m车道来车的路径重叠点时的时间长度;
δτ:安全时间差,表示两车分别安全通过同一路径重叠点的时刻之差的最小值。
关于公式1,对当前时段内进入路口调度区域的车辆,每辆车的延迟时间进行求和,并要求该求和的值最小,表示对于当前时段的的车辆来说,总体的通行效率最高,总体通过所述路口调度区域的时间最少。
关于公式2,i车与j车同为当前时段或当前时段之前驶入所述路口调度区域m车道的车辆,i车在j车之后进入所述路口调度区域。该公式表示i车驶入所述路口调度区域的时刻要比任何一辆在其之前驶入m车道的车辆驶入所述路口调度区域的时刻晚至少hmin(limljm)时长。hmin(limljm)值的大小根据i车和j车在当前时段的状态确定。比如,当i车速度比j车快时对应的hmin(limljm)值可能比i车速度比j车慢时对应的hmin(limljm)值大。如果i车没有驶入m车道,则lim=0,hmin(limljm)=0,表示i车和j车在m车道上不用约束,j车同理。该约束可以保证在同一车道上,先驶入所述路口调度区域的车辆先驶入所述路口区域。
关于公式3,i车和k车同为在当前时段驶入所述路口调度区域的车辆,i车和k车从m车道或n车道驶入。(oti di τmn)表示i车行驶到m车道和n车道对应路径重叠点的时刻,(otk dk τmn)表示k车行驶到m车道和n车道对应路径重叠点的时刻。两个时刻差值的绝对值表示两车分别通过所述路径重叠点的时刻的差值,该差值要求不少于所述安全时间差δτ(limlkncmn)。该约束条件保证当前时段驶入所述路口调度区域的任意两辆车之间不发生碰撞。
关于公式4,i车为当前时段驶入所述路口调度区域m车道的车辆,f车和p车为当前时段之前驶入所述路口调度区域m车道或n车道的先前车辆。该公式表示对于不论是从m车道驶入还是从n车道驶入,并经过m、n两车道路径重叠点的所有先前车辆,对于当前时段驶入所述路口调度区域m车道的i车,其到达所述m和n车道路径重叠点的时刻要晚于所述的所有先前车辆。该约束条件反应了车辆之间的优先级,即当前时段进入所述路口调度区域的车辆优先级要低于先前车辆。
关于公式5,可用来约束所述延迟时间为正值。
根据以上约束模型可以确定每辆车的延迟时间,进而根据其当前状态确定其对应的驶入时刻。
在520中,所述服务器110可以根据所述至少一辆车在当前时刻的状态以及所述驶入时刻生成所述速度规划指令。比如在一些实施例中,对在当前时段驶入所述路口调度区域的车辆,所述速度规划指令可以包括速度变化曲线,该车按照所述速度变化曲线在其规划行驶路径上行驶后,可以在510中确定的其对应的驶入时刻驶入所述路口区域。
图6是本申请中的一个速度变化曲线示意图。该路口区域的左侧延伸道路包括区间1和区间2。在区间1中,三条速度曲线(一条实线和两条虚线)分别从各自刚驶入区间1时不同的速度在区间1结束前加速到相同的第一预设速度。所述第一预设速度可以是该延伸路段的最高限速。在区间2中,三条速度曲线在中端分别有不同程度的降速,然后在区间2结束时达到相同的第二预设速度。所述第二预设速度可以是允许驶入所述路口区域的最大限速。所述第二预设速度也可以是所述延伸道路上的最大限速,即等于所述第一预设速度。在区间2的不同程度的降速可以满足对每辆车的延迟时间的要求。比如,某一辆车的延迟时间相对较长,则可以在区间2时降低该车车速(甚至停车),使其在区间2的行驶时间变长。
图7是本申请中的一种路口调度装置700的示意图。所述路口调度装置700包括数据获取单元710,数据存储单元720,指令生成单元730以及指令发送单元740。
所述数据获取单元710可以用于在当前时段接收从至少一辆车发送的通过路口请求。所述通过路口请求可以包括所述至少一辆车在当前时段的状态。所述状态可以包括位置、速度和规划行驶路径。
所述数据存储单元720可以存储当前时段的先前车辆的规划行驶轨迹。所述先前车辆可以包括在当前时段之前驶入且未驶离路口调度区域的车辆。
所述数据获取单元710可以进一步从所述数据存储单元720获取所述先前车辆的规划行驶轨迹。
所述指令生成单元730可以用于根据所述先前车辆的规划行驶轨迹以及所述通过路口请求生成速度规划指令。
所述指令发送单元740可以向所述至少一辆车发送所述速度规划指令。
本申请还提出了一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序。所述处理器执行所述计算机程序时可以实现如前文所述的路口调度方法的步骤。
本申请还提出了一种计算机可读存储介质,其上存储有计算机程序。所述计算机程序被处理器执行时可以实现如前文所述的路口调度方法的步骤。
综上所述,在阅读本详细公开内容之后,本领域技术人员可以明白,前述详细公开内容可以仅以示例的方式呈现,并且可以不是限制性的。尽管这里没有明确说明,本领域技术人员可以理解本申请意图囊括对实施例的各种合理改变,改进和修改。这些改变,改进和修改旨在由本申请提出,并且在本申请的示例性实施例的精神和范围内。
此外,本申请中的某些术语已被用于描述本申请的实施例。例如,″一个实施例″,″实施例″和/或″一些实施例″意味着结合该实施例描述的特定特征,结构或特性可以包括在本申请的至少一个实施例中。因此,可以强调并且应当理解,在本说明书的各个部分中对″实施例″或″一个实施例″或″替代实施例″的两个或更多个引用不一定都指代相同的实施例。此外,特定特征,结构或特性可以在本申请的一个或多个实施例中适当地组合。
应当理解,在本申请的实施例的前述描述中,为了帮助理解一个特征,出于简化本申请的目的,本申请有时将各种特征组合在单个实施例、附图或其描述中。或者,本申请又是将各种特征分散在多个本发明的实施例中。然而,这并不是说这些特征的组合是必须的,本领域技术人员在阅读本申请的时候完全有可能将其中一部分特征提取出来作为单独的实施例来理解。也就是说,本申请中的实施例也可以理解为多个次级实施例的整合。而每个次级实施例的内容在于少于单个前述公开实施例的所有特征的时候也是成立的。
在一些实施方案中,表达用于描述和要求保护本申请的某些实施方案的数量或性质的数字应理解为在某些情况下通过术语″约″,″近似″或″基本上″修饰。例如,除非另有说明,否则″约″,″近似″或″基本上″可表示其描述的值的±20%变化。因此,在一些实施方案中,书面描述和所附权利要求书中列出的数值参数是近似值,其可以根据特定实施方案试图获得的所需性质而变化。在一些实施方案中,数值参数应根据报告的有效数字的数量并通过应用普通的舍入技术来解释。尽管阐述本申请的一些实施方案列出了广泛范围的数值范围和参数是近似值,但具体实施例中都列出了尽可能精确的数值。
本文引用的每个专利,专利申请,专利申请的出版物和其他材料,例如文章,书籍,说明书,出版物,文件,物品等,可以通过引用结合于此。用于所有目的的全部内容,除了与其相关的任何起诉文件历史,可能与本文件不一致或相冲突的任何相同的,或者任何可能对权利要求的最宽范围具有限制性影响的任何相同的起诉文件历史。现在或以后与本文件相关联。举例来说,如果在与任何所包含的材料相关联的术语的描述、定义和/或使用与本文档相关的术语、描述、定义和/或之间存在任何不一致或冲突时,使用本文件中的术语为准。
最后,应理解,本文公开的申请的实施方案是对本申请的实施方案的原理的说明。其他修改后的实施例也在本申请的范围内。因此,本申请披露的实施例仅仅作为示例而非限制。本领域技术人员可以根据本申请中的实施例采取替代配置来实现本申请中的发明。因此,本申请的实施例不限于申请中被精确地描述过的哪些实施例。
1.一种用于在路口调度具有自动驾驶功能的车辆的方法,其特征在于,包括:
在当前时段,服务器接收从至少一辆车发送的通过路口请求,所述通过路口请求包括所述至少一辆车在当前时段的状态,所述状态包括位置、速度和规划行驶路径;
所述服务器获取当前时段的先前车辆的规划行驶轨迹,所述先前车辆包括在当前时段之前驶入且未驶离路口调度区域的车辆;
根据所述先前车辆的规划行驶轨迹以及所述通过路口请求,所述服务器生成速度规划指令;以及
所述服务器向所述至少一辆车发送所述速度规划指令指示所述至少一辆车按照所述速度规划指令调整车速。
2.根据权利要求1所述的方法,其特征在于,所述通过路口请求由所述至少一辆车在进入所述路口调度区域时发出,所述路口调度区域包括路口区域及其延伸道路。
3.根据权利要求2所述的方法,其特征在于,所述服务器生成速度规划指令包括:
根据所述先前车辆的规划行驶轨迹以及所述通过路口请求,所述服务器确定所述至少一辆车驶入所述路口区域的驶入时刻;以及
根据所述至少一辆车在当前时刻的状态以及所述驶入时刻,所述服务器生成所述速度规划指令。
4.根据权利要求1所述的方法,其特征在于,所述当前时段对应于所述服务器的响应周期,所述服务器对一个响应周期内接收到的通过路口请求运行一次所述调度方法。
5.根据权利要求1所述的方法,其特征在于,所述当前时段包括从第一时刻为开始时刻的预设时长,所述第一时刻为从当前时段之前的时段结束之后,第一辆车驶入所述路口调度区域的时刻。
6.根据权利要求1所述的方法,其特征在于,所述先前车辆的规划行驶轨迹由所述先前车辆在当前时段之前根据从所述服务器接收到的先前车辆速度规划指令确定,所述先前车辆速度规划指令由所述服务器根据所述调度方法生成。
7.根据权利要求3所述的方法,其特征在于,所述速度规划指令进一步包括满足约束模型的速度规划,所述约束模型包括约束目标:所述至少一辆车到达路口区域的总时间与理想情况下到达路口区域的总时间的差值最小;以及以下约束条件中的至少一个:
所述至少一辆车以及所述先前车辆中,对于同一车道上的车辆,先驶入所述路口调度区域的车辆先驶入所述路口区域;
所述至少一辆车中,对于任意两辆存在路径重叠点的车辆,两车分别通过所述路径重叠点的时刻差值大于安全阈值;以及
对于所述至少一辆车中的任意一辆车,对于该辆车以及与其存在路径重叠点的所述先前车辆,所述与其存在路径重叠点的先前车辆构成先前车辆组,该车辆通过所述路径重叠点的时刻晚于所述先前车辆组中的任何一辆到达所述路径重叠点的时刻。
8.根据权利要求7所述的方法,其特征在于,所述服务器生成所述速度规划指令包括:
对于所述至少一辆车中的每一辆,根据该车辆对应的驶入时刻,以及当前的位置和速度,规划该车在其规划路径上的速度变化曲线,所述速度变化曲线满足:按照所述速度变化曲线行驶时,该车在其对应的驶入时刻驶入所述路口区域。
9.根据权利要求8所述的方法,其特征在于,所述延伸道路包括第一段道路和第二段道路,所述第二段道路连接所述路口区域,所述速度变化曲线进一步满足:按照所述速度变化曲线行驶时,所述至少一辆车中的每一辆车行驶到第一段道路末端时达到第一预设速度,行驶到第二段道路末端时达到第二预设速度。
10.一种服务器,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至9中任一项所述的用于具有自动驾驶功能的车辆的路口调度方法的步骤。
技术总结