1.一种基于道路车流情况的路径规划方法,其特征在于:通过给出的起始节点S与目的节点E,计算出每个节点间的长度并获取每个节点间车辆的排队数量,再根据改进的A*算法,基于道路车流情况规划路径;具体的操作方式为:S1:获取待规划路径的起始节点S与目的节点E,绘制出二维平面有向图,以路线中各个路口的红绿灯为中间节点,获取起始节点S、目的节点E和各个中间节点在二维坐标轴中对应的坐标;
S2:根据各个起始节点S、目的节点E和各个中间节点的坐标,计算出各自对应路段的距离,并获取各自路段上的红绿灯排队车辆;
S3:基于已知的起始节点和目标节点,利用改进的A*算法规划路径。
2.根据权利要求1所述的一种基于道路车流情况的路径规划方法,其特征在于:所述改进的A*算法是对估价函数进行改进,原A*算法的估价函数为:F(n)=G(n)+H(n);
G(n)是当前n节点到起始节点的距离,H(n)是当前n节点到目标节点的距离;
改进的估价函数为:
F1(n)=G1(n)+H(n);
G1(n)=ω1G(n)+ω2P(i);
ω1+ω2=1;
P(i)是上一条父节点到该子节点n对应的路段编号为i的红绿灯排队车辆数,选取节点时,在考虑路线长短的同时,也考虑了道路车流情况,是在原估价函数基础上加入道路拥挤程度这一影响因素;ω2的取值由道路车流量决定,精确到小数点后两位;根据数据监测,获取前30天的平均排队车辆数,求其平均值为μav,当前时刻道路车辆平均值为μP(k),当前时刻道路拥堵程度为:ω2的取值确定公式为:
其中,第a个节点的坐标为(Xa,Ya),第b个节点的坐标为(Xb,Yb),由第a个节点及第b个节点组成的编号为i的路段长度S(i)为:因G(n),H(n),P(i)的量级不一样,为消除各自量级不同的影响,需对其进行处理,待规划路线共n个节点,k条路段,第i条路段长度为S(i);则k条路段长度平均值μS(k)为:μH(n)是所有节点到目的节点距离的平均值,μP(k)是所有节点间路段排队车队车辆数的平均值,则:* * *
G(n),H(n),P(i)的量级不一样,经过处理后,改进后的G(n),H(n),P(i)为:得到最终的改进的估价函数:
* * *
F1(n)=G1(n)+H(n),
* * *
G1(n)=ω1G(n)+ω2P(i)。
3.根据权利要求2所述的一种基于道路车流情况的路径规划方法,其特征在于:所述通过改进A*算法获取基于道路车流情况的路径规划的具体步骤为:步骤1:确定好各个节点在二维坐标轴上的坐标,确定起始节点坐标(Xst,Yst),目标节点坐标(Xend,Yend);
步骤2:初始化一个OPEN_LIST列表和CLOSE_LIST列表,将起始节点放入OPEN_LIST列表,并清空CLOSE_LIST列表;
步骤3:判断当前OPEN_LIST列表是否有目标节点,若有目标节点,则转至步骤6;
*
若没有目标节点,选取当前OPEN_LIST列表中代价函数F1 (n)值最小的节点,作为要扩展邻节点的当前节点n,并将其从OPEN_LIST列表中删除,放入到CLOSE_LIST列表中;
步骤4:检查每个扩展的邻节点、起始节点和目标节点构成的夹角Ki,判断该夹角是否大于夹角阈值Kd,当夹角大于夹角阈值时,则将该节点放入OPEN_LIST列表,当夹角小于夹角阈值时,则将该节点放入CLOSE_LIST列表;
如果扩展的邻节点中存在某相邻节点c已在OPEN_LIST列表中,计算新的路径从起始节* *点到节点c的G1(n);判断是否需要更新:主要判断新的G1(n)是否更低一些;
* * *
如果新的G1 (n)更低一点,则修改父节点为a,重新计算新的F1 (n)值,H (n)值不需要改变,节点c到目的节点E的预计消耗是固定的;
*
如果新的G1(n)更高一点,则说明新的路径消耗更高,则不需要改变;
*
步骤5:继续从OPEN_LIST列表中找出估价函数F1 (n)值最小的节点,从OPEN_LIST列表中删除,并加入CLOSE_LIST列表中,返回步骤3;
步骤6:在加入CLOSE_LIST列表中根据节点父子关系进行回溯,得到起始节点S到目的节点E的规划路径。
4.根据权利要求3所述的一种基于道路车流情况的路径规划方法,其特征在于:步骤4所述的夹角Ki,其中,邻节点的坐标为(Xi,Yi),起始节点坐标为(Xst,Yst),目标节点坐标为(Xend,Yend),则邻节点、起始节点和目标节点的夹角Ki的计算公式为:得到夹角Ki的值后,判断夹角Ki是否大于夹角阈值Kd度,避免过度追求道路流畅而绕路的情况。
5.根据权利要求3所述的一种基于道路车流情况的路径规划方法,其特征在于:所述的夹角阈值Kd受道路拥挤程度Ω影响,当道路过于拥挤,适当降低夹角阈值Kd的数值,当道路较为空闲时,适当提高夹角阈值Kd的数值;当Ω≤‑1,Kd=120°,当‑1≤Ω≤1,Kd=‑30Ω+
90°当Ω≥1,Kd=60°。