1.一种基于局部最优卷积评价的机器人路径规划方法,其特征在于,包括如下步骤:S1:建立移动机器人工作环境的二维网格化地图,确定出发点与目标点位置;
S2:移动机器人感知相邻节点的环境信息,从候选移动方向中筛选出可行移动方向;
S3:若存在可行移动方向,则计算各可行移动方向上的单位向量在目标点距离函数负梯度方向上的投影值,选取单位方向向量在目标点距离函数负梯度方向上的投影值最大的可行移动方向作为局部最优移动方向;若不存在可行移动方向,则移动机器人认定是否需要返回父节点;
S4:通过局部最优卷积评价方法判断局部最优移动方向是否具备合理性,若具备合理性,移动机器人向局部最优移动方向移动至相邻节点;若不具备合理性,移动机器人认定需要返回父节点;
S5:当移动机器人认定需要返回父节点时,若当前节点不是出发点,即当前节点存在父节点,则移动机器人正常返回父节点;若当前节点是出发点,即当前节点不存在父节点,如果当前阶段为初次路径规划,则初次路径规划结束,进行二次路径规划;如果当前阶段为二次路径规划,则表明不存在可行路径,路径规划失败;
S6:路径规划开始时移动机器人处于初次路径规划阶段,移动机器人在进行初次路径规划时,重复上述步骤S2至步骤S4,直至到达目标点或进入二次路径规划阶段;移动机器人在进行二次路径规划时,重复上述步骤S2至步骤S3,并且不检验局部最优移动方向的合理性,直接向局部最优移动方向进行移动,直至到达目标点或路径规划失败;
所述步骤S4具体为:
D1:定义合理性阈值ET,ET是一个可调参数,取值范围为‑1到1之间的全体实数,不含‑1和1;定义卷积评价指标E,初始时刻E=1;
D2:当机器人在当前节点Now处计算出局部最优单位移动得分Sm后,根据以下公式(6)计算预期卷积评价指标Ep:Ep=(1‑Kp)·E+Kp·Sm (6)式中Kp为实时评价权重,是一个常数,根据以下公式(7)确定‑p
Kp=1‑e (7)
式中e为自然常数;p为评价聚焦度,是一个可调参数,取值范围为全体正实数;
D3:若预期卷积评价指标Ep小于合理性阈值ET,即Ep
则认定局部最优移动方向不具备合理性,机器人认定需要返回父节点;
D4:若预期卷积评价指标Ep大于或等于合理性阈值,即Ep≥ET
则认定局部最优移动方向具备合理性,机器人移动至当前节点Now在 方向上的相邻节点
所述步骤D4具体为:
机器人由当前节点Now移动至 向量方向上的相邻节点 机器人由当前节点Now移动至相邻节点 需进行以下操作:
F1:将下一节点的类型属性 赋为Visited,即F2:将下一节点的父节点属性 赋为[(Im+3)mod 8]+1,即mod表示前者对后者进行取模运算;
F3:将有效移动步数Step自增1,即
Step←Step+1
F4:将卷积评价指标E赋为预期卷积评价指标Ep,即E←Ep
F5:将有效移动得分函数s(x)的函数值赋为预期移动得分函数sp(x),即s(x)←sp(x),x∈R
F6:将当前节点Now赋为下一节点 即
所述步骤D2具体为:
根据以下公式(11)定义评价权重函数k(x),其中p为评价聚焦度卷积评价指标E的定义式为:
E=(k(x)*s(x))|x=Step (12)预期卷积评价指标Ep的定义式为:
Ep=(k(x)*sp(x))|x=Step+1 (13)即卷积评价指标E是评价权重函数k(x)与有效移动得分函数s(x)的卷积在Step处的值,预期卷积评价指标Ep是评价权重函数k(x)与预期移动得分函数sp(x)的卷积在Step+1处的值;
又由于
因此
由此得到步骤D2中的迭代计算式即式(6),因此移动机器人在实际工作中无需根据定义式记录有效移动得分函数s(x)、预期移动得分函数sp(x)与评价权重函数k(x),再进行卷积计算从而得到卷积评价指标E与预期卷积评价指标Ep,而仅需按照步骤D2,根据评价聚焦度p计算出实时评价权重Kp,并利用实时评价权重Kp结合局部最优单位移动得分Sm对卷积评价指标E与预期卷积评价指标Ep进行反复迭代。
2.根据权利要求1所述的一种基于局部最优卷积评价的机器人路径规划方法,其特征在于,所述步骤S1具体为:A1:建立移动机器人工作环境的二维网格化地图,地图中的每一网格为地图的一个节点,节点形状为正方形,取正右方为横轴正方向,正上方为纵轴正方向;
A2:为各节点添加位置属性Location=(m,n),m为节点横坐标,n为节点纵坐标;由于每个节点与它的位置属性一一对应,因此若节点N的位置属性为(m1,n1),则节点N亦可基于它的位置属性称为节点(m1,n1);m与n的取值范围为整数集,出发点的位置属性为(x0,y0),目标点的位置属性为(0,0);
A3:为各节点添加类型属性Type,节点N的相邻节点定义为与节点N存在边接触或顶点接触的节点,则每个节点共有8个相邻节点;类型属性用于在移动机器人进行决策时,判断8个相邻节点对应的移动方向是否为可行移动方向,类型属性Type的取值范围为{Unknown,Unvisited,Visited,Obstacle},其中Unknown代表节点尚未被探索过,Unvisited代表节点不存在障碍物且未到达过,Visited代表节点不存在障碍物且已到达过,Obstacle代表节点存在障碍物;初始时刻出发点的类型属性为Visited,地图内部所有其他节点的类型属性均为Unknown,地图边界的所有节点的类型属性均为Obstacle;
A4:为各节点添加父节点属性Father;节点N的父节点定义为机器人在工作过程中进入节点N所处的上一个节点,父节点属性用于记录节点的父节点,父节点属性Father的取值范围为{0,1,2,3,4,5,6,7,8},其中0代表节点不存在父节点,1、2、3、4、5、6、7、8分别代表父节点为正右方、右上方、正上方、左上方、正左方、左下方、正下方、右下方的相邻节点,初始时刻所有节点的父节点属性均为0。
3.根据权利要求1所述的一种基于局部最优卷积评价的机器人路径规划方法,其特征在于,所述步骤S2中候选移动方向的数量为8个,可行移动方向的帅选包括:B1:设当前节点为节点Now,取横轴正方向的单位向量为 向量,按逆时针方向将 向量每次旋转45°,依次得 向量,这8个向量为候选移动方向向量,它们的方向为候选移动方向,数值可根据以下公式计算:式中,i∈{1,2,3,4,5,6,7,8},当前节点Now共有8个相邻节点,且每个候选移动方向向量分别指向1个相邻节点的中心,因此候选移动方向向量与相邻节点一一对应;
B2:记当前节点Now在候选移动方向向量 方向上的相邻节点为Ni,当前节点Now在候选移动方向向量 顺时针旋转45°方向上的相邻节点为Ni‑,当前节点Now在候选移动方向向量逆时针旋转45°方向上的相邻节点为Ni+,它们的类型属性分别为Ni.Type、Ni‑.Type、Ni+.Type;
B3:机器人对当前节点Now的8个相邻节点中类型属性为Unknown的所有节点N′,根据感知到的环境信息将节点N′的类型属性N′.Type赋为Unvisited或Obstacle;
B4:机器人根据以下规则,计算可行性判断函数Feasible(i)的值:当i为奇数时,若满足
Ni.Type=Unvisited
则
Feasible(i)=True
否则
Feasible(i)=Flase
当i为偶数时,若同时满足以下三个条件
Ni.Type=Unvisited
Ni‑.Type≠Obstacle
Ni+.Type≠Obstacle
则
Feasible(i)=True
否则
Feasible(i)=Flase
B5:在当前节点Now处,从集合{1,2,3,4,5,6,7,8}中选取能使Feasible(o)=True的元素o,构成集合D,将o带入步骤B1中式1计算得到的 向量为当前节点Now处的可行移动方向向量, 向量的方向为当前节点Now处的可行移动方向。
4.根据权利要求1所述的一种基于局部最优卷积评价的机器人路径规划方法,其特征在于,所述步骤S3具体为:若存在可行移动方向,则计算各可行移动方向上的单位向量在目标点距离函数负梯度方向上的投影值,选取单位方向向量在目标点距离函数负梯度方向上的投影值最大的可行移动方向为局部最优移动方向;若不存在可行移动方向,则移动机器人认定是否需要返回父节点。
5.根据权利要求4所述的一种基于局部最优卷积评价的机器人路径规划方法,其特征在于,所述步骤S3具体包括如下步骤:C1:若集合D为空集,则移动机器人认定需要返回父节点;
C2:若集合D为非空集,设当前节点Now的位置属性Now.Location为(x1,y1),即Now.Location=(x1,y1)
定义目标点距离函数Distance为
目标点距离函数Distance的值即为当前节点Now与目标点之间的距离;
C3:根据以下公式(3),计算目标点距离函数的梯度根据以下公式(4)定义当前节点Now处的目标点距离函数负梯度方向矢量其中,目标点距离函数负梯度方向矢量 的方向与目标点距离函数的梯度的负方向相同;
C4:机器人在当前节点Now处,对于集合D中的每个元素o,根据以下公式(5)计算机器人在 向量方向上的单位移动得分Score(o):C5:机器人在当前节点Now处,对于集合D中的每个元素o,分别计算相应的单位移动得分Score(o)后,取使Score(o)最大的元素o,记为Im,将Im带入步骤B1中式(1)计算得到的向量为局部最优移动方向向量, 向量的方向为局部最优移动方向,将Im带入步骤C4中式(5)计算得到局部最优单位移动得分Sm,即
6.根据权利要求5所述的一种基于局部最优卷积评价的机器人路径规划方法,其特征在于,所述步骤C1中移动机器人认定需要返回父节点的方法为:定义有效移动步数Step,初始时刻Step=0;定义有效移动得分函数s(x),初始时刻对全体负实数x有s(x)=1、对全体非负实数x有s(x)=0;定义预期移动得分函数sp(x),当移动机器人在当前节点Now处计算出局部最优单位移动得分Sm后,预期移动得分函数sp(x)的函数值为在有效移动得分函数s(x)的基础上,将x∈[Step,Step+1)的部分赋为Sm,即依次进行以下两步赋值操作:sp(x)←s(x),x∈R
sp(x)←Sm,x∈[Step,Step+1)其中R为实数集;
记当前节点Now的父节点属性Now.Father为F,即F=Now.Father
机器人在认定需要返回父节点时,若当前节点Now不为出发点,即F≠0
则机器人由当前节点Now返回父节点,父节点为当前节点Now在 向量方向上的相邻节点NF, 向量由F带入步骤B1中式(1)计算得到,机器人由当前节点Now返回父节点NF需进行以下操作:E1:将有效移动得分函数s(x)在x∈[Step‑1,Step)上的函数值赋为0,即s(x)←0,x∈[Step‑1,Step)E2:将有效移动步数Step自减1,即
Step←Step‑1
E3:设父节点NF的位置属性NF.Location为(x′,y′),即NF.Location=(x′,y′)
计算父节点处的目标点距离函数负梯度方向矢量
并根据以下公式(9)为卷积评价指标E赋值:
式中
E4:将当前节点Now赋为父节点NF,即
Now←NF
机器人在认定需要返回父节点时,若当前节点Now为出发点,即F=0
如果当前阶段为初次路径规划,则结束初次路径规划,所有数据恢复至初始时刻,并进行二次路径规划性;如果当前阶段为二次路径规划,则表明没有可行路径,路径规划失败。