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

一种基于多智能体邻近交互与轨迹预测的路径规划方法与流程

2021-12-03 23:00:00 来源:中国专利 TAG:


1.本发明属于多智能体路径规划和智能优化等技术领域,具体涉及一种基于多智能体邻近交互与轨迹预测的路径规划方法。


背景技术:

2.覆盖路径规划(coverage path planning,cpp)主要研究如何使(多)智能体在避碰和避障的条件下规划其路径,以实现对所给环境的完全覆盖。近年来,此项技术在众多行业中得到了广泛的应用,如灾区搜索和救援、窗户清洁器、扫地机器人、自动收割机以及复杂水下结构的检查等。
3.本发明主要针对灾区救援任务场景展开研究。考虑到地震、核泄漏和其他灾难场景具有较强的动态性和随机性,因此,单智能体系统无法满足上述环境的覆盖任务要求,也无法应对诸如机体受损等紧急情况。在生物界,生物种群使用简单的规则和局部的交互可形成自适应性强、鲁棒性高的群体行为,从而完成单体无法执行的复杂任务,如迁移和对抗等。因此,本发明借鉴生物种群的交互与协作模式,对复杂动态环境中的多智能体协同覆盖路径规划问题展开研究。通过对现有文献的调研,我们发现目前关于多智能体覆盖路径规划问题的研究主要存在以下几方面局限。
4.(1)任务环境先验已知
5.根据对任务环境信息掌握程度的差异,覆盖路径规划问题可以分为离线规划和在线规划两种。前者假定环境是先验已知的,而后者则根据所搭载传感器对环境信息进行动态感知。在大多数应用场景中,尤其是在复杂战场或灾区救援场景中,任务环境是未知的或部分可观测的,即使可提前获得环境数据,态势发展的不可预测性也给任务执行增加了很多不确定性。因此,研究未知动态环境中的在线覆盖路径规划技术至关重要。
6.(2)智能体间任务分工不均衡
7.现有的关于多智能体覆盖路径规划技术的研究多数在任务执行前结合任务需求和智能体数量对环境进行分割,各智能体依照预先分派的结果到相应任务区域执行覆盖任务。这种任务分配方式可能存在工作载荷分配不均的问题,且一旦遇到机体损毁等突发情况,这种分配不均或方案失效的局限将越发明显。
8.(3)缺少智能体间的有效交互与协同机制设计
9.如前所述,现有技术通过对任务载荷划分来降低单体工作量,进而缩短任务执行时间。但上述这种“通过数量换取时间”的分配方式没有较好的利用多体间的协同性和系统的鲁棒性,设计合理且高效的多体交互与协同机制对于有效提高多体系统在复杂动态环境中的工作效率是至关重要的。
10.研究复杂动态环境中的多智能体覆盖路径规划问题具有挑战性,主要由于:

与单主体cpp问题不同,在多体系统中,各单体的决策会受到其他个体行为的动态影响,即从任意个体的角度看,环境状态是不稳定的。

任务环境具有极大的不确定性和随机性,并且智能体仅对环境存在一点先验知识。因此,需通过传感器探测来逐渐加深对环境的了解,并
根据态势的变化对自身策略进行动态调整。

为了以最小的任务执行时间实现完全覆盖,智能体间需进行交互与合作,从而减少移动距离、降低转弯次数、避免重复路径和碰撞等。


技术实现要素:

