一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于增强型Dijkstra算法的无信号灯交叉路口车辆调度方法与流程

2021-08-27 13:35:00 来源:中国专利 TAG:调度 车辆 方法 信号灯 算法
基于增强型Dijkstra算法的无信号灯交叉路口车辆调度方法与流程

本发明涉及无信号灯交叉路口车辆调度方法,尤其是采用dijkstra算法的车辆调度方法。



背景技术:

智能车辆在无信号灯交叉路口的通行调度是当前无人驾驶领域的研究热点。调度策略的优劣直接影响到智能车辆在交叉路口的通行效率和行驶安全。但受制于车载传感器的感知范围,以及楼宇、车体等对电磁信号的遮挡,每个智能车辆只能感知到局部道路信息,难以实现交叉路口的全局优化调度,频繁发生冲突起停、碰撞追尾等问题。这不仅降低了智能车辆在交叉路口的通行效率,还增加了交通事故发生的风险。

相关交叉路口调度方案可分为集中式和分布式两类。集中式车辆调度以全局最优为调度目标,通常由智能路基单元(roadsideunit,rsu)搜集获取全局信息并进行调度规划,再将调度策略发送至每个智能车辆。集中式车辆调度模式简单,但对路基单元的算力要求较高,且网络负载过于集中,系统可靠性较差。相比之下,分布式车辆调度采用去中心化的系统架构,每个智能车辆仅利用自身感知的局部信息进行调度规划。虽然分布式车辆调度模式存在全局寻优困难等问题,但不依赖于中心节点(如路基单元rsu等),具有算量小、负载相对均衡等优点,表现出较好的应用前景。

当前主流的分布式车辆调度方案主要分为以下三类:

(1)网格权值法,其基本原理是将交叉路口描述为一个网格图,每个网格具有不同权值,每个车辆依据网格权值选择下一步前进的目标网格,进而得出最优调度策略,如改进dijkstra算法、快速扩展随机树(rrt)算法和a*算法等。刘子豪等人结合跳跃点搜索理论,用选取的关键点代替了传统a*算法中openlist和closelist的点,提高了调度算法的寻优速度;姜辰凯等人提出了一种基于时间窗的改进dijkstra算法,实现多agv的动态路径规划。该算法能够在最优路径下避免冲突与死锁,使系统具有较好的鲁棒性。吴伟等人提出了交叉路口网格化下的车辆调度优化模型和时间优化分配算法,以交叉口总延误最小为控制目标,运用分支定界法确定车辆在交叉口的最佳行驶路径、速度及驶入时刻。此类算法虽然模型简单,但均属于静态算法,并不是适用于移动车辆较多的路口调度场景。

(2)仿生调度法,即智能车辆通过模拟自然界生物的行为规律对交叉路口下的调度策略进行寻优,具有自学习、自决定等特点,如优化粒子群算法、改进遗传算法和人工鱼群算法等。zhuofeili等人基于遗传算法的优化方法对车辆通过序列进行决策,同时计算最优车辆轨迹,降低了交叉口平均行程时延;覃磊等人提出了一种基于改进的人工鱼群算法的车辆优化调度方法,首先将车辆与路径通过三维粒子编码方法进行编码,构造有效的车辆路径,再通过原始算法进行迭代,寻找最优解,仿真表明该算法具有较快的收敛速度,而且以较大的概率收敛于人工鱼群算法的最优解。陈秋莲等人本专利提出了一种基于神经网络和三次样条曲线函数的改进粒子群算法,统一了静态和动态障碍物环境表示和碰撞检测模型,能够快速规划出光滑的无碰撞机器人路径,使得路径长度更短,算法的迭代次数更少。jianwang等人提出了一种解决车辆调度问题的混合蚁群算法,在分析其优缺点的基础上,提出了考虑实时路况的蚁群算法的改进策略,提高了求解动态vrp的算法性能。此类算法对环境、参数和任务的变化具有较强的适用性和灵活性,但其全局搜索能力弱,寻优时间受个体分布的影响明显。

