动态不确定性的动态S过程(Matlab代码实现)

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

文献来源:

我们展示了如何为建模为线性分数表示并受各种类型的动态不确定性影响的不确定系统组成稳健的稳定性测试。我们的结果是根据线性矩阵不等式制定的,并基于最近建立的有限视界积分二次约束与终端成本的概念。这种约束的构造是由S过程在频域中使用动态拉格朗日乘法器的非常规应用所激发的。我们的技术贡献揭示了如何通过时域中的耗散率参数以无损方式执行这种构造。这为泛化到时变或混合系统开辟了道路。

原文摘要:

We show how to compose robust stability tests for uncertain systems modeled as linear fractional representations and affected by various types of dynamic uncertainties. Our results are formulated in terms of linear matrix inequalities and rest on the recently established notion of finite-horizon integral quadratic constraints with a terminal cost. The construction of such constraints is motivated by an unconventional application of the S-procedure in the frequency domain with dynamic Lagrange multipliers. Our technical contribution reveals how this construction can be performed by dissipativity arguments in the time-domain and in a lossless fashion. This opens the way for generalizations to time-varying or hybrid systems.

📚2 运行结果

部分代码:

% Involved functions
f1 = @(x) real([1; x(1) + 1i * x(2)]' * [0, 1; 1, -1] * ...
               [1; x(1) + 1i * x(2)]); % Outer circle
f2 = @(x) real([1; x(1) + 1i * x(2)]' * [0, -3/4; -3/4, 1] * ...
               [1; x(1) + 1i * x(2)]); % Inner circle

% Plotdomain
x = 0:0.01:2;
y = -1:0.01:1;

% Generate grid
[X,Y] = meshgrid(x,y);

% Evaluate functions on grid
Z1 = zeros(length(y), length(x));
Z2 = zeros(length(y), length(x));
for i = 1 : length(y)
    for j = 1 : length(x)
        Z1(i, j) = f1([x(j); y(i)]);
        Z2(i, j) = f2([x(j); y(i)]);
    end
end
contour(X,Y,Z1, [0;0], 'linewidth', 1.5, 'color', 'black')
contour(X,Y,Z2, [0;0], 'linewidth', 1.5, 'color', 'black')

xlabel('real part')
ylabel('imaginary part')
%set(gca, 'FontSize', 15)

print('../results/Fig2','-dpng')

%% Gain Bounds

% A very special system, but anyhow 
a = -0.1;
% (s + 2 - 1/(del+a)) * (s + del + 1)
sys = ss([(1-3*a)/a, (1-2*a)/a; 1, 0], ...
         [-1/a, 0, 1; 0, 0, 0], ...
         [a+3+(1-3*a)/a, 1+2*a + (1-2*a)/a; 1, 2; 1, 0], ...
         [-1/a, 1, 0; 0, 0, 1; 0, 0, 0]);
% This is constructed in a fashion such that lft(0.5, sys) is unstable

% IO dimensions
p.sys = sys;
p.inp = [2, 1];
p.out = [2, 1];


% Analysis based on covering with single disk. This has to fail since 0.5
% is contained in the disk.
Pi{1} = [0, 1; 1, -1];
ga    = ana_rep_intersect(p, Pi);


% More meaningful covering (intersection of interior of a disk and exterior
% of another disk).
Pi{1} = [0, 1; 1, -1];
Pi{2} = [0, -3/4; -3/4, 1];
ga    = ana_rep_intersect(p, Pi);
disp(['Gain bound from Theorem 8 with static filter : ', num2str(ga)]);

