
运动规划实战进阶:轨迹优化篇
文章平均质量分 97
🔥课设、毕设、创新竞赛必备!🔥本专栏涉及运动规划算法轨迹优化实战,包括:曲线生成、碰撞检测、安全走廊、优化建模(QP、SQP、NMPC、iLQR等)、轨迹优化(梯度法、曲线法等),每个算法都包含代码实现加深理解
优惠券已抵扣
余额抵扣
还需支付
¥299.90
¥399.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
Mr.Winter`
同济大学控制科学与工程硕士,机器人算法工程师,主攻机器人运动规划方向,业余丰富各种技术栈。优快云原力计划作者、官方内容合伙人;2023新星计划Pytorch赛道导师
展开
-
数值优化 | 图解线搜索之Armijo、Goldstein、Wolfe准则(附案例分析与Python实现)
线搜索是无约束优化问题中的关键算法之一。本节介绍非精确线搜索的Armijo、Goldstein、Wolfe、强Wolfe准则,并给出图例可视化不同准则的区别,最后给出非精确线搜索的Python实现与两个案例分析加深理解原创 2024-10-14 10:10:21 · 5647 阅读 · 19 评论 -
数值优化 | 图解梯度下降法与共轭梯度下降法(附案例分析与Python实现)
在复杂环境中,机器人需要寻找从起始点到目标点的最优路径。通过将路径表示为一个代价函数,梯度下降法可以用于最小化该代价,从而找到最符合期望的路径。本节从数值优化的层面介绍梯度下降法和共轭梯度法的原理、共同点和不同点,并给出基于python的案例实现加深理解原创 2024-10-21 09:20:16 · 5225 阅读 · 18 评论 -
数值优化 | 图解牛顿法、阻尼牛顿法与高斯牛顿法(附案例分析与Python实现)
牛顿法属于经典的二阶无约束优化方法,具有收敛速度快的特点。本文从一个引例出发,系统介绍牛顿迭代法、阻尼牛顿法、高斯牛顿法这三个经典的牛顿类算法,并基于Python实现,给出曲线拟合的案例进行算法的分析对比原创 2024-11-12 09:44:08 · 6948 阅读 · 16 评论 -
数值优化 | 详解拟牛顿法之SR1、DFP、BFGS、L-BFGS(附案例分析与Python实现)
为了克服牛顿法计算复杂度高的缺陷,引入拟牛顿法框架对二阶海森矩阵进行近似求解。本文串讲拟牛顿法的经典算法SR1、DFP、BFGS以及L-BFGS,并给出Python实现和案例分析加深理解原创 2024-12-09 10:05:20 · 3958 阅读 · 13 评论 -
数值优化 | 非线性最小二乘优化器Ceres安装教程与应用案例
Ceres是一个开源的 C++ 库,用于求解大规模非线性最小二乘问题。本文提供了简便的Ceres一键安装脚本,介绍了Ceres库的基本概念:非线性最小二乘、残差块、代价函数等,并给出Powell函数优化和非线性曲线拟合的案例,加深对Ceres库的应用理解,为后续基于非线性最小二乘的轨迹优化打下基础原创 2024-11-25 10:26:58 · 4022 阅读 · 25 评论 -
路径处理 | 关键点提取之Douglas–Peucker算法(附ROS C++/Python实现)
道格拉斯-普克算法(Douglas–Peucker)是一种经典的路径关键点提取算法,其基于分治思想,以采样前后路径误差最小化为目标,提取路径关键点。本文一步步图解Douglas–Peucker算法的流程,并给出ROS C++和Python实现、可视化加深理解原创 2024-09-23 10:08:21 · 4785 阅读 · 24 评论 -
碰撞检测 | 基于ROS Rviz插件的多边形碰撞检测仿真平台
在自动驾驶和机器人领域,多边形碰撞检测在保证规划控制安全性方面发挥了极大的作用。本文的目标就是基于ROS Rviz搭建一个多边形仿真平台,为后续基于多边形的碰撞检测、TTC等算法提供验证环境原创 2024-08-22 09:25:21 · 13349 阅读 · 10 评论 -
碰撞检测 | 图解视线生成Bresenham算法(附ROS C++/Python/Matlab实现)
Bresenham视线生成是一种高效的算法,用于在二维网格上绘制直线。Bresenham算法可以应用在栅格地图中进行一维碰撞检测,即检查起点和终点间直线是否穿过障碍栅格。本文图解Bresenham碰撞检测的原理,并给出ROS C++/Python/Matlab三种实现加深理解原创 2024-10-08 09:54:37 · 10719 阅读 · 31 评论 -
碰撞检测 | 详解矩形AABB与OBB碰撞检测算法(附ROS C++可视化)
矩形包围盒碰撞检测的核心原理是用矩形近似待检测物体轮廓,通过计算两个矩形间是否有重叠区域来进行碰撞判断。常用的包围形式有轴对齐包围盒(Axis-Aligned Bounding Box, AABB)以及更精细化具有角度的方向包围盒(Oriented Bounding Box, OBB)。本文详解这两种碰撞检测算法,并给出基于C++的算法实现和ROS可视化仿真案例原创 2024-09-03 10:00:57 · 8565 阅读 · 27 评论 -
碰撞检测 | 详解圆-矩形碰撞检测与N圆覆盖模型(附ROS C++可视化)
圆是碰撞检测中常用的外接图形。本文介绍机器人与自动驾驶领域常用的N圆覆盖碰撞模型,并介绍圆与矩形的一般化碰撞检测方法,给出基于C++的算法实现ROS的可视化仿真加深理解原创 2024-09-10 09:18:50 · 4456 阅读 · 23 评论 -
碰撞检测 | 图解线段几何与线段相交检测原理(附ROS C++可视化)
线段相交检测是广义多边形计算几何的基础,本文图解线段几何的常见算法,例如线段与线段相交检测(快速排斥与跨立实验);线段与圆的相交检测;线段与矩形的相交检测。通过ROS C++实现算法并辅以可视化演示加深理解原创 2024-09-18 09:20:14 · 4260 阅读 · 17 评论 -
碰撞检测 | 图解凸多边形分离轴定理(附ROS C++可视化)
凸多边形的碰撞判定可通过分离轴定理(Separating Axis Theorem, SAT)在多项式时间内完成,且无需复杂的三角剖分。本文图解分离轴定理的核心步骤:多边形判凸、计算投影轴、判断投影重叠等,并提供ROS C++的算法实现和可视化加深理解原创 2025-02-24 10:01:14 · 3291 阅读 · 15 评论 -
碰撞检测 | 1D/2D碰撞时间TTC模型理论推导(附Python实现)
碰撞时间TTC是驾驶行为研究中常用的重要概念,常用于交通流畅性和安全性分析的重要风险指标,并为轨迹规划和决策提供量化依据。本文详细推导一维和二维TTC计算模型,并给出二维车辆TTC计算Python代码加深理解原创 2024-05-20 09:18:04 · 2728 阅读 · 32 评论 -
碰撞检测 | 矩形增量膨胀安全走廊模型(附C++/Python仿真)
安全走廊在自动驾驶/机器人领域非常重要,其为轨迹优化建模提供了避障约束。本文介绍了矩形增量膨胀安全走廊的基本生成方法,并给出了C++/Python实现加深理解原创 2024-07-31 09:10:41 · 3654 阅读 · 16 评论 -
曲线生成 | 基于多项式插值的轨迹规划(附ROS C++/Python/Matlab仿真)
对路径进行多项式插值时,需要给定机器人在首末位置的位姿以及速度、加速度等微分项作为约束条件。本文介绍多项式插值曲线规划原理并进行详细推导,给出ROS C++/Python/Matlab三种仿真加深理解原创 2024-01-08 09:58:14 · 7700 阅读 · 33 评论 -
曲线生成 | 图解三次样条曲线生成原理(附ROS C++/Python/Matlab仿真)
样条是一种平滑曲线的数学表示方法。它通过连接一系列给定的数据点来构建曲线,以便在这些节点上产生平滑的过渡。本文详解三次样条曲线的生成原理,并给出ROS C++/Python/Matlab三种实现加深理解原创 2024-01-22 11:05:42 · 5028 阅读 · 28 评论 -
曲线生成 | 图解贝塞尔曲线生成原理(附ROS C++/Python/Matlab仿真)
贝塞尔曲线使用一组控制点来定义曲线的形状,这些控制点的位置和数量决定了曲线的特征,在机器人领域应用非常广泛。本文图解贝塞尔曲线生成原理并进行详细推导,给出ROS C++/Python/Matlab三种仿真加深理解原创 2024-01-15 10:42:24 · 6310 阅读 · 36 评论 -
曲线生成 | 图解B样条曲线生成原理(基本概念与节点生成算法)
为了解决贝塞尔曲线无法局部修正、控制性减弱、曲线次数过高、不易拼接的缺陷,引入B样条曲线(B-Spline)。本文介绍B样条曲线的基本概念:节点向量、支撑性、次数阶数、加权性质、节点生成算法等,为后续曲线计算打下基础。原创 2024-02-19 10:19:29 · 7715 阅读 · 0 评论 -
曲线生成 | 图解B样条曲线生成原理(附ROS C++/Python/Matlab仿真)
本文分插值和近似两个方面介绍B样条曲线的控制点计算,以及曲线生成原理,并给出ROS C++/Python/Matlab三种实现加深理解原创 2024-02-26 09:43:49 · 6139 阅读 · 35 评论 -
曲线生成 | 图解Dubins曲线生成原理(附ROS C++/Python/Matlab仿真)
Dubins曲线通常用于描述在给定转弯半径下的无人机、汽车或船只等载具的最短路径。本文图解Dubins曲线的生成原理,并给出ROS C++/Python/Matlab三种实现加深理解原创 2024-03-04 09:13:34 · 6893 阅读 · 34 评论 -
曲线生成 | 图解Reeds-Shepp曲线生成原理(附ROS C++/Python/Matlab仿真)
Reeds-Shepp曲线是一种用于描述在平面上从一个点到另一个点最优路径的数学模型,被广泛应用于路径规划和运动规划问题。本文详细介绍Reeds-Shepp曲线的48种运动模式、坐标变换原理、时间翻转-反射变换-后向变换,并提供ROS C++/Python/Matlab三种实现加深理解原创 2024-03-25 07:53:16 · 6105 阅读 · 32 评论 -
轨迹优化 | 基于Savitzky-Golay滤波的无约束路径平滑(附ROS C++/Python仿真)
Savitzky-Golay滤波器被广泛应用于信号降噪,其特点在于在滤除噪声的同时可以确保信号的形状、宽度不变。本文应用Savitzky-Golay滤波进行无约束路径平滑问题,给出了详细的Savitzky-Golay滤波卷积参数推导流程,并基于ROS C++/Python进行算法实现加深理解原创 2024-11-18 09:30:54 · 6792 阅读 · 18 评论 -
轨迹优化 | 图解欧氏距离场与梯度场算法(附ROS C++/Python实现)
距离场在运动规划中则常用于地图建模和轨迹梯度优化。本文图解欧氏距离场EDT的算法原理,并基于双线性插值给出欧氏梯度场的公式推导,并给出ROS C++和Python的算法实现加深理解原创 2024-06-17 09:29:29 · 3820 阅读 · 11 评论 -
轨迹优化 | 基于梯度下降的路径规划算法(附ROS C++/Python仿真)
基于梯度下降的路径规划算法可以通过预定义的代价势场,融合地形坡度、障碍物风险等多元约束,实现复杂环境的快速规划。本文介绍梯度下降路径规划算法的最优性原理,以及一个基于最短路径的代价势场构建案例,并提供了ROS C++和Python仿真加深理解原创 2025-03-18 09:02:35 · 4433 阅读 · 17 评论 -
轨迹优化 | 基于ESDF的共轭梯度优化算法(附ROS C++/Python仿真)
共轭梯度法的核心原理是求解优化问题的共轭向量组作为优化方向,由于优化方向间彼此正交,故每次迭代只需沿着一个方向寻优而互不影响。本文设计基于ESDF的障碍约束、曲率约束和平滑约束,基于ROS C++和Python提供了共轭梯度法的轨迹优化实践案例原创 2024-07-23 09:09:44 · 18140 阅读 · 36 评论 -
轨迹优化 | 基于贝塞尔曲线的无约束路径平滑与粗轨迹生成(附ROS C++/Python仿真)
本节介绍基于贝塞尔曲线的路径平滑算法原理,通过从路径到粗轨迹的变换将上游规划的离散路径点转为连续的多项式轨迹,为进一步的轨迹优化做准备;通过Python算法实验和进一步的ROS C++算法仿真进行验证,加深对原理的理解原创 2025-01-14 09:41:13 · 5970 阅读 · 21 评论 -
轨迹优化 | 基于ESDF的非线性最小二乘法路径平滑(附ROS C++仿真)
本文通过非线性最小二乘法的思想建模路径平滑问题,基于Ceres求解器求解,使当前路径在平滑项、曲率项和基于ESDF距离场计算的障碍项三个指标上的累计代价最小,以获得有障碍约束的优化结果。最后,通过ROS C++进行优化算法实现与可视化加深理解原创 2025-01-21 10:08:56 · 3953 阅读 · 19 评论 -
轨迹优化 | 基于LBFGS优化器的无约束路径平滑(附ROS C++仿真)
L-BFGS算法是一种用于求解大规模无约束优化问题的拟牛顿法,适用于高维轨迹优化问题求解。本文结合障碍代价、平滑代价、曲率代价设计目标函数,通过浙大LBFGS-Lite求解库进行优化求解,并基于ROS C++仿真对比验证优化前后轨迹的性能原创 2025-02-17 10:00:22 · 3085 阅读 · 6 评论