11.有鉴于此,本发明提供了一种基于多智能体邻近交互与轨迹预测的路径规划方法,能够通过引入交互机制和模型预测控制技术,智能体可与关联个体进行交互与协作,从而最大程度地减少任务时间。
12.实现本发明的技术方案如下:
13.一种基于多智能体邻近交互与轨迹预测的路径规划方法,包括以下步骤:
14.步骤一、构建各智能体运动学模型;建立任务执行时间最优的多智能体协同覆盖问题模型,所述多智能体协同覆盖问题模型满足任务需求约束,即任务点完全覆盖约束;通过多智能体与个体间的直接或间接交互关系,将所优化问题解耦为多个优化子问题,各子问题受限于智能体运动学约束、通达性约束和避碰约束;
15.步骤二、为各单体设置行为引导点(集合为整个二维平面)来引导各智能体在任务环境中进行分散运动,将行为引导点建模为方向覆盖奖励项,并与转弯奖励项和边界奖励项进行加权,构建各智能体在决策过程中的轨迹引导函数,引导各智能体进行任务点的决策;
16.步骤三、在多智能体轨迹规划初始阶段,各智能体结合自身观测数据对环境态势进行更新,并结合自身行为引导点和步骤二中的轨迹引导函数进行行为决策;
17.步骤四、当智能体在任务环境实现有效分散后,各单体采用模型预测控制技术对自身及可交互范围内个体的未来行为进行预测;通过邻近交互,对预测片段进行融合、评价和排序,选取最优的预测片段融合结果对相应智能体的下一步任务点进行决策。
18.进一步地,对各智能体的运动学模型表述如下:
[0019][0020]
式中,(x,y)和(x',y')分别表示智能体移动前后的位置坐标,v表示运动速度,θ和θ'分别表示移动前后的角度,δθ表示转向角。
[0021]
进一步地,所述轨迹引导函数具体为:
[0022][0023]
其中,r
i
(j)表示智能体i在任务点j处所获奖励值,表示方向覆盖奖励,是受行为引导点影响的奖励函数,各智能体向着由自身行为引导点构建的网格价值较大的方向移动将获得更大的奖励;表示转弯奖励,此奖励考虑了转弯运动对奖励的影响,为尽可能保证轨迹平滑,规定转弯次数越少此项奖励越大;表示边界加权奖励,此奖励表示智能体在覆盖过程中对边界点的关注度,为避免因遗漏边界点而带来的重复覆盖问题,在覆盖过程中各智能体将优先选择边界点进行覆盖;ω
s
和ω
b
分别为转弯奖励和边界奖励的权重值。
[0024]
进一步地,如果智能体附近的任务点均被探测过或被障碍物占据,则认为该智能体进入了死点状态。
[0025]
进一步地,对于陷入死点状态,即单步可达任务点集中无未覆盖点的智能体,采用a*算法对路径进行修复。
[0026]
有益效果:
[0027]
本发明针对如何提高多智能体在复杂动态环境中路径规划的协同性和决策的智能性问题,提出了一种基于多智能体邻近交互与轨迹预测的路径规划方法,本发明的贡献主要体现在以下几个方面:
[0028]
1、本发明提出了一种新的多体运动模式。对各智能体设置运动行为引导点,结合价值矩阵参数引导各智能体在空间的分布,进行路径规划。
[0029]
2、本发明设计了一种新的交互与协作机制。引入关联个体的概念,计算各智能体的邻域个体集合。基于模型预测控制技术提出了一种关联个体间的交互与协作机制,通过对邻域范围内的预测片段进行融合、评价和排序,得到各智能体的下一步决策行为。
[0030]
3、本发明引入多体间的交互与协同机制提高了系统在复杂动态环境中的适应性和鲁棒性。通过个体间的交互与协同,可有效降低任务执行时间和路径重复率。与现有技术相比,所提算法在智能体移动距离、转弯数量和轨迹重复率等方面均占优。同时,本发明中所提算法在多种动态场景中得到验证,如机体损毁、动态障碍物等,均表现出较高的适应能力和鲁棒性能。
附图说明
[0031]
图1、一种基于多智能体邻近交互与轨迹预测的路径规划方法流程图。
[0032]
图2、基于boustrophedon运动模式的路径生成。
[0033]
图3、基于“行为引导点”的路径生成。
[0034]
图4、macpp

mpc算法分散阶段流程图。
[0035]
图5、macpp

