Skip to content

Lyapunov在探讨队列稳定性时的应用 ​

虚拟队列 ​

最近读到虚拟队列(virtual queue)技术,可以用在涉及公平性问题的模型中(如各种涉及调度、分配的问题)。通过创建一组虚拟队列,分配给每个实体ii一个队列qiq_i来处理公平限制条件。如果用Li(t)L_i(t)来表示队列qiq_i在tt时刻的长度,也可以反映出调度/分配算法对实体ii的负债(debt)。这里的思想很朴素:如果一直未对实体ii进行调度/分配,那么相当于是亏欠了该实体,应该在之后调度/分配时给予关照😋。​

他的数学形式是 Qi(t)=[Qi(t−1)+ai(t−1)−bi(t−1)]+Q_i(t) = [Q_i(t - 1) + a_i(t-1) - b_i(t - 1)]+, 其中 [x]+=max⁡{x,0}[x]^+ = \max\{x,0\},aia_i是确保公平的条件,是某个实体至少需要选择的比例(在0到1之间),bib_i是是否选择了该实体(选择为1,未选择为0)。从队列的角度看,a_i是到达队列中的项,等待被服务,bib_i是被服务,离开队列的项。 一般在初始时刻设置队列为空,即Qi(0)=0Q_i(0) = 0。如果每轮未选择某个实体,负债会累加。如果算法在每次分配时只是选择队列最长的(负债最高的),那么高负债的就会被优先处理。

当队列长度稳定时候,虚拟队列稳定,公平调度/分配的目的达到了。

稳定性 ​

何为稳定性?

TIP

设系统初于某一个起始的平衡状态,在外作用下它离开了平衡状态,当外作用消失,弱经过较长的时间它能恢复到原来的平衡状态,则称系统是稳定的,或称系统具有稳定性。否则是不稳定的。

Lyapunov对稳定性做出了严格的数学定义(Lyapunov总共定义了四种):

点集S(ϵ)S(\epsilon)表示以XeX_e为中心,ϵ\epsilon为半径的超球体,若X∈S(ϵ)X\in S(\epsilon),则∥X−Xe∥≤ϵ\|X-X_e\|\le \epsilon,当ϵ\epsilon很小,则称S(\epsilon)为XeX_e的邻域(也就是在空间内,稳定状态X_e附近的球形空间内的状态)。

系统的齐次状态方程是X˙=f(X,t)\dot{X} = f(X,t)(\dot{X}是对XX求导),ff是与XX同纬的向量函数,一般为时变的非线性函数,若不显含tt,则为定常非线性系统(就是说不含有时间项tt的是常微分方程)。假设方程在初始条件(t0,X0)(t_0,X_0)下,有唯一解X=Φ(t;X0,t0)X=\Phi(t;X_0,t_0)。

首先是Lyapunov意义下的稳定:

对系统X˙=f(X,t)\dot{X} = f(X,t)的某一平衡状态X_e,对任意选定的实数ϵ>0\epsilon>0,都对应存在实数δ(ϵ,t0)>0\delta(\epsilon,t_0)>0,使当∥X−Xe∥≤δ(ϵ,t0)>0\|X-X_e\|\le \delta(\epsilon,t_0)>0时,从任意初态X_0出发的解都满足∥Φ(t;X0,t0)−Xe∥<ϵ\|\Phi(t;X_0,t_0)-X_e\|<\epsilon,∀t>t0\forall t>t_0,则称平衡状态X_e是Lyapunov意义下稳定的(就是说初始状态不偏离平衡位置很远的时候,之后都不会过于偏离平衡位置)。其中实数δ\delta与ϵ\epsilon有关,一般也与t0t_0有关。

其次是渐进稳定:

当tt无限增长时,轨迹X(t)=Φ(t;X0,t0)X(t)=\Phi(t;X_0,t_0)不仅不超出S(ϵ)S(\epsilon),而且最终收敛于XeX_e,则称这种平衡状态XeX_e是渐进稳定的,即lim⁡t→∞∥Φ(t;X0,t0)−Xe∥=0\lim\limits_{t\to \infty}\|\Phi(t;X_0,t_0)-X_e\|=0。

我们在分析队列长度时,只需要保证渐进稳定就可以了,没必要约束到每时每刻(Lyapunov意义下的稳定)。

除此之外,他还提出了Lyapunov第一法和Lyapunov第二法,第一法通过求解系统微分方程,根据解的性质分析稳定性;第二法构造标量Lyapunov函数,研究它的正定性直接判系统的稳定性。一般提到的Lyapunov方法是Lyapunov第二法。

Lyapunov趋势定理 ​

随机排队网络模型(queueing network)的稳定性或是最优控制常使用的工具是Lyapunov 趋势(drift)。

沿用之前的队列长度记号Q(t)=(Q1(t),Q2(t),…,QN(t))Q(t)=\left(Q_{1}(t), Q_{2}(t), \ldots, Q_{N}(t)\right),定义一个平方Lyapunov函数(Quadratic Lyapunov functions)L,用来表示当前积压的工作(backlogs),也即之前提到的负债(debt):

L(t)=12∑i=1NQi(t)2L(t)=\frac{1}{2} \sum_{i=1}^{N} Q_{i}(t)^{2}

函数L的输出显然是一个标量,定义Lyapunov趋势为:

Δ(t)=L(t+1)−L(t)\Delta(t)=L(t+1)-L(t)

假设队列长度按之前描述的方式增长(Qi(t+1)=[Qi(t)+ai(t)−bi(t)]+Q_i(t+1) = [Q_i(t) + a_i(t) - b_i(t)]+),那么显然有

