Lyapunov optimization 李雅普诺夫优化

文章目录

  • 正文
    • 引言
    • Lyapunov drift for queueing networks 排队网络的Lyapunov漂移
      • Quadratic Lyapunov functions 二次李雅普诺夫函数
      • Bounding the Lyapunov drift 李亚普诺夫漂移的边界
      • A basic Lyapunov drift theorem 一个基本的李雅普诺夫漂移定理
    • Lyapunov optimization for queueing networks 排队网络的Lyapunov优化
  • 参考资料

正文

本文描述了动力系统的李雅普诺夫优化。(动力系统:随时间变化的系统)
给出了在排队网络最优控制中的应用实例。

引言

李雅普诺夫优化是指利用李雅普诺夫函数对动力系统进行最优控制。
李雅普诺夫函数在控制理论中被广泛应用于保证不同形式的系统稳定性。
系统在特定时间的状态通常用多维向量来描述。
李雅普诺夫函数是这种多维状态的一个非负标量度量(a nonnegative scalar measure)。
通常,函数被定义为当系统走向不希望的状态时变大
系统稳定性是通过采取控制动作使李雅普诺夫函数在负方向上向零漂移来实现的。

在这里插入图片描述

李雅普诺夫漂移是研究排队网络最优控制的核心。
一个典型的目标是稳定所有网络队列,同时优化某些性能目标,例如最小化平均能量或最大化平均吞吐量。
最小化二次Lyapunov函数的漂移对应用于网络稳定性的backpressure routing算法,也称为最大权重算法。[1][2]
在Lyapunov漂移中加入加权惩罚项并使其和最小化,得到了用于联合网络稳定性和惩罚最小化的漂移+惩罚算法。[3][4][5]
漂移加惩罚过程也可用于计算凸规划和线性规划的解。[6]

Lyapunov drift for queueing networks 排队网络的Lyapunov漂移

考虑一个随着具有标准化时隙 t ∈ { 0 , 1 , 2 , . . . } t∈\{0,1,2,...\} t{0,1,2,...}的离散时间变化的排队网络。
假设网络中有 N N N 个队列,并定义在时间 t t t 时队列积压向量为
在这里插入图片描述

Quadratic Lyapunov functions 二次李雅普诺夫函数

对于每个时隙,定义
在这里插入图片描述

该函数是网络中总队列积压的标量度量。它被称为关于队列状态的二次Lyapunov函数。

将李雅普诺夫漂移定义为该函数从一个时隙到下一个时隙的变化
在这里插入图片描述

Bounding the Lyapunov drift 李亚普诺夫漂移的边界

假设队列积压根据以下等式随时间变化:
在这里插入图片描述

其中, a i ( t ) a_{i}(t) ai(t) b i ( t ) b_{i}(t) bi(t)分别为时隙 t t t 上队列 i i i 的到达和服务机会。该式可用于计算任意时隙 t t t 上的Lyapunov漂移的边界:

由上式推出:
Δ L ( t ) = L ( t + 1 ) − L ( t ) = 1 2 ∑ i = 1 N ( Q i ( t + 1 ) 2 − Q i ( t ) 2 ) ≤ 1 2 ∑ i = 1 N ( ( Q i ( t ) + a i ( t ) − b i ( t ) ) 2 − Q i ( t ) 2 ) ≤ 1 2 ∑ i = 1 N ( a i ( t ) + b i ( t ) ) 2 + ∑ i = 1 N Q i ( t ) ( a i ( t ) − b i ( t ) ) \Delta L(t)= L(t+1)-L(t)\\=\frac{1}{2}\sum_{i=1}^{N}(Q_i(t+1)^2-Q_i(t)^2)\\\le\frac{1}{2}\sum_{i=1}^{N}((Q_i(t)+a_i(t)-b_i(t))^2-Q_i(t)^2)\\\le\frac{1}{2}\sum_{i=1}^{N}(a_i(t)+b_i(t))^2+\sum_{i=1}^{N}Q_i(t)(a_i(t)-b_i(t)) ΔL(t)=L(t+1)L(t)=21i=1N(Qi(t+1)2Qi(t)2)21i=1N((Qi(t)+ai(t)bi(t))2Qi(t)2)21i=1N(ai(t)+bi(t))2+i=1NQi(t)(ai(t)bi(t))
B ( t ) = 1 2 ∑ i = 1 N ( a i ( t ) + b i ( t ) ) 2 B(t)=\frac{1}{2}\sum_{i=1}^{N}(a_i(t)+b_i(t))^2 B(t)=21i=1N(ai(t)+bi(t))2,则有

