线性二次型问题

  • 线性二次型问题:系统为线性系统,性能指标为状态变量与控制变量的二次型函数,这类系统的最优控制问题。
  • 主要内容:最优状态调节、最优输出调节和最优跟踪,其中,最优输出调节问题和最优跟踪问题可以化为最优状态调节问题。
  • 特点:
    1)应用广泛,可应用于工作在小信号条件下的非线性系统;
    2)控制规律是状态变量的线性函数。
    3)具有良好的频域特性,可实现极点最优配置

一、线性二次型问题

问题描述:线性时变系统的动态方程为
线性最优 python 线性最优调节器_控制器(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕) 𝒙(线性最优 python 线性最优调节器_仿真器_02)=线性最优 python 线性最优调节器_仿真器_03
𝒚(𝒕)=𝑪(𝒕)𝒙(𝒕) 其中,𝒙(𝑡)n维, 𝒖(𝑡)m维, y(𝑡)l维
假设控制向量𝒖(𝑡)不受约束 ,用𝒚_𝑙 (𝑡)表示期望输出,
则误差向量为𝒆(𝑡)=线性最优 python 线性最优调节器_线性最优 python_04(𝑡)−𝒚(t)
指标泛函: 线性最优 python 线性最优调节器_matlab_05
线性最优 python 线性最优调节器_仿真器_02线性最优 python 线性最优调节器_仿真器_07固定,求最优控制𝒖^∗ (𝒕),使性能指标有最小值。
此问题称线性二次型性能指标的最优控制问题

线性二次型问题的本质:
用不大的控制,来保持较小的误差,以达到能量和误差综合最优的目的。
线性二次型问题的三种重要情形:
线性最优 python 线性最优调节器_控制器(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕)
𝒚(𝒕)=𝑪(𝒕)𝒙(𝒕)
𝒆(𝒕)=线性最优 python 线性最优调节器_线性最优 python_04

1.状态调节器问题 𝑪(𝒕)=𝑰 线性最优 python 线性最优调节器_线性最优 python_04(𝒕)=𝟎 𝒚(𝒕)=𝒙(𝒕)=−𝒆(𝒕)
线性最优 python 线性最优调节器_控制器_11
当系统受扰偏离平衡状态时,要求系统产生控制向量,使指标极小,即,使𝒙(𝒕)始终保持在平衡点附近。

2.输出调节器问题 线性最优 python 线性最优调节器_线性最优 python_04(𝒕)=𝟎 𝒚(𝒕)=−𝒆(𝒕)
线性最优 python 线性最优调节器_仿真器_13
当系统受扰偏离平衡状态时,要求系统产生控制向量,使指标极小,即,使系统输出𝒚(𝒕)始终保持在平衡点附近。

3.跟踪问题 线性最优 python 线性最优调节器_线性最优 python_14 线性最优 python 线性最优调节器_控制器_15
线性最优 python 线性最优调节器_线性最优 python_16
使系统实际输出𝒚(𝒕)始终跟随𝒚_𝒍 (𝒕) 变化

二、状态调节器问题

应用举例:电网电压控制;温度控制;压力控制等。
目的:保持系统状态在平衡状态附近;(通常取“零状态”为平衡状态)

  • 有限时间状态调节器
    问题描述:设线性时变系统的状态方程为:
    线性最优 python 线性最优调节器_线性最优 python_17(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕),𝒙(线性最优 python 线性最优调节器_控制器_18)=线性最优 python 线性最优调节器_matlab_19
    假设控制向量𝒖(𝒕)不受约束 ,求最优控制线性最优 python 线性最优调节器_线性最优 python_20 (𝒕),使系统的二次型性能指标取极小值:
    线性最优 python 线性最优调节器_控制器_21
    权矩阵:𝑭=线性最优 python 线性最优调节器_控制器_22; 𝑸(𝒕)=线性最优 python 线性最优调节器_仿真器_23;𝑹(𝒕)=线性最优 python 线性最优调节器_matlab_24 (𝒕)>𝟎,线性最优 python 线性最优调节器_最优控制_25固定且线性最优 python 线性最优调节器_最优控制_25≠∞。
    物理意义:以较小的控制能量为代价,使状态保持在零值附近。
    黎卡提方程
    线性最优 python 线性最优调节器_matlab_27
    边界条件 线性最优 python 线性最优调节器_仿真器_28
    最优轨线线性最优 python 线性最优调节器_控制器_29 (𝒕)是满足下列线性向量微分方程的解:
    线性最优 python 线性最优调节器_matlab_30
    线性最优 python 线性最优调节器_matlab_31
  • 无限时间状态调节器
  • 问题描述:设线性时变系统的状态方程为:
    线性最优 python 线性最优调节器_线性最优 python_32(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕) 线性最优 python 线性最优调节器_matlab_33 假设控制向量𝒖(𝒕)不受约束 ,求最优控制u^* (𝒕) ,使系统的性能指标取极小值:
    线性最优 python 线性最优调节器_matlab_34
    定理:对于无限时间时变状态调节器问题,若{𝑨(𝒕),𝑩(𝒕)}完全可控,则存在唯一的最优控制:线性最优 python 线性最优调节器_仿真器_35
    最优性能指标为:线性最优 python 线性最优调节器_仿真器_36
    线性最优 python 线性最优调节器_matlab_37,是对称的,非负的。
    𝑷(𝒕)是如下黎卡提方程的唯一解,且𝐏(线性最优 python 线性最优调节器_线性最优 python_38)=𝟎:
    线性最优 python 线性最优调节器_线性最优 python_39
    关于定理需要注意的问题:
    1.要求系统完全能控。(保证最优解的存在)
    2.F=0,人们所关心的总是系统在有限时间内的响应,不考虑终点指标;
    3.线性最优 python 线性最优调节器_线性最优 python_40是时变的矩阵,最优控制律是时变的。
  • 问题描述:设线性定常系统的状态方程为:
    线性最优 python 线性最优调节器_线性最优 python_17(𝒕)=𝑨𝒙(𝒕)+𝑩𝒖(𝒕) 线性最优 python 线性最优调节器_最优控制_42假设控制向量𝒖(𝒕)不受约束 ,求最优控制u^* (𝒕) ,使系统的性能指标取极小值:
    线性最优 python 线性最优调节器_仿真器_43
    𝑸——非负定对称阵;𝑹——正定对称阵
    定理:对于无限时间定常状态调节器问题,若对于任意矩阵𝑫有线性最优 python 线性最优调节器_最优控制_44线性最优 python 线性最优调节器_最优控制_45是如下黎卡提矩阵代数方程的解:
    线性最优 python 线性最优调节器_控制器_46
    则, {𝑨,𝑫}完全可观的充要条件是:线性最优 python 线性最优调节器_最优控制_45是正定对称矩阵

