线性二次型最优控制器的MATLAB 实现
1. 背景
以线性二次型性能指标为基础的最优控制问题是20世50 年代末期发展起来的一种设计控制系统的方法,这种方法具计算简单,便于调整等优点,因线性二次型问题解出的控制规律可以通过状态反馈实现闭环最优控制,而成为当今控制工程领域里较为重要的设计方法之一。
最优控制问题就是寻找一个控制系统的最优控制方案或最优控制规律,使系统能最优地达到预期的目标。以状态空间理论为基础的最优控制算法是当前控制中采用最为普遍的控制器设计方法。随着航海﹑航天﹑导航和控制技术不断深入研究,系统的最优化问题已成为一个重要的问题。
本实验介绍了线性二次型最优控制的基本原理,并给定了一个具体的控制系统,利用MATLAB 软件对其最优控制矩阵进行了求解,通过仿真实验,设计所得到的线性二次型最优控制效果比较好,达到了设计的目的。
2.最优控制理论
假设线性时不变系统的状态方程模型为
x ‘(t)=Ax(t)+Bu(t)
y(t)=Cx(t)+Du(t)
引入一个最优控制的性能指标,即设计一个输入量u,使得
J=
为最小。其中Q 和R 分别为对状态变量和输入变量的加权矩阵; t f 为控制作用的终止时间。矩阵S 对控制系统的终值也给出某种约束,这样的控制问题称为线性二次型(Linear Quadratic ,简称LQ )最优控制问题。
为了求解LQ 问题,我们取Hamilton 函数
其中一种较为简便的解法为:
令λ
(t)=P(t)x(t) '(,(),(),())0.5(()()()()()())()(()()()());LQ ()(()()()());0(()()()()));()()()()();
T T T H t x t u t t x t Q t x t u t R t u t t A t x t B t u t H t Q t x t A t t H Q t x t A t t u x t A t x t B t u t λλδλλδλδλδ=+++=-=-+=+=+并应用变分原理推导出问题解满足的必要条件: