【MATLAB例程】无人机三维路径规划|A*,RRT(快速随机树算法), APF(人工势场法)算法对比|可自定义起终点、障碍物坐标。附下载链接

【MATLAB例程】无人机三维路径规划|A*,RRT(快速随机树算法), APF(人工势场法)算法对比|可自定义起终点、障碍物坐标。附下载链接
在这里插入图片描述
针对无人机在三维复杂环境中的自主路径规划问题,本文选取了三种具有代表性的规划方法进行对比分析,分别为 A* 算法、快速扩展随机树(Rapidly-exploring Random Tree, RRT) 算法以及 人工势场法(Artificial Potential Field, APF)。三种算法在搜索机理、适用场景及规划性能方面各具特点,具有较强的互补性。
完整代码压缩包解压后,直接用MATLAB运行主函数即可。

文章目录

程序介绍

A* 算法

A* 算法是一种基于启发式搜索的确定性路径规划方法,通常在离散化的栅格空间中工作。该算法通过构造代价函数
f ( n ) = g ( n ) + h ( n ) f(n)=g(n)+h(n) f(n)=g(n)+h(n)
在保证搜索最优性的同时提升搜索效率,其中g(n)表示从起点到当前节点的累计代价,h(n)为当前节点到目标点的启发式估计代价。
在三维路径规划问题中,A* 算法能够在已知环境下稳定地搜索到一条全局最优或次优路径,路径质量高、可重复性强,常作为路径规划算法性能评估的基准方法。但其计算复杂度随空间维度和分辨率快速增长,对环境建模和存储资源要求较高。

RRT 算法

RRT(Rapidly-exploring Random Tree)算法是一种基于随机采样的增量式路径规划方法,主要面向高维连续空间的可行路径搜索问题。该算法通过在状态空间中随机采样,并不断向采样点方向扩展搜索树,从而快速覆盖可行空间并寻找从起点到目标点的连通路径。
在三维无人机路径规划场景下,RRT 算法具有较强的全局探索能力和环境适应性,尤其适合障碍物分布复杂或空间维度较高的情况。然而,由于其随机性特征,RRT 生成的路径通常并非最优,路径平滑性较差,规划结果在不同运行中存在一定差异。

人工势场法(APF)

人工势场法是一种基于连续空间建模的实时路径规划方法,其核心思想是将目标点视为产生吸引势场的源,将障碍物视为产生斥力势场的源,无人机在合力作用下沿势场梯度方向运动。
该方法计算结构简单、实时性强,适合对计算资源和响应速度要求较高的无人机在线规划任务。但在复杂障碍环境中,人工势场法容易陷入局部极小点,缺乏全局最优性和完备性保障,通常需要与随机扰动或全局规划方法结合使用。

综合对比分析

总体而言,A* 算法在路径最优性和稳定性方面表现突出,适合已知环境下的全局规划;RRT 算法在高维复杂空间中具有良好的可行性和扩展能力,适合快速获得可行路径;人工势场法则在计算效率和实时性方面具有优势,适用于局部路径调整与在线避障。通过在统一三维仿真环境下对三种算法进行对比,可以直观地分析不同规划策略在路径质量、计算复杂度及适用场景方面的差异,为无人机路径规划算法的选择与改进提供参考依据。

代码运行结果

规划的路径对比:

在这里插入图片描述


高度剖面:

在这里插入图片描述

命令行截图:

在这里插入图片描述


XoY投影对比:

在这里插入图片描述

MATLAB代码

主函数:

%% 无人机三维路径规划A*, RRT, APF% 作者:matlabfilter% 2026-01-26/Ver1 clear; clc; close all;rng(0);%% ========== 环境参数 ========== mapSize =[40,40,30];% 三维空间尺寸 start =[2,2,2];%起点坐标 goal =[35,35,18];%终点坐标% 障碍物位置定义 [顶点x y z,长宽高dx dy dz] obstacles =[15151101010;3010181512;20211532];%% 路径规划%A* [pathA, lenA]=Astar3D(start, goal, mapSize, obstacles);%RRT [pathR, lenR]=RRT3D(start, goal, mapSize, obstacles);% ===APF[pathP, lenP]=APF3D(start, goal, obstacles, mapSize);%% ========== 统一绘图 ========== figure; hold on; grid on;xlabel('X');ylabel('Y');zlabel('Z');title('UAV三维路径规划对比');view(3);% 障碍物fori=1:size(obstacles,1)drawCuboid(obstacles(i,:));end% 起点终点plot3(start(1),start(2),start(3),'go','MarkerSize',8,'LineWidth',2,'DisplayName','起点');plot3(goal(1),goal(2),goal(3),'ro','MarkerSize',8,'LineWidth',2,'DisplayName','终点');% 路径plot3(pathA(:,1),pathA(:,2),pathA(:,3),'b-','LineWidth',2,...'DisplayName','A*');plot3(pathR(:,1),pathR(:,2),pathR(:,3),'m--','LineWidth',2,...'DisplayName','RRT');plot3(pathP(:,1),pathP(:,2),pathP(:,3),'k-.','LineWidth',2,...'DisplayName','APF');legend('Location','best');% xlim([0 mapSize(1)]); ylim([0 mapSize(2)]); zlim([0 mapSize(3)]);%% 路径长度输出fprintf('\n路径长度比较:\n');fprintf('A* : %.2f\n', lenA);fprintf('RRT : %.2f\n', lenR);fprintf('APF : %.2f\n', lenP);