在这里插入图片描述
其中:在这里插入图片描述

假设每个队列的到达和服务这两项是有界的,因此存在一个有限常数 B > 0 B>0 B>0,使得对于所有 t t t 和所有可能的队列向量 Q ( t ) Q(t) Q(t) 都成立如下性质:
在这里插入图片描述

取(Eq. 1)的条件期望,得到Lyapunov漂移的条件期望的边界如下:
在这里插入图片描述

A basic Lyapunov drift theorem 一个基本的李雅普诺夫漂移定理

在许多情况下,网络可以被控制,因此每个队列的到达和服务之间的差异对某个实数 ε > 0 \varepsilon>0 ε>0 满足以下的性质:
在这里插入图片描述
如果上式对于所有队列 i i i、所有时隙 t t t 和所有可能的向量 Q ( t ) \displaystyle Q(t) Q(t) 对相同ε成立,则(等式2)简化为以下李亚普诺夫漂移定理中使用的漂移条件。
下面的定理可以看作是马尔可夫链的Foster定理的一个变体。然而,它不需要马尔可夫链结构。


定理(Lyapunov Drift)
假设存在常数 B ≥ 0 , ε > 0 B\ge0,\varepsilon>0 B0,ε>0 使得对于所有的 t t t 和可能的向量 Q ( t ) Q(t) Q(t) ,条件李雅普诺夫漂移满足:

在这里插入图片描述

注等式2.在这里插入图片描述

则对所有的时隙 t > 0 t>0 t>0,网络中的时间平均队列大小满足:
在这里插入图片描述


证明
取漂移不等式两边的期望,利用迭代期望定律,得到:
在这里插入图片描述
将上式对 τ ∈ { 0 , 1 , . . . , t − 1 } \tau∈\{0,1,...,t-1\} τ{0,1,...,t1} 求和,利用可伸缩和定律,得到:
在这里插入图片描述
利用 L ( t ) L(t) L(t) 非负的事实,重新排列上式中的各项,证明了结果。

Lyapunov optimization for queueing networks 排队网络的Lyapunov优化

考虑与上一节相同的排队网络。
现在定义 p ( t ) p(t) p(t) 作为在时隙 t t t 上产生的网络惩罚。
假设目标是稳定排队网络,同时最小化 p ( t ) p(t) p(t) 的时间平均值。

例如,为了稳定网络,同时最小化时间平均功率, p ( t ) p (t) p(t) 可定义为网络在时隙 t t t 上产生的总功率。处理某些理想报酬 r ( t ) r(t) r(t) 的时间平均值最大化的问题,可以定义惩罚 p ( t ) = − r ( t ) p(t)=-r(t) p(t)=r(t)。这对于在保证稳定性的前提下最大化整个网络的效用是很有用的。

在稳定网络的同时最小化惩罚 p ( t ) p(t) p(t) 的平均时间,网络算法可以设计成使控制动作贪婪地最小化下面每个时隙上的漂移加惩罚表达式的边界:
在这里插入图片描述
其中 V V V 是一个非负的权重,可以根据需要选择它来影响性能权衡。这种方法的一个关键特征是,它通常不需要了解随机网络事件(例如随机作业到达或通道实现)的概率。选择 V = 0 V=0 V=0 可简化为最小化每个槽漂移的边界,对于多跳队列网络中的路由,可简化为Tassiulas和Ephremides开发的背压路由算法。

