上海交通大学学报, 2024, 58(11): 1783-1797 doi: 10.16183/j.cnki.jsjtu.2024.209

制导、导航与控制

基于动态密度引导的多机器人编队队形变换方法

曹凯,1,2, 陈阳泉2, 李康1, 陈超波1, 阎坤1, 刘伟超1

1.西安工业大学 电子信息工程学院,西安 710021

2.加州大学默塞德分校 MESA Lab,美国 默塞德 CA 95343

Dynamic Density-Guided Method for Multi-Robot Formation Transformation

CAO Kai,1,2, CHEN Yangquan2, LI Kang1, CHEN Chaobo1, YAN Kun1, LIU Weichao1

1. School of Electronic Information Engineering, Xi’an Technological University, Xi’an 710021, China

2. MESA Lab, University of California, Merced CA 95343, USA

责任编辑: 王一凡

收稿日期: 2024-06-6   修回日期: 2024-06-22   接受日期: 2024-06-24  

基金资助: 国家自然科学基金青年基金(62103315)
信息融合技术教育部重点实验室开放基金(202312-IFTKFKT-007)
陕西省科技厅项目(2022QFY01-16)
陕西省科技厅项目(2023-ZDLNY-61)

Received: 2024-06-6   Revised: 2024-06-22   Accepted: 2024-06-24  

作者简介 About authors

曹凯(1984—),副教授,从事多机器人控制、集群控制、源定位的研究;E-mail:caokai@xatu.edu.cn.

摘要

针对地面移动机器人编队的队形控制问题,提出了一种基于动态密度引导的多机器人编队队形切换方法.为实现机器人编队不同队形的切换,使用质心维诺划分(CVT)编队控制算法,避免机器人队形切换过程中的碰撞.根据CVT算法的特性,通过给定队形的密度函数,构建初始队形密度函数与期望密度函数之间的过渡密度生成动态密度,并利用CVT算法引导编队中的机器人移动,完成编队队形的切换与重构.仿真结果表明,相比直接使用期望密度函数引导队形切换,该方法不仅成功解决了部分形态编队切换失败问题,而且降低了切换过程中编队整体的平均位置误差.

关键词: 多机器人; 质心维诺划分; 编队控制; 队形切换

Abstract

This paper addresses the formation control problem for ground mobile robot formations and proposes a formation transition method based on dynamic density guidance. To achieve different formation transitions, a centroidal Voronoi tessellations (CVT) formation control algorithm is utilized to avoid collisions during the transition process. By leveraging the properties of the CVT algorithm, a dynamic density is generated by constructing a transition density function between the initial formation density function and the desired density function. The CVT algorithm then guides the robots in the formation to move and complete the transition and reconstruction of the formation. The simulation results demonstrate that, compared to using the desired density function directly, this method not only successfully resolves certain formation transition failures but also reduces the average positional error of the formation during the transition process.

Keywords: multi-robot; centroidal Voronoi tessellations; formation control; formation transformation

