基于行为机制的多智能体集群避障方法

李锡钰 ,  纪元法 ,  梁维彬 ,  伍建辉 ,  孙希延

科学技术与工程 ›› 2026, Vol. 26 ›› Issue (1) :245-252

PDF (4869KB)
科学技术与工程 ›› 2026, Vol. 26 ›› Issue (1) :245-252 DOI: 10.12404/j.issn.1671-1815.2500298
自动化技术、计算机技术

基于行为机制的多智能体集群避障方法

作者信息 +

Obstacle Avoidance Method for Multi-agent Flocking Based on Behavioral Mechanisms

Author information +
文章历史 +

摘要

为了解决多智能体在使用传统势能法避障时面临障碍物形状与全局信息的约束,以及容易在障碍物凹陷区域陷入局部极小值的问题,提出了一种基于行为机制的多智能体集群避障方法。该方法假设智能体仅能识别其感应半径内的其他智能体和障碍物边界点,并通过势能梯度项有效避免智能体和其他物体间的碰撞;同时,构建行为机制转换策略,并结合速度一致项和目标引导项将智能体的运动行为划分为目标追踪和绕行障碍物两种模式,提高了智能体在复杂环境下的适应性。最后,通过反证法证明了智能体在运动过程中不会与其他物体发生碰撞,并通过仿真实验验证了所提出方法的有效性。

Abstract

In order to address the constraints of obstacle shapes and global information faced by multiagents when using traditional potential methods for obstacle avoidance, as well as the tendency to get trapped in local minima in concave regions of obstacles, an obstacle avoidance method for multi-agent flocking based on behavioral mechanisms was proposed. The method assumed that the agent can only recognize other agents and obstacle boundary points within its sensing radius and effectively avoided collisions between agents and other objects through potential gradient terms. Meanwhile, a behavioral mechanism transition strategy was constructed, and by combining velocity consensus term and target guidance term, the agents’ motion behavior was classified into two modes: target tracking and obstacle circumnavigation, thus enhancing the adaptability of agents in complex environments. Finally, it was proven through contradiction that collisions between agents and other objects cannot occur during their motion, and the effectiveness of the proposed method was validated through simulation experiments.

Graphical abstract

关键词

多智能体系统 / 集群 / 避障 / 行为机制

Key words

multi-agent system / flocking / obstacle avoidance / behavior mechanisms

引用本文

引用格式 ▾
李锡钰, 纪元法, 梁维彬, 伍建辉, 孙希延. 基于行为机制的多智能体集群避障方法[J]. 科学技术与工程, 2026, 26(1): 245-252 DOI:10.12404/j.issn.1671-1815.2500298
LI Xi-yu, JI Yuan-fa, LIANG Wei-bin, WU Jian-hui, SUN Xi-yan. Obstacle Avoidance Method for Multi-agent Flocking Based on Behavioral Mechanisms[J]. Science Technology and Engineering, 2026, 26(1): 245-252 DOI:10.12404/j.issn.1671-1815.2500298

登录浏览全文

4963

注册一个新账户 忘记密码

多智能体系统是一类由多个相互作用的智能体组成的复杂系统[1]。在多智能体系统的研究中,多智能体集群作为重要研究方向之一,旨在通过局部规则和相互作用,使多个自主智能体实现类似鸟群飞行[2]、鱼群游动[3]等自然群体的协调行为。1986年,Reynolds[4]在研究自然界生物群体运动现象的基础上,提出了Boid模型。该模型基于3条基本规则:内聚、分离和速度匹配,为后续的多智能体集群研究提供了理论基础。目前,多智能体集群技术已在机器人编队控制[5-6]、无人机协同飞行[7-8]、车辆自动驾驶[9]等领域展现出巨大的应用潜力。然而,多智能体集群运动不可避免地面临障碍物的干扰,如何实现有效地避障成为该领域亟待解决的重要问题[10]。
1986年,Khatib[11]提出了人工势场法(artificial potential field, APF ),因其简单性、易实现性和高计算效率,使得该方法在机器人避障中得到了广泛应用。APF方法通过将目标点建模为吸引力源,障碍物建模为排斥力源,合成引力与斥力,从而引导机器人运动[12-13]。随后,Olfati-Saber[14]结合人工势能和图论提出了一种多智能体集群避障方法,该方法假设智能体能够获取墙型或圆形障碍物的全局信息,使智能体在追踪目标的同时也能避开其他智能体以及障碍物。然而,该方法对障碍物的形状具有一定局限性,且容易陷入局部极小值。在此基础上,Li等[15]提出利用几何规则对凹形障碍物的空隙进行填补,以实现智能体对凹形障碍物的有效绕行,但该方法仍未克服对障碍物全局信息的依赖。Sakai等[16]提出了一种无需区分智能体和障碍物的多智能体避障方法,使得智能体在无需获取邻近智能体速度信息的情况下依然可以实现集群避障行为。然而,该方法同样受限于障碍物形状,且未能解决局部极小值问题。杨宇硕等[17]提出了一种多智能体编队避障控制方法,该方法通过引入随机扰动解决了部分局部极小值问题,但该方法未考虑障碍物形状以及智能体在凹形障碍物环境下可能遇到的局部极小值问题。针对上述问题,提出一种基于行为机制的多智能体集群避障方法。该方法使用障碍物边界点来表示障碍物,并且假设智能体仅能识别其感应半径范围内的其他智能体和障碍物边界点,从而减少对障碍物形状和全局信息的依赖;同时,引入非负分段函数动态调节人工势能的大小,确保智能体能够在复杂环境中避免与其他物体发生碰撞。此外,通过设计智能体行为机制转换策略,并结合速度一致项和目标引导项,将智能体的运动行为划分为目标追踪和绕行障碍物两种模式,使其能够依据环境中目标点的位置和障碍物的分布情况灵活调整其运动模式,从而在复杂环境中实现高效避障,进一步提升该方法在实际应用中的适应性和鲁棒性。