使用 V = 0 V=0 V=0 并定义 p ( t ) p(t) p(t) 为插槽 t t t 上的网络功耗引出了Neely提出的在保证网络稳定性的前提下最小化平均功率的漂移加惩罚算法[8]。
使用 V = 0 V=0 V=0 并使用 p ( t ) p(t) p(t) 作为允许控制效用度量的负值,引出了Neely、Modiano和Li开发的用于联合流量控制和网络路由的漂移加惩罚算法。


在这种情况下,前一节的李雅普诺夫漂移定理的推广是重要的。为了说明简单,假设 p ( t ) p(t) p(t) 有界于下:
在这里插入图片描述
例如,上面满足 p m i n = 0 p_{min}=0 pmin=0 在这种情况下 p ( t ) p(t) p(t) 总是非负的。让 p ∗ p^{*} p 表示 p ( t ) p(t) p(t) 的时间平均值的期望目标。
V V V 是一个参数,用来衡量达到目标的重要性。以下定理表明,如果满足漂移+惩罚条件,则时间平均惩罚最多比期望目标高出O(1/V),而平均队列大小为O(V)。
V V V 参数可以调优,使平均时间惩罚尽可能接近(或低于)所需的目标,并进行相应的队列大小权衡。


定理(Lyapunov Optimization)

假设存在常数 ε > 0 , V , B ≥ 0 \varepsilon>0,V,B\ge0 ε>0,V,B0 以及 p ∗ p^* p 对于所有的 t t t 和所有可能的向量 Q ( t ) Q(t) Q(t) ,以下漂移加惩罚条件成立:
在这里插入图片描述

则对于所有 t > 0 t>0 t>0 ,时间平均惩罚和时间平均队列大小满足:
在这里插入图片描述
在这里插入图片描述


证明
取假定漂移加惩罚的两边的期望并使用迭代期望定律,我们得到:
在这里插入图片描述
在前 t t t 个时隙上求和,并且使用伸缩和定律给出:
在这里插入图片描述
除以 V t {\displaystyle Vt} Vt 并且重新排列项证明了时间平均惩罚边界。一个类似的论证证明了时间平均队列大小边界。

参考资料

https://en.wikipedia.org/wiki/Lyapunov_optimization

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

全球与中国数字万用表市场:增长趋势、竞争格局与前景展望

数字万用表是一种标准诊断工具,用于测试电气设备中的电压、电流和电阻等电气值。它由带按钮的显示屏、刻度盘或旋转开关以及各种输入插孔(用于插入测试导线)组成。此外,与传统的指针式模拟仪表相比,数字式仪表具有更高…

C#程序中很多ntdll.dll、clr.dll的线程

VS中调试缓慢,如下图 需要“右键工程——调试——取消勾选‘启用本地代码调试’”即可。

算法leetcode|83. 删除排序链表中的重复元素(rust重拳出击)

文章目录 83. 删除排序链表中的重复元素:样例 1:样例 2:提示: 分析:题解:rust:go:c:python:java: 83. 删除排序链表中的重复元素: 给…

Zookeeper-集群介绍与核心理论

Zookeeper集群 4.Zookeeper集群4.1) 介绍4.2) 核心理论 4.Zookeeper集群 4.1) 介绍 Leader选举: Serverid:服务器ID。比如有三台服务器,编号分别是1,2,3。编号越大在选择算法中的权重越大。Zxid:数据ID。服务器中存放的最大数据…

【1】ElementUI 组件实际应用===》按钮的使用

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。个人B站主页热爱技术的小郑 ,视频内容主要是对应文章的视频讲解形式。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘…

MySQL数据库入门到精通6--进阶篇(锁)

5. 锁 5.1 概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决…

M1/M2芯片Parallels Desktop 19安装使用教程(超详细)

引言 在Window上VMware最强,在Mac上毫无疑问Parallels Desktop为最强! 今天带来的是最新版Parallels Desktop 19的安装使用教程。 1. 下载安装包 Parallels Desktop 19安装包:https://www.aliyundrive.com/s/ThB8Fs6D3AD Parallels Deskto…

羧基荧光素-氨基.盐酸盐,FAM-NH2.HCl,138589-19-2

