当前位置: 首页 > news >正文

线性矩阵不等式(LMI)在控制理论中的应用

目录

(一)Matlab中的LMI处理工具包

 (二)为什么LMI成为控制理论领域重要工具?

(三)LMI在与Lyapunov不等式的关系

(1)线性矩阵不等式

 (2)线性矩阵不等式系统

(3)舒尔(Schur)补

(四)LMI中常见引理

引理2(广义KYP引理[4])

推论1(广义KYP引理推论[4])

引理3(射影定理[1])

引理4 (Jensen不等式[5,6]

引理5 (Finsler's引理[7]):

参考文献


(一)Matlab中的LMI处理工具包

        matlab中有专门求解线性矩阵不等式的工具包YALMIP,可以在官网上下载安装,可参考yalmip安装教程。yalmip只提供了一些基本的LMI求解方法,有更复杂的不等式求解需求可以再安装cplex工具包。关于怎么使用yalmip工具包可参考yalmip代码编写教程。

 (二)为什么LMI成为控制理论领域重要工具?

        线性矩阵不等式(LMI)技术是分析和综合控制系统的重要工具,尤其是鲁棒控制领域,主要因素有以下三个[1]:

  • 对于经典的控制方法,LMI技术的优点就是操作简单。在LMI技术出现以前,人们通过求解Ricaati方程来设计最优控制器,但是Ricaati方程求解很难。而LMI技术仅需少量的概念和基本原理就能开发出实用的工具(现在我们用YALMIP工具包就能很方便的求解LMI问题)。
  • LMI技术提供了控制问题的广泛前景,包括鲁棒性分析,标称H∞,H2和鲁棒控制综合,多目标综合,线性参数变化综合,其中一些无法在古典控制领域中解决处理。
  • LMI技术是利用凸优化的强有效的数值工具,并在理论体系上附加上有效的软件工具。

(三)LMI在与Lyapunov不等式的关系

(1)线性矩阵不等式

考虑线性矩阵不等式表达如下[2]:

上式中 ,x_1,....x_m为决策变量,特别地,在上述一般形式中的函数 为实对称矩阵。上式中的F(x)<0,表示矩阵F(x)是负定的,即对所有的非零向量 v\epsilon R^m, v^TF(x)v<0或者F(x)的最大特征值小于0。
在许多系统与控制问题中,问题的变量以矩阵的形式出现,如Lyapunov矩阵不等式:

其中,矩阵 为已知的具有合适的维度的常数矩阵,且Q 为已知的对称矩阵,
为对称矩阵变量。假定 E_1,E_2,....,E_MR^n中的一组基,则对任意对称 存在x_1,x_2,....,x_M使得

         因此有:

        通过这种转化,就得到了一个更为一般的线性矩阵不等式的表达方式。

 (2)线性矩阵不等式系统

假设存在多个矩阵不等式:

 总体构成称线性矩阵不等式系统。引进F(x)=diag\left \{F_1(x),....F_k(x) \right \},则F_1(x)<0,...F_k(x)<0同时成立当且仅当F(x)<0。因此一个线性矩阵不等式系统也可以用一个单一的线性矩阵不等式表示。

(3)舒尔(Schur)补

        在许多一些非线性矩阵不等式转化成线性矩阵不等式的问题中,我们常常用到矩阵的Schur补性质。考虑一个矩阵,并将S分块:

其中S_{11}r \times r维的。假定S_{11}是非奇异的,则称为“S_{11}在S中的Sehar补”。以下引理给出了矩阵的Schur补性质。

 引理1 Schur补性质

对给定的对称矩阵:

其中S_{11}r \times r维的。以下3个条件是等价的:

(1)S<0

(2)S_{11}<0,S_{22}-S{12}^TS_{11}^{-1}S_{12}<0

(3)S_{22}<0,S_{11}-S{12}S_{22}^{-1}S_{12}^T<0

(证明方法可参考 俞立的《鲁棒控制——线性矩阵不等式处理方法》 p8页)

        在一些控制问题中,经常遇到二次型矩阵不等式[3]:

 其中A,B,Q=Q^T>0,R=R^T>0是给定的适当维数的常数矩阵,P是对称矩阵变量,则应用引理1,可以将上面的矩阵不等式的可行性问题转化成一个等价的矩阵不等式:

的可行性问题,而后者是一个关于矩阵变量P的线性矩阵不等式。

        因此在控制问题中,我们经常要设计Lyapunov函数V(t),并为了保证系统稳定性要求\dot{V}(t)<0,那我们就可以把\dot{V}(t)<0这个不等式转化为线性矩阵不等式的形式,并用matlab中的YALMIP直接求解出即可。

(四)LMI中常见引理

引理2(广义KYP引理[4])

给定矩阵\ThetaF以及\Phi\Psi,且N_w代表T_wF的零空间,其中T_w=\left [ \begin{matrix} I & -jwI \end{matrix} \right ],则不等式

N^{*}_w\Theta N_w<0,w\epsilon \left [ \begin{matrix} \varpi _1 & \varpi _2 \end{matrix} \right ]

成立,当且仅当存在对称矩阵P以及Q>0,使得成立,其中

其中*表示矩阵的共轭转置,j是虚数单位,\Phi \otimes P表示右克罗内克积,即

\Phi \otimes P= \left [ \begin{matrix} 0 & P \\ P & 0 \end{matrix} \right ]

推论1(广义KYP引理推论[4])

针对线性系统G(jw)为系统由扰动到控制输出的传递函数,则对于给定的对称矩阵\Pi,下面两个陈述是等价的:

1)有限频域不等式

成立。

2)存在对称矩阵Р和Q满足Q>0,使得

