线性二次调节器(LQR)
线性二次调节器(LQR)
线性二次调节器(Linear Quadratic Regulator 或LQR)是基于模型的控制器,它使用车辆的状态来使误差最小化。
Apollo使用LQR进行横向控制。横向控制包含四个组件:
- 横向误差、
- 横向误差的变化率、
- 朝向误差
- 朝向误差的变化率。
变化率与导数相同,我们用变量名上面的一个点来代表。我们称这四个组件的集合为X,这个集合X捕获车辆的状态。除了状态之外,
该车有三个控制输入: - 转向
- 加速
- 制动
我们将这个控制输入集合称为U。
LQR原理
LQR处理线性控制,这种类型的模型可以用等式来表示(详见下图)。x(上方带点)=Ax+Bu,x(上方带点)向量是导数,或X向量的变化率。所以x点的每个分量只是x对应分量的导数。等式x点=Ax+Bu,该等式捕捉状态里的变化,即x点是如何受当前状态 x 和控制输入 u 的影响的。
这个等式是线性的,因为我们用∆x来改变x时,并用∆u来改变u