(3)人工智能算法,其核心在于智能车辆与外部环境进行交互试错学习。例如,智能车辆在感知到新环境特征时,会根据历史数据进行判断并规划出路径,再跟最佳路径对比,得出误差并将数据更新到历史数据中。这个过程是训练过程,当训练完毕后,算法对新的环境能规划出与最优路径近似的路径。常用的人工智能算法有神经网络算法、sarsa算法、q-learning算法和深度强化学习等。顾洵等人提出了基于detroit模型和深度学习的交通流调度方法,采用detroit模型预测车辆需求分布情况,同时采用深度学习模型获取不同道路的实际车辆流,实现交通流的优化调度。王程博等人建立了一种基于q-learning的无人驾驶船舶路径规划模型,基于马尔科夫过程设计激励函数,规划最优策略,能够在未知环境中规划出最优路径并成功避让多个障碍物。suminjeon等人提出了一种基于q-learning技术的港口码头自动化引导车辆路径选择方法,利用q-learning技术并通过构造给定的码头起重机位置的最短时间路由矩阵,估计每辆车在行驶过程中由于车辆之间的干扰而产生的等待时间,为车辆找到最短路线。此类算法能在复杂环境下获得最短路径,并对移动车辆较多的路口场景调度适应性好,但是人工智能算法得出的解是逼近最优解但不是最优解,其对于参数的设置敏感,与最优解的误差与参数有很大的关系。



技术实现要素:

本发明针对车辆在通过无信号灯交叉路口时存在等待时间长,通行效率低的问题,提出了一种基于增强型dijkstra算法的无信号灯交叉路口车辆调度方法。该方法是在dijkstra算法的基础上进行改进,实现了动态权值下求最短路径的目的,可以根据实际车辆环境灵活调整每个车辆的行驶轨迹,该方法能够在保持较低的冲突次数的前提下减少车辆总通行时间,车辆平均停车延误减少1.5s,冲突率下降13%。

为达到上述目的,本发明采用的技术方案:

一种基于增强型dijkstra算法的无信号灯交叉路口车辆调度方法,包括下述步骤:

1)定义交叉路口内部矩形区域为冲突区,不同方向的进入交叉路口的车道区域为缓冲区;将冲突区在横纵方向上均匀划分为若干个网格,每个网格的边长与车道宽度相等,每个网格仅能同时容纳一个车辆;

如果某网格与当前网格存在公共顶点或公共边,则该网格为当前网格的相邻网格;因车辆在冲突区内行驶时只具有0-90°角的前进方向,定义车辆所在的当前网格的相邻可达网格为该车辆转向范围内的相邻网格;

定义车辆在交叉路口的起点和终点分别为车辆驶入冲突区的第一个网格和驶离冲突区时的最后一个网格;

2)依据现有的dijkstra算法,得到各车辆从源点和终点之间的初始最优路径,各车辆开始沿着初始最优路径行驶;

3)当车辆到达某网格后,判断在本车转向范围内的相邻网格中是否存在预警网格和危险网格,以及本车是否存在与其他车辆同时选择网格的情况;若不存在,转向范围内的相邻网格权值不会发生变化,则继续按照初始最优路径行驶到下一网格;否则转向范围内的相邻网格权值便会发生变化,此时车辆根据网格赋值原则选择权值最大的网格行驶;

车辆在直行或转向范围内选择某相邻网格进行移动时,如果该相邻网格已经被其他车辆占用,则定义该相邻网格为预警网格;如果该相邻网格没有被其他任何车辆占用,但正在被其他车辆选择,则定义该相邻网格为危险网格;若相邻网格既不属于危险网格也不属于预警网格,则定义此相邻网格为安全网格;

4)重复步骤3),直至车辆到达终点,调度结束。

作为对上述的无信号灯交叉路口车辆调度方法的进一步改进,以方向权值、安全权值和优先级权值三个影响因子,对网格权值进行动态赋值,车辆在当前网格中相对于某一个临近网格的权值w可以计算为方向权值α、安全权值β、优先级权值γ的乘积,即w=α*β*γ;其中,

(1)方向权值用于表示当前车辆前进方向与目标终点方向之间的偏差,约束车辆朝着目标终点方向前进;

(2)安全权值用于表征当前车辆与其他车辆之间的相对位置关系,约束车辆选择最安全的网格作为下一步的前进目标,避免在路口中发生碰撞;

(3)优先级权值用于表示车辆在选择下一步目标网格的优先程度,约束车辆在网格中的通行次序,避免车辆在路径规划时产生冲突。

