1.一种应用于火灾救援的机器人路径寻优方法,基于ROS机器人作为搭载平台,机器人顶部搭载激光雷达,其特征在于,包括以下步骤:步骤1:利用激光雷达发射光线粒子,接收器接收发射出去的光线粒子,最终获取机器人的里程计数据;
步骤2:基于激光雷达采集到的里程计数据,采用RBPF算法改进Gmapping算法,构建二维栅格地图;
步骤3:对Gmapping算法引入改进的粒子群最优化算法PSO对采样后的粒子群进行更新,构建完整地图信息;所述改进的粒子群最优化算法PSO将粒子的适应度值看作粒子权值,在粒子群中挑选出所有有效粒子数量,执行重采样操作;并对重采样优化,将粒子群按照权重大小进行分类,复制粒子群中的权重大于均值的粒子,对于权重小于均值的粒子修正后按照比例回收;
步骤4:根据步骤3中的到的完整地图信息,采用优化RRT算法对全局路径规划结合优化TEB算法对局部路径规划,两者结合,实现在火灾环境下的最优动路径规划,从而完成最优避障;
利用快速搜索随机树RRT算法对全局路径规划,在路径规划过程中引入目标动态概率Obia采样,Obia∈(0,1);每次采样前会生成随机值p,随机数取值范围为[0,1],当p<Obia时,就向目标点进行扩展,否则还是随机扩展,避免与目标点碰撞,目标动态概率Obia的计算方式如下:Obia=1‑Fr(p)/Fmax
其中,Fr(p)为最近障碍物对节点的斥力;Fmax为对节点的最大斥力,当斥力占比大时,以小步长生成新的节点,斥力占比小时,以大步长生成拓展点;
所述快速搜索随机树RRT算法通过梯度下降法对初始路径进行再次优化,通过迭代方法求解出最小化优化函数,从而优化目标值;通过梯度下降法设计出的优化函数公式为:P=ω0·Pobs+ωc·Pcur
其中,Pobs为障碍物函数;Pcur为曲率函数;ω0、ωc为障碍物函数和曲率函数的权重,用于限制函数的影响;障碍物函数Pobs表示为:其中,(xi,yi)为路径点的向量坐标;oi为路径点xi最近的障碍物向量坐标;dobs为环境边界阈值;曲率函数Pcur表示为:其中,σcur为惩罚函数;Δxi=xi‑xi‑1为xi处的位移矢量;Kmax为最大允许曲率; 为路径点处切向角的变化值;
所述步骤4中的时间弹性带算法TEB进行局部路径规划时,机器人在运行过程中其搭载的激光雷达测算出机器人与障碍物的实时距离dk,并且设置机器人与障碍物之间的安全距离dmin,激光雷达在接收信息时受到n个来自障碍物的影响因子;在机器人和障碍物之间设置一个约束值fobstacle,当dk>dmin时,fobstacle=0,表示机器人不需要进行避障;当dk<dmin时,需要通过计算约束值进行矫正,约束值fobstacle计算公式为:构建TEB算法模型,需要计算每个位姿点的约束值总和f(T),约束总和计算公式如下:其中,fi(T)为机器人在t时刻的位姿约束值;γk为机器人在t时刻的位姿权重;
时间弹性带算法TEB进行局部路径规划时,对原路径进行弹性变形后,机器人的速度随之发生变化,导致轨迹也发生变化;机器人的线速度vx和角速度vy的计算公式如下:其中,r为偏移半径;θi为位姿角;
调整两个位姿点的时间间隔,并且减少需要计算的位姿点(xi,yi),机器人的位姿点减少后,采用样条插值法对下降的路径圆滑度进行优化,将机器人的位姿点(xi,yi)存入定义的一个二维数组,对相邻的两个位姿点进行弹性优化,增加其路径平滑度。
2.根据权利要求1所述的一种应用于火灾救援的机器人路径寻优方法,其特征在于,所述步骤2中的Gmapping算法以激光雷达使用SLAM中的RBPF算法完成二维栅格地图构建为前提,实时构建二维栅格地图,具体方法为:首先对机器人运动轨迹的预测,由贝叶斯法则得:
p(x1:t,m|z1:t,u1:t‑1)=p(m|z1:t,u1:t‑1)p(x1:t|z1:t,u1:t‑1)其中,u1:t为控制数据;z1:t为观测数据;p(m|z1:t,u1:t‑1)为地图信息预测,根据机器人所处的当前位姿,对地图增量m进行估计,不断更新地图信息;p(x1:t|z1:t,u1:t‑1)为机器人位姿的估计;
参照粒子滤波方法,粒子状态预测,测量,更新,重采样进一步说明:
1)粒子状态预测:粒子状态预测先对运动模型更新,机器人进行旋转或平移的过程中产生噪声干扰,在滤波中采用高斯采样进行去噪;
2)测量:对地图信息进行一次扫描,与预估值进行匹配,在地图中找到机器人的位姿,改进里程计模型的提议分布,具体如下:(i)
获取粒子最优的位姿后,扩大粒子的采样范围至模型峰值区域L ,峰值区域部分的均(i) (i) (i)值和方差是在峰值区域L 中进行K个点的随机采样,均值μt 和方差∑t 通过K个点的里程计和模型计算确定:其中,zt为观测数据;ut‑1为t‑1时刻的控制数据;xj为粒子在t时刻的位姿;T为采样时间;
(i)
每个点的因子η 通过归一化确定:
3)重采样:计算每个粒子的权重,利用激光雷达数据对提议分布进行优化,优化公式为:粒子的权重经过优化之后,权重公式为:
为减少粒子的丢失现象,引入权重值离差Neff,Neff计算公式为:其中, 为编号为i的粒子权重值;Neff为粒子权重值离差,当Neff值越大说明粒子的权重差距越小,N表示初始粒子群规模大小。
3.根据权利要求1所述的一种应用于火灾救援的机器人路径寻优方法,其特征在于,所述步骤3中引入改进的粒子群最优化算法PSO对采样后的粒子群进行更新,具体操作如下:
1)将粒子最新控制量ut和观测量zt作为输入值,对当前时刻的每个粒子的状态进行预测,状态方程为:xt=gt(ut,xt‑1)+εt其中,xt‑1为粒子上一位姿;εt为状态偏移量;
2)改进的粒子群最优化算法PSO对粒子t时刻的速度更新:vi(t+1)=λv(t)+c1N1(x'pbest‑xi')+c2N2(x'gbest‑xi')其中,x'pbest表示局部粒子最优解;x'gbest表示全局粒子最优解;c1,c2为粒子加速度;N1,N2为一般高斯分布;λ为压缩因子;v(t)为粒子在t时刻的速度;
得到粒子在t时刻的位姿xi公式:xi=λxi'+Vi(t)其中,Vi(t)为粒子位移偏移量;
3)将粒子的适应度值作为权值,在粒子群中挑选出所有有效粒子,执行重采样操作,重采样操作具体如下:首先将粒子X按照权重大小进行排序,小权重粒子的编号为D+1~N‑1,小权重粒子选择大权重粒子作为模板,通过计算得出两者之间的差距:其中,x,y,θ为粒子的位姿;i;j为粒子的序号;
2 2
根据正态分布N(0,σ)的扰动值ni‑j得出粒子群的方差σ:最后得出修正后的粒子:
其中,ni‑j为正态分布下粒子位姿的扰动值; 为小权重粒子模板;
将回收得到的粒子重新扫描,不断更新粒子的权重,从权重小的粒子群中的选出N‑Nb个粒子放入权重大的粒子群中,保持两个粒子群的总数相等,如果权重小的粒子群中粒子数量小于N‑Nb个,则重复执行以上步骤,其中Nb为高权重粒子的复制次数,N表示初始粒子群规模大小。
4.根据权利要求3所述的一种应用于火灾救援的机器人路径寻优方法,其特征在于,经过改进的粒子群最优化算法PSO优化后的Gmapping算法进行构建完整地图信息具体步骤如下:第一步:激光雷达开始工作,根据里程计和激光雷达在t时刻的位姿,设置初始变量ut‑1和zt‑1,设置初始粒子群规模大小N,最大迭代次数k,粒子的初始飞行速度和最大飞行速度;
第二步:激光雷达数据转化为粒子,粒子群最终形成点云数据,点云数据与火灾现场环境进行线性拟合,对粒子群进行局部扫描,并判断点云集波动值是否超出设定的阈值,如果是,则执行下一步;反之,减少粒子数;
第三步:根据步骤2中优化的分布提议进行粒子采样,对采样得到的粒子集进行更新并进行适应度值得到粒子权重;
第四步:将粒子群中的所有粒子根据权重大小进行高低排序,并将粒子群分为高权重和低权重两个子种群;
第五步:对高权重子种群进行权重均值求解,并且设置高权重粒子的复制次数Nb;
第六步:对N‑Nb个低权重粒子进行修正回收,并且更新轨迹;
第七步:均分高权重粒子和低权重粒子位姿权重;
第八步:计算优化后粒子群的有效粒子数Neff,当有效粒子数量达到初始设置阈值,执行下一步;否则,进行重采样;
第九步:更新地图信息。