当前位置: 首页 > 专利查询>吉林大学专利>正文

一种基于汽车油耗的路径规划方法技术

技术编号:31239741 阅读:21 留言:0更新日期:2021-12-08 10:28
本发明专利技术公开了一种基于汽车油耗的路径规划方法,具体过程为:S1、将蚁群算法的结果作为A星算法参数;S2、计算行驶油耗;S3、计算总怠速油耗;S4、A星算法寻路。本发明专利技术将汽车油耗作为方法性能的判定依据,同时考虑到汽车在交通灯处的怠速时间以及相应的怠速油耗,利用改进后的蚁群算法并结合A星算法得到相应的最优路径,并将其用于城市交通路径规划中,从而增强其所选路径的现实意义。其所选路径的现实意义。

【技术实现步骤摘要】
一种基于汽车油耗的路径规划方法


[0001]本专利技术涉及汽车
,具体涉及一种基于汽车油耗的路径规划方法。

技术介绍

[0002]目前大多数的路径规划方法把路径长度作为唯一判定方法性能优劣的度量标准,然而考虑到出行的经济成本以及环境成本,受当前复杂的城市交通环境制约,选择路径长度最短的路径这一做法往往过于理想化,并不具有很强的现实意义。

技术实现思路

[0003]针对现有技术的不足,本专利技术旨在提供一种基于汽车油耗的路径规划方法。
[0004]为了实现上述目的,本专利技术采用如下技术方案:
[0005]一种基于汽车油耗的路径规划方法,具体过程为:
[0006]S1、利用蚁群算法计算起点与终点之间的对角线距离,记为diagonal
pre
,并将其作为A星算法参数;
[0007]S2、计算行驶油耗;
[0008]S3、计算总怠速油耗Fuel
idling

[0009]S4、A星算法寻路:
[0010]首先把起点放入open表,由于在寻路过程中每次都要寻找F值最小的坐标点,所以open表的结构采用最小堆,最小堆的堆顶即为所求;将初始堆分为两个堆,在堆的排序过程中利用双线程分别对每个堆进行处理,在排序操作结束后再将各自的堆合并;
[0011]对于当前坐标点(cur_x,cur_y),为了快速判断其是否位于open表中,采用哈希函数判断其隶属关系,相应的哈希函数定义为:
[0012]f(Num)=(cur_x+cur_y)%length
[0013]其中,f(Num)为当前坐标点对应的哈希值,length为哈希表长度;如果f(Num)为奇数,则该坐标点不在open表中;反之如果f(Num)为偶数,则该坐标点在open表中;与此同时,考虑到可能存在的二次冲突,相应的冲突函数定义为:
[0014]f(Num)=(cur_x+cur_y+p)%length
[0015]其中p为偏移量;
[0016]重复以下流程:如果open表为空,则寻路失败;反之则利用最小堆寻找open表中F值最小的坐标点,把它作为当前要处理的坐标点,并把其放入close表中;对于当前坐标点可到达的周围的八个坐标点中的每一个坐标点:如果它不可抵达或者已经在close表中,则忽略;如果它不在open表中,把它放入open表中,并把当前坐标点设为它的父节点,并计算该坐标点的F,G以及H值;如果它已经在open表中,检查通过当前坐标点到达该坐标点的G值是否更小,如果是的话,把它的父节点设置为当前坐标点,重新计算其G值以及F值;如果终点已经加入了open表,则从终点开始依次回溯到每一个父节点直至起点,最优路径确定,寻路结束;
[0017]其中从起点到当前坐标点的实际代价G即为从起点到当前坐标点的行驶油耗,即:
[0018]G=E(x)*diagonal
sc
[0019]其中,E(x)为汽车行驶油耗的数学期望,diagonal
sc
为起点到当前坐标点的对角线距离;
[0020]从当前坐标点到终点的估计代价H即为当前坐标点到终点的估计油耗,即:
[0021]H=E(x)*diagonal
ce
*s(λ)
[0022]s(λ)=log2(1+e
λ
)
[0023][0024]其中,diagonal
ce
为当前坐标点到终点的对角线距离,diagonal
pre
为步骤S1中计算的结果;
[0025]总代价F为:
[0026]F=G+H+Fuel
idling