作为对上述的无信号灯交叉路口车辆调度方法的进一步改进,方向权值α赋值原则为:设车辆当前所在网格中心与终点所在网格的中心连线为基准线,相邻网格中心与车辆当前所在网格中心的连线方向为当前航向;两者之间的夹角θ,即当前航向与基准线的夹角,为偏航角,当前网格和该相邻网格之间的方向权值为α=cosθ。

作为对上述的无信号灯交叉路口车辆调度方法的进一步改进,安全权值β赋值原则为:为设置车辆在当前网格向其他相邻网格移动时的安全权值,将所有网格分为三类,即预警网格,危险网格和安全网格,分别赋予不同的权重;车辆在直行或转向范围内选择某相邻网格进行移动时,如果该相邻网格已经被其他车辆占用,则定义该相邻网格为预警网格,相应的安全权值β=0.5;如果该相邻网格没有被其他任何车辆占用,但正在被其他车辆选择,则定义该相邻网格为危险网格,相应的安全权值β=0.1;若相邻网格既不属于危险网格也不属于预警网格,则定义此相邻网格为安全网格,安全权值β=0.9;当网格对于车辆同时属于危险网格和预警网格,以及受多车影响成为预警网格时,安全权值为相乘后的结果。

作为对上述的无信号灯交叉路口车辆调度方法的进一步改进,优先级权值γ赋值原则为:

如果不存在其它车辆与该车辆同时选择某一个相同网格时,则该车辆的优先级权值γ默认为0.8;

如果只有一辆其它车辆与该车辆同时选择某一个相同网格时,该车辆的优先级权值γ即是该车辆相对于这一辆其它车辆的优先级权值γ;该车辆相对于这一辆其它车辆的优先级权值γ根据该车辆相对于这一辆其它车辆的运动方向而定:右侧直行、左侧直行、左转、右转所对应的优先级权值分别为0.8、0.6、0.4和0.2;

如果有两辆或以上其它车辆与该车辆同时选择某一个相同网格时,则该车辆的优先级权值γ等于该车辆相对于各辆其它车辆的优先级权值γ的乘积。

本发明的有益效果:本专利以智能车辆为研究对象,把交叉路口网格化,由网格之间的连线描述车辆的行驶轨迹,创新的制定了动态网格权值赋值原则,通过确定网格的方向权值、安全权值和优先级权值为车辆寻找到通行时间最短的路径。增强型dijkstra算法在dijkstra算法的基础上进行改进,实现了动态权值下求最短路径的目的,可以根据实际车辆环境灵活调整每个车辆的行驶轨迹。仿真结果表明,增强型dijkstra算法调度能够在保持较低的冲突次数的前提下减少车辆总通行时间,在一定条件下相比dijkstra算法,车辆平均停车延误减少1.5s,冲突率下降13%。

附图说明

图1是智能车辆在无信号灯交叉路口的调度优化模型图;

图2是智能车辆通行时刻图;

图3是带有权重的网格路径示意图;

图4是交叉路口内车辆行驶示意图;

图5是增强型dijkstra算法示意图;

图6是交叉路口模型图;

图7是平均停车延误对比图;

图8是冲突率对比图;

图9是车辆总通行时间对比图。

具体实施方式

1系统模型

如图1所示,考虑一个无信号灯控制的交叉路口,每个方向包含双向六个车道。假设每个智能车辆均装备了车载传感单元,可以获取当前的状态参数,如地理位置、实时车速、航向角度等。同时,每个智能车辆还装备了无线收发装置,其广播覆盖半径为r米,通过周期性广播的方式与其他车辆进行信息交互。在交叉路口中心位置安装了一个具有无线收发功能的智能路基单元rsu。假设rsu的广播覆盖范围足够大,能够覆盖交叉路口范围内所有的智能车辆,并通过协同转发的方式实现数据信息在智能车辆之间的可靠交互共享。定义交叉路口内部矩形区域为冲突区,不同方向的进入交叉路口的车道区域为缓冲区。依据相关交通法规,智能车辆在进入缓冲区后不再允许更换车道。