Qi(t+1)2=max⁡[Qi(t)+ai(t)−bi(t),0]2≤(Qi(t)+ai(t)−bi(t))2Q_{i}(t+1)^{2}=\max \left[Q_{i}(t)+a_{i}(t)-b_{i}(t), 0\right]^{2} \leq\left(Q_{i}(t)+a_{i}(t)-b_{i}(t)\right)^{2}

经过移项得

Δ(t)≤B(t)+∑i=1NQi(t)(ai(t)−bi(t))\Delta(t) \leq B(t)+\sum_{i=1}^{N} Q_{i}(t)\left(a_{i}(t)-b_{i}(t)\right),

其中B(t)B(t)是

B(t)=12∑i=1N[ai(t)2+bi(t)2−2ai(t)bi(t)]B(t)=\frac{1}{2} \sum_{i=1}^{N}\left[a_{i}(t)^{2}+b_{i}(t)^{2}-2 a_{i}(t) b_{i}(t)\right]

显然B(t)B(t)有界

E[B(t)∣Q(t)]≤BE[B(t) | Q(t)] \leq B

于是对Lyapunov 趋势取期望,为

E[Δ(t)∣Q(t)]≤B+∑i=1NQi(t)E[ai(t)−bi(t)∣Q(t)]E[\Delta(t) | Q(t)] \leq B+\sum_{i=1}^{N} Q_{i}(t) E\left[a_{i}(t)-b_{i}(t) | Q(t)\right]

TIP

Lyapunov 趋势定理:如果对ai(t)a_i(t),bi(t)b_i(t) ,∃ϵ\exists \epsilonE[ai(t)−bi(t)∣Q(t)]≤−ϵE\left[a_{i}(t)-b_{i}(t) | Q(t)\right] \leq-\epsilon, ∀i,t\forall i,t,也即如果E[Δ(t)∣Q(t)]≤B−ϵ∑i=1NQi(t)E[\Delta(t) | Q(t)] \leq B-\epsilon \sum_{i=1}^{N} Q_{i}(t), 那么

1t∑τ=0t−1∑i=1NE[Qi(τ)]≤Bϵ+E[L(0)]ϵt\frac{1}{t} \sum_{\tau=0}^{t-1} \sum_{i=1}^{N} E\left[Q_{i}(\tau)\right] \leq \frac{B}{\epsilon}+\frac{E[L(0)]}{\epsilon t}, ∀t>0\forall t>0

队列稳定

Lyapunov趋势定理的证明:在 E[Δ(t)∣Q(t)]≤B−ϵ∑i=1NQi(t)E[\Delta(t) | Q(t)] \leq B-\epsilon \sum_{i=1}^{N} Q_{i}(t)两侧取期望,得到

E[Δ(t)]≤B−ϵ∑i=1NE[Qi(t)]E[\Delta(t)] \leq B-\epsilon \sum_{i=1}^{N} E\left[Q_{i}(t)\right],对τ∈{0,1,…,t−1}\tau \in\{0,1, \ldots, t-1\}累加求和该式子,得到

E[L(t)]−E[L(0)]≤Bt−ϵ∑τ=0t−1∑i=1NE[Qi(τ)]E[L(t)]-E[L(0)] \leq B t-\epsilon \sum_{\tau=0}^{t-1} \sum_{i=1}^{N} E\left[Q_{i}(\tau)\right]

注意到E[L(t)]E[L(t)]非负,移项后可证。

Lyapunov优化 ​

同样考虑之前提到的随机排队网络模型,定义p(t)p(t)为t时刻的网络惩罚项(network penalty)。假设目标是稳定队列的同时最小化p(t)对时间的均值(当需要最大化r(t)的时候,可以定义为p(t)=-r(t))。

为了达到这个目标,算法可以被设计为最小化下面这个bound(drift-plus-penalty expression):

Δ(t)+Vp(t)\Delta(t)+V p(t),这里VV是一个非负的权重,用来做队列稳定和优化目标的tradeoff。不妨假设p(t)p(t)存在下界pmin⁡p_{\min},即p(t)≥pmin⁡∀t∈{0,1,2,…}p(t) \geq p_{\min } \forall t \in\{0,1,2, \ldots\}。

TIP

Lyapunov Optimization定理: 如果B≥0,ϵ>0,V≥0,p∗B \geq 0, \epsilon>0, V \geq 0, p^{*},∀t\forall t,也即E[Δ(t)+Vp(t)∣Q(t)]≤B+Vp∗−ϵ∑i=1NQi(t)E[\Delta(t)+V p(t) | Q(t)] \leq B+V p^{*}-\epsilon \sum_{i=1}^{N} Q_{i}(t)

那么∀t>0\forall t>0

1t∑τ=0t−1E[p(τ)]≤p∗+BV+E[L(0)]Vt\frac{1}{t} \sum_{\tau=0}^{t-1} E[p(\tau)] \leq p^{*}+\frac{B}{V}+\frac{E[L(0)]}{V t}

1t∑τ=0t−1∑i=1NE[Qi(τ)]≤B+V(p∗−pmin)ϵ+E[L(0)]ϵt\frac{1}{t} \sum_{\tau=0}^{t-1} \sum_{i=1}^{N} E\left[Q_{i}(\tau)\right] \leq \frac{B+V\left(p^{*}-p_{\text {min}}\right)}{\epsilon}+\frac{E[L(0)]}{\epsilon t}

证明方法与上面的类似,对条件取期望后,对不同tt时刻的式子累加得证。

References ​

虚拟队列:Stochastic network optimization with application to communication and queueing systems

队列稳定性:Combinatorial Sleeping Bandits with Fairness Constraints

Lyapunov优化:http://en.wikipedia.org/wiki/Lyapunov_optimization