最优控制问题

  控制算法LQR与MPC中涉及到最优控制,最优控制是解决控制问题的基础,是了解控制目标的核心。最优控制需要了解到状态控制方程,控制器的设计等等。

  最优控制(Optimal Control):在约束条件(比如方向盘转角的限制)下达到最优的系统表现。

  用数学的方式描述最优化问题,如上图控制器就是要设计的内容,设计的控制器能够得到使得输入误差减小的控制量u,然后通过系统的状态空间方程\dot{X}=AX+BU能够得出施加控制量u之后系统的状态变量该是多少(比如车的方向盘转角),然后建立输出y与状态变量(比如车的方向盘转角)的关系(比如Y=CX)得到输出的位置再传回目标位置得到误差e。

  对于单输入单输出系统(SISO)来说,可以建立目标代价函数J=\int_{0}^{t}(qe^{2}+ru^{2})dt;对于多输入多输出系统(MIMO)来说,可以建立目标代价函数J=\int_{0}^{t}(E^{T}QE+U^{T}RU)dt。从轨迹追踪的角度去分析,设计的控制器可以使得系统跟踪能力非常强;从输入的角度来说,总体来说的输入越小,对于物理条件来说能耗就是最低的,可以用很小的能耗达到系统的表现。

  最优化的过程就是设计一个控制器(输入误差e输出控制量u)使得代价函数J取得最小值,即实际问题就是追踪上目标位置。q/Q 和 r/R 是可以调节的参数,如果把 q/Q 设计的比 r/R 大很多,就说明在做最优化的过程中更加看重误差e,如果让 r/R 比 q/Q 大很多,就说明在最优化的过程中就更加看重输入u。

  来看一个二维系统,系统的状态变量是二维的,系统的输出也是二维的:

\frac{d}{dt}\begin{bmatrix} x_{1}\\ x_{2} \end{bmatrix}=A\begin{bmatrix} x_{1}\\ x_{2} \end{bmatrix}+B\begin{bmatrix} u_{1}\\ u_{2} \end{bmatrix}

\begin{bmatrix} y_{1}\\ y_{2} \end{bmatrix}=\begin{bmatrix} x_{1}\\ x_{2} \end{bmatrix}

\begin{bmatrix} r_{1}\\ r_{2} \end{bmatrix}=\begin{bmatrix} 0\\ 0\end{bmatrix}

  那么:

E=\begin{bmatrix} e_{1}\\ e_{2} \end{bmatrix}=\begin{bmatrix} y_{1}-r_{1}\\ y_{2}-r_{2} \end{bmatrix}=\begin{bmatrix} x_{1}\\ x_{2} \end{bmatrix}

E^{T}QE=\begin{bmatrix} x_{1}\\ x_{2} \end{bmatrix}^{T}\begin{bmatrix} q_{1} & 0\\ 0 & q_{2} \end{bmatrix}\begin{bmatrix} x_{1}\\ x_{2} \end{bmatrix}=q_{1}x_{1}^{2}+q_{2}x_{2}^{2}

U^{T}RU=\begin{bmatrix} u_{1}\\ u_{2} \end{bmatrix}^{T}\begin{bmatrix} r_{1} & 0\\ 0 & r_{2} \end{bmatrix}\begin{bmatrix} u_{1}\\ u_{2} \end{bmatrix}=r_{1}u_{1}^{2}+r_{2}u_{2}^{2}

  其中q_{1}q_{2}r_{1}r_{2}是权重系数。

总结:最优控制问题就是先将问题给数学化,通过问题来得到系统的状态空间方程,然后设计控制器(这个控制器就可以用LQR或者MPC)能够得到通过输入误差(系统的变量与目标变量的差)来得到控制量u,得到的控制量u能够使设计的代价函数J最小。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值