1 问题表述

1.1 相关定义

将多智能体系统中的智能体称为α智能体,智能体感知半径内的障碍物边界点称为β智能体,智能体群体的目标点称为γ智能体。考虑α智能体在二维空间中移动,假设α智能体i的运动方程为

$\left\{\begin{array}{l}{\stackrel{·}{q}}_{i}={p}_{i}\\ {\stackrel{·}{p}}_{i}={u}_{i}\end{array}\right.$

式(1)中:qi∈R2为α智能体i在当前时刻的位置向量;pi∈R2为α智能体i在当前时刻的速度向量;ui∈R2为α智能体i在当前时刻的控制输入向量。为了防止速度过大对系统稳定性和安全性造成影响,对α智能体的最大速度进行限制,假设pi=sat(pi,${p}_{i}^{\mathrm{m}\mathrm{a}\mathrm{x}}$),则sat(pi,${p}_{i}^{\mathrm{m}\mathrm{a}\mathrm{x}}$)被定义为

$\mathrm{s}\mathrm{a}\mathrm{t}({p}_{i},{p}_{i}^{\mathrm{m}\mathrm{a}\mathrm{x}})=\mathrm{ }\left\{\begin{array}{ll}\frac{{p}_{i}}{\Vert {p}_{i}\Vert }{\mathrm{p}}_{\mathrm{i}}^{max},& \Vert {p}_{i}\Vert >{\mathrm{p}}_{\mathrm{i}}^{max}\\ {p}_{i},& \mathrm{其}\mathrm{他}\end{array}\right.$

式(2)中:${p}_{i}^{\mathrm{m}\mathrm{a}\mathrm{x}}$为α智能体i的最大速度。α智能体i在运动过程中需要感知其他物体,因此假设α智能体i的感知半径为r,α智能体i在当前时刻的邻域为Ni,则Ni定义为

$\left\{\begin{array}{l}{\mathrm{N}}_{\mathrm{i}}={\mathrm{N}}_{\mathrm{i}}^{\mathrm{\alpha }}\bigcup {\mathrm{N}}_{\mathrm{i}}^{\mathrm{\beta }}\\ {\mathrm{N}}_{\mathrm{i}}^{\mathrm{\alpha }}=\{j\in \{\mathrm{1,2},\dots,N\}:\Vert {q}_{j}-{q}_{i}\Vert \le r,i\ne j\}\\ {\mathrm{N}}_{\mathrm{i}}^{\mathrm{\beta }}=\{k\in {\mathrm{O}}_{\mathrm{k}}:\Vert {q}_{k}-{q}_{i}\Vert \le r\}\end{array}\right.$

式(3)中:${N}_{i}^{\alpha }$为α智能体i在当前时刻感知到的其他α智能体集合;${N}_{i}^{\beta }$为α智能体i在当前时刻感知到的障碍物边界点集合;qk为障碍物边界点的位置向量;Ok为所有障碍物边界点的集合。而γ智能体作为群集的目标点,用于引导所有α智能体的运动,其运动方程为

$\left\{\begin{array}{l}{\stackrel{·}{q}}_{\gamma }={p}_{\gamma }\\ {\stackrel{·}{p}}_{\gamma }={u}_{\gamma }\end{array}\right.$

式(4)中:qγ∈R2为γ智能体在当前时刻的位置向量;pγ∈R2为γ智能体在当前时刻的速度向量;uγ∈R2为γ智能体在当前时刻的控制输入向量。此外,为了支持后续对α智能体行为的控制,假设α智能体具备位置记忆功能。

1.2 集群避障方法回顾

文献[14]将α智能体i的控制项ui分成3个部分,分别为α智能体之间的交互项${u}_{i}^{\alpha }$,α智能体i和障碍物之间的交互项${u}_{i}^{\beta }$以及γ智能体对α智能体i的引导项${u}_{i}^{\gamma }$。上述控制项的计算公式分别如下。

${u}_{i}={u}_{i}^{\alpha }+{u}_{i}^{\beta }+{u}_{i}^{\gamma }$
$\begin{array}{c} \boldsymbol{u}_{i}^{\alpha}=\underbrace{-c_{1}^{\alpha} \sum_{j \in N_{i}^{\alpha}} \nabla_{q_{i}} \psi_{\alpha}\left(\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)}_{\text {势能梯度项 }}+ \\ \underbrace{c_{2}^{\alpha} \sum_{j \in N_{i}^{\alpha}} \boldsymbol{a}_{i j}(\boldsymbol{q})\left(\boldsymbol{p}_{j}-\boldsymbol{p}_{i}\right)}_{\text {速度一致项 }} \end{array}$
$\begin{aligned} \boldsymbol{u}_{i}^{\beta}= & -c_{1}^{\beta} \sum_{k \in N_{i}^{\beta}} \nabla_{q_{i}} \boldsymbol{\psi}_{\beta}\left(\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)+ \\ & c_{2}^{\beta} \sum_{k \in N_{i}^{\beta}} b_{i, k}(\boldsymbol{q})\left(\hat{\boldsymbol{p}}_{i, k}-\boldsymbol{p}_{i}\right) \end{aligned}$
$\boldsymbol{u}_{i}^{\gamma}=-c_{1}^{\gamma} \sigma_{1}\left(\boldsymbol{q}_{i}-\boldsymbol{q}_{\gamma}\right)-c_{2}^{\gamma}\left(\boldsymbol{p}_{i}-\boldsymbol{p}_{\gamma}\right)$

式中:在交互项${u}_{i}^{\alpha }$以及${u}_{i}^{\beta }$中,每一项均包含势能梯度项以及速度一致项;${c}_{1}^{\alpha }$、${c}_{2}^{\alpha }$、${c}_{1}^{\beta }$、${c}_{2}^{\beta }$、${c}_{1}^{\gamma }$以及${c}_{2}^{\gamma }$均为正常数;ψβ($\Vert {\hat{\mathrm{q}}}_{i,k}-{q}_{i}{\Vert }_{\mathrm{\sigma }}$)为防止α智能体i和障碍物相互碰撞的人工势能函数;\[\nabla \]为函数的梯度;ψα($\Vert {q}_{j}-{q}_{i}{\Vert }_{\sigma }$)为防止α智能体之间相互碰撞的人工势能函数,其公式为

$\psi_{\alpha}\left(\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)=\int_{d_{\alpha}}^{\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}} \varphi_{\alpha}(z) \mathrm{d} z$

式(9)中: ϕα(z)=ρh(z/rα)ϕ(z-dα),dα=‖d‖σ,rα=‖r‖σ,‖z‖σ=1/ε($\sqrt{1+\epsilon \Vert z{\Vert }^{2}}$-1),ε>0,ϕ(z)=1/2[(a+b)σ1(z+c)+(a-b)],ϕ(z)为一个不均匀sigmoid函数,其参数满足0<a≤b,而c=$\left|a-b\right|$/$\sqrt{4ab}$是为了保证ϕ(0)=0, aij(q)=ρh($\Vert {q}_{j}-{q}_{i}{\Vert }_{\sigma }$/rα),j≠i,冲击函数ρh(z)定义为

${\rho }_{h}\left(z\right)=\left\{\begin{array}{ll}1,& z\in [0,h)\\ 0.5\left[1+\mathrm{c}\mathrm{o}\mathrm{s}\frac{\mathrm{\pi }(z-h)}{1-h}\right],& z\in [h,1]\\ 0,& \mathrm{其}\mathrm{他}\end{array}\right.$

式(10)中:h∈(0,1)。

此外,文献[14]提出了虚拟β智能体的概念,以避免α智能体与障碍物的碰撞。如图1所示,当α智能体i在其感知半径内检测到障碍物时,距离α智能体i最近的障碍物边缘将会生成一个对应的虚拟β智能体。β智能体的位置向量${\hat{\mathrm{q}}}_{i,k}$是α智能体i在障碍物k上的投影位置向量,而${\hat{\mathrm{p}}}_{i,k}$是α智能体i在障碍物k上的投影速度向量。当α智能体i遇到墙型障碍物时,${\hat{\mathrm{q}}}_{i,k}$和${\hat{\mathrm{p}}}_{i,k}$的计算公式为

$\left\{\begin{array}{l}{\hat{\mathrm{q}}}_{i,k}=\mathrm{P}{\mathrm{q}}_{i}+(\mathrm{I}-\mathrm{P}){y}_{k}\\ {\hat{\mathrm{p}}}_{i,k}=\mathrm{P}{\mathrm{p}}_{i}\end{array}\right.$

式(11)中:yk为墙型障碍物的通过点, P=I-sksTk为投影矩阵;I为单位矩阵;sk=(qi-yk)/‖qi-yk‖。当α智能体i遇到圆形障碍物时,${\hat{\mathrm{q}}}_{i,k}$和${\hat{\mathrm{p}}}_{i,k}$分别为

$\left\{\begin{array}{l}{\hat{\mathrm{q}}}_{i,k}=\mathrm{\mu }{q}_{i}+(1-\mathrm{\mu }){y}_{k}\\ {\hat{\mathrm{p}}}_{i,k}=\mathrm{\mu }\mathrm{P}{\mathrm{p}}_{i}\end{array}\right.$

式(12)中:μ=Rk/‖qi-yk‖;yk为圆形障碍物的圆心;Rk为圆形障碍物的半径;ψβ($\Vert {\hat{\mathrm{q}}}_{i,k}-{q}_{i}{\Vert }_{\mathrm{\sigma }}$)为防止α智能体i和障碍物相互碰撞的人工势能函数,其公式为

$ \psi_{\beta}\left(\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)=\int_{d_{\beta}}^{\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}} \varphi_{\beta}(z) \mathrm{d} z $

式(13)中:ϕβ(z)=ρh(z/dβ)[σ1(z-dβ)-1],dβ=‖d'‖σ,bi,k(q)=ρh($\Vert {\hat{\mathrm{q}}}_{i,k}-{q}_{i}{\Vert }_{\mathrm{\sigma }}$/dβ),σ1(z)=z/$\sqrt{1+\Vert z{\Vert }^{2}}$,冲击函数ρh(z)和式(10)相同。

2 所提出的集群避障方法

在所提出的方法中,通过改进式(6)和式(7)中的势能梯度项以及式(7)中的速度一致项,同时构建α智能体行为机制转换策略,有效避免了α智能体陷入局部极小值的问题,并减少了α智能体对障碍物形状和全局信息的依赖,进一步提升了α智能体在复杂环境中的适应性。

2.1 势能梯度项的改进

在文献[14]提出的多智能体集群避障方法中,α智能体的数量或速度的增加都会导致α智能体之间以及α智能体和障碍物之间的距离减小。上述观察表明,在高密度或高速度环境下,α智能体与其他物体发生碰撞的风险显著增加。为了降低碰撞风险,本文引入两个非负分段函数来动态调整α智能体所受到吸引/排斥力的大小。针对α智能体之间的交互,分段函数定义如下。

$\kappa \left[d\right(i,j\left)\right]=\left\{\begin{array}{ll}{l}_{\alpha },& d\le d(i,j)\le r\\ f\left[d\right(i,j\left)\right],& {d}_{\mathrm{e}}<d(i,j)<d\\ {m}_{\alpha },& d(i,j)\le {d}_{\mathrm{e}}\end{array}\right.$

对于α智能体与障碍物边界点之间的交互,分段函数定义如下。

$\kappa \left[d\right(i,k\left)\right]=\left\{\begin{array}{ll}{l}_{\beta },& d\le d(i,k)\le r\\ f\left[d\right(i,k\left)\right],& {d}_{\mathrm{e}}<d(i,k)<d\\ {m}_{\beta },& d(i,k)\le {d}_{\mathrm{e}}\end{array}\right.$

平滑函数f[d(i,j)]和f[d(i,k)]分别定义为

$ f[d(i, j)]=l_{\alpha}+\left(m_{\alpha}-l_{\alpha}\right) \mathrm{e}^{-\frac{w_{\alpha} \alpha\left(d(i, j)-d_{\mathrm{e}}\right]}{d-d_{\mathrm{e}}}}$
$ f[d(i, k)]=l_{\beta}+\left(m_{\beta}-l_{\beta}\right) \mathrm{e}^{-\frac{w_{\beta}\left[d(i, k)-d_{\mathrm{e}}\right]}{d-d_{\mathrm{e}}}}$

式中:lα、lβ、mα、mβ、wα、wβ均为正常数;d(i,j)为两α智能体之间的距离;d(i,k)为α智能体i与障碍物边界点之间的距离;d为α智能体之间以及α智能体与障碍物边界点之间的期望距离;de为最大排斥距离。此外,ψβ($\Vert {\hat{\mathrm{q}}}_{i,k}-{q}_{i}{\Vert }_{\mathrm{\sigma }}$)不再仅仅使用排斥函数,而是使用和ψα($\Vert {q}_{j}-{q}_{i}{\Vert }_{\sigma }$)相同的吸引/排斥函数。该改进可以使α智能体在绕行障碍物边界时既能避免和障碍物边界点发生碰撞,又能防止因其他扰动而偏离障碍物边界。因此,α智能体之间以及α智能体i与障碍物边界点之间的势能梯度项可以分别写为

$ \boldsymbol{u}_{i}^{\alpha 1}=-c_{1}^{\alpha} \sum_{j \in N_{\imath}^{\alpha}} \kappa[d(i, j)] \nabla_{q_{i}} \psi_{\alpha}\left(\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)$
$ \boldsymbol{u}_{i}^{\beta 1}=-c_{1}^{\beta} \sum_{k \in N_{i}^{\beta}} \kappa[d(i, k)] \nabla_{q_{i}} \psi_{\beta}\left(\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)$

2.2 速度一致项的改进

α智能体在感知到障碍物时的受力分析如图2所示。在α智能体的运动过程中,障碍物的存在可能会阻碍α智能体的目标追踪,特别是当α智能体所受到的引力与斥力达到平衡时,可能导致其陷入局部极小值。为此,对式(7)中${\hat{\mathrm{q}}}_{i,k}$的定义进行调整,其不再表示α智能体i在障碍物上的投影位置向量,而是指α智能体i感应半径内所有障碍物边界点的位置向量。同时,${\hat{\mathrm{p}}}_{i,k}$也不再表示投影速度向量,而是被划分为${\hat{\mathrm{p}}}_{i,k}^{1}$和${\hat{\mathrm{p}}}_{i,k}^{2}$,分别对应α智能体i追踪目标时的期望速度向量和绕行障碍物时的期望速度向量。${\hat{\mathrm{p}}}_{i,k}^{1}$和${\hat{\mathrm{p}}}_{i,k}^{2}$的计算公式分别如下。

Fatt为吸引力;Frep为斥力;Ftotal为合力

${\hat{\mathrm{p}}}_{i,k}^{1}=\frac{{q}_{\gamma }-{q}_{i}}{\mathrm{\Delta }t}$
${\hat{\mathrm{p}}}_{i,k}^{2}=K\mathrm{ }{p}_{i}^{\mathrm{m}\mathrm{a}\mathrm{x}}{d}_{i}^{\perp }$

式中:K为正常数;${d}_{i}^{\perp }$=R$\frac{{d}_{i}}{\Vert {d}_{i}\Vert }$;di=qi,k-qi;⊥为垂直符号,${d}_{i}^{\perp }$与di相互垂直;qi,k为距离α智能体i最近的障碍物边界点,满足qi,k=arg$\underset{x\in {O}_{k}}{\mathrm{m}\mathrm{i}\mathrm{n}}$(qk-qi)。如果α智能体在狭窄通道中感应到两个距离相同且最近的障碍物边界点,则在这两个边界点中选择距离目标点较近的点作为qi,k。R为旋转矩阵,α智能体顺时针绕行障碍物时,R=$\left[\begin{array}{ll}0& -1\\ 1& 0\end{array}\right]$;α智能体逆时针绕行障碍物时,则R=$\left[\begin{array}{ll}0& 1\\ -1& 0\end{array}\right]$。α智能体的具体行为则由行为机制转换策略所确定。通过该策略,α智能体能够依据环境中的目标点位置和障碍物边界点分布情况,动态选择其行为模式。此外,引入了一个标志位δi来具体控制α智能体i的行为。当α智能体i在追踪目标时,δi=1;当α智能体i绕行障碍物边界时,δi=0。因此,式(7)中的速度一致项可以改写为

$\boldsymbol{u}_{i}^{\beta 2}=c_{2}^{\beta} \sum_{k \in N_{i}^{\beta}} b_{i, k}(\boldsymbol{q})\left[\delta_{i} \hat{\boldsymbol{p}}_{i, k}^{1}+\left(1-\delta_{i}\right) \hat{\boldsymbol{p}}_{i, k}^{2}-\boldsymbol{p}_{i}\right]$

2.3 行为机制转换策略的设计

将α智能体的运动行为划分为两种模式: 绕行障碍物模式和目标追踪模式。两种模式之间的切换通过以下具体策略实现。

绕行障碍物条件:α智能体被障碍物边界点阻挡追踪目标。

目标追踪条件:

a∪(b∩c∩d)

式(23)中:a为α智能体未检测到障碍物边界点;b为α智能体逐渐向目标点运动;c为α智能体感知到障碍物边界点但未被边界点阻挡追踪目标;d为α智能体和目标点之间的连线不与先前沿障碍物边界运动的轨迹相交。

在绕行过程中,α智能体无需依赖目标点的引导,而是沿着与其最近的障碍物边界点的切线方向进行运动,确保与障碍物边界点保持安全距离的同时平滑绕过障碍物边界。当满足条件a或者条件b、c、d同时满足时,α智能体将执行目标追踪模式。此外,如图3(a)所示,紫色圆形代表α智能体i,绿色三角形代表目标点,α智能体i在遇到凹形障碍物时出现了圆周运动的现象,而图3(b)中通过调整α智能体i初始绕行方向,成功绕过障碍物并到达目标点。这表明初始绕行方向的选择对于α智能体避障至关重要。如图4所示,通过判断α智能体起始点与目标点之间的角度θ,可以确定α智能体绕行方向。当θ为锐角时,智能体逆时针绕行障碍物边界;当θ为直角或钝角时,智能体顺时针绕行障碍物边界。这一方法使α智能体有效避开障碍物,减少了不必要的往复运动。

通过上述策略的合理设计,能够动态切换α智能体的运动模式,特别是通过条件d的引入,有效避免了路径重叠所导致的振荡现象。综合上述势能梯度项以及速度一致项的改进,改进后的α智能体i的控制输入为

${u}_{i}={u}_{i}^{\alpha }+{u}_{i}^{\beta }+{\delta }_{i}{u}_{i}^{\gamma }$
$\begin{aligned} \boldsymbol{u}_{i}^{\alpha}=- & c_{1}^{\alpha} \sum_{j \in N_{\imath}^{\alpha}} \kappa[d(i, j)] \nabla_{q_{i}} \psi_{\alpha}\left(\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)+ \\ & c_{2}^{\alpha} \sum_{j \in N_{\imath}^{\alpha}} \boldsymbol{a}_{i j}(\boldsymbol{q})\left(\boldsymbol{p}_{j}-\boldsymbol{p}_{i}\right) \end{aligned}$
$\begin{array}{r} \boldsymbol{u}_{i}^{\beta}=-c_{1}^{\beta} \sum_{k \in N_{i}^{\beta}} \kappa[d(i, k)] \nabla_{q_{i}} \psi_{\beta}\left(\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)+ \\ c_{2}^{\beta} \sum_{k \in N_{i}^{\beta}} b_{i, k}(\boldsymbol{q})\left[\delta_{i} \hat{\boldsymbol{p}}_{i, k}^{1}+\left(1-\delta_{i}\right) \hat{\boldsymbol{p}}_{i, k}^{2}-\boldsymbol{p}_{i}\right] \end{array}$
${u}_{i}^{\gamma }=-{c}_{1}^{\gamma }{\sigma }_{1}({q}_{i}-{q}_{\gamma })-\mathrm{ }{c}_{2}^{\gamma }({p}_{i}-{p}_{\gamma })$

3 碰撞分析

多智能体集群运动时的总能量包括α智能体之间的势能,α智能体和其感应半径内障碍物边界点之间的势能,α智能体和目标点之间的势能以及α智能体的动能。将多智能体系统的总能量用E(q,p)表示,则E(q,p)可以写为

$ \begin{aligned} E(\boldsymbol{q}, \boldsymbol{p})= & \sum_{i=1}^{N} c_{1}^{\alpha} \sum_{j \in N_{i}^{\alpha}} \psi_{\alpha}\left(\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)+ \\ & \sum_{i=1}^{N} c_{1}^{\beta} \sum_{k \in N_{i}^{\beta}} \psi_{\beta}\left(\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}\right)+ \\ & \frac{1}{2} \sum_{i=1}^{N} c_{1}^{\gamma} \delta_{i} \sigma_{1}\left(\boldsymbol{q}_{i}-\boldsymbol{q}_{\gamma}\right)^{\mathrm{T}} \sigma_{1}\left(\boldsymbol{q}_{i}-\boldsymbol{q}_{\gamma}\right)+ \\ & \frac{1}{2} \sum_{i=1}^{N} \boldsymbol{p}_{i}^{\mathrm{T}} \boldsymbol{p}_{i} \end{aligned} $

对E(q,p)求导,可得

$ \begin{aligned} \frac{\mathrm{d} E(\boldsymbol{q}, \boldsymbol{p})}{\mathrm{d} t}= & \sum_{i=1}^{N} c_{1}^{\alpha} \sum_{j \in N_{i}^{\alpha}} \nabla_{q_{i}} \psi_{\alpha}\left(\left\|\boldsymbol{q}_{j}-\boldsymbol{q}_{i}\right\|_{\sigma}\right) \boldsymbol{p}_{i}+ \\ & \sum_{i=1}^{N} c_{1}^{\beta} \sum_{k \in N_{i}^{\beta}} \nabla_{q_{i}} \psi_{\beta}\left(\left\|\hat{\boldsymbol{q}}_{i, k}-\boldsymbol{q}_{i}\right\|_{\sigma}\right) \boldsymbol{p}_{i}+ \\ & c_{1}^{\gamma} \sum_{i=1}^{N} \delta_{i} \sigma_{1}\left(\boldsymbol{q}_{i}-\boldsymbol{q}_{\gamma}\right) \boldsymbol{p}_{i}+\sum_{i=1}^{N} \boldsymbol{p}_{i}^{\mathrm{T}} \boldsymbol{u}_{i} \end{aligned} $

为方便公式推导,将${\hat{\mathrm{p}}}_{i,k}^{1}$和${\hat{\mathrm{p}}}_{i,k}^{2}$统称为${\hat{\mathrm{p}}}_{i,k}$,然后将式(24)~式(27)代入式(29)中可得

$ \begin{aligned} \frac{\mathrm{d} E(\boldsymbol{q}, \boldsymbol{p})}{\mathrm{d} t}=- & c_{2}^{\alpha} \sum_{i=1}^{N} \boldsymbol{p}_{i}^{\mathrm{T}} \sum_{j \in N_{\iota}^{\alpha}} \boldsymbol{a}_{i j}(\boldsymbol{q})\left(\boldsymbol{p}_{i}-\boldsymbol{p}_{j}\right)- \\ & c_{2}^{\beta} \sum_{i=1}^{N} \boldsymbol{p}_{i}^{\mathrm{T}} \sum_{k \in N_{i}^{\beta}} b_{i, k}(\boldsymbol{q})\left(\boldsymbol{p}_{i}-\hat{\boldsymbol{p}}_{i, k}\right)- \\ & c_{2}^{\gamma} \sum_{i=1}^{N} \delta_{i} \boldsymbol{p}_{i}^{\mathrm{T}}\left(\boldsymbol{p}_{i}-\boldsymbol{p}_{\gamma}\right) \end{aligned} $

式(30)中:pγ=0,$\frac{\mathrm{d}E(q,p)}{\mathrm{d}t}$=-vT$\hat{\mathrm{L}}$v, $\hat{\mathrm{L}}$=(L􀱋I2),v=col(p1,p2,…,pN,${\hat{\mathrm{p}}}_{1,k}$,${\hat{\mathrm{p}}}_{2,k}$,…,${\hat{\mathrm{p}}}_{N,k}$),􀱋表示克罗内克乘积;矩阵L可以写为L=$\left(\begin{array}{ll}{\mathrm{c}}_{2}^{\mathrm{\alpha }}\left[\Delta \right(A)-A]+{\mathrm{c}}_{2}^{\mathrm{\beta }}\Delta \left(B\right)+{\mathrm{c}}_{2}^{\mathrm{\gamma }}{\delta }_{\mathrm{N}\times \mathrm{N}}& {0}_{\mathrm{N}\times \mathrm{N}}\\ -{\mathrm{c}}_{2}^{\mathrm{\beta }}B& {0}_{\mathrm{N}\times \mathrm{N}}\end{array}\right)$,其中,Δ(A)为一个具有对角线元素$\sum _{j\in {N}_{i}^{\alpha }}$aij(q)的对角线矩阵;A=[aij(q)]为一个邻接矩阵;Δ(B)为一个具有对角线元素$\sum _{k\in {N}_{i}^{\beta }}$bi,k(q)的对角线矩阵;B=[bi,k(q)]为一个邻接矩阵;δN×N为一个N阶对角矩阵,其主对角元素为0或1。由于${c}_{2}^{\alpha }$、${c}_{2}^{\beta }$和${c}_{2}^{\gamma }$均为正常数,因此矩阵L是正半定矩阵。由此可见$\frac{\mathrm{d}E(q,p)}{\mathrm{d}t}$≤0,说明E(q,p)是非递增函数,且在t=0时刻的初始值为E0(q,p)。

使用反证法来分析多智能体系统中的碰撞。假设α智能体之间或者α智能体和障碍物边界点相撞,ψα($\Vert {q}_{j}-{q}_{i}{\Vert }_{\sigma }$)或ψβ($\Vert {\hat{\mathrm{q}}}_{i,k}-{q}_{i}{\Vert }_{\mathrm{\sigma }}$)将趋于无穷大,由于${c}_{1}^{\alpha }$、${c}_{1}^{\beta }$、${c}_{1}^{\gamma }$都为正常数,那么E(q,p)总势能趋于无穷大,与上述E(q,p)是非递增函数且存在初始值E0(q,p)矛盾,因此多智能体系统中不存在碰撞的现象。

4 仿真分析

首先与原Olfati-Saber集群避障方法进行比较,来说明所提出方法的有效性。选择10个α智能体在独立墙型障碍物的环境下模拟实验。10个α智能体的初始位置向量从[10,25]×[5,20]中随机选择,初始速度向量从[0,2]×[0,2]中选择,目标点位置向量为(55,80)T,目标点的速度向量为0。α智能体使用不同的方法运行200 s,得到的避障效果如图5所示。图6表示不同方法下的α智能体在运动过程中与其他α智能体以及障碍物边界点之间的最小距离。从图5(a)和图5(b)中看出,由于原Olfati-Saber方法中的α智能体在避障时因多种势能的综合作用而陷入局部极小值,导致其无法绕过障碍物。而所提出的方法通过绕行机制使α智能体在被障碍物阻挡后成功绕过障碍物,到达目标点。且从图6中看出α智能体在运行过程中没有和其他α智能体以及障碍物边界点发生碰撞。其次,又选择10个α智能体在两个圆形障碍物组合的环境下模拟实验,图7和图8展示了所提出的方法在障碍物规避上的优越性。

为了进一步验证所提出方法的有效性及可靠性,在复杂障碍物环境下分别对10和30个α智能体进行了测试。α智能体的初始位置向量从[5,35]×[10,30]中随机选择,初始速度向量从[0,2]×[0,2]随机选择,目标点位置向量为(48,60)T,目标点的速度向量为0。α智能体在包含波浪形、椭圆形、U形等复杂障碍物的环境中运行了300 s。如图9所示,所有α智能体都能够绕过复杂障碍物并到达目标点。此外,从图10可以看出α智能体之间以及α智能体与障碍物边界点之间最小距离始终大于0 m,不存在碰撞的现象。上述结果表明了所提出的方法不仅减少了原Olfati-Saber集群避障方法对障碍物形状及全局信息的依赖,还利用绕行机制有效避免了α智能体陷入局部极小值,从而提升了α智能体在复杂环境中的适应性。

5 结论

针对二维平面上的二阶多智能体,提出了多智能体集群运动过程中所面临的避障问题。通过仿真实验得到以下结论。

(1)针对多智能体集群避障时受限于障碍物形状和全局信息的问题,使用障碍物边界点表示障碍物,并假设智能体在运动过程中仅能识别其感应半径内的其他智能体以及障碍物边界点,从而减少了对障碍物形状和全局信息的依赖。

(2)针对多智能体集群避障过程中容易陷入局部极小值的问题,通过构建智能体行为机制转换策略,并结合速度一致项和目标引导项,将智能体的运动行为划分为目标追踪和绕行障碍物两种模式,使智能体在受到障碍物阻挡后能够沿着障碍物边界平滑绕行,从而有效避免局部极小值问题,提高智能体在复杂环境下的适应性。并通过反证法和仿真实验证明了所提出的多智能体集群避障方法的有效性。

所提出的多智能体集群避障方法具有较高的普适应,后续将针对多智能体开展编队避障控制研究。

参考文献

[1]

李杨, 徐峰, 谢光强, 等. 多智能体技术发展及其应用综述[J]. 计算机工程与应用, 2018, 54(9): 13-21.

[2]

Li Yang, Xu Feng, Xie Guangqiang, et al. Survey of development and application of multi-agent technology[J]. Computer Engineering and Applications, 2018, 54(9): 13-21.

[3]

Qiu H, Duan H. Pigeon interaction mode switch-based UAV distributed flocking control under obstacle environments[J]. ISA Transactions, 2017, 71: 93-102.

[4]

Ginnaw G M, Davidson I K, Harding H R, et al. Effects of multiple stressors on fish shoal collective motion are independent and vary with shoaling metric[J]. Animal Behaviour, 2020, 168: 7-17.

[5]

Reynolds C W. Flocks, herds and schools: a distributed behavioral model[C]// Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques. New York: Association for Computing Machinery, 1987: 25-34.

[6]

Wang X, Liu W, Wu Q, et al. A modular optimal formation control scheme of multiagent systems with application to multiple mobile robots[J]. IEEE Transactions on Industrial Electronics, 2021, 69(9): 9331-9341.

[7]

王震, 桑宏强, 孙秀军. 波浪滑翔器编队避障方法[J]. 科学技术与工程, 2022, 22(21): 9176-9181.

[8]

Wang Zhen, Sang Hongqiang, Sun Xiujun. Obstacle avoidance method for wave glider formation[J]. Science Technology and Engineering, 2022, 22(21): 9176-9181.

[9]

Sheng H, Zhang J, Yan Z Y, et al. New multi-UAV formation keeping method based on improved artificial potential field[J]. Chinese Journal of Aeronautics, 2023, 36(11): 249-270.

[10]

岳伟, 李超凡. 基于多蜂群的多无人机协同自适应搜索[J]. 科学技术与工程, 2022, 22(5): 2108-2115.

[11]

Yue Wei, Li Chaofan. Multi-unmanned aerial vehicles cooperative adaptive search path planning based on multi-bee colony[J]. Science Technology and Engineering, 2022, 22(5): 2108-2115.

[12]

Mushtaq A, Haq I U, Sarwar M A, et al. Multi-agent reinforce- ment learning for traffic flow management of autonomous vehicles[J]. Sensors, 2023, 23(5): 2373.

[13]

许元云, 何明, 刘锦涛, 等. 碰撞锥检测改进的多智能体避障算法[J]. 计算机工程与应用, 2020, 56(18): 63-68.

[14]

Xu Yuanyun, He Ming, Liu Jintao, et al. Multi-agent obstacle avoidance algorithm improved by collision cone detection[J]. Computer Engineering and Applications, 2020, 56(18): 63-68.

[15]

Khatib O. Real-time obstacle avoidance for manipulators and mobile robots[J]. The International Journal of Robotics Research, 1986, 5(1): 90-98.

[16]

刘志强, 朱伟达, 倪婕, 等. 基于新型人工势场法的车辆避障路径规划研究方法[J]. 科学技术与工程, 2017, 17(16): 310-315.

[17]

Liu Zhiqiang, Zhu Weida, Ni Jie, et al. Path planning and obstacle a voidance method for automobile vehicle based on improved artificial potential field[J]. Science Technology and Engineering, 2017, 17(16): 310-315.

[18]

司玉文, 黄绍服. 基于IAPF-ACO的工业机器人运动规划[J]. 科学技术与工程, 2023, 23(21): 9130-9136.

[19]

Si Yuwen, Huang Shaofu. Motion planning of industrial robot based on IAPF-ACO[J]. Science Technology and Engineering, 2023, 23(21): 9130-9136.

[20]

Olfati-Saber R. Flocking for multi-agent dynamic systems: algorithms and theory[J]. IEEE Transactions on Automatic Control, 2006, 51(3): 401-420.

[21]

Li J, Zhang W, Su H, et al. Flocking of partially-informed multi-agent systems avoiding obstacles with arbitrary shape[J]. Autonomous Agents and Multi-agent Systems, 2015, 29: 943-972.

[22]

Sakai D, Fukushima H, Matsuno F. Flocking for multirobots without distinguishing robots and obstacles[J]. IEEE Transactions on Control Systems Technology, 2016, 25(3): 1019-1027.

[23]

杨宇硕, 肖迪, 刘志坚, 等. 具有避障功能的多智能体系统编队控制[J]. 科学技术与工程, 2024, 24(25): 10841-10847.

[24]

Yang Yushuo, Xiao Di, Liu Zhijian, et al. Formation control of multi-agent systems with obstacle avoidance function[J]. Science Technology and Engineering, 2024, 24(25): 10841-10847.

基金资助

国家自然科学基金(U23A20280)

国家自然科学基金(62161007)

广西自然科学基金(2024GXNSFAA010270)

广西科技厅项目(桂科 AA23062038)

广西科技厅项目(桂科 AB23026120)

广西科技厅项目(桂科 ZY23055048)

广西中青年教师基础能力提升项目(2021KY0209)

PDF (4869KB)

37

访问

0

被引

详细

导航
相关文章

/

〈 〉