
【改进的人工势场方法求解】二阶多智能体系统中的编队控制和避障研究(Matlab代码实现)
摘要——在本文中,介绍了一种将二阶编队控制与路径规划相结合的方法。第二节,图论和人工势场的基本原理现场情况如图所示。由于二阶共识车辆根据预先指定的协议交换信息通信有向图。在第3节中,我们使用系统动态使用一个代理和拉普拉斯矩阵来生成共识协议。此外,使用改进的路径规划方法开发了人工势场。数值模拟是用于说明结果。一.导言群体疏散问题长期以来一直被视为多智能体系统的基本实现。
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能解答你胸中升起的一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
摘要——在本文中,介绍了一种将二阶编队控制与路径规划相结合的方法。第二节,图论和人工势场的基本原理现场情况如图所示。由于二阶共识车辆根据预先指定的协议交换信息通信有向图。在第3节中,我们使用系统动态使用一个代理和拉普拉斯矩阵来生成共识协议。此外,使用改进的路径规划方法开发了人工势场。数值模拟是用于说明结果。
一.导言
群体疏散问题长期以来一直被视为多智能体系统的基本实现。在可预见的未来,派遣机器人或机器人小组进行救援在危机或灾难性事件中,人们会变得无论场景如何,都更常用自然界中就有这样的例子,鸟群会聚集在一起蚂蚁在迁徙、觅食等过程中,会排成一条线地球上长期存在的例子表明我们可以模仿动物在控制下的行为多智能体系统。多智能体控制的一个基本问题是共识,即传感器网络中的所有代理或机器人基于某种算法达到共同值的方法。然而,仅仅达到一个点似乎还不够在现实世界中足够实用。修改后的共识对已经存在的共识的另一个问题是形成控制。编队控制要求所有代理网络试图保持一定的预定义距离。哪一个可广泛应用于多个领域。关于这一点基于位置的方法更实用,因为它不需要需要代理具有高感知能力,而且易于在软件上进行模拟。
在所有代理人的形成过程中,他们需要避开障碍物。一种实现方法就是生成APF(人工势场)。通过这样做,每个代理将直接从障碍物处被拖到目标处。
V.结论
在这个项目中,我们试图将两种流行的算法结合起来共同实现实施。第二订单通过添加预定义阵形形状,实现了阵形共识。关键在于生成控制通过在Matlab中使用克罗内克积获得的增益以及离散化。此外,改进的人工势场方法被考虑。势场中的一些参数可以在未来进行修改,以改善性能势场,以便代理在过程中能够更加敏感避障。在模拟部分,4个代理继续遵循矩形形状,直到其中一个正在接近障碍物。然后,他们开始分开依靠自己避开障碍物。一旦它们离开半径为10,它们会再次恢复形成,直到最终击中目标。然而,仍有一些改进空间例如,在未来,使用二阶动力学避开障碍物。详细文章见第4部分。
📚2 运行结果
在图1中,由于没有半径10米内障碍物。在图2中,地层为完整的。图3显示,代理人观察到存在
半径内的障碍物,然后它们开始避开它。障碍物之后在图5中,它们再次回到编队。在图6中,他们到达了目的地。
In Fig.1 the agents start to form a shape since there is no obstacle in the radius of 10. And in Fig.2 the formation is completed. Fig.3 shows that agents observe that there is an
obstacle in radius, then they start to avoid it. After obstacle avoidance, in Fig.5 they go back to formation again. In Fig.6, they arrive their destination.
部分代码:
%%%%%%%%function
%%%%%%%%obstacle avoidance
%%%%%%%%%%%%%%%%
function [x,y]=obstacle_avoidance(x,y)
%initialization
lem=0.2; %velocity
ga=40; % constant parameter
sig=50; %constant parameter
Wa=20; %constant parameter
Po=[50 50]; %postion of obstacle
Pg=[100 100]; %postion of target
W2=2; %constant parameter
m=zeros(1,9); %array that stores potential field in 9 directions
%%%%%loop that find best value of potential field for 9 postions around
%%%%%current postion
for q=0:8
%to generate potential position
Pt=[x,y]+[lem*cos((ga/180)*pi*q) lem*sin((ga/180)*pi*q)];
%calculate attractive force
Ua = Wa*((Pg(1,1)-Pt(1,1))^2+(Pg(1,2)-Pt(1,2))^2);
%calculate repulsive force
Uob = W2*exp((-1/sig^2)*((Pt(1,1)-Po(1,1))^2+(Pt(1,2)-Po(1,2))^2));
%summation
Ut=Ua+Uob;
%store the 9 potential field to array
m(1,q+1)=Ut;
end
%find the minimum value with potential field
[~,I] = min(m);
%generate new coordinates(position)
x=x+lem*cos((ga/180)*pi*I);
y=y+lem*sin((ga/180)*pi*I);
end
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)
🌈4 Matlab代码、详细文章下载
资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取
更多推荐
所有评论(0)