定理:对于无限时间定常状态调节器问题,若{𝑨(𝒕),𝑩(𝒕)}完全可控, {𝑨,𝑫}完全可观,线性最优 python 线性最优调节器_控制器_48, 𝑫任意,则存在唯一的最优控制线性最优 python 线性最优调节器_仿真器_49
最优性能指标为: 𝑱^∗=𝟏/𝟐 〖𝒙_𝟎〗^𝑻 𝑷 ̅ (𝒕_𝟎)𝒙_𝟎,
线性最优 python 线性最优调节器_仿真器_50是正定对称矩阵,是黎卡提矩阵代数方程线性最优 python 线性最优调节器_matlab_51唯一的解。
最优轨线线性最优 python 线性最优调节器_控制器_52是方程线性最优 python 线性最优调节器_最优控制_53的解。

三、 MATLAB仿真

  • 有限时间状态调节器

    线性最优 python 线性最优调节器_控制器_54,初始条件线性最优 python 线性最优调节器_matlab_55
    性能指标 线性最优 python 线性最优调节器_matlab_56
    线性最优 python 线性最优调节器_仿真器_57
A=[0 1;0 0];
B=[0;1];
C=eye(2); %单位阵函数
D=[0;0];
Q=diag([1 0]); %对角阵函数
R=1;
K=lqr(A,B,Q,R); %二次型状态调节器设计
initial(ss(A-B*K,B,C,D),[1,0]) %由初始状态引起的零输入响应

线性最优 python 线性最优调节器_控制器_58

  • 无限时间状态调节器

  1. 已知系统状态方程表达式为:
    线性最优 python 线性最优调节器_matlab_59,线性最优 python 线性最优调节器_最优控制_60
    系统二次型性能指标为:线性最优 python 线性最优调节器_控制器_61
    线性最优 python 线性最优调节器_仿真器_62 线性最优 python 线性最优调节器_最优控制_63
A=[0 1 0;0 0 1;-3 -5 -5];
B=[0;0;1];
C=[1 0 0];
D=0;
Q=[100 0 0;0 1 0;0 0 1];
R=1;
K=lqr(A,B,Q,R);
Ac=A-B*K;
Bc=B*K;
Cc=C;
Dc=D;
e=eig(Ac)

线性最优 python 线性最优调节器_线性最优 python_64


2.

已知系统状态方程表达式为:
线性最优 python 线性最优调节器_线性最优 python_65,线性最优 python 线性最优调节器_线性最优 python_66
采用输出反馈控制律𝒖(𝒕)=−𝑲𝒚(𝒕),系统二次型性能指标为:
线性最优 python 线性最优调节器_线性最优 python_67
线性最优 python 线性最优调节器_最优控制_68,线性最优 python 线性最优调节器_线性最优 python_69;试求最优控制的反馈增益矩阵𝑲使性能指标达到最小值。

A=[0 1 0;0 0 1;0 -2 -3];
 B=[0;0;1]; C=[1 0 0]; D=0;
 Q=diag([100]);
 R=1;
 [K,P,r]=lqry(A,B,C,D,Q,R)
 t=0:0.1:10;
figure(1);step(A-B*K,B,C,D,1,t)
figure(2);step(A,B,C,D,1,t)

线性最优 python 线性最优调节器_线性最优 python_70


线性最优 python 线性最优调节器_仿真器_71