P  = [blkdiag(0, 0), blkdiag(1, -3/4); ...
      blkdiag(1, -3/4)', blkdiag(-1, 1)];
ga = ana_rep_region(p, P);
disp(['Gain bound from Theorem 10 with static filter : ', num2str(ga)]);


% Same as above, but with dynamic multipliers
nu   = 1;
al   = 2; 
p.ps = bas(nu, al, p.inp(1)); 
ga   = ana_rep_intersect(p, Pi);
disp(['Gain bound from Theorem 8 with dynamic filter (nu=1): ', ...
      num2str(ga)]);

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

[1]Tobias Holicki, Carsten W. Scherer (2022) A Dynamic S-Procedure for Dynamic Uncertainties 

🌈4 Matlab代码实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/90940.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【【Verilog典型电路设计之log函数的Verilog HDL设计】】

Verilog典型电路设计之log函数的Verilog HDL设计 log函数是一种典型的单目计算函数,与其相应的还有指数函数、三角函数等。对于单目计算函数的硬件加速器设计一般两种简单方法:一种是查找表的方式;一种是使用泰勒级数展开成多项式进行近似计算。这两种方式在设计方…

交替传译是否比同声传译容易?

我们知道,在跨语言文化交流活动中,交替传译和同声传译是解决参会者语言沟通问题的主要翻译形式。那么,什么是交替传译,什么是同声传译,交替传译是否比同声传译容易呢? 交替传译是指在发言者讲话结束或停下来…

ICT产教融合创新实训基地物联网实训室建设方案

一、概述 1.1物联网定义 物联网工程(Internet of Things Engineering)是一种以信息技术(IT)来改善实体世界中人们生活方式的新兴学科,它利用互联网技术为我们的日常生活活动提供服务和增益,从而让各种智能…

贪心算法总结篇

文章转自代码随想录 贪心算法总结篇 我刚刚开始讲解贪心系列的时候就说了,贪心系列并不打算严格的从简单到困难这么个顺序来讲解。 因为贪心的简单题可能往往过于简单甚至感觉不到贪心,如果我连续几天讲解简单的贪心,估计录友们一定会不耐…

聊聊二叉树的前序遍历算法

二叉树顾名思义,一个根节点只会有两个分叉对应,下图所示: 前序遍历先去拿它的左节点,拿完之后再去拿它左节点相邻的右节点,如数据结构是这样 第一中不考虑性能的方式的话,可以使用递归的方式去给他遍历 fun…

c++搜索剪枝常见方法与技巧

目录 搜索剪枝常见方法与技巧 关键字 搜索方法,剪枝 摘要 正文 小结 程序 参考书目 搜索剪枝常见方法与技巧 关键字 搜索方法,剪枝 摘要 搜索是计算机解题中常用的方法,它实质上是枚举法的应用。由于它相当于枚举法,所以其效率是相当地的。因此…

Mybatis1.4 多条件查询

1.4 多条件查询 1.4.1 编写接口方法1.4.2 编写SQL语句1.4.3 编写测试方法1.4.4 动态SQL 我们经常会遇到如上图所示的多条件查询,将多条件查询的结果展示在下方的数据列表中。而我们做这个功能需要分析最终的SQL语句应该是什么样,思考两个问题 条件表达式…

深度学习6:自然语言处理-Natural language processing | NLP

目录 NLP 为什么重要? 什么是自然语言处理 – NLP NLP 的2大核心任务 自然语言理解 – NLU|NLI 自然语言生成 – NLG NLP(自然语言处理) 的5个难点 NLP 的4个典型应用 NLP 的 2 种途径、3 个核心步骤 总结 自然语言处理 NLP 为什么重要? “语言…

【Java Web】敏感词过滤

一、前缀树 假设有敏感词:b,abc,abd,bcd,abcd,efg,hii 那么前缀树可以构造为: 二、敏感词过滤器 package com.nowcoder.community.util;import org.apache.commons.lang3.CharUt…

Lua基础知识

文章目录 1. Lua简介1.1 设计目的:1.2 特性1.3 应用场景 2. Lua脚本学习2.1 安装2.2 lua操作2.3 lua案例 学习lua主要是为了后续做高性能缓存架构所准备的基础技术。可以先了解下基础,在实际使用时,再查缺补漏。 1. Lua简介 Lua 是一种轻量小…

Leetcode.100 相同的树

给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 代码如下:…

二分查找逻辑

目录 二分查找 查找逻辑 题目练习 题目描述 代码示例 总结 二分查找 二分查找是我们经常使用的一种算法,他的逻辑是 在升序或者降序且无重复元素的数组中,比较目标值和数组中间值的方法,每次缩小一半的搜索范围,相比遍历可…