mpc算法搜索阶段流程图。
[0036]
图6、智能体轨迹预测片段。
[0037]
图7、多智能体轨迹预测结果融合。
[0038]
图8、多智能体轨迹预测融合结果评价。
具体实施方式
[0039]
下面结合附图并举实施例,对本发明进行详细描述。
[0040]
本发明提出了一种基于多智能体邻近交互与轨迹预测的路径规划方法,系统整体框架如图1所示。采用模型预测控制技术对自身及可交互范围(r
c

直接可达集合)内个体的轨迹进行预测,通过邻近交互机制与多体协同,可有效提高多智能体在复杂动态环境中的协作能力,增强系统在态势突变条件下的适应能力和鲁棒性能。与大多数现有的多智能体覆盖路径规划方法不同,本发明中的算法不需要对任务环境进行预先分割,各智能体仅需根据邻域范围内个体的预测结果和环境态势对自身策略进行动态调整。
[0041]
为方便后文表述,首先对部分变量进行定义。
[0042]
定义1(网格分解):称集合为对环境的一个完全分解,如果其元素满足以下两个条件:

各元素所在区域不冗余,即其中,i,j∈{1,

,|δ|}。

各元素所在子区域面积总和等于整个区域总面积,即
[0043]
在本发明中可分为障碍物区域ψ
o
和可搜索区域同时,可搜索区域ψ
a
分为已被探测的可搜索区域和未被探测的可搜索区域在覆盖过程中,ψ
o
、和中的元素需进行动态调整。
[0044]
定义2(价值矩阵):计算环境中各点与参考点o
rp
之间的哈密尔顿距离,所得矩阵称为价值矩阵,这里将参考点称为行为引导点。行为引导点是一个虚拟点,可以是障碍物或环境外部所占据的任何元素,用于引导各智能体在空间的分布以减少冗余路径。
[0045]
定义3(r
c

直接可达集合):定义n
drt
(i)为t时刻智能体i的r
c

直接可达集合。对于任意点j,当且仅当时,称点j属于智能体i的r
c

直接可达集合,即j∈n
drt
(i)。其中,r
c
为智能体交互半径,和分别表示智能体i和智能体j在t时刻的位置坐标。
[0046]
定义4(r
c

间接可达集合):定义n
irt
(i)为t时刻智能体i的r
c

间接可达集合。对于任意点j,当且仅当使得时,称点j属于智能体i的r
c

间接可达集合,即j∈n
irt
(i)。
[0047]
定义5(关联个体):如果智能体i和智能体j之间的关系满足定义3或定义4,则称智能体j为智能体i的关联个体。使用表示智能体i的关联个体集合。在决策过程中,智能体i与关联个体可进行直接或间接的交互,所做决策将受到关联个体轨迹预测结果的影响。为方便表述,在后续内容中称关联个体为“邻居”,邻域范围内的个体即指关联个体。
[0048]
定义6(完全覆盖):如果由智能体覆盖的点k满足则认为对区域实现了完全覆盖,其中表示动态障碍物所占据的点。
[0049]
定义7(“死点”状态):如果智能体附近的任务点均被探测过或被障碍物占据,则认为该智能体进入了“死点”状态,此时需使用a*算法搜索最短修复路径。为了避免智能体在路径修复过程中发生碰撞,采用单步修复法,即智能体的修复决策将受当前态势的动态影响。
[0050]
对所研究问题做出以下假设。

各智能体的电量足以完成单次搜索任务。

各智能体自身定位准确。