完整代码:
https://download.ZEEKLOG.net/download/callmeup/92590826

或:

Read more

OpenClaw 龙虾 AI 模型配置教程

我给你做最细、零基础、照着点就能配好的「OpenClaw 龙虾 + 国内AI大模型」配置教程,只讲你现在能用的:通义千问(阿里)、文心一言(百度)、DeepSeek,这三个国内最稳、最好用。 一、先打开龙虾控制面板(第一步必做) 1. 打开 管理员 PowerShell 2. 输入这条命令,按回车: openclaw-cn dashboard 1. 电脑会自动弹出浏览器 2. 打开的就是:http://127.0.0.1:18789 3. 这就是龙虾的后台控制页,后面所有配置都在这里做。 二、所有模型通用配置路径(记住这个流程) 1. 左边菜单栏点 Models(模型) 2. 右上角点 Add

Agent实习模拟面试之Dify + Skill本地部署大模型智能体:从零构建企业级可落地的AI Agent系统

Agent实习模拟面试之Dify + Skill本地部署大模型智能体:从零构建企业级可落地的AI Agent系统 摘要:本文以一场高度仿真的Agent实习生岗位模拟面试为载体,聚焦当前热门的低代码Agent开发平台 Dify 与 自定义Skill(技能)机制,深入探讨如何在完全本地化环境中部署一个安全、可控、可扩展的大模型智能体(Agent)。通过“面试官提问—候选人回答—连环追问”的对话形式,系统性地拆解了Dify的核心架构、Skill插件开发、本地大模型集成(如Llama-3、Qwen)、RAG优化、权限控制、监控告警等关键环节,并结合企业实际场景(如内部知识问答、自动化办公)给出完整落地路径。全文超过9500字,适合对AI Agent开发、私有化部署、企业智能化转型感兴趣的工程师、架构师与在校学生阅读。 引言:为什么企业需要“本地部署的Dify + 自定义Skill”? 在2024–2026年的大模型应用浪潮中,一个显著趋势是:企业不再满足于调用公有云API,而是强烈要求数据不出域、模型可审计、能力可定制的私有化Agent解决方案。

AI赋能钱包开发:让快马智能生成imToken生态的合约交互与监控脚本

今天想和大家分享一个超实用的开发经验:如何用AI辅助完成imToken生态下的智能合约交互开发。作为一个经常和区块链打交道的开发者,我发现用InsCode(快马)平台的AI功能可以大幅提升开发效率,特别是处理那些重复性高的合约交互代码时。 1. 智能合约交互代码生成最近在开发一个需要与ERC20代币交互的DApp时,我让快马平台的AI帮我生成基础交互代码。只需要简单描述需求,它就能输出完整的ethers.js实现代码,包含代币基本信息查询、余额查询和授权功能。最让我惊喜的是,AI会自动在关键位置添加安全注释,比如:这些安全提示对新手特别友好,能避免很多低级错误。 * 授权额度检查提醒 * 合约地址验证提示 * 交易确认建议 2. 监控脚本自动化另一个实用场景是生成代币大额转账监控脚本。我只需要告诉AI监控需求(比如监控特定地址的USDT大额转账),它就能生成完整的Python实现,包括:脚本可以直接在服务器运行,省去了从零开始写的时间。 * WebSocket连接配置 * 交易过滤逻辑 * 邮件通知集成 3. 开发效率提升技巧经过

通义灵码超全使用教程:从安装到实战,AI 编程效率拉满

通义灵码超全使用教程:从安装到实战,AI 编程效率拉满

前言 作为阿里云推出的智能编码助手,通义灵码凭借代码智能生成、智能问答、多文件批量修改、编程智能体等核心能力,能让开发者从重复编码中解放,专注于技术设计,目前百万开发者在用,企业端 AI 代码生成占比超 25%,研发效率平均提升 10%+lingma.aliyun.com。本文结合阿里云官方文档和实际实操经验,用通俗易懂的方式讲清通义灵码的安装、核心功能使用、实战技巧和常见问题解决,新手也能快速上手,让 AI 真正成为你的编程搭子! 一、通义灵码基础认知 1. 核心能力 通义灵码的核心能力围绕「提效」展开,四大核心模式覆盖编码全流程: * 代码补全:秒级生成行 / 函数级代码、单元测试,支持注释生成代码,跨文件感知上下文; * 智能问答:不用离开 IDE,解决编码难题、排查报错,还支持图片多模态问答(贴截图就能解问题); * 文件编辑:精准实现多文件批量修改,支持迭代和快照回滚,