PDF (29802KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

曹凯, 陈阳泉, 李康, 陈超波, 阎坤, 刘伟超. 基于动态密度引导的多机器人编队队形变换方法[J]. 上海交通大学学报, 2024, 58(11): 1783-1797 doi:10.16183/j.cnki.jsjtu.2024.209

CAO Kai, CHEN Yangquan, LI Kang, CHEN Chaobo, YAN Kun, LIU Weichao. Dynamic Density-Guided Method for Multi-Robot Formation Transformation[J]. Journal of Shanghai Jiaotong University, 2024, 58(11): 1783-1797 doi:10.16183/j.cnki.jsjtu.2024.209

多机器人编队是指多个机器人协同工作,通过编队算法和协同控制方法,实现有序的集体行为,常见于无人车、无人机、航天器、水下机器人等.多个机器人组成的编队可通过协作来完成单机器人无法完成的工作,包括在危险环境中搜索和救援、环境监测、搜寻气体泄漏等.多机器人编队的控制方法可分为集中式控制与分布式控制,集中式控制是指所有机器人的决策和控制由一个中央控制器负责.在分布式控制中,编队系统没有控制的中心,通过相邻机器人之间的信息互换完成最终的编队行为.关于集中式控制,Guo等[1]将运动规划方法GPMP2扩展到多机器人控制,提出了一种多机器人编队的集中式轨迹生成方法.王树凤等[2]将集中式编队控制结合人工势场法,实现了多车辆编队的形成.关于分布式控制,Huang等[3]利用机器人和虚拟参考中心之间的相对位置控制编队,提出了一种分布式编队全局优化算法,将梯度投影(GP)算法用于最小化编队距离,将匈牙利算法用于最小化分配成本函数.Feola等[4]针对极简机器人的分布式编队,根据检测到的邻居的数量来改变随机游动持续性,模拟微/纳米分子在活性胶体中的其他集体行为,使用自适应启发式机制来促进编队自组织聚集和执行任务.Rezeck等[5]基于粒子间极性的化学规则的启发式方法,利用动态吉布斯随机场(GRF)控制机器人速度,使机器人依赖于局部信息,以完全分散的方式实现预定编队的生成.集中式控制可以根据编队的全局信息做出最优决策,并且机器人之间只需与中央控制器通信,减少了通信复杂性.但如果中央控制器故障,整个编队可能失去控制,并且当机器人数量较多时可能会导致通信瓶颈.分布式控制由于不存在中央控制器,系统更具有鲁棒性,并且易于扩展.但编队控制依靠局部信息,不能保证全局最优,并且机器人之间复杂的协同和通信,会导致算法设计和实现的复杂性增加.

质心维诺划分(centroidal Voronoi tessellations,CVT)是一种集中式的编队控制方法,最早由Cortes等[6]提出,该方法利用维诺图理论将机器人的工作区域划分为多个互不重叠的维诺细胞,并通过Lloyd算法迭代生成每个细胞的质心,然后设计相应的控制器驱动机器人前往各自的质心位置,从而实现编队控制.在此基础上,多位学者对CVT编队方法的避碰性能与收敛速度进行了改进[7-8],使其更适用于多机器人系统的控制.目前基于CVT的队形切换方法,主要分为CVT约束区域变形与时变密度函数引导两个方向.对于CVT约束区域的变形,文献[9-10]中采用变形方法生成一系列中间约束形状作为关键帧,使用CVT实现机器人编队的队形变换.在此基础上,郑利平等[11]通过加权维诺图CCCPD实现异构群体队形的变换.Zheng等[12]使用基于2-Wasserstein距离的插值技术来生成中间形状轮廓序列,将均匀性要求和空间相干性整合为一个目标函数,通过协同优化推导出编队的最优切换方案.对于利用密度函数引导变换,Bai等[13]利用有限范围传感器检测到的障碍物信息,基于CVT设计排斥密度函数实现编队自适应避障.Xu等[14]通过时变的密度函数,控制CVT机器人编队的收缩实现编队避障.接着,又构造时变的异胚[15],提高机器人编队在连续障碍物环境下的通过性.Guo等[16]利用时变密度函数模拟动态洪水区域,通过CVT算法实现洪水区域最佳的无人机(unmanned aerial vehicle,UAV)覆盖.Xu等[17]将CVT的约束区域设置为半球形,通过调整约束区域内高密度区域的位置,实现了一种半球形覆盖的多UAV摄影方法.Teruel等[18]在密度函数时变的情况下,针对性地设计编队控制器,实现机器人在时变密度函数的情况下的对约束区域的覆盖.调整CVT约束区域的队形变换,为编队整体形态的变形,难以对编队内的机器人进行单独的位置调整.利用密度函数引导队形变换,由于维诺生成点与维诺细胞在约束区域内的随机性,在导入新队形密度函数后,会增加队形切换过程中编队整体的移动路径长度与位置误差,甚至造成维诺细胞质心未落在环境高密度区域,导致编队切换失败的问题.

针对这些问题,本文使用动态密度引导的方法,克服使用静态密度函数引导编队切换失败的问题.在固定的约束区域内,利用形状插值构建当前队形密度函数与期望队形密度函数之间的动态过渡,利用生成的动态密度对编队进行引导,并根据CVT算法自身的编队避碰属性,实现多机器人编队在不同队形间的切换.

1 预备知识与问题描述

1.1 预备知识

本文利用CVT算法进行机器人编队队形的控制.维诺划分(Voronoi tessellations,VT)是一种空间划分方法,在给定有界环境区域Q⊂RN,区域内的维诺细胞集合V={v1, v2, …, vn},设置区域内一组随机的生成点,用P={p1, p2, …, pn}来表示该区域内每个维诺细胞的生成点的集合,可得到维诺划分定义:

$\begin{aligned}v_{i}= & \left\{\boldsymbol{q} \in Q\left\|\boldsymbol{q}-\boldsymbol{p}_{i}\right\|<\left\|\boldsymbol{q}-\boldsymbol{p}_{j}\right\|,\right. \\& i, j=1,2, \cdots, n, j \neq i\}\end{aligned}$

式中:vi代表由生成点pi划分出的维诺细胞;q为维诺细胞vi内的任意点.维诺划分及其密度分布如图1所示,凸环境下的一种维诺划分见图1(a).

图1

图1   维诺划分与质心维诺划分

Fig.1   Voronoi tessellation and centroidal Voronoi tessellation


CVT是一种特殊的维诺划分,通过在环境区域Q内引入密度ρ(q),计算每个维诺细胞的质心cvi,质心可表示为

$\boldsymbol{c}_{v_{i}}=\frac{\int_{v_{i}} \boldsymbol{q} \rho(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}}{\int_{v_{i}} \rho(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}}, \quad i=1,2, \cdots, n$

在同一环境区域下,维诺划分的生成点与维诺细胞的质心重合时,即pi=cvi,此时通过维诺细胞质心作为生成点的维诺划分称之为质心维诺划分.图1(c)展示了均匀密度下的一种质心维诺划分,图1(b)为均匀密度分布,xy代表二维空间的坐标变量.

本文基于CVT的特性,将约束区域设为多机器人的编队区域,质心视为机器人移动目标位置,质心对应的维诺细胞视为机器人的安全区域,实现一种多机器人避碰编队.

多机器人编队运行的目标是最小化编队代价E,在给定队形的密度函数ρ下,机器人前往目标点的代价函数表示为

$\begin{array}{l}E(\boldsymbol{P}, V)= \\\quad \sum_{i=1}^{n} \int_{\boldsymbol{q} \in v_{i}}\left\|\boldsymbol{p}_{i}-\boldsymbol{q}\right\|^{2} \rho(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}\end{array}$

可知当机器人位于维诺细胞质心位置时,可保证编队的代价最小,机器人所处位置最为合理.

1.2 问题描述

由于CVT的维诺细胞划分及其质心的确定以约束区域内的密度分布为导向,通过向约束区域内导入不同密度分布的密度函数,CVT即可实现对应的质心排布,不同的密度函数对维诺图的影响如表1所示.表中:σ代表标准差,用于调整密度分布的形态和方向;abcrxcyc是常数项,决定了密度分布的位置和形状.

表1   密度函数与维诺图的联系

Tab.1  Relationship between density function and Voronoi diagram

ρ(q)密度分布维诺图队形
$\mathrm{e}^{-\sigma(a x+b y+c)^{2}}$直线形
$\mathrm{e}^{-\sigma\left[a\left|x-x_{\mathrm{c}}\right|+b\left(y-y_{\mathrm{c}}\right)+c\right]^{2}}$V形
$\mathrm{e}^{-\sigma\left[a\left(x-x_{\mathrm{c}}\right)^{2}+b\left(y-y_{\mathrm{c}}\right)^{2}-r^{2}\right]^{2}}$环形

新窗口打开| 下载CSV


当初始队形生成后,通过将期望队形的密度函数导入CVT,即可实现编队队形的切换.但是,在某些特殊构型的CVT结构下,再导入期望队形的密度函数后,存在质心未能划分在高密度区域的情况.

环形队形切换失败情况如图2所示.图2(b)展示了一种直线型的CVT编队,该编队由表1中的直线形密度函数生成,其中橙色圆点代表机器人,包围每个机器人的安全区域即为基于机器人位置生成的维诺划分.在向编队的工作区域导入图2(a)所示的环形密度函数后,维诺细胞的质心落在其中心位置.机器人跟随质心位置进行移动,并未切换至目标的环形编队,如图2(c)所示.可见,尽管CVT具备一定的编队灵活性,但在密度函数模型改变的情况下,存在队形无法切换的情况.

图2

图2   环形队形切换

Fig.2   Switching ring formation


2 基于动态密度引导的队形切换

为实现CVT编队的成功切换,本文通过在当前队形的密度函数与期望队形密度函数间插入过渡的密度分布,生成动态密度对编队进行引导,解决CVT算法控制的编队在特殊的维诺划分下队形无法成切换的问题.

2.1 密度函数形状插值

本文采用形状插值的方法,预先生成两个密度函数间过渡的密度分布,实现两种密度函数之间平滑的变换.形状插值(shape interpolation)[19]是计算机图形学领域在两个或多个不同形状之间生成中间形态的方法.一般的形状插值,在需要插值的两个形状中选择控制点,通过对这些控制点进行变形和移动,生成两个形状之间的中间形态.该方法需要实现建立插值对象的网格模型,数据计算量大,并不适合CVT密度函数的精简的特性.

本文选择基于最优传输理论的形状插值[20]方法,该方法不同于传统的形状插值,插值对象为概率密度,可直接用于CVT.概率密度分布αΩ1βΩ2之间Wasserstein距离W2如下:

$W_{2}(\alpha, \beta)=\sqrt{\inf _{\xi \in(\alpha, \beta)} \iint_{\Omega_{1} \times \Omega_{2}} d^{2}(x, y) \mathrm{d} \xi(x, y)}$

式中:Ξ表示从α分布到β的运输计划;d(x,y)为xy间距离;ξ(x, y)为二维Wasserstein距离中的联合分布函数,表示从概率分布Ω1到概率分布Ω2最优运输计划的密度分布;dξ(x, y)为该联合分布函数的微分测度,用于描述在Wasserstein距离计算中点的质量如何从一个位置移动到另一个位置的变化.生成过渡概率密度分布ρ(γ)的过程表示如下:

$\begin{aligned}\rho(\gamma)= & \underset{\rho}{\operatorname{argmin}}\left[(1-\gamma) W_{2}^{2}\left(\rho_{0}, \rho\right)+\gamma W_{2}^{2}\left(\rho, \rho_{1}\right)\right], \\& \gamma \in[0,1]\end{aligned}$

式中:ρ0ρ1为队形初始与期望的密度分布.通过两个密度分布之间的最优传输路径,选取路径某一位置γ在所有路径上的点集,利用重心插值计算出过渡密度分布,实现两种密度函数的过渡变换.图3展示了通过该方法插值直线与圆环形密度分布之间过渡密度分布的过程.

图3

图3   密度函数形状插值

Fig.3   Shape interpolation of density function


2.2 编队收敛性证明

通过密度函数插值计算,可得到一组密度函数Zm(q), m=1, 2, …, λ.随后,通过不断更新CVT的密度函数Zm(q),可以控制机器人进行移动,从而实现编队切换.为了确保编队切换的成功,需要保证在每个密度函数下,CVT都能使编队代价E最小.以下是最小化编队代价E的CVT证明.

以式(3)中的代价函数为基础,考虑机器人位置pi的变化量:

$\begin{array}{l}E_{v_{i}}\left(\boldsymbol{p}_{i}+\boldsymbol{\varepsilon}\right)-E_{v_{i}}\left(\boldsymbol{p}_{i}\right)= \\\quad \int_{v_{i}} Z_{m}(\boldsymbol{q})\left(\left\|\boldsymbol{q}-\boldsymbol{p}_{i}-\boldsymbol{\varepsilon}\right\|^{2}-\left\|\boldsymbol{q}-\boldsymbol{p}_{i}\right\|^{2}\right) \mathrm{d} \boldsymbol{q}\end{array}$

式中:ε为机器人在二维空间中位置的变化量.对式(6)进行化简可得:

$\begin{array}{l}\frac{E_{v_{i}}\left(\boldsymbol{p}_{i}+\boldsymbol{\varepsilon}\right)-E_{v_{i}}\left(\boldsymbol{p}_{i}\right)}{\boldsymbol{\varepsilon}}= \\\quad \int_{v_{i}} Z_{m}(\boldsymbol{q})\left[\boldsymbol{\varepsilon}+2\left(\boldsymbol{p}_{i}-\boldsymbol{q}\right)\right] \mathrm{d} \boldsymbol{q}\end{array}$

ε的变化无限接近0时,可得:

$\dot{E}_{v_{i}}\left(\boldsymbol{p}_{i}\right)=2 \int_{v_{i}} Z_{m}(\boldsymbol{q})\left(\boldsymbol{p}_{i}-\boldsymbol{q}\right) \mathrm{d} \boldsymbol{q}\quad Z_{v_{i}}(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}-2 \boldsymbol{p}_{i} \quad \boldsymbol{q} Z_{m}(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}$

将积分展开可得:

$\dot{E}_{v_{i}}\left(\boldsymbol{p}_{i}\right)=2 \boldsymbol{p}_{i} \int_{v_{i}} Z_{m}(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}-2 \boldsymbol{p}_{i} \int_{v_{i}} \boldsymbol{q} Z_{m}(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}$

若导数部分等于0,则可得最小解:

$\boldsymbol{p}_{i}=\frac{\int_{v_{i}} \boldsymbol{q} Z_{m}(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}}{\int_{v_{i}} Z_{m}(\boldsymbol{q}) \mathrm{d} \boldsymbol{q}}$

此时,机器人的位置与维诺单元的质心位置重合,由此即可证得CVT算法能够最小化编队的代价函数,实现编队的收敛.在编队任务中,需要形成期望的编队队形,因此以实际距离和期望距离之间的估计误差作为代价函数:

$\begin{aligned}E_{v}(\boldsymbol{p})= & \sum_{i=1}^{n} \sum_{j \in N_{i}} \frac{1}{2}\left(\left\|\boldsymbol{p}_{i}-\boldsymbol{p}_{j}\right\|-d_{i j}\right)^{2}= \\& \sum_{i=1}^{n} E_{v_{i}}\left(\left\|\boldsymbol{p}_{i}-\boldsymbol{p}_{j}\right\|\right)\end{aligned}$

式中:dij表示两个不同的机器人ij之间的期望距离;Ev(p)表示代价函数,用于衡量当前机器人和期望编队队形之间的距离误差.当该误差为0时,说明已形成期望编队队形,对Evi(pi)进行求导得到:

$\frac{\partial E_{v_{i}}}{\partial \boldsymbol{p}_{i}}=\sum_{j \in N_{i}} \frac{\left\|\boldsymbol{p}_{i}-\boldsymbol{p}_{j}\right\|-d_{i j}}{\left\|\boldsymbol{p}_{i}-\boldsymbol{p}_{j}\right\|}\left(\boldsymbol{p}_{i}-\boldsymbol{p}_{j}\right)^{\mathrm{T}}$

式(12)描述了一个多机器人系统的任务过程,当两个不同机器人之间的距离差值小于已设定阈值时,将权重系数更改为负数,从而不断控制机器人增大相互之间的间距.反之,不断减小二者间距.当二者之间的距离为0 m时,该控制问题就转化为群体的一致性问题,即系统代价函数的最小化问题.这种基于代价函数的最优化问题的公式化推导,能够增强系统的适应性.通过选择不同的权重或定义适当的假设,能够对控制器的分布进行约束,从而保证系统在有限时间内完成收敛.一般情况下,将误差阈值设定为0.02 m,此时的误差对系统的影响可以忽略不计,从而停止迭代.

2.3 机器人目标点跟踪控制及稳定性分析

机器人移动目标点的跟踪控制律如下:

$\begin{array}{l}\boldsymbol{U}_{i}(t)=K_{\mathrm{p}} \boldsymbol{e}(t)+K_{\mathrm{i}} \int \boldsymbol{e}(t) \mathrm{d} t+K_{\mathrm{d}} \frac{\mathrm{~d} \boldsymbol{e}(t)}{\mathrm{d} t}\end{array}$
$\begin{array}{l}\boldsymbol{e}(t)=\boldsymbol{p}_{i}-\boldsymbol{c}_{v_{i}}\end{array}$

式中:Ui是第i个机器人的控制输入;CVT质心cvi为该机器人移动目标点;e(t)为机器人实时位置与目标位置间的误差;KpKiKd为PID控制器参数.

接下来对控制器进行稳定性分析,采用Lyapunov函数证明系统的收敛性.首先分离式(13)积分部分:

$\ddot{\boldsymbol{p}}_{i}=\boldsymbol{u}_{i}=-K_{\mathrm{p}}\left(\boldsymbol{p}_{i}-\boldsymbol{c}_{v_{i}}\right)-K_{\mathrm{d}} \dot{\boldsymbol{p}}_{i}$

Lyapunov函数定义为

$V\left(\boldsymbol{p}_{i}\right)=\frac{1}{2} K_{\mathrm{p}} \boldsymbol{p}_{i}-\boldsymbol{c}_{v_{i}}+\frac{1}{2} \dot{\boldsymbol{p}}_{i}^{2}$

对式(16)求导得:

$\dot{V}\left(\boldsymbol{p}_{i}\right)=K_{\mathrm{p}}\left(\boldsymbol{p}_{i}-\boldsymbol{c}_{v_{i}}\right) \dot{\boldsymbol{p}}_{i}+\dot{\boldsymbol{p}}_{i} \ddot{\boldsymbol{p}}_{i}$

将式(17)中的参数p¨ip·i来代替:

$\begin{aligned}\dot{V}\left(\boldsymbol{p}_{i}\right)= & \dot{\boldsymbol{p}}_{i}\left[K_{\mathrm{p}}\left(\boldsymbol{p}_{i}-\boldsymbol{c}_{v_{i}}\right)-\right. \\& \left.K_{\mathrm{p}}\left(\boldsymbol{p}_{i}-\boldsymbol{c}_{v_{i}}\right)-K_{\mathrm{d}} \dot{\boldsymbol{p}}_{i}\right]\end{aligned}$

化简得:

$\dot{V}\left(\boldsymbol{p}_{i}\right)=-K_{\mathrm{d}} \dot{\boldsymbol{p}}_{i}^{2}$

由式(19)可得Lyapunov函数半负定,当时间趋于无穷大时,系统大范围渐进稳定,当且仅当输入为0时,V·(pi)=0.

2.4 队形切换算法

在完成了密度函数的插值计算后,就可以使用这组密度通过CVT对机器人编队进行引导.使用Zm(q)生成每个维诺细胞质心位置cvi,控制机器人向cvi移动,其中λ为动态密度包含的密度个数,Z1(q)为初始队形密度ρ0(q),Zλ(q)为期望队形密度ρ1(q),当机器人位置误差e<ε时,更新密度Zm(q),利用CVT继续引导机器人的运动.当所有密度的更新完毕时,编队完成预定的队形切换,基于动态密度引导的CVT编队切换算法流程如下.

3 仿真分析

为对本文所提出的算法进行验证,设置编队机器人的数量i=8,动态密度的密度个数λ=20,机器人运动范围为10 m×10 m的方形区域,进行多机器人队形切换与重构的仿真.

3.1 队形切换

(1) 仿真1:直线形编队切换环形编队.在该仿真中,设置机器人由直线形编队切换为环形编队,生成的动态密度Zm(q)如图4所示.初始队形的直线形密度函数的分布见图4(a),期望队形的环形密度函数见图4(f),通过本文使用的方法进行密度函数插值,插值出的部分密度分布见图4(b)~4(e).

图4

图4   直线形密度分布变环形密度分布动态过渡

Fig.4   Dynamic transition from linear density distribution to annular density distribution


图5所示为动态密度引导机器人编队由直线形向环形的切换过程,其中k代表算法的迭代次数,通过本文提出的方法,机器人编队顺利实现了期望的队型.相比图2可知,本文提出的编队切换方法解决了部分特殊CVT编队下的队形切换失败问题.

图5

图5   仿真1动态密度引导队形切换过程

Fig.5   Dynamic density guided formation switching process of Simulation 1


(2) 仿真2:环形编队切换直线形编队.在该仿真中,将进行使用动态密度引导与直接期望密度引导的编队切换进行位置误差与代价函数的对比,如

图6所示.设置机器人由环形编队切换为直线形编队,图6(a)为期望队形的环形密度函数.图6(b)为仿真1生成的环形队形,作为仿真的初始队形.图6(c)展示了直接使用直线形密度函数引导编队由环形切换为直线形的过程,编队完成了期望的队形切换.

图6

图6   直线形密度函数直接引导队形切换

Fig.6   Formation switching directly guided by linear density function


本文使用的密度函数插值方法生成的动态密度Zm(q)如图7所示.初始队形的环形密度函数见图7(a),期望队形的直线形密度函数见图7(f).通过本文使用的方法进行密度函数插值,插值的部分密度分布见图7(b)~7(e).如图8所示,通过动态密度的引导机器人编队由环形切换回直线形的过程,机器人编队同样完成了期望的队形切换.

图7

图7   环形密度分布变直线形密度分布动态过渡

Fig.7   Dynamic transition from annular density distribution to linear density distribution


图8

图8   仿真2动态密度引导队形切换过程

Fig.8   Dynamic density guided formation switching process of Simulation 2


图9所示,两种方法在仿真2队形切换过程中机器人位置与质心位置之间的误差e的变化情况.如图10所示为两种方法编队切换过程中的代价E的变化情况.可以看出,本文使用的方法可以使机器人跟踪质心过程中的位置误差与编队的代价保持在一个较低水平,实现了编队切换过程的优化.

图9

图9   仿真2队形切换过程机器人位置误差

Fig.9   Robot position error in formation switching process of Simulation 2


图10

图10   仿真2队形切换过程机器人代价函数

Fig.10   Robot cost function of formation switching process in Simulation 2


3.2 队形重构

(1) 仿真3:编队分裂.期望密度直接引导编队分裂如图11所示,在该仿真中设置机器人编队由直线形编队切换为两组半包围编队,图11(a)为分裂编队的期望密度分布.图11(b)为仿真2生成的直线型队形,作为仿真的初始队形.图11(c)展示了直接期望密度对编队进行分裂的过程,可以看出,每个维诺细胞的质心未落在高密度区域,机器人编队未成功分裂为两组指定的编队队形.

图11

图11   期望密度直接引导编队分裂

Fig.11   Desired density directly guided formation splitting


本文使用的密度函数插值方法生成的编队分裂的动态密度Zm(q)如图12所示.初始队形的直线形密度函数见图12(a),期望编队形态的密度分布见图12(f),通过本文使用的方法进行密度函数插值,插值的部分密度分布见图12(b)~12(e).

图12

图12   直线形密度分布变期望密度分布动态过渡

Fig.12   Dynamic transition from linear density distribution to expected density distribution


动态密度的引导机器人编队由直线形编队分裂为两个半包围编队的切换过程,如图13所示.由仿真结果可知,通过本文提出的方法,机器人编队顺利完成了队形切换,实现了期望的编队分裂.

图13

图13   动态密度引导编队分裂过程

Fig.13   Dynamic density guided formation splitting process


(2) 仿真4:编队合并.环形密度函数直接引导编队合并,如图14所示.在该仿真中,设置机器人编队由两组半包围编队合并为一个环形编队,图14(a)为分裂编队的期望密度分布.图14(b)为仿真3生成的两组半包围队形,作为仿真的初始队形.图14(c)展示了直接使用环形期望密度对编队进行合并的过程,可以看出机器人编队成功由两组半包围编队合并为一个环形编队.

图14

图14   环形密度函数直接引导编队合并

Fig.14   Direct formation merging guided by annular density function


本文使用的密度函数插值方法生成编队合并的动态密度Zm(q)如图15所示.初始队形的环形密度函数见图15(a),期望队形的直线形密度函数见图15(f),通过本文使用的方法进行密度函数插值,插值的部分密度分布见图15(b)~(e).如图16所示,通过动态密度的引导,编队成功由两组半包围编队切换为一个环形编队,同样完成了期望的编队合并.

图15

图15   初始队形密度分布变环形密度分布动态过渡

Fig.15   Dynamic transition from initial formation density distribution to annular density distribution


图16

图16   动态密度引导编队合并过程

Fig.16   Dynamic density guided formation merging process


图17所示,展示了两种方法在仿真4队形重构过程中机器人位置与质心位置之间的误差e的变化情况.两种方法编队切换过程中的代价E的变化情况,如图18所示.可以看出,本文使用的方法可以减少机器人跟踪质心过程中的位置误差,同时编队合并过程中编队整体的代价也保持在了一个较低水平.如表2所示,总结了所有仿真的编队平均位置误差与迭代次数,可以看出,本文提出的方法使得编队在切换过程中的迭代次数未出现较大增幅.同时,根据仿真2和仿真4的编队平均位置误差计算,整体的位置误差降低了5.4%.

图17

图17   仿真4编队合并过程机器人位置误差

Fig.17   Position error of robot in formation merging process of Simulation 4


图18

图18   仿真4编队合并过程机器人代价函数

Fig.18   Robot cost function of formation merging process of Simulation 4


表2   编队切换过程平均位置误差与迭代次数

Tab.2  Average position error and iteration times of formation switching process

仿真切换方式编队平均位置误差迭代次数
1直接切换
本文方法0.03863
2直接切换0.03772
本文方法0.03569
3直接切换
本文方法0.04560
4直接切换0.03769
本文方法0.03573

新窗口打开| 下载CSV


4 编队实验

利用Turtlebot3 burger机器人平台进行编队实验,验证本文所提算法的可行性.实验使用一台ROS主机同时连接5台Turtlebot3 burger实现多机器人的控制.机器人与ROS主机处在同一局域网络下,ROS主机通过向每台机器人的Move_base节点发送CVT算法每次迭代目标点位置,实现多机编队的控制.

多机器人编队实验环境如图19所示,机器人的任务区域为图中3.3 m×3.85 m的灰色地垫部分.在本实验中,机器人使用激光雷达SLAM进行定位,机器人预先构建的实验环境二维栅格地图见图19(b).

图19

图19   实验环境

Fig.19   Experimental environment


多机器人编队在无障碍环境下直线形编队切换环形编队过程如图20所示,t代表编队运行的时间.机器人编队的初始队形为直线形队形,根据不同时刻动态密度函数下的CVT划分切换至图20(d)所示的环形编队.机器人编队根据CVT算法生成的运动的目标点的引导,经12 s切换至预定队形.

图20

图20   直线形编队切换环形编队

Fig.20   Switching from linear formation to circular formation


多机器人编队在无障碍环境下环形编队切换直线形编队过程如图21所示.机器人编队的初始队形为环形队形,根据不同时刻动态密度函数下的CVT划分切换至图21(d)所示的直线形编队.机器人编队根据CVT算法生成的运动的目标点的引导,经14 s切换至预定队形.

图21

图21   环形编队切换直线形编队

Fig.21   Switching from circular formation to linear formation


5 结语

本文基于CVT编队控制算法,提出了一种动态密度引导的多机器人编队队形切换方法,该方法利用形状插值技术建立初始队形密度函数向期望密度函数的过渡的动态密度,实现密度函数模型改变的情况下CVT编队的队形切换与重构任务.仿真结果表明,相较于直接使用期望密度函数引导切换的方法,该方法不仅解决了部分队形切换失败的问题,同时迭代次数未明显升高,并且在队形切换过程中编队平均位置误差降低了5.4%,最后通过实验验证了算法的可行性.在未来的工作中,将进一步考虑编队对于静态与动态障碍物的避障,使编队的运行更加适应现实环境.

参考文献

GUO S, LIU B, ZHANG S, et al.

Continuous-time gaussian process trajectory generation for multi-robot formation via probabilistic inference

[C]//International Conference on Intelligent Robots and Systems. Prague, Czech Republic: IEEE, 2021: 9247-9253.

[本文引用: 1]

王树凤, 张钧鑫, 张俊友.

基于人工势场和虚拟领航者的智能车辆编队控制

[J]. 上海交通大学学报, 2020, 54(3): 305-311.

[本文引用: 1]

WANG Shufeng, ZHANG Junxin, ZHANG Junyou.

Intelligent vehicles formation control based on artificial potential field and virtual leader

[J]. Journal of Shanghai Jiao Tong University, 2020, 54(3): 305-311.

[本文引用: 1]

HUANG J, ZHOU S, TU H, et al.

Distributed optimization algorithm for multi-robot formation with virtual reference center

[J]. Journal of Automatica Sinica, 2022, 9(4): 732-734.

[本文引用: 1]

FEOLA L, TRIANNI V.

Adaptive strategies for team formation in minimalist robot swarms

[J]. IEEE Robotics and Automation Letters, 2022, 7(2): 4079-4085.

[本文引用: 1]

REZECK P, CHAIMOWICZ L.

Chemistry-inspired pattern formation with robotic swarms

[J]. IEEE Robotics and Automation Letters, 2022, 7(4): 9137-9144.

[本文引用: 1]

CORTES J, MARTINEZ S, KARATAS T, et al.

Coverage control for mobile sensing networks

[J]. IEEE Transactions on Robotics and Automation, 2004, 20(2): 243-255.

[本文引用: 1]

BREITENMOSER A, SCHWAGER M, METZGER J C, et al.

Voronoi coverage of non-convex environments with a group of networked robots

[C]//2010 IEEE International Conference on Robotics and Automation. Anchorage, AK, USA: IEEE, 2010: 4982-4989.

[本文引用: 1]

KANTAROS Y, THANOU M, TZES A.

Distributed coverage control for concave areas by a heterogeneous robot-swarm with visibility sensing constraints

[J]. Automatica, 2015, 53: 195-207.

[本文引用: 1]

ZHENG L, ZHAO J, CHENG Y, et al.

Geometry-constrained crowd formation animation

[J]. Computers & Graphics, 2014, 38: 268-276.

[本文引用: 1]

TERUEL E, ARAGUES R, LÓPEZ-NICOLÁS G.

A distributed robot swarm control for dynamic region coverage

[J]. Robotics and Autonomous Systems, 2019, 119: 51-63.

DOI:10.1016/j.robot.2019.06.002      [本文引用: 1]

We propose a new distributed method for coverage of a moving deformable convex region with a team of robots in a communication network. Robots execute a distributed self-deployment strategy based on Centroidal Voronoi Tessellations (CVT) to cover the region evenly while preventing collisions. The main contribution is the addition of a feedforward action to overcome the well-known slow convergence issue of the basic CVT algorithms. This action is derived by each robot from the information about the region that floods through the network from a few selected leaders. The method allows to quickly adapt to the fastly changing working area in spite of the light communication requirements, and it is well suited for large teams of expendable robots. (C) 2019 Elsevier B.V.

郑利平, 程亚军, 周乘龙, .

异构群体队形光滑变换控制方法

[J]. 计算机辅助设计与图形学学报, 2015, 27(10): 1963-1970.

[本文引用: 1]

ZHENG Liping, CHENG Yajun, ZHOU Chenglong, et al.

Research on smooth formation control of heterogeneous crowds

[J]. Journal of Computer-Aided Design & Computer Graphics, 2015, 27(10): 1963-1970.

[本文引用: 1]

ZHENG X, ZONG C, CHENG J, et al.

Visually smooth multi-UAV formation transformation

[J]. Graphical Models, 2021, 116: 101111.

[本文引用: 1]

BAI Y, WANG Y, XIONG X, et al.

Adaptive multi-agent control with dynamic obstacle avoidance in a limited region

[C]//American Control Conference. Atlanta, USA: IEEE, 2022: 4695-4700.

[本文引用: 1]

XU X, DIAZ-MERCADO Y.

Multi-robot control using coverage over time-varying domains

[C]//International Symposium on Multi-Robot and Multi-Agent Systems. New Brunswick, USA: IEEE, 2019: 179-181.

[本文引用: 1]

XU X, DIAZ-MERCADO Y.

Multi-robot control using coverage over time-varying non-convex domains

[C]//IEEE International Conference on Robotics and Automation. Paris, France: IEEE, 2020: 4536-4542.

[本文引用: 1]

GUO D, BAI Y, SVININ M, et al.

Robust adaptive multi-agent coverage control for flood monitoring

[C]//International Siberian Conference on Control and Communications. Kazan, Russia: IEEE, 2021: 1-5.

[本文引用: 1]

XU X, SHI G, TOKEKAR P, et al.

Interactive multi-robot aerial cinematography through hemispherical manifold coverage

[C]//International Conference on Intelligent Robots and Systems. Kyoto, Japan: IEEE, 2022: 11528-11534.

[本文引用: 1]

TERUEL E, ARAGUES R, LÓPEZ-NICOLÁS G.

A practical method to cover evenly a dynamic region with a swarm

[J]. IEEE Robotics and Automation Letters, 2021, 6(2): 1359-1366.

[本文引用: 1]

EISENBERGER M, NOVOTNY D, KERCHENBAUM G, et al.

Neuromorph: Unsupervised shape interpolation and correspondence in one go

[C]//Conference on Computer Vision and Pattern Recognition. Nashville, TN, USA: IEEE, 2021: 7473-7483.

[本文引用: 1]

PEYRÉ G, CUTURI M.

Computational optimal transport: With applications to data science

[J]. Foundations and Trends in Machine Learning, 2019, 11(5/6): 355-607.

[本文引用: 1]

/