文章目录
- 1. 初始化参数
- 2. 构建地图
- 3. A*算法搜索路径
- 4. 路径优化
- 5. 效果图
- 6. 下载链接
可以在这里看
画仆:A星算法详解(个人认为最详细,最通俗易懂的一个版本)zhuanlan.zhihu.com
在此主要解释下代码。
1. 初始化参数
主要参数:
- 地图大小
- 起始点和目标点坐标
- clc
- clear all
- m = 30;n = 30;
- Spoint = [3 3]; %起始点坐标
- Epoint = [29 22]; %目标点坐标
2. 构建地图
-inf表示不可到达的障碍物点
- %%构建地图
- for i = 1:m+2
- if i == 1
- for j = 1:n+2
- Matrix(i,j) = -inf;
- end
- elseif i == m+2
- for j = 1:n+2
- Matrix(i,j) = -inf;
- end
- else
- for j = 1:n+2
- if ((j == 1)|(j == n+2))
- Matrix(i,j) = -inf;
- else
- Matrix(i,j) = inf;
- end
- end
- end
- end
- %%障碍
- for j=2:10
- Matrix(5,j)=-inf;
- for j=2:15
- Matrix(24,j)=-inf;
- for j=9:24
- %for j=6:24
- Matrix(10,j)=-inf;
- for j=20:31
- Matrix(15,j)=-inf;
- for j=5:20
- Matrix(20,j)=-inf;
- for j=18:27
- Matrix(28,j)=-inf;
- for i=2:6
- Matrix(i,18)=-inf;
- for i=17:20
- Matrix(i,5)=-inf;
- for i=23:25
- Matrix(i,20)=-inf;
- for i=13:17
- Matrix(i,13)=-