各智能体没有观测误差。
[0051]
下面,结合附图对本发明做详细说明。
[0052]
步骤1:构建问题模型
[0053]
对各智能体的运动模型表述如下。
[0054][0055]
式中,(x,y)和(x',y')分别表示智能体移动前后的位置坐标,v表示运动速度,θ和
θ'分别表示移动前后的角度,δθ表示转向角。
[0056]
各智能体同时从基站o
s
出发,经过一系列行为决策完成对任务区域的全覆盖。考虑到各智能体在运动距离和转角等方面存在差异,因此,将各智能体的运动时间表示为受距离和转角影响的量,其数学表示如下。
[0057][0058]
式中,m表示任务点总数,n表示智能体总数,j=0表示基站(depot),v
i
和ω
i
分别表示智能体i的线速度和角速度,d
ik
表示智能体i与任务点k之间的距离,表示智能体i从当前位置到达任务点k所需的转角(其计算方式见式1.3),x
ik
为智能体i是否对任务点k进行覆盖的决策变量,n
ik
表示智能体i对任务点k的覆盖次数。
[0059][0060]
式中,o
i
=(x
i
,y
i
)表示智能体i的位置,o
j
和o
k
分别表示智能体上一时刻所覆盖任务点的坐标和下一时刻候选任务点的坐标,和分别表示上一时刻位置与当前位置连线向量和对应长度,和分别表示当前位置与候选位置连线向量和对应长度。
[0061]
本发明的目标为在实现对任务区域完全覆盖的前提下,尽可能缩短任务执行时间,并对环境中可能出现的突发情况进行自适应响应。其中,系统整体任务执行时间t
ms
的数学表示如式(1.4)所示。
[0062]
t
ms
=max{t1,t2,

,t
n
}
ꢀꢀ
(1.4)
[0063]
综上,所研究问题建模为式(1.5)所示形式,其中约束表示各任务点至少被探测一次。
[0064][0065]
为有效降低任务执行时间,首先,本发明通过轨迹引导函数(详见步骤2)引导各智能体进行下一步任务点的决策;然后,本发明通过设计新的多体交互与协作方式来进一步提高系统整体性能(详见步骤3和步骤4)。
[0066]
考虑到多智能体在大多数实际应用中,受通信能力和机体能量的限制,各智能体只能与可通信范围内的个体进行信息交互,进而进行决策。因此,在每次任务点决策过程中,根据各智能体的位置和通信半径将多智能体任务点决策问题sp分解为多个相互解耦的子问题sp
p
,其数学表述如下。
[0067]
sp={sp1,sp2,

,sp
p
,

,sp
g
}
ꢀꢀ
(1.6)
[0068]
其中,对子问题sp
p
(i=1,2,

,g)建模如下。
[0069][0070]
式中,表示子问题p中融合后的第q个轨迹预测片段,η
p
(t)和η
p 1
(t 1)分别表示子问题p中各智能体t时刻和t 1时刻的状态集合,u
p
(t)表示子问题p中各智能体的行为决策量,φ
p
表示子问题p中的融合轨迹集合,上述子问题需满足智能体运动学约束、通达性约束和避碰约束。(有关轨迹预测与融合部分的内容详见步骤4。)
[0071]
步骤2:引入新的运动模型和构建轨迹引导函数
[0072]
本发明中引入“行为引导点”的概念,引导各智能体在任务环境中的位置分布。有别于目前主流运动模式“boustrophedon motion”,详见图2,本发明通过为各智能体设定不同的“行为引导点”,来有效提高系统覆盖效率,对于“行为引导点”的具体描述详见定义2。图3所示为两智能体系统中引入“行为引导点”的系统图。智能体a1的引导点为蓝色三角形,对应轨迹为蓝色虚线,智能体a2的引导点为红色五角星,对应轨迹为红色虚线,则若两智能体分别向着尽可能远离对应引导点的方向移动,便可实现有效分散。
[0073]
本发明将方向覆盖奖励、转弯奖励和边界奖励加权对轨迹引导函数进行建模。
[0074][0075]
其中,r
i
(j)表示智能体i在任务点j处所获奖励值,表示方向覆盖奖励,是受行为引导点影响的奖励函数,各智能体向着由自身行为引导点构建的网格价值较大的方向移动将获得更大的奖励。表示转弯奖励,此奖励考虑了转弯运动对奖励的影响,为尽可能保证轨迹平滑,规定转弯次数越少此项奖励越大。表示边界加权奖励,此奖励表示智能体在覆盖过程中对边界点的关注度,为避免因遗漏边界点而带来的重复覆盖问题,在覆盖过程中各智能体将优先选择边界点进行覆盖。ω
s
和ω
b
分别为转弯奖励和边界奖励的权重值。
[0076]
步骤3:macpp