以冲突区中心为原点,水平方向为x轴,垂直方向为y轴建立直角坐标系。定义v={vi|i≤n,i∈n }为当前交叉路口所有智能车辆的集合。为所有智能车辆在当前t时刻瞬时转向角的集合,d为车辆之间的安全距离。以车辆vi为例,定义为其在t时刻的速度,为t时刻的转向角,为t时刻的地理位置。此外,定义为智能车辆vi进入冲突区的起始时刻,为车辆vi离开冲突区的终了时刻,ti=tin-tout为车辆vi从进入冲突区到离开冲突区所消耗的通行时间。

定义δt为交叉路口调度总时间,即交叉路口内所有智能车辆从进入冲突区时刻到全部驶离冲突区时刻的总时间间隔。图2描述了每个智能车辆vi从进入冲突区到离开冲突区所消耗的通行时间ti与路口调度通行时间δt之间的逻辑关系。其中,集合l={l1,l2,l3,l4,…,ln-1,ln}中每个横段在水平轴上的投影表示相应智能车辆在冲突区内的行驶时间。定义车辆vi的有效区段为车辆vi与车辆vi-1离开冲突区的时间差△ti,即不妨设v1为最先进入冲突区内的智能车辆,则车辆v1通行时间的有效区段为△t1。车辆vi的重合区段为车辆vi与vi-1通行时间的交集δ(ti∩ti-1)。令t′表示集合v中智能车辆最早进入冲突区的时刻,t″表示集合v中车辆最后离开冲突区的时刻,则集合v中智能车辆从开始进入冲突区到全部驶离冲突区的路口调度通行时间△t与每个智能车辆通行时间的关系可以表示为:

δt=t″-t′

根据上述定义,可将智能车辆在交叉路口的优化调度过程描述成如式(1)所示的数学优化问题。

其中,式(1)为智能车辆在交叉路口通行调度的目标函数;约束条件(1a)要求智能车辆在行驶过程中不能出现停顿;约束条件(1b)要求车辆转向角不能发生突变;约束条件(1c)要求车辆之间保持最小安全距离。

2dijkstra算法

针对最短路径问题,目前常用的方法包括dijkstra算法、a-star算法、floyd算法和bellman-ford算法等。其中,dijkstra算法凭借寻优速度快、代码实现简单等特点,在路径优化、节点调度等领域得到了广泛应用。其核心思想在于以起点为中心向外层逐步扩展,求解从起点到其他所有顶点的最短路径,直到扩展到终点。

考虑一个带权重的无向图g=(v,e),其中集合v为所有顶点的集合,e为顶点之间连线的集合。定义顶点s为源点,顶点t为终点,为从顶点i出发至顶点j的最短路程,lij为顶点i到j之间的可达路径,p为已求出与源点s之间最短路径的点集合。如果顶点i和j相邻,则dij表示无向图中相邻顶点i和j之间的路程,反之则定义dij=∞,且lij不存在。初始化时p={s},源点s与自身的最短路径表示为lss,最短路程为