产品简介:5-FAM-NH2.HCl(羧基荧光素-氨基.盐酸盐)其中异硫氰酸荧光素(FITC)具有比较高的活性,通常来说,在固相合成过程中引 入该种荧光基团相对于其他荧光素要更容易,并且反应过程中不需要加入活化试剂。可以用来修饰蛋白质、多肽以及其他活性基团材料或者小分子。 …

ASCII码-对照表

ASCII 1> ASCII 控制字符2> ASCII 显示字符3> 常用ASCII码3.1> 【CR】\r 回车符3.2> 【LF】\n 换行符3.3> 不同操作系统,文件中换行 1> ASCII 控制字符 2> ASCII 显示字符 3> 常用ASCII码 3.1> 【CR】‘\r’ 回车符 CR Carriage Re…

软件设计模式系列之九——桥接模式

1 模式的定义 桥接模式是一种结构型设计模式,它用于将抽象部分与其实现部分分离,以便它们可以独立地变化。这种模式涉及一个接口,它充当一个桥,使得具体类可以在不影响客户端代码的情况下改变。桥接模式将继承关系转化为组合关系…

液氮超低温保存法的原理

细菌保存是有效保存活体微生物群体,使细菌不死、不衰、不变,便于研究和应用。保存细菌的方法有很多。保存原理是利用干燥、低温、隔离空气的方法,降低微生物菌株的代谢速度,使菌株的生命活动处于半永久性休眠状态,从而…

【C++】手撕string(string的模拟实现)

手撕string目录: 一、 Member functions 1.1 constructor 1.2 Copy constructor(代码重构:传统写法和现代写法) 1.3 operator(代码重构:现代写法超级牛逼) 1.4 destructor 二、Other mem…

多旋翼无人机组合导航系统-多源信息融合算法(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

动手吧,vue数字动画

数字动画&#xff0c;有数字的地方都能用上&#xff0c;拿去吧&#xff01; 效果&#xff1a; 1、template部分 <template><div class"v-count-up">{{ dispVlaue }}</div> </template> 2、js部分 export default {data() {return {timer…

【LeetCode热题100】--54.螺旋矩阵

54.螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix &#xff0c;请按照 顺时针螺旋顺序 &#xff0c;返回矩阵中的所有元素。 按层遍历 可以将矩阵看成若干层&#xff0c;首先输出最外层的元素&#xff0c;其次输出次外层的元素&#xff0c;直到输出最内层的元素。 对于每层&…

【二叉树】——链式结构(快速掌握递归与刷题技巧)

&#x1f4d9;作者简介&#xff1a; 清水加冰&#xff0c;目前大二在读&#xff0c;正在学习C/C、Python、操作系统、数据库等。 &#x1f4d8;相关专栏&#xff1a;C语言初阶、C语言进阶、C语言刷题训练营、数据结构刷题训练营、有感兴趣的可以看一看。 欢迎点赞 &#x1f44d…

《学术小白学习之路12》进阶-基于Python实现中文文本的DTM主题动态模型构建

《学术小白学习之路》基于Python实现中文文本的DTM主题动态模型构建 一、数据选择二、数据预处理三、输入数据ID映射词典构建四、文档加载成构造语料库五、DTM模型构建与结果分析六、结果进行保存七、保存模型一、数据选择 所选取的数据集是论文摘要,作为实验数据集,共计12条…

基于微信小程序的校园代送跑腿系统(源码+lw+部署文档+讲解等)

文章目录 前言系统主要功能&#xff1a;具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…

[C++网络协议] 优于select的epoll

1.epoll函数为什么优于select函数 select函数的缺点&#xff1a; 调用select函数后&#xff0c;要针对所有文件描述符进行循环处理。每次调用select函数&#xff0c;都需要向该函数传递监视对象信息。 对于缺点2&#xff0c;是提高性能的最大障碍。因为&#xff0c;套接字是…

python+requests+pytest+allure自动化框架

1.核心库 requests request请求 openpyxl excel文件操作 loggin 日志 smtplib 发送邮件 configparser unittest.mock mock服务 2.目录结构 base utils testDatas conf testCases testReport logs 其他 2.1base base_path.py 存放绝对路径,dos命令或Jenkins执行…