成立,其中

表示矩阵\Pi的右上块和右下块,矩阵中*表示其对应块的转置。

引理3(射影定理[1])

对于给定的标量\Gamma ,\Lambda ,\Theta,矩阵F满足\Gamma F\Lambda +(\Gamma F\Lambda )^T+\Theta <0,当且仅当下面两个条件成立:

引理3(反射影定理[1]):P是给定的正定对称矩阵,不等式\Psi +S+S^T<0等价于下面的线性矩阵不等式(LMI)求解问题:

式中符号[W]_s用以表示矩阵W与其转置的加和,即[W]_s=W+W^T

引理4 (Jensen不等式[5,6]

对于任意正定对称常数矩阵M\epsilon R^{n \times n},标量r满足r>0,并且存在一个向量w:[0,r]\rightarrow R^n,那么以下不等式成立:

引理5 (Finsler's引理[7]):

x\epsilon R^n,p\epsilon S^n,以及H\epsilon R^{m \times n}满足H的秩小于n,rank(H) = r <n.则下列两式等价:

参考文献

【1】Apkarian P,Tuan H D,Bernussou J.Continuous-Time analysis,eigenstructure as-signment,and H2synthesis with enhanced Linear Matrix Inequalities(LMI)char-acterizations[J].IEEE Transactions on Automatic Control,2001,42(12):1941–1946.

【2】《鲁棒控制理论及应用》王娟 张涛 徐国凯

【3】《鲁棒控制——线性矩阵不等式处理方法》俞立

【4】Iwasaki T,Hara S.Generalized KYP Lemma:unified frequency domain inequal-ities with design applications[J].IEEE Transactions on Automatic Control,2005,50(1):41–59.

【5】Wu J,Chen X,Gao H.H∞filtering with stochastic sampling[J].Signal Proces-siong,2010,90(4):1131–1145.

【6】Gao H,Wu J,Shi P.Robust sampled-data H∞control with stochastic sampling[J].Automatica,2009,45(7):1729–1736.

【7】Qiu J,Feng G,Yang J.New results on robust energy-to-peakfiltering for discrete-time switched polytopic linear systems with time-varying delay[J].IET ControlTheory and Applications,2008,2(9):795–806.

·

相关文章:

线性矩阵不等式(LMI)在控制理论中的应用

目录 &#xff08;一&#xff09;Matlab中的LMI处理工具包 &#xff08;二&#xff09;为什么LMI成为控制理论领域重要工具&#xff1f; &#xff08;三&#xff09;LMI在与Lyapunov不等式的关系 &#xff08;1&#xff09;线性矩阵不等式 &#xff08;2&#xff09;线性矩阵…...

如何在Python爬虫程序中使用HTTP代理?

在进行网络爬虫时&#xff0c;我们经常需要使用代理服务器来隐藏自己的真实IP地址&#xff0c;以避免被目标网站封禁或限制访问。本文将介绍如何将HTTP代理配置到Python爬虫程序中使用。 什么是HTTP代理&#xff1f; HTTP代理是一种网络代理&#xff0c;它充当客户端和服务器之…...

ARM架构指令集--专用指令

四、状态寄存器专用指令 CPSR寄存器-N Z C V T为0时 为ARM状态 F为0时 为开启FIQ状态 I为0时 为开启IRQ状态 图1 图2 一开始都是SVC指令&#xff0c;因为在操作系统启动的时候&#xff0c;在做一些初始化的操作&#xff0c;不允许被打断 图3 复位后CPSR寄存器为0xD3--…...

免费IP类api接口:含ip查询、ip应用场景查询、ip代理识别、IP行业查询...

免费IP类api接口&#xff1a;含ip查询、ip应用场景查询、ip代理识别… IP归属地-IPv6区县级&#xff1a;根据IP地址&#xff08;IPv6版本&#xff09;查询归属地信息&#xff0c;包含国家、省、市、区县和运营商等信息。IP归属地-IPv6城市级&#xff1a;根据IP地址&#xff08…...

Android Studio 中AGP ,Gradle ,JDK,SDK都是什么?

当进行 Android 开发时&#xff0c;以下是关键概念和工具的解释&#xff1a; Android Gradle Plugin&#xff1a; Android Gradle Plugin 是一个由 Google 提供的构建工具&#xff0c;它与 Gradle 配合使用来构建和打包 Android 应用。它提供了一组任务和功能&#xff0c;使开发…...

算法通关18关 | 回溯模板如何解决复原IP问题

18关的前几篇文章看过之后&#xff0c;对回溯的模板问题基本解题思路就知道了&#xff0c;就是固定的for循环问题&#xff0c;外层for循环控制横向&#xff0c;递归控制纵向&#xff0c;还要考虑撤销操作和元素是否能被重复利用问题&#xff0c;重复利用的情景较少&#xff0c;…...

Layui快速入门之第五节 导航

目录 一&#xff1a;基本概念 导航依赖element模块 API 渲染 属性 事件 二&#xff1a;水平导航 常规用法&#xff1a; 三&#xff1a;垂直导航 四&#xff1a;侧边垂直导航 五&#xff1a;导航主题 六&#xff1a;加入徽章等元素 七&#xff1a;面包屑导航 ps&a…...

使用分支——Git Checkout

这篇文章写的挺好&#xff1b; https://zhuanlan.zhihu.com/p/465954849 这里要注意&#xff0c;git 新的命令&#xff0c;通过 git switch 切换分支&#xff0c;虽然git checkout 分支 还可以用&#xff1b; 游离状态的HEADS 在我们已经见识到git checkout命令对于分支的三…...

【2023】数据挖掘课程设计:基于TF-IDF的文本分类

目录 一、课程设计题目 基于TF-IDF的文本分类 二、课程设计设置 1. 操作系统 2. IDE 3. python 4. 相关的库 三、课程设计目标 1. 掌握数据预处理的方法&#xff0c;对训练集数据进行预处理&#xff1b; 2. 掌握文本分类建模的方法&#xff0c;对语料库的文档进行建模…...

java.lang.NoSuchMethodError: java.lang.reflect.Field.trySetAccessible()Z

java.lang.NoSuchMethodError: java.lang.reflect.Field.trySetAccessible()Z 将JDK升级为11即可。 File --Project Structure – SDK Location --Gradle Setting --Gradle JDK 选择11...

如何使用SQL系列 之 如何在MySQL中使用存储过程

引言 通常&#xff0c;当使用关系型数据库时&#xff0c;你直接在应用程序代码中发出单独的结构化查询语言(SQL)查询来检索或操作数据&#xff0c;如SELECT、INSERT、UPDATE或DELETE。这些语句直接作用于并操作底层数据库表。如果相同的语句或一组语句中使用多个应用程序访问同…...

用 Github Codespaces 免费搭建本地开发测试环境

如何丝滑地白嫖一个本地开发环境&#xff1f;怎么新建一个代码空间&#xff1f; 1&#xff1a;通过Github网页新建2&#xff1a;通过VSCode插件新建 为代码创建相应的开发测试环境 如何丝滑地白嫖一个本地开发环境&#xff1f; 使用Codespaces为开发者解决这样的痛点&#xf…...

PyTorch实战-实现神经网络图像分类基础Tensor最全操作详解(一)

目录 前言 一、PyTorch数据结构-Tensor 1.什么是Tensor 2.数据Tensor使用场景 3.张量形态 标量&#xff08;0D 张量&#xff09; 向量&#xff08;1D 张量&#xff09; 矩阵(2D张量) 3D 张量与高维张量 二、Tensor的创建 1. 从列表或NumPy数组创建 2. 使用特定的初始…...

第29章_瑞萨MCU零基础入门系列教程之改进型环形缓冲区

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写&#xff0c;需要的同学可以在这里获取&#xff1a; https://item.taobao.com/item.htm?id728461040949 配套资料获取&#xff1a;https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总&#xff1a; ht…...

如何搭建一个react项目(详细介绍)

要搭建一个基本的 React 项目&#xff0c;你需要执行以下步骤。在开始之前&#xff0c;请确保你已经安装了 Node.js 和 npm&#xff08;Node 包管理器&#xff09;。 搭建一个React项目 1&#xff0c;创建项目目录2&#xff0c;初始化项目3&#xff0c;安装 React 和 ReactDOM4…...

ActiveMQ用法

ActiveMQ 和 JMS的关系&#xff1f; ActiveMQ是流行的开源消息中间件&#xff0c;JMS是Java平台定义的一种消息传递的标准。ActiveMQ实现了JMS规范&#xff0c;因此可以使用JMS API来与ActiveMQ进行交互。 JMS定义了一种标准的API。API包括了一些接口和类&#xff0c;用于创建…...

TouchGFX之缓存位图

位图缓存是专用RAM缓冲区&#xff0c;应用可将位图保存&#xff08;或缓存&#xff09;在其中。 如果缓存了位图&#xff0c;在绘制位图时&#xff0c;TouchGFX将自动使用RAM缓存作为像素来源。位图缓存在许多情况下十分有用。 从RAM读取数据通常比从闪存读取要快&#xff08;特…...

线性代数的本质(十)——矩阵分解

文章目录 矩阵分解LU分解QR分解特征值分解奇异值分解奇异值分解矩阵的基本子空间奇异值分解的性质矩阵的外积展开式 矩阵分解 矩阵的因式分解是把矩阵表示为多个矩阵的乘积&#xff0c;这种结构更便于理解和计算。 LU分解 设 A A A 是 m n m\times n mn 矩阵&#xff0c;…...

vue实现鼠标拖拽div左右移动的功能

直接代码&#xff1a; <template><div class"demo"><div class"third-part" id"发展历程"><div class"title">发展历程</div><div class"content" id"nav" v-if"dataList…...

基于Python和mysql开发的商城购物管理系统分为前后端(源码+数据库+程序配置说明书+程序使用说明书)

一、项目简介 本项目是一套基于Python和mysql开发的商城购物管理系统&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Python学习者。 包含&#xff1a;项目源码、项目文档、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过…...

从汇编指令到硬件行为:深入解析Aurix Tricore Trap触发与恢复的全过程

从汇编指令到硬件行为&#xff1a;深入解析Aurix Tricore Trap触发与恢复的全过程 当我们在调试Aurix Tricore处理器的异常处理机制时&#xff0c;常常会遇到一个令人困惑的现象&#xff1a;为什么有些Trap发生后程序能够继续执行&#xff0c;而有些则会导致系统崩溃&#xff…...

原神玩家效率革命:BetterGI开源自动化解决方案全解析

原神玩家效率革命&#xff1a;BetterGI开源自动化解决方案全解析 【免费下载链接】better-genshin-impact &#x1f368;BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动派遣 | 一键强化 - UI Automation Testing Tools For …...

【深度解析】CODrone:如何用高分辨率多视角数据重塑无人机旋转目标检测基准

1. CODrone数据集为何能重新定义旋转目标检测标准 当无人机在城市上空盘旋时&#xff0c;它看到的不是我们熟悉的平视视角。倾斜的建筑物、变形的车辆轮廓、微小的行人身影——这些才是无人机视觉感知的真实挑战。传统数据集用"上帝视角"的俯拍图像训练出的算法&…...

保姆级教程:在Ubuntu 24.04上配置Ollama服务并开机自启(附systemctl管理命令)

在Ubuntu 24.04上构建企业级Ollama服务&#xff1a;从零到生产环境部署指南 当大型语言模型&#xff08;LLM&#xff09;从开发环境走向生产部署时&#xff0c;稳定性与可维护性成为首要考量。本文将带您完成Ollama服务在Ubuntu 24.04上的全生命周期配置&#xff0c;涵盖服务架…...

Altium Designer16禁止区域设置避坑指南:为什么你的剪切块总是不生效?

Altium Designer 16禁止区域设置避坑指南&#xff1a;为什么你的剪切块总是不生效&#xff1f; 在PCB设计过程中&#xff0c;禁止区域(Keep-Out Region)的设置是确保电路板可靠性的重要环节。然而&#xff0c;许多Altium Designer 16用户在实际操作中经常遇到剪切块转换失败的问…...

ADS差分传输线前仿真:从S参数模板到信号完整性快速评估

1. 差分传输线前仿真入门&#xff1a;为什么需要S参数模板&#xff1f; 刚入行那会儿&#xff0c;我最头疼的就是每次新项目都要从头搭建仿真环境。直到发现ADS里藏着现成的4端口S参数模板&#xff0c;工作效率直接翻倍。这就像做菜时有了预制高汤&#xff0c;不用再从熬骨头汤…...

VS Code Markdown All in One与其他扩展的完美集成指南 [特殊字符]

VS Code Markdown All in One与其他扩展的完美集成指南 &#x1f680; 【免费下载链接】vscode-markdown Markdown All in One 项目地址: https://gitcode.com/gh_mirrors/vs/vscode-markdown VS Code Markdown All in One扩展是Visual Studio Code中最强大的Markdown编…...

Windows Cleaner终极指南:三步解决C盘爆红,让电脑重获新生

Windows Cleaner终极指南&#xff1a;三步解决C盘爆红&#xff0c;让电脑重获新生 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服&#xff01; 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 当你的C盘进度条变成刺眼的红色…...

Windows下OpenClaw安装指南:一键对接nanobot超轻量镜像

Windows下OpenClaw安装指南&#xff1a;一键对接nanobot超轻量镜像 1. 为什么选择OpenClaw nanobot组合 作为一个长期在Windows环境下折腾自动化工具的技术爱好者&#xff0c;我一直在寻找一个既轻量又强大的本地AI助手方案。直到遇到OpenClaw和nanobot的组合&#xff0c;才…...

Zotero插件生态:从翻译到效率提升的进阶配置指南

1. Zotero插件生态全景&#xff1a;从翻译到全流程优化 第一次接触Zotero时&#xff0c;我和大多数人一样&#xff0c;只是把它当作一个简单的文献管理工具。直到某天深夜赶论文&#xff0c;连续手动整理了47篇参考文献后&#xff0c;手指酸痛的我突然意识到&#xff1a;这绝对…...