APP下载

基于动态面滑模控制的主动队列管理算法∗

2018-03-31吴瑶王欣夏巍

舰船电子工程 2018年3期
关键词:滑模队列分组

吴瑶 王欣 夏巍

1 引言

当前TCP网络规模迅速扩大,数据传输速率不断提高,网络中传输的数据量也成级数式增长,这种情况下,很容易出现数据分组的丢失,造成网络拥塞,致使部分乃至全网络性能恶化,甚至发生死锁,因此对网络拥塞现象的控制具有迫切的现实意义。针对计算机网络这一复杂的系统,从控制理论的角度去研究拥塞问题已经成为当前研究的热点,人们也陆续提出了一些主动队列管理(active queue management,AQM)算法,其中最著名的AQM算法是Floyd提出的随机早检测(random early dete⁃tion,RED)算法[1],目前 IETF[RFC 2309]已推荐在因特网中的路由器使用RED机制。但RED算法在不同的网络环境下参数很难调节,且对网络负载非常敏感,为克服上述问题,文献[2]采用控制理论的方法分析RED,对RED进行了更为深入的研究,文献[3]设计了一种PI控制器作为新的AQM方法,但这些方法是基于确定的线性化TCP模型,对于TCP/IP网络中存在的模型不确定性、网络参数时变性并不适用。

滑模控制(SMC)方法通过控制量的切换使系统状态沿着滑模面滑动,使系统在受到参数摄动和外干扰的时候具有不变性,因此非常适合在拥塞控制中采用该方法。目前SMC在网络拥塞控制中已有应用[4~6],同时反步法在实现不确定非线性系统(特别是当干扰或不确定性不满足匹配条件时)鲁棒控制或自适应控制方面有着明显的优越性[7~11],文献[4]采用基于反步法的滑模控制算法并结合自适应理论提出了一种自适应滑模控制器,但是反步法本身对虚拟控制求导过程中引起的项数膨胀及由项数膨胀引起的问题没有很好的解决办法。本文采用动态面的控制方法,利用一阶积分滤波器来计算虚拟控制的导数,消除微分项的膨胀,使控制器和参数设计简单,并结合滑模控制算法,实现TCP网络主动队列管理动态面滑模控制器的设计。

2 TCP网络的非线性数学模型

文献[12]中,采用AIMD分析方法,建立了N个TCP连接共享一个瓶颈路由器的非线性动态模型如下

式中,r(t)为TCP连接的源端数据发送速率,q(t)为路由器的瞬间队列长度,N(t)为TCP连接的负载因子,R(t)为往返时延,Tp为传播时延,C0为链路带宽,0≤p(t)≤1为分组丢弃/标记概率。

取eq=q()t-qd,qd为期望队列长度。记x1=eq,x2=e˙q,则式(1)可表示为

其中:

文献[4]中,考虑到TCP网络系统模型具有很强的不确定性、非线性以及附加干扰,定义R(t)的参考值为Rˉ,N(t)的参考值为Nˉ,进一步将模型式(3)描述为如下形式:

下一步是结合动态面和滑模控制方法,设计一个动态面滑模控制器,使系统的使队列长度迅速稳定在期望值附近,并维持较小的队列震荡,具有较好的鲁棒性。

3 动态面滑模控制器设计

步骤1:定义位置误差为

则 z˙1=x˙1。

定义Lyapunov函数为

则 V˙1=z1z˙1=z1x2。

定义

则V˙1=z1(z2+ α1)。

在反步法设计中,通常取a1=-c1z1,导致求a˙1时出现微分爆炸。通过采用低通滤波器可克服这一缺点,取 α1为 xˉ2的低通滤波器的输出,定义 xˉ2=-c1z1,并满足:

步骤2:结合滑模变结构控制定义滑模面为s=z2,考虑到位置误差、虚拟控制和滤波误差,定义Lyapunov函数:

其中 B2=c1z˙1。

由于

上式说明B2为z1、z2和 y2的函数。

设计控制器为

定理 取V(0)≤p,p>0,则闭环系统所有信号有界,收敛。