依据dijkstra算法的基本思想,源点s和终点z之间最短路径的搜索过程可以通过以下步骤实现。首先,找到源点s所有单跳可达的相邻顶点,并从中找出路程最短的相邻顶点(不妨设其为k1),将其放入点集合p中,即p={s,k1};同时可以计算,顶点k1到源点s的最短路径为最短路程为其次,分别找出所有与集合p中两个顶点{s,k1单跳可达的相邻顶点,不妨设其为顶点k2和k3。以相邻顶点k2为例,该顶点到源点s的路径分别为或者相应的路程为类似的,可以找出顶点k2和k3到源点s的最短路程。如果顶点k2到源点s的最短路程小于顶点k3到源点s的最短路程,则选择将具有最短路径的顶点k2加入集合p,并可以计算得出

。此时,p={s,k1,k2},顶点k2到源点s的最短路程为以此类推,遍历其他所有顶点并更新p集合,直至终点t被加入到集合p中时算法结束。

以图3为例,设顶点0和6分别为源点和终点,需要寻找源点0和终点6之间的最短路径和最短路程。首先,将源点加入集合p,即p={0},并从源点0出发搜索单跳可达的相邻顶点,其分别为顶点1、2和3。同时,由图3中网络权值可以计算并将具有最短路径的顶点1加入集合p中,此时顶点1与源点0之间的最短路径为l01,集合p更新为p={0、1。其次,需要分别从集合p中的各个顶点,即顶点0和1,分别向具有单跳可达的相邻顶点进行搜索(图3中的顶点2、3和5)。同时计算可得并将具有最短路径的顶点3加入至集合p中。此时集合p更新为p={0、1、3},顶点3与源点0之间的最短路径为l01→l13。以此类推,依次求出每个顶点与源点之间的最短路径并加入集合p中,直到集合p中包含终点6时算法结束。由此可得从源点0至终点6的最短路径为0→1→3→4→5→6,最短路程为13。

根据上述描述可知,dijkstra算法适用于拓扑结构简单、路径权值相对稳定的网络,如停车场中车辆的智能泊车调度,但不能直接应用于拓扑结构快速变化、路径权值受环境影响明显的场景,如交叉路口中智能车辆的优化调度。

3动态赋值的增强型dijkstra算法

本小节提出了具有动态赋值特性的增强型dijkstra算法,根据权值的变化重新求出最短路径,以适应交叉路口内网格权值随复杂车辆环境实时变化的特点,解决dijkstra算法无法处理动态变化权值的问题。

3.1调度场景的建立

考虑如图4所示的交叉路口,每个路口包含双向六车道。将方形冲突区在横纵方向上均匀划分为若干个网格,并假设每个网格的边长与车道宽度相等,每个网格仅能同时容纳一个智能车辆。

定义1(相邻可达网格)如果某网格b与当前网格a存在公共顶点或公共边,则定义网格b为a的相邻网格。考虑到车辆在冲突区内行驶时只具有直行和0~90°角(不包括0°角)转弯的前进方向,定义车辆的相邻可达网格为当前转向范围内的相邻网格。

以图4中的b表示的车辆vb为例,当前所在网格的编号为6,则根据定义可知其相邻网格为4、5、7~12。在其直线前进方向和0~90°角转弯的前进方向范围内,其相邻可达网格分别为7、8、9、10和11。

定义2(起始路径约束)定义车辆在交叉路口的起点和终点分别为车辆驶入交叉路口的第一个网格和驶离时的最后一个网格。

以图4为例,位于右侧路口左转车辆的起点和终点网格分别为a和a′、直行车辆的起点和终点网格为b和b′、右转车辆起点和终点网格均为c。

3.2动态网格权值赋值原则

在利用dijkstra算法对智能车辆进行调度时,最优网格的选择受到偏航角度、车辆冲突等因素的影响,同时还需要考虑到多个车辆同时向同一网格行驶的特殊情况。本专利分别提出了方向权值、安全权值和优先级权值三个影响因子,对网格权重进行动态赋值,具体说明如下:

(1)方向权值用于表示当前车辆前进方向与目标终点方向之间的偏差,约束车辆朝着目标终点方向前进;

(2)安全权值用于表征当前车辆与其他车辆之间的相对位置关系,约束车辆选择最安全的网格作为下一步的前进目标,避免在路口中发生碰撞;

(3)优先级权值用于表示车辆在选择下一步目标网格的优先程度,约束车辆在网格中的通行次序,避免车辆在路径规划时产生冲突。

定义3(网格权值)智能车辆在当前网格中相对于某一个临近网格的权值w可以计算为方向权值、安全权值、优先级权值乘积,即w=α*β*γ,其中α为方向权值,β为安全权值,γ为优先级权值。

3.2.1方向权值赋值原则

设车辆当前所在网格中心与终点所在网格的中心连线为0度基准线,相邻网格中心与车辆当前所在网格中心的连线方向为当前航向;两者之间的夹角θ,即当前航向与基准线的夹角,为偏航角。定义当前网格和该相邻网格之间的方向权值为α=cosθ。可见,偏航角θ值越大,方向权值α值越小,表示当前所选择的相邻网格与终点方向偏离越大;反之,方向权值α值越大,与终点偏离越小。以图4中的a表示的车辆va为例,网格18为当前车辆所在的网格,网格a′为终点,此时相邻网格16、15和17的方向权值分别为1,0.7和0.7。

3.2.2安全权值赋值原则

为设置车辆在当前网格向其他相邻网格移动时的安全权值,将所有网格分为三类,即预警网格,危险网格和安全网格,分别赋予不同的权重。车辆在直行或转向范围内选择某相邻网格进行移动时,如果该相邻网格已经被其他车辆占用,则定义该相邻网格为预警网格,相应的安全权值β应设定为0.5;如果该相邻网格没有被其他任何车辆占用,但正在被其他车辆选择,则定义该相邻网格为危险网格,相应的安全权值的β应设定为0.1;若相邻网格既不属于危险网格也不属于预警网格,则定义此相邻网格为安全网格,安全权值β为0.9。当网格对于车辆同时属于危险网格和预警网格,以及受多车影响成为预警网格时,安全权值为相乘后的结果。

如图4所示,a表示的车辆va正朝向终点网格16(即网格a′)行驶,d表示的车辆vd正朝向终点网格d行驶,c表示的车辆vc正在网格16上朝向终点网格d行驶。对于车辆va而言,其转向范围内的相邻网格包括网格15,16和17。其中,网格16受车辆vc影响应认定为预警网格,相应的安全权值β1=0.5;网格17和15受车辆vc影响应认定为危险网格,安全权值β2=0.1,同理,网格17和16受车辆vd影响应认定为危险网格,安全权值β3为0.1。由于网格16和17同时受到车辆vc和vd的影响,网格安全权值应当为两车影响下安全权值的乘积,即网格16安全权值β=β1*β3=0.05,网格17的安全权值β=β2*β3=0.01。网格15的安全权值β=0.1。对于车辆vb而言,网格9未受其他车辆影响,安全权值β=0.9。

3.2.3优先级权值赋值原则

车辆在选择下一步目标网格时,可能存在多个车辆同时选择某一个相同的网格。因此需要为车辆设置不同的优先级权值,确保有且仅有一个车辆可以进入目标网格。按照交通法规将车辆的转向行为划分为右侧直行、左侧直行、左转和右转。当多个车辆选择同一网格时,需要按照车辆的转向行为设置相应的优先级权值。具体而言,当两个车辆(主车辆和另一车辆)同时选择某一相同的目标网格时,对于主车辆,只考虑其转向范围内其他影响车辆,根据主车辆相对于另一车辆的运动方向或转向行为确定主车辆相对于另一车辆的优先级权值,即,右侧直行、左侧直行、左转和右转行为所对应的优先级权值分别设置为0.8、0.6、0.4和0.2。当三个或三个以上车辆(主车辆和两个或以上其它车辆)同时选择某一相同的目标网格时,主车辆的优先级权值γ等于主车辆相对于各个其它车辆的优先级权值的乘积。当不存在其它车辆与主车辆同时选择某一个相同网格时,则主车辆的优先级权值默认为0.8。

如图4所示,车辆va和ve均朝向网格a′行驶,vb朝向网格b′行驶。以车辆va为例,在网格18处与车辆vd同时选择网格17,由于此时车辆va相对于车辆vd需右转进入网格17,根据赋值原则应当将车辆va优先级权值设置为0.2;与vc同时选择网格15,由于此时车辆va车辆vc需左转进入网格15,车辆va优先级权值应设置为0.4。

以车辆vb为例,在网格6处与车辆ve同时选择网格7,由于此时车辆vb进入网格7相对车辆ve属于左侧直行,车辆vb优先级权值为0.6;在网格9处不存在优先级冲突,因此车辆vb优先级权值为0.8。

3.3增强型dijkstra算法

为解决动态路径权值下最短路径的求解问题,提出了一种增强型dijkstra算法。其核心思想在于依据初始网格权值计算出静态权值图,并搜索每个车辆的初始最优路径,然后随着车辆的行驶,动态调整方向权值、安全权值和优先级权值,对网格权值进行更新,在初始最优路径的基础上进行局部调整,直至到达终点。

设车辆的初始最优路径为网格a→b→c→d,车辆开始沿着初始最优路径行驶。当车辆到达网格a时,判断在本车转向范围内的相邻网格中是否存在预警网格和危险网格,以及本车是否存在与其他车辆同时选择网格的情况。若不存在,转向范围内的相邻网格权值不会发生变化,则继续按照初始最优路径行驶到网格b;否则转向范围内的相邻网格权值便会发生变化,此时车辆根据网格赋值原则选择权值最大的网格行驶(不妨设该网格为e,存在网格e和网格b为同一网格的情况)。以此类推,车辆每到达下一网格时对转向范围内的相邻网格进行权值判定,选择最优网格行驶,直至到达终点,调度结束。假设车辆在到达网格b后选择网格c、d行驶,则最终车辆从起点到到终点的最优路径为a→e→c→d。

具体代码实现如下:

如图5所示,va为左转车辆,起点和终点分别为网格a和a′;vb为直行车辆,起点和终点为网格b和b′;vc为右转车辆,起点和终点均为网格c。车辆到达冲突区后,首先行驶至左转、右转和直行路线的起点网格,对应图5中网格a、b和c,此时驶入车辆的相邻网格为网格3、6、9、12和13,其他网格权值仅受方向权值影响。车辆应用dijkstra算法找到初始最优路径,如图5中箭头路径所示(如车辆va的初始最优路径依次为网格a、网格12、网格15、网格a′),并开始沿初始最优路径行驶。

以车辆va为例,拟从起点网格a开始沿初始最优路径。当车辆行驶至网格12时,如果在本车转向范围内的相邻网格内不存在预警网格和危险网格,以及本车与其他车辆不存在同时选择网格的情况,则按照初始最优路径,即网格15行驶。但此时车辆vd自网格15朝向终点网格17行驶,车辆ve自网格19朝向终点网格3行驶,存在车辆va转向范围内的相邻网格中权值改变的情况,此时车辆根据网格赋值原则重新选择权值最大的网格行驶。

在车辆va转向范围内的相邻网格中,网格11、16、15的方向权值α分别为0.7、1和1。

网格11未受其他车辆影响,网格15对于车辆va同时属于危险网格和预警网格,网格16对于车辆va属于危险网格,故网格11、15、16的安全权值β分别为0.9、0.05和0.01。

车辆va在网格12处与车辆ve同时选择网格15,与车辆ve和vd同时选择网格16,此时车辆va驶入网格15相对于车辆ve属于直行,车辆va驶入网格16相对于车辆ve属于左转,车辆va驶入网格16相对于车辆vd属于左转,由于网格16同时被车辆ve和vd同时选择,优先级权值需相乘,所以根据优先级权值赋值原则网格11、15和16的车辆va优先级权值γ分别为0.8、0.8和0.4*0.4=0.16。

按照网格权值的定义,此时网格11、15和16的网格权值分别为0.7*0.9*0.8=0.504、1*0.05*0.8=0.04和1*0.01*0.16=0.0016,对于车辆va来说,网格11的网格权值最大,故选择网格11为下一步目标网格。当车辆va行驶至网格11后,重复上述算法寻找下一网格,直至到达终点,调度结束。

4仿真分析

4.1仿真场景设置

为分析验证不同算法在交叉路口下的调度性能,联合使用vissim和matlab软件将本专利算法与下述算法进行对比验证,具体描述如下:

(1)dijkstra算法:遍历节点与节点之间的权重并找出一条总权重最小为最小路径的算法。

(2)精英蚁群算法:在原蚁群算法寻找到的最优路径进行额外的信息素加强。以提高收敛速度。

(3)基于卷积神经网络的强化学习算法:将路径二维图作为输入,利用卷积神经网络进行训练,最后输出一个可能最优路径。

为了实现对算法在交叉路口性能的公平比对,定义如下指标分别验证上述算法的性能:

(1)平均停车延误:每一个车辆由于某种原因而处于静止状态所产生的延误时间。本专利利用软件获得交叉路口冲突区域内各车流量下的总停车延误时间y(s),总路口交通量n(辆)。利用公式y/n,得出平均停车延误。

(2)冲突率:每一辆车通过交叉路口冲突区域时与其他车辆发生冲突的概率。利用得到的冲突区域内总停车次数s(次)、总路口交通量n(辆),经过公式s/n×100%得出冲突率。

(3)车辆总通行时间:固定车辆数,车辆全部通过冲突区域所用时间。

(4)偏差值:增强型dijkstra算法调度下车辆最终行驶路径和初始最优路径的差值。规定路径中网格数为m,网格坐标表示为(x,y),其对应的偏离网格坐标为(xi,yi),偏差值可表示为

在建立仿真实验场景时,利用vissim软件构建一个双向六车道的交叉路口模型,如图6所示。其交叉路口区域面积为100米*100米,中间交叉点处为智能路基单元rsu,其硬件参数为:12-24vdc电源输入(支持选配件220vac输入);交互信息储存量>10万条;支持网口、rs485通信、外部io输入输出通信;四psam接口。考虑到实际车辆的大小尺度,定义网格的尺寸为4米*4米,即将交叉路口冲突区域分化为25*25的网格图。设置交叉路口的平均车流量为50辆/分钟(此平均车流量为交叉路口冲突区域内的平均车流量),且可以根据仿真需要进行动态调整。冲突区域内的车辆为传感节点,采集周围的物理信息和自身车辆的相关参数、路径选取并上传至汇聚节点(rsu),汇聚节点将信息广播至其他车辆,实现车辆信息交互。其分布式网络选取主要参考肖广兵等人在无线传感网络簇内圆状分割路由算法的研究一文所提出的方法。

4.2调度性能分析

图7是四种算法在交叉路口不同车流量环境下的平均停车延误。如图7中所示,在交叉路口单位车流量为200辆/分钟时增强型dijkstra算法和强化学习算法相对于dijkstra算法在原先的平均停车延误时间11.5s上降低了1.9s和1.8s,dijkstra算法在规划路径时使用静态网络图,其规划出最优路径后不会因为环境进行交互改变,导致车辆停车次数过多。增强型dijkstra根据动态赋值原则改变搜索区域内的网格权值,其根据环境的变化对初始最优路径进行微调,从而减少了平均停车延误时间。而精英蚁群算法增强了最优路径的信息素,加快了最优路径选取速度也能达到减少平均停车延误时间的效果。

图8为四种算法调度下在不同车流量中的冲突率。冲突率是由各车流量下总冲突次数换算得出。冲突率越低车流通过交叉路口的效率越高。在50辆/分钟的情况下,车流密度稀疏,车辆不容易发生冲突,各算法的冲突率都较低,但在100辆/分钟、150辆/分钟的情况下,增强型dijkstra算法相较于其他算法能降低2%-13%。原因在于增强型dijkstra算法会根据环境的改变,重新计算三种权值。在车辆将要发生冲突时,优先级权值和安全权值影响因素较大,根据改变的网格权值,对原先的最优路径进行微调,从而避免了车辆冲突,减小了冲突率。而dijkstra算法不对初始最优路径修改,交叉路口冲突区域内最优路径交叉点多,冲突率大。精英蚁群算法和强化学习算法由于对环境交互慢、网络负载高,对路径修改效率不高,导致冲突率上升。

图9为车辆在四种算法调度下固定车辆数通过同一交叉路口所需要的车辆总通行时间。结合图8对比分析可以得出增强型dijkstra算法在保持较低的冲突次数的前提下可以减少车辆总通行时间。基于卷积神经网络的强化算法虽然在车辆总通行时间上相较于其他算法能减少10s-50s左右,但因为其受到参数和卷积核设定的影响,调度时的冲突次数降低较少。

表1增强型dijkstra各车流量下的偏差值

表1给出了增强型dijkstra算法在不同车流量下的偏差值。在50辆/分钟的车流量下,由于车辆密度较小,车辆之间的路径交叉少,所以其偏差值低。但随着车辆密度提升,车流量增大,其偏差值也增大。在高车辆密度的情况下能保持对应高的偏差值,说明该算法有较好的适应性能。

5结束语

本专利将交叉路口网格化,创新的制定了适用性好的动态网格权值赋值原则,搭配算法的实施,为车辆寻找到通行时间最短的路径,解决无信号灯交叉路口车辆调度问题。增强型dijkstra算法对dijkstra算法进行改进,实现了动态权值下求最短路径的目的。与当前研究成果相比,该策略的优势主要体现在两个方面:(1)该算法实现了交叉路口中整体空间的运用,提高了空间利用率,增加了交叉路口的车容量和算法调度的极限;(2)使用动态权值寻找最短路径,提高了算法的容错性和安全性。该优化调度算法自适应能力强,可根据实际车辆环境灵活调整每个车辆的轨迹,同时设定网格权值的危险权值,降低碰撞事故的发生概率。本算法能够有效解决交叉路口车辆的通行问题,对未来智能车辆和相应交通管理策略的应用及其推广有重要意义。

本专利提出的增强型dijkstra算法在交叉路口内相互冲突的车辆较多时,会存在求解速度变慢的问题,可以通过优化车辆速度实现加速求解。其次在交叉路口网格赋值原则中仍有部分特殊情况没有考虑到,下一步可以将赋值原则优化,设置复杂情况下的权值分配方法。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