mpc算法分散阶段
[0077]
在覆盖任务伊始,各智能体从同一起始位置出发。为尽可能减少冗余路径,macpp

mpc算法中设计了分散阶段子算法,使各智能体根据其预设的行为引导点和奖励函数不断优化下一步决策,以实现合理的位置分散,具体流程见图4。
[0078]
步骤4:macpp

mpc算法搜索阶段
[0079]
在此阶段,mpc技术用于预测智能体自身及可交互范围(r
c

直接可达集合)内个体的轨迹。智能体间通过交互进行决策以响应各种突发情况。在此阶段中各智能体的行为引导点κ固定。具体流程见图5。
[0080]
在覆盖过程中,各智能体计算其关联个体集合,并结合自身状态、可交互范围(r
c

直接可达集合)内个体状态和环境参数进行轨迹预测,将预测结果在邻域范围内传播。对于智能体i,采用向量in
i
(t)表示从可交互范围(r
c

直接可达集合)内个体处接收到的信息,见式(1.9)。
[0081]
[0082]
式中,o
j
(t)表示t时刻智能体j的位置,tp
j
(t)表示t时刻智能体j的轨迹预测结果。
[0083]
若智能体满足可达未覆盖点集和关联个体集均非空的条件,此时需考虑邻域范围内各智能体决策的相互影响。为了便于后续理解,以互为关联个体的三个智能体i、j、k为例说明智能体间的轨迹预测过程。为了与下面的表述相区别,在后续内容中将智能体的预测结果称为预测片段。
[0084]
图6展示了智能体i的轨迹预测片段。考虑到预测个体的顺序可能会影响预测结果,因此将预测过程分为两种:“基于个体的预测”(图6(a))和“基于子段的预测”(图6(b))。上述两种方式均从执行预测行为的智能体开始。
[0085]
对于第一种情况,如黑色虚线框中所示,智能体i首先按照i

j

k的顺序进行预测,然后按照i

k

j的顺序进行预测,分别存储在和中。图中psn表示预设的轨迹预测步数。
[0086]
对于第二种情况,如蓝色虚线框所示,智能体i首先按照i

j

k

i

j

k
→…
的顺序进行预测,然后按照i

k

j

i

k

j
→…
的顺序进行预测,结果分别存储在和中。
[0087]
智能体在进行轨迹预测时将尽可能最大化累计收益。在t时刻,各智能体首先计算可达未覆盖任务点集合,然后根据公式(1.10)选择具有最大奖励的任务点j
*
,并将其存储在预测片段中。
[0088][0089]
式中,表示t时刻智能体i的可达未覆盖任务点集合。
[0090]
预测完成后,各智能体在可交互范围(r
c

直接可达集合)内传播预测结果,并以图7的方式对各智能体的预测结果进行融合。为了简化计算,对融合后的重复元素进行删减。
[0091]
综上,对于路径规划过程中智能体的类型主要分为以下三种,其对应的下一步任务点决策方式如下:
[0092]

对于可达未覆盖任务点集合为空的个体,若满足修复条件,则采用a*算法对路径进行修复。
[0093]

对于可达未覆盖点集非空但关联个体集合为空的个体,基于环境态势和自身位置,结合目标函数进行行为决策,依照式(1.10)得到下一步行为。
[0094]

对于可达未覆盖点集和关联个体集均非空的个体,需首先对自身及可交互范围(r
c

直接可达集合)内个体轨迹进行预测,并对融合后的预测片段进行评价和排序,如图8所示,根据式(1.7)选择具有最大奖励的预测方案,以确定相关个体的后续移动方向。
[0095]
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献