上式说明V也在紧集之内,即如果V(0)≤p,则V(t)≤p。定理得证。即针对非线性系统模型式(4),采用控制律式(9),取V(0)≤p,p>0,则闭环系统所有信号有界且收敛。

4 Matlab仿真研究

仿真中,取 Nˉ=100,Rˉ=0.2s,C0=1250分组/s,qd=100分组,系统总不确定性干扰取一组随机数d(t)∈[-2,2],取 p=1,r=1。采用控制律式(9),采用饱和函数式(12)代替切换函数:

取 Δ=0.02,D=2,η=2+0.1,按式(10),取τ=0.01,c1=1.5+r=2.5,c2=1+r=2,仿真结果如图1至图4所示。

图1 参数固定时队列长度

图3 参数变化时队列长度

图4 参数变化时分组丢弃/标记概率

由图1和图2可以看出,在网络参数固定时,所设计的动态面滑模控制器,能迅速使队列长度稳定在期望值附近,且分组丢弃/标记概率合理有效,最后稳定在一个小于1的恒定值附近。由图3和图4可以看出,在网络参数变化的情况下,所设计控制器仍能快速有效的控制系统稳定,且队列长度和分组丢弃/标记概率抖动轻微,表现出了对系统不确定性具有较强的鲁棒性。对比文献[4]中所示的PI控制器及常规滑模控制器的仿真结果,在收敛速度及抖振幅度上,本文所设计的控制器控制效果明显更好,且消除了微分项的膨胀,使控制器和参数设计更加简单。

5 结语

针对TCP网络中的拥塞问题,本文提出了一种基于动态面滑模控制的主动队列管理算法,采用动态面的控制方法,利用一阶积分滤波器来计算虚拟控制的导数,解决了反步法对虚拟控制求导过程中引起的项数膨胀问题,并结合滑模控制方法,实现对TCP网络这种不确定非线性系统的鲁棒控制,通过Simulink仿真,证明了该算法能够克服系统的不确定性干扰,使队列长度迅速稳定在期望值附近,并维持较小的队列震荡,有效避免拥塞现象的发生。

[1]Floyd S,Jacobson V.Random early detection gateways for congestion avoidance[J].IEEE/ACM Transactions on Networking,1993,1(4):397-181.

[2]Hollot C,Misra V,Towsley D,et al.A control theoretic analysis of RED Proceedings of IEEE INFOCOM 2001[C]//Anchorage:IEEE Press,2001.1510-1519.

[3]Hollot C,Misra V,Towsley D,et al.On designing im⁃proved controllers for AQM routers supporting TCP flows[C]//Proceedings of the IEEE INFOCOM.Anchorage,2001:1726-1734.

[4]叶成荫.基于自适应反步滑模控制的主动队列管理[J].科学技术与工程,2012,12(11):2595-2597.

[5]陶仲.基于滑模控制的TCP网络主动队列管理算法的研究[D].沈阳:东北大学,2014.

[6]魏海平,叶成荫.基于终端滑模的自适应有限时主动队列管理[J].控制工程,2016,10:1510-1514.

[7]潘永平,黄道平,孙宗海.欠驱动船舶航迹Backstepping自适应模糊控制[J].控制理论与应用,2011,28(7):907-914.

[8]李铁山,杨盐生,洪碧光.船舶航迹控制鲁棒自适应模糊设计[J].控制理论与应用,2007,24(3):445-448.

[9]刘金琨,孙富春.滑模变结构控制理论及其算法研究与进展[J].控制理论与控制应用,2007,24(3):407-418.

[10]王耀南,孙炜.智能控制理论及应用[M].北京:机械工业出版社,2010:31-32.

[11]刘金琨.滑模变结构控制MATLAB仿真[M].北京:清华大学出版社,2005:152-153.

[12]Kelly F P.Mathematical modeling of the internet[C]//Mathematics Unlimited-2001 and Beyond, 2001:685-702.

猜你喜欢

滑模队列分组
水下直升机无模型参数自适应滑模控制
滑模及分数阶理论在电机控制系统中的应用
大直径库体滑模施工技术应用研究
队列队形体育教案
队列里的小秘密
基于多队列切换的SDN拥塞控制*
分组搭配
怎么分组
使用SGCMGs航天器滑模姿态容错控制
分组