论文链接:Robust and Efficient Quadrotor Trajectory Generation for Fast Autonomous Flight
参考文章:Faster Planner——Kinodynamic Astar详解-CSDN博客
实际代价与启发代价
1.实际代价
代价函数定义为:
其中 是控制输入的平方, 是时间加权因子。
对于给定的离散化输入 和持续时间 ,EdgeCost() 为:
实际代价 表示从初始状态 到当前状态 的路径代价,假设路劲由 个原始段 Edge 组成,则
2.启发函数设计
启发函数 表示从当前状态 到目标状态 的最佳估计代价,采用庞特里亚金极小值原理,求解最优控制轨迹。根据庞特里亚金极小值原理,可以得到轨迹的解析形式(原文 项少写了一个 ):
其中 和 由边界条件确定:
以下为上面两个公式的具体推导。
2.1 系统运动方程
考虑一个三维系统,其中 ,状态 和速度 的运动方程为:
希望找到从当前状态 到目标状态 的最优轨迹。
2.2 构建哈密顿函数
首先,构建哈密顿函数 :
其中 和 为共轭变量。
2.3 应用庞特里亚金极小值原理
根据应用庞特里亚金极小值原理,在最优控制 作用下,哈密顿函数 最小。通过对 求偏导等于0求得:
2.4 状态方程和共轭方程
状态方程:
共轭方程(是通过哈密顿函数 对状态变量 和 求偏导得到的,表示共轭变量 和 随时间的变化):
(负号的存在是为了保证目标函数 最小化,我们需要考虑每个状态变量对应的哈密顿函数的变化率,并且这种变化率必须对目标函数产生正确的影响方向)
对共轭方程积分可以得到一组解(解不唯一,下面解为对应原论文公式结果):
将共轭变量代入最优控制公式 :
2.5 轨迹的解析形式
结合状态方程和最优控制结果,得到轨迹最优运动方程:
2.6 边界条件确定系数
根据边界条件:
可以确定 和 ,利用边界条件 ,轨迹满足:
将边界条件写为矩阵形式:
解方程得到系数:
2.7 启发函数
将最优控制 带入代价函数并考虑三个方向上的和,得到:
通过 对 求偏导并令其等于0,得到最优时间 :
将 作为启发函数 。
3 总代价
最终代价函数 定义为: