LTI连续线性时不变系统能控性证明(格拉姆判据、秩判据)

2023-10-08 23:30

本文主要是介绍LTI连续线性时不变系统能控性证明(格拉姆判据、秩判据),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、能控性和能达性

1.1、能控性和能达性的定义

能控性:如果在一个有限的时间间隔内,可以用幅值没有限制的输入作用,使偏离系统平衡状态的某个初始状态回复到平衡状态,就称这个初始状态是能控的。

能达性:系统在外控制作用下能从零状态达到状态空间中任意非零状态的一种性能。

上述为能控性和能达性官方性的定义,在这里引入一个例子进行介绍:

\begin{aligned} & x_1^{\prime}=x_1+u \\ & x_2^{\prime}=x_2 \\ & y=x_1 \end{aligned}

对于这样一个系统,我们发现通过控制输入u,可以改变状态x_1和系统输出y,但是无法改变状态x_2。此时,卡尔曼注意到了此情况,并提出特定情况:状态变为零、或从零出发到某个状态,即能控性和能达性。

对于课本中,对能控和能达,进行了如下描述:

能控:对连续时间线性时变系统\dot{x}=A(t) x+B(t) u , t \in J,如果存在一个时刻\left.t_1 \in J, t_1\right\rangle t_0,以及一个无约束的容许控制u(t) t \in\left[t_0, t_1\right],使系统状态由x\left(t_0\right)=x_0转移到x\left(t_1\right)=0,则称非零状态x_0t_0时刻能控。

能达:如果存在一个时刻\mathrm{t}_1 \in \mathrm{J}, \mathrm{t}_1>\mathrm{t}_0,以及一个无约束的容许控制\mathrm{u}(\mathrm{t}), \mathrm{t} \in\left[\mathrm{t}_0, \mathrm{t}_1\right],使系统状态由x\left(t_0\right)=0转移到x\left(t_1\right)=x_f \neq 0,则称非零状态x_ft_0时刻为能达。

上述,无约束容许控制,主要保证了输入的 u(t)是可以实现的。此外,还有一致能控和能达,即每个时刻都是能控或能达的。

1.2、能控和能达的关系

连续线性时不变系统,可以认为能控性就等价于能达性;

离散时间的线性时不变系统和线性时变系统,如果系统矩阵是非奇异矩阵即可逆矩阵,能控性和能达性也是等价的;

连续时间线性时变系统能控性和能达性一般不等价。

二、连续时间线性时不变系统的能控判据

2.1、格拉姆矩阵判据

考虑连续时间线性时不变系统,状态方程为:\dot{x}=A x+B u \quad x(0)=x_0 \quad t \geq 0

其中,xn维状态,AB分别为nxn和nxp维度的常值矩阵。

格拉姆判据:连续时间线性时不变系统为完全能控的充分必要条件是存在时刻t_1>0,使格拉姆矩阵:W_c\left[0, t_1\right] \stackrel{\Delta}{=} \int_0^{t_1} e^{-A t} B B^T e^{-A^T t} d t为非奇异。

判据充分性证明:已知W_c\left[t_0, t_1\right]为非奇异,欲证系统完全能控。设x为状态空间中任意非零状态,

构造系统输入:u(t)=-B^T e^{-A^T t} W_c^{-1}\left[0, t_1\right] x_0, t \in\left[0, t_1\right]

\begin{aligned} & x\left(t_1\right)=e^{A t_1} x+\int_{t_0}^{t_1} e^{A\left(t_1-t\right)} B u(t) d t \\ & =e^{A t_1} x_0-e^{A t_1}\left\{\int_{t_0}^{t_1} e^{-A t} B B^T e^{-A^T t} d t\right\} W_c^{-1}\left[0, t_1\right] x_0 \\ & =e^{A t_1} x_0-e^{A t_1} W_c\left[0, t_1\right] W_c^{-1}\left[0, t_1\right] x_0 \\ & =e^{A t_1} x_0-e^{A t_1} x_0=0 \end{aligned}

可证,在W_c非奇异下,系统状态可在控制输入u下转移至为零的状态,说明系统是能控的。

判据必要性证明:欲证W_c\left[t_0, t_1\right]为非奇异,采用反证法,设状态空间至少存在一个非零状态\bar{x}_0使\bar{x}_0^T W_c\left[0, t_1\right] \bar{x}_0=0,进而可以导出:

\begin{aligned} 0 & =\bar{x}_0^T W_c\left[0, t_1\right] \bar{x}_0=\int_0^{t_1} \bar{x}_0^T e^{-A t} B B^T e^{-A^T t} \bar{x}_0 d t \\ & =\int_0^{t_1}\left[B^T e^{-A^T t} \bar{x}_0\right]^T\left[B^T e^{-A^T t} \bar{x}_0\right] d t \\ & =\int_0^{t_1}\left\|B^T e^{-A^T t} \bar{x}_0\right\|^2 d t \end{aligned}

其中,\|\bullet\|表示所示向量的范数,而范数必为非负,于是,只能有:

B^T e^{-A^T t} \bar{x}_0=0, \forall t \in\left[0, t_1\right]

另一方面,由系统完全能控知,状态空间中所有非零状态均可找到相应的输入u(t)使成立:

0=x\left(t_1\right)=e^{A t_1} \bar{x}_0+\int_0^{t_1} e^{A t_1} e^{-A t} B u(t) d t

基此,可进而导出:

\bar{x}_0=-\int_0^{t_1} e^{-A t} B u(t) d t

\left\|\bar{x}_0\right\|^2=\bar{x}_0^T \bar{x}_0=\left[-\int_0^{t_1} e^{-A t} B u(t) d t\right]^T \bar{x}_0=-\int_0^{t_1} u^T(t)\left[B^T e^{-A^T t} \bar{x}_0\right] d t

结合上方,B^T e^{-A^T t} \bar{x}_0=0, \forall t \in\left[0, t_1\right],可以进一步得到\left\|\bar{x}_0\right\|^2=0,即\bar{x}_0=0

与题设相矛盾,从而证得W_c\left[t_0, t_1\right]非奇异,必要性得证。证明完成。

对于连续时间线性时不变系统,W_c\left[t_0, t_1\right]非奇异等价于系统完全能控和完全能达。

2.2、秩判据

考虑连续时间线性时不变系统,状态方程为:\dot{x}=A x+B u \quad x(0)=x_0 \quad t \geq 0

其中,xn维状态,AB分别为nxn和nxp的常值矩阵。

秩判据:对n维连续时间线性时不变系统,系统完全能控的充分必要条件为能控性判别矩阵Q_c=\left[B, A B, A^2 B, \cdots A^{n-1} B\right]满秩,即rank Q_c=n

充分性证明:已知rank Q_c=n,欲证系统完全能控。采用反证法,设系统不完全能控,格拉姆矩阵为非奇异。结合2.1必要性判据这意味着状态空间中至少存在一个非零状态a,使得:

\alpha^T e^{-A t} B=0, \forall t \in\left[0, t_1\right]

将上式对t求导直至(n-1)次,再在导出结果中令t=0,得

\alpha^T B=0, \alpha^T A B=0, \alpha^T A^2 B=0, \ldots, \alpha^T A^{n-1} B=0

进而,表上述关系式组为\alpha^T\left[B , A B , A^2 B , \cdots, A^{n-1} B\right]=\alpha^T Q_c=0.

基此,并由\alpha \neq 0,可知Q_c行线性相关,即\text { rank } Q_c<n,与题设矛盾,所以系统完全能控。充分性得证。

必要性证明:已知系统完全能控,欲证\text { rank } Q_c=n,继续采用反证法。

\text { rank } Q_c<n,即Q_c行线性相关。这意味着状态空间中至少存在一个非零状态a,使\alpha^T Q_c=\alpha^T\left[B , A B , A^2 B , \cdots, A^{n-1} B\right]=0成立。

可导出:\alpha^T A^i B=0, \quad i=0,1, \cdots n-1

再据凯莱-哈密尔顿定理知A^nA^{n+1},...均可表示为I,AA^2A^{n-1}的线性组合。基此,上式进一步扩展为\alpha^T A^i B=0, \quad i=0,1,2, \cdots

于是,对任意t_1>0,可得:

0=\alpha^T\left[I-A t+\frac{1}{2 !} A^2 t^2-\frac{1}{3 !} A^3 t^3+\cdots\right] B=\alpha^T e^{-A t} B, \forall t \in\left[0, t_1\right]

于是,基于上式可导出:

0=\alpha^T \int_0^{t_1} e^{-A t} B B^T e^{-A^T t} d t \alpha=\alpha^T W_c\left[0, t_1\right] \alpha

意味着,格拉姆矩阵W_c\left[t_0, t_1\right]奇异,即系统不完全能控。与已知矛盾,反设不成立,必有\text { rank } Q_c=n。必要性得证。证明完成。

这篇关于LTI连续线性时不变系统能控性证明(格拉姆判据、秩判据)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/168709

相关文章

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

Linux系统之dns域名解析全过程

《Linux系统之dns域名解析全过程》:本文主要介绍Linux系统之dns域名解析全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、dns域名解析介绍1、DNS核心概念1.1 区域 zone1.2 记录 record二、DNS服务的配置1、正向解析的配置

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

Windows系统下如何查找JDK的安装路径

《Windows系统下如何查找JDK的安装路径》:本文主要介绍Windows系统下如何查找JDK的安装路径,文中介绍了三种方法,分别是通过命令行检查、使用verbose选项查找jre目录、以及查看... 目录一、确认是否安装了JDK二、查找路径三、另外一种方式如果很久之前安装了JDK,或者在别人的电脑上,想

Linux系统之authconfig命令的使用解读

《Linux系统之authconfig命令的使用解读》authconfig是一个用于配置Linux系统身份验证和账户管理设置的命令行工具,主要用于RedHat系列的Linux发行版,它提供了一系列选项... 目录linux authconfig命令的使用基本语法常用选项示例总结Linux authconfi

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

CSS3 最强二维布局系统之Grid 网格布局

《CSS3最强二维布局系统之Grid网格布局》CS3的Grid网格布局是目前最强的二维布局系统,可以同时对列和行进行处理,将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局,本文介... 深入学习 css3 目前最强大的布局系统 Grid 网格布局Grid 网格布局的基本认识Grid 网

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创