当前位置:   article > 正文

路径规划 | RRT结合APF算法快速探索随机树结合人工势场法的路径规划算法(Matlab)

路径规划 | RRT结合APF算法快速探索随机树结合人工势场法的路径规划算法(Matlab)

目录

  • 效果一览
  • 基本介绍
  • 程序设计
  • 参考文献

效果一览

在这里插入图片描述
在这里插入图片描述

基本介绍

RRT结合APF算法的matlab代码。地图为可以替换的栅格地图。代码是在复现华中科技大学发表的英文论文的基础上的进一步改进。RRT算法。人工势场算法。
1.原论文方法简介:针对快速探索随机树(RRT)路径规划算法存在的随机抽样和效率低等问题,提出了一种结合人工势场法(APF)的改进算法。该方法首先在基本 RRT 算法的随机树扩展步骤中引入概率值,加快随机树向目标节点的收敛速度,并在随机树中加入引力成分,引导随机树向目标点生长,加快搜索过程。在障碍物周围建立斥力场,限制障碍物之间的搜索区域,减少路径的随机性。
2.本代码在复现原论文方法的基础上进一步改进。代码删除了RRT算法产生的大量冗余节点,生成更短且更合理的路径。红色路径为未删除冗余节点的路径。绿色路径为最终的路径。
3.代码还附带一份创建地图矩阵的代码。

在这里插入图片描述

程序设计

  • 完整源码和数据私信博主回复RRT结合APF算法快速探索随机树结合人工势场法的路径规划算法(Matlab)
clc;clear;close all;
% Experimental result parameters
% Ll = Path length; Tt = Time; Node = Number of nodes
% All_Iterations = Iterations
Ll = []; Tt = []; Node = []; Cut_L=[]; All_Iterations = []; 

%-------------------------------------
load MAP.mat;     %这里可以替换为自己的地图矩阵
m = size(MAP,1);
n = size(MAP,2);

global obs
global obs_new
obs_index=[];
for index=1:m*n
    if ~MAP(index)
        obs_index(end+1)=index;
    end
end
for k=1:length(obs_index)
   [x,y]=ind2sub(size(MAP), obs_index(k)); 
   obs(k,1)=x;
   obs(k,2)=y;
end

obs = [obs(:,2),m-obs(:,1)];

obs = obs*1000/m;

obs(:,3) = 1000/m;
obs(:,4) = 1000/m;
%-------------------------------------


for j=1:1:2      % 运行次数
    % 设置参数
    p=0.3;                  % 模板偏差概率
    start_pose =[0,0];      % 起点
    global goal_pose;
    goal_pose = [999,999];  % 目标点
    global step;
    step = 20;              
    global kp;              % 引力系数
    kp=1;
    global p0;              % 斥力最大作用范围
    p0 = 250;
    global krep;            % 斥力系数
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

参考文献

[1] 基于人工势场结合快速搜索树APF+RRT实现机器人避障规划附matlab代码
[2] 基于蚁群算法求解栅格地图路径规划问题matlab源码含GUI

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/436248
推荐阅读
相关标签
  

闽ICP备14008679号