基于人工蜂群算法多无人机轨迹规划

#生物背景

蜜蜂是一种群居生物,生物学家研究发现蜜蜂以跳舞的方式来交换蜜源信息。根据分工的不同,蜜蜂被分为三个工种:引领峰、跟随蜂、侦察蜂

侦察蜂的职责是侦察蜜源(即蜜蜂的食物),一旦某一个侦察蜂找到蜜源后,实际上它的角色就切换为引领蜂了。

找到蜜源后的引领峰以跳舞的方式向同伴传递自己找到食物的信息,这时候一些饥饿的、没有找到食物的蜜蜂就会沿着引领峰指明的方向去寻找食物,这些相信引领峰传递的信息的蜜蜂实际上就是跟随蜂这实际上属于招募蜜蜂的行为。

当引领峰寻找了多次蜜源后,发现再也找不到吃起来更香的蜜源后,引领峰说话的信服力会降低,于是跟随蜂也逐渐不相信引领峰传递的信息。

引领峰转变角色,做回侦察蜂。直到再次找到高质量的蜜源后,再做回引领峰,这实际上属于放弃蜜源的行为。

综上,蜂群实现群体智慧的最小搜索模型包括蜜源引领蜂跟随蜂侦察蜂共4个组成要素,以及招募蜜蜂放弃蜜源2种基本的行为。

#步骤

1)初始化各蜜源 ; 设定参数数量、侦察蜂搜索阈值以及最大迭代次数;
2)为蜜源分配一只引领蜂,在范围内进行随机搜索,产生新蜜源 ;
3)依据适应度评价函数,根据贪婪选择的方法确定保留的蜜源;
4) 轮盘赌计算引领蜂找到的蜜源被跟随的概率;
5)跟随峰采用与引领蜂相同的方式进行搜索,根据贪婪选择的方法确定保留的蜜源;
6)判断蜜源是否满足被放弃的条件。如满足,对应的引领蜂角色变为侦察蜂,否则直接转到8);
7)侦察蜂根据式(4)随机产生新蜜源;
8)判断算法是否满足终止条件,若满足则终止,输出最优解,否则转到2

#多无人机轨迹规划约束

#算法步骤
① 初始化初值,并对于不同长度的路径确定不同数量的节点数使节点大致呈均匀分布
② 产生蜜源,计算适应度
③ 开采蜜源,贪婪算法求解
④ 如果一个蜜源经过多次开采没被更新,超过了预定阈值 limit ,那么需抛弃这个蜜源,启动探索蜂阶段
⑤ 最大迭代次数求最优适应度,求解下一个节点
⑥ B 样条平滑处理

|------------|-----------------|
| 蜂群采蜜行为 | 无人机代价函数优化问题 |
| 蜜源位置 | 可行路径节点的坐标值 |
| 蜜源的收益度大小 | 可行路径节点坐标的质量 |
| 寻找蜜源与采蜜的速度 | 无人机代价函数的求解速度 |

##仿真

代码结果:

distance_min =

264.8229

204.0834

318.8194

291.2678

routes_distance =

265.1149

211.3959

363.0191

309.3624

time_plan =

8.8372

26.8372

35.8372

17.8372

V_plan =

30.0000

7.8770

10.1297

17.3437

代码链接GitHub - promising76/abc-UAVplanning

部分代码如下:

Matlab 复制代码
clc
close all
clear all
%================================��������=============================================%
global boundary setstart setfinal node delta_H danger_xi danger_yi danger_zi danger_ri weight;
%node=12;%���յ��������ʼ�㵽�յ�Ľڵ����(ż��)
L_FEN=26;%���ýڵ��ļ������
delta_H=[20 40];%���(���)�߶ȡ����й�����͸߶�
danger_xi=[207.1 393.9];%�������������                
danger_yi=[333.3 414.1];
danger_zi=[389.9 349.2];
danger_ri=[0 0];%������в�뾶
weight=[1 0.01 0.3];%·�����ȡ������߶ȡ��н���ռȨ��
boundary=[500 0];%���û���������
setfinal=[291.8 219.8 492.4];%�����յ�
setstart_ALL=[176.8 237.4 254.5;%������㣬����Ϊ���˻�1��2��3...
             161.6 363.6 429;
             454.5 146.5 228.2;
             393.9 308.1 234.3];          
Vmin=3;%�������˻������ٶȷ�Χ��m/s��
Vmax=30;
Ways=2;%Ways=1ʱ��ʵ��ͬʱ��ɣ�ͬʱ����Ŀ�ꣻWays=2ʱ��ʵ��ָ��˳�����ε���Ŀ��
Order=[1 4 2 3];%���˻�����˳��
interval=9;%���˻�������ʱ�䣨s��
%====================================================================================%       
lineX=size(setstart_ALL,1);
相关推荐
海砥装备HardAus5 小时前
大载重工业吊运无人机动力学耦合与负载抑制底层控制技术
无人机·pid·工业无人机
YOLO数据集集合8 小时前
无人机航拍桥梁巡检数据集 | 桥梁结构缺陷检测 深度学习目标检测数据10338期
深度学习·yolo·目标检测·计算机视觉·无人机
海砥装备HardAus8 小时前
工业重载吊运无人机:载荷摆动产生机理与主流抑摆控制方案详解
无人机·pid·加速度·大载重无人机
小O的算法实验室10 小时前
2024年IEEE IOTJ,面向地形覆盖任务的无人机多回路路径规划
无人机
YOLO数据集集合1 天前
无人机航拍街道巡检数据集 | 空中视角车辆检测、交通流量统计、违停识别、智能交通YOLO数据集10399期
深度学习·yolo·目标检测·无人机
渡之1 天前
GeoBridge 深度解析:语义锚定多视图基础模型,重塑无人机跨视角地理定位
深度学习·算法·动态规划·无人机
YOLO数据集集合1 天前
智慧林业航拍图像数据集 | 树木目标检测、病虫害识别、AI林业监测数据集10282
人工智能·深度学习·目标检测·计算机视觉·无人机
中讯慧通1 天前
微型无人机通信模块:低空链路核心,保障飞行与传输全程稳定
服务器·人工智能·机器人·无人机
GIS数据转换器2 天前
基于3D GIS的监控视频精准标定平台
人工智能·物联网·3d·音视频·无人机·知识图谱
无人机长了一个脑袋2 天前
无人机电调
无人机