[0027]基于油耗的A星算法在寻路过程中的每一步所选择的即为总代价F最小的坐标点,直至寻路结束,所确定的路径即为最优路径。
[0028]进一步地,步骤S1的具体过程为:
[0029]记蚂蚁在寻路过程中基于当前位置i选择下一位置j的概率为:
[0030][0031]其中,allow
p
代表蚂蚁下一步可选择的所有位置的集合,ε为信息启发式因子,σ为期望启发式因子,ω
ij
(t)为当前路径的信息素浓度,ξ
ij
(t)为启发函数,t为时间;
[0032]任意两点(x1,y1)与(x2,y2)间的对角线距离d
diagonal
为:
[0033]d
min
=min(|x1‑
x2|,|y1‑
y2|)
[0034]d
sum
=|x1‑
x2|+|y1‑
y2|
[0035][0036]则启发函数ξ
ij
(t)为:
[0037][0038]其中,diagonal
ij
为当前位置i与下一位置j的对角线距离,C
max
为搜索过程中允许的最大迭代次数,C
cur
代表当前迭代次数;
[0039]蚂蚁经过留在道路上的信息素存在着挥发现象,信息素挥发系数vol为:
[0040][0041]vol
min
=0.1
[0042]相应地,信息素浓度的更新方式为:
[0043][0044][0045]其中,h为常数;diagonal
his
为历史迭代最优路径长度,diagonal
cur
为本次迭代最优路径长度,L
k
为蚂蚁k所经过的总路径长度,三者均为对角线距离;Q为当前路径的信息素总量;
[0046]利用以上更新规则得到规定起点与终点之间的对角线距离,记为diagonal
pre
,并将其作为A星算法中的参数。
[0047]进一步地,步骤S2的具体过程为:
[0048]根据不同排放量的汽车所占比例ratio及其对应的行驶油耗Fuel
ratio
,用数学期望E(x)来代替各排放量汽车的行驶油耗;
[0049]即
[0050]E(x)=∑Fuel
ratio
*ratio
[0051]则行驶油耗Fuel
driving
为:
[0052]Fuel
driving
=E(x)*diagonal
dis
[0053]其中diagonal
dis
为汽车的行驶距离。
[0054]进一步地,步骤S3的具体过程为:
[0055]汽车行驶过程中的总怠速油耗即为汽车自身的怠速油耗乘以其总怠速时间,也就是汽车在交通灯处停留的总时间;记汽车自身的怠速油耗为Fuel
own
,交通灯处的总停留时间为t,则汽车行驶过程中的总怠速油耗Fuel
idling
为:
[0056本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于汽车油耗的路径规划方法,其特征在于,具体过程为:S1、利用蚁群算法计算起点与终点之间的对角线距离,记为diagonal
pre
,并将其作为A星算法参数;S2、计算行驶油耗;S3、计算总怠速油耗Fuel
idling
;S4、A星算法寻路:首先把起点放入open表,由于在寻路过程中每次都要寻找F值最小的坐标点,所以open表的结构采用最小堆,最小堆的堆顶即为所求;将初始堆分为两个堆,在堆的排序过程中利用双线程分别对每个堆进行处理,在排序操作结束后再将各自的堆合并;对于当前坐标点(cur_x,cur_y),为了快速判断其是否位于open表中,采用哈希函数判断其隶属关系,相应的哈希函数定义为:f(Num)=(cur_x+cur_y)%length其中,f(Num)为当前坐标点对应的哈希值,length为哈希表长度;如果f(Num)为奇数,则该坐标点不在open表中;反之如果f(Num)为偶数,则该坐标点在open表中;与此同时,考虑到可能存在的二次冲突,相应的冲突函数定义为:f(Num)=(cur_x+cur_y+p)%length其中p为偏移量;重复以下流程:如果open表为空,则寻路失败;反之则利用最小堆寻找open表中F值最小的坐标点,把它作为当前要处理的坐标点,并把其放入close表中;对于当前坐标点可到达的周围的八个坐标点中的每一个坐标点:如果它不可抵达或者已经在close表中,则忽略;如果它不在open表中,把它放入open表中,并把当前坐标点设为它的父节点,并计算该坐标点的F,G以及H值;如果它已经在open表中,检查通过当前坐标点到达该坐标点的G值是否更小,如果是的话,把它的父节点设置为当前坐标点,重新计算其G值以及F值;如果终点已经加入了open表,则从终点开始依次回溯到每一个父节点直至起点,最优路径确定,寻路结束;其中从起点到当前坐标点的实际代价G即为从起点到当前坐标点的行驶油耗,即:G=E(x)*diagonal
sc
其中,E(x)为汽车行驶油耗的数学期望,diagonal
sc
为起点到当前坐标点的对角线距离;从当前坐标点到终点的估计代价H即为当前坐标点到终点的估计油耗,即:H=E(x)*diagonal
ce
*s(λ)s(λ)=log2(1+e
λ
)其中,diagonal
ce
为当前坐标点到终点的对角线距离,diagonal
pre
为步骤S1中计算的结果;总代价F为:F=G+H+Fuel
idling

基于油耗的A星算法在寻路过程中的每一步所选择的即为总代价F最小的坐标点,直至寻路结束,所确定的路径即为最优路径。2.根据权利要求1所述的方法,其特征在于,步骤S...

【专利技术属性】
技术研发人员:张晋东刘天博
申请(专利权)人:吉林大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1