• 基于人工蜂群算法的新型概率密度模型的无人机路径规划(Matlab代码实现)


    目录

    1 概述

    1.1研究背景

    2 运行结果

    3 Matlab代码实现

    4 结语

    5 参考文献


    1 概述

    文章提出一种基于人工蜂群算法的非确定性双向规划机制搜索算法。首先针对不同场景,采用两种方法进行环境建模;其次,结合非确定性搜索机制引入双向规划方法,对人工蜂群算法中食物的产生方式做出改进,优化下一个节点的产生结果,再提出一种新的方法对已产生路径进行优化;最后研究了多无人机协同路径规划的两种模型:不同的起点起飞,同时到达 同一终点,或按照指定顺序和时间间隔依次到达同一终点,并给出若干实验仿真。仿真结果显示,算法简单快速,能满足无人机执行不同任务的需要,易于工程实现。

    1.1研究背景

    在当今世界,随着智能化自主化研究的不断深入,无人机作为航空领域的标志性成果之一,得到了更加广泛深入的研究,而关于无人机的可行性路径的规划更是一大研究热门,对路径规划的研究始于20世纪60年代,国内外学者提出了大量的路径规划算法,包括A*算法、Voronoi图算法引、动态规划方法、仿生学算法等。

    由于路径规划问题具有高时间复杂度,所以问题的求解时间会随着问题的规模呈指数型增长,尤其在复杂环境或者搜索空间比较大的情况下,上述所有算法的计算成本会急剧增加。由此,本文提出了一种新的基于人工蜂群算法(Artificial Bee Colony,ABC)的非确定性和双向搜索机制结合的规划算法,用于无人机路径规划。

    人工蜂群算法由土耳其学者Karaboga于2005年提出, 是通过模拟蜜蜂群体寻找优良蜜源的行为方式解决实际工程优化问题的仿生智能计算方法,由于其在优化方面的高效性能,人工蜂群算法自提出以来得到了众多学者的极大关注,随着研究的不断深入,人工蜂群算法得到不断的改进, 应用的领域也越来越广。

    同时,本文综合考虑多无人机群的任务和任务区域的特点,合理构建了多UAV机群执行任务的问题模型,将以上提到的方法应用于多无人机群的路径规划问题的研究中,初步实现多无人机的协同规划的两种模型。

    2 运行结果

     

    3 Matlab代码实现

    global radar1
    global radar2
    global R
    % radar1 = [350 105 305 105 175 245 415 480 40 470];
    % baili = size(radar1,2);
    % radar2 = [200 0 -150 110 110 110 0 110 100 -50];
    % R = [140 70 150 30 25 25 25 90 40 30];


    radar1 = [100 200 300 400 150 250 350 150 250 350 0 466 250 250 466 30];
    baili = size(radar1,2);
    radar2 = [0 0 0 0 50 50 50 -50 -50 -50 40 40 -300 300 -40 -20];
    R = [40 40 40 40 40 40 40 40 40 40 20 20 260 277 20 30];
    %------给定初始化条件----------------------------------------------
    c1=1.4962;             %学习因子1
    c2=1.4962;             %学习因子2
    w=0.7298;              %惯性权重
    runtime =1;
    MaxDT=1000;            %最大迭代次数
    storeer = zeros(runtime,MaxDT);
    Pbest = zeros(MaxDT,1);
    D=30;                  %搜索空间维数(未知数个数)
    N=40;                  %初始化群体个体数目
    ub=ones(1,D).*100; %/*lower bounds of the parameters. */
    lb=ones(1,D).*-50;%/*upper bound of the parameters.*/
    for r=1:runtime
        
    %------初始化种群的个体(可以在这里限定位置和速度的范围)------------
    Range = repmat((ub-lb),[N 1]);
    Lower = repmat(lb, [N 1]);
    Foods = rand(N,D) .* Range + Lower;
    x = Foods;
    Foods = rand(N,D) .* Range + Lower;
    v = Foods;
    %------先计算各个粒子的适应度,并初始化Pi和pg----------------------
    for i=1:N
        p(i)=fitness(x(i,:));
        y(i,:)=x(i,:);
    end


    4 结语

    本文给出了一种基于改进人工蜂群算法的航路规划方法实现。该方法将规划空间的预处理和人工蜂群算法相结合,通过建立地形安全曲面和量化威胁信息,简化规划空间。在传统人工蜂群算法的基础上,改进了算法中食物产生的方式,将航迹规划分解为各节点的规划,并引入双向规划机制,大大提高了产生航迹的质量。同时应用我们给出的路径规划算法,对多无人机的两种协同模型做出初步实现,仿真结果表明,算法可以快速规划出满足约束条件的三维航路,并能有效实现多无人机的初步协同,具有较强的工程可实现性。.

    5 参考文献

    [1]夏瑞,赵磊,吴书宇,李军.基于人工蜂群算法的无人机协同路径规划[J].无线互联科技,2018,15(13):13-21.

    部分理论来源于网络,如有侵权请联系删除。

  • 相关阅读:
    【PRIVGUARD-privguard-artifact-main】代码学习(parser部分)
    Windows Server 2012 R2修复CredSSP 远程执行代码漏洞(CVE-2018-0886)
    理解ELMo 模型
    【MySQL】 Java的JDBC编程
    c++ qt 渐变
    webrtc学习--websocket服务器
    Django auth 应用模块
    解决ASP.NET Core在Task中使用IServiceProvider的问题
    CoreWCF 1.0.0 发布,微软正式支持WCF
    Java --- Spring6前的程序问题
  • 原文地址:https://blog.csdn.net/m0_73907476/article/details/127408915