Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

ROS Motion Planning

一个仓库以 ROS 插件形式实现 40+ 种经典与学习型路径规划器

许可证

GPL-3.0

概述

ros_motion_planning 是一套全面的机器人运动规划算法合集,以 ROS 导航栈插件的形式实现:全局规划器从 A、Theta、D 和 JPS 到 RRT、Informed RRT* 和 Voronoi 规划器;局部规划器包括 DWA、TEB 风格、PID、LQR 和 MPC;曲线生成(Bezier、Dubins、Reeds-Shepp、B 样条);还有 DDPG 等基于学习的规划器。所有算法都运行在同一套 Gazebo/RViz 环境中,是在同等条件下对比规划器的独一无二的实用参考。

该仓库把数十种规划器封装在标准的 ROS nav_core 插件接口之后,任何算法都能直接放入 move_base(ROS 1)——并有配套的 ROS 2 实现——在相同的代价地图、机器人和 Gazebo 世界中测试。全局规划涵盖图搜索(Dijkstra、A、D、LPA、D Lite、Theta、Lazy Theta、JPS、GBFS)、基于采样的方法(RRT、RRT、Informed RRT、RRT-Connect)、智能/进化方法(ACO、GA、PSO)以及 Voronoi 图规划。局部规划覆盖 PID、DWA、APF、LQR 和 MPC 控制器,曲线生成模块实现了 Dubins、Reeds-Shepp、Bezier 和样条路径。基于学习的规划器(如基于 DDPG 的强化学习导航)补全了整个集合。Docker 镜像、丰富的逐算法动画以及配套的 Python 可视化仓库,使它既是优秀的课程参考,也是开发生产级规划器的起点。

为何重要

这是经典运动规划经典算法在可运行 ROS 代码中最完整的单一实现:那些在论文里通常只是伪代码的教科书算法,在这里全部跑在同一套一致的技术栈中,因此它成为导航工程师和机器人专业学生共同的首选参考。

解决的问题

公平对比路径规划器需要把每一种都实现在同一导航栈中——数月的插件工程。ros_motion_planning 已经为 40+ 种算法完成了这项工作,把规划器选型和教学变成了改改配置的事。

要点

  • 40+ 种规划器:图搜索、基于采样、进化算法、曲线生成、基于学习
  • 全部以标准 ROS 导航插件实现,可在同一套 Gazebo/RViz 环境中运行
  • 支持 ROS 1 和 ROS 2,附 Docker 镜像便于快速上手
  • 局部规划器包括 DWA、APF、PID、LQR 和 MPC 控制器
  • 配套 Python 仓库提供对应的算法可视化便于学习

适用人群

  • 为 AMR/AGV 选型规划器的导航工程师
  • 学习路径规划算法的机器人专业学生
  • 将新规划器与经典算法对比的研究人员
  • 编写运动规划课程的教育工作者

局限

  • 广度优先于深度——各规划器是参考实现,不是调优过的生产级控制器
  • GPL-3.0 许可证限制闭源复用
  • 主要面向二维轮式机器人导航(不含机械臂运动规划)

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。