电子科技大学学报(自然版)  2015, Vol. 44 Issue (3): 439-444
WSN的移动Agent随机模式与分析    [PDF全文]
杨挺1, 杨青2, 唐勇1    
1. 电子科技大学计算机科学与工程学院 成都 611731;
2. 蒙大拿州立大学计算机科学系 美国 博兹曼 59717
摘要:提出了一种随机的移动agent模式。该模式通过移动agent提供的迁移能力,支持基于群算法的事件监测,优化网络覆盖方案。通过移动agent随机生成和随机迁移,在确保对事件的检测和覆盖率的前提下,能够减少监测领域中的活动节点。通过移动agent提供的群智能提高无线传感器网络在不同环境的适应能力,适用于当网络由于能量损耗导致的分割或孤立的环境。仿真结果显示,基于该模式的算法在覆盖效率和通信距离要求上,表现出了良好的性能。
关键词覆盖     移动代理     群智能     无线传感器网络    
Random Mobile Agent Based WSN Model and Its Analysis
YANG Ting1, YANG Qing2, TANG Yong1     
1. School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 611731;
2. Department of Computer Science, Montana State University Bozeman, USA 59717
Abstract: In order to optimize wireless sensor network coverage scheme, a random mobile agent-based wireless sensor network model (RMAWSN) is presented in this paper. The model uses swarm optimization algorithm to relocate active mobile agent for event detection. In this model, active mobile agent provides several advantages by the characteristics of random generation and movement: reducing active nodes in monitored area on the premise of coverage rate and the adaptation of divided or isolated network. Experiment results show that this model effectively improves network coverage and reduces consideration of communication distance.
Key words: coverage     mobile agent     swarm intelligence     wireless sensor network    

无线传感器网络涉及如覆盖、检测时间、能量消耗、网络生存时间、鲁棒性、安全、隐私、数据共享、延迟等问题通常需要较为复杂的算法和技术。为了实现其特有目的,WSN需要成为可自动配置、可调、远程控制的网络。移动agent(mobile agent,MA)技术可为WSN应用领域中的若干目标提供可行的解决方案。

MA是一种特殊的软件,能够自主运行,并在部署后能够从一个节点移动到另一个节点进行自动的数据处理,是WSN完成复杂应用、实现节点自治的有效途径。文献[1]使用MA在WSN中对移动目标进行自动跟踪。与传统的agent不同,MA在无线传感器网络中通过其移动性能够承担很多重复工作,并由于MA是目标指向的,能够为用户提供管理抽象能力,当其部署在网络中后能够独立完成工作。MA仅在需要时才通知用户目标的完成状态。基于WSN的agent需要具有迁移能力,能够在确保其数据完整的前提下完成状态的转移。移动agent具有比固定的agent更强的自治性。

基于移动agent技术的WSN架构能够为群智能算法[2]提供支撑框架。该研究有以下特点:1) 移动agent在局部随机产生降低了sink节点的数据传输量。2) 多移动agent协同能够扩大区域覆盖率。3) 随机生成和随机迁移的活动节点需要较少的活动完成对事件监控。

1 相关工作

由于WSN节点几乎都在无人管理的环境部署,因此WSN节点需要极强的自适应能力。文献[3]提出动态宏程序(dynamic macro-programming)的WSN的概念。该研究定义了元代理(meta-agent)的概念,即固定代理给远端的移动agent发出查询消息(uQueries)以完成相应的任务。由于该技术提出基于移动agent的节点能够被赋予多种不同的能力,因此通过uQueries能够增加节点的动态工作能力。

为了提高数据融合精度,减少传输数据的能量消耗,研究WSN的数据和压缩融合技术是必要的,相关研究主要集中在成簇、成链、树和移动agent等方面。事件检测是基于移动agent的WSN研究重点,文献[4]给出了使用MA产生和维护从设计用户界面到发现事件节点的最优路径的技术,从而达到WSN快速响应的目的。MA由当地的代理产生并在网络中迁徙,对最优路径进行维护和升级。但根据仿真结果,MA在事件发生处的密集较高,可能导致节点的能量消耗过快。

除了研究基于移动agent的WSN结构外,还有一些专用移动agent结构,如文献[5]通过建立容错模型和分布式数据库,构建能够检测错误并修复的移动agent结构,以减少持续维护网络管理流量的开销。发放子代理的过程可以程序化,并且能够分批进行。

2 RMAWSN系统模型

移动agent通过迁移代码可以方便地进行任务重置,在本地进行数据处理,完成多点协同合作等功能,较通过固定节点完成所有独立任务的WSN而言更为灵活。图 1展示了3种基于移动agent的无线传感器数据传输模式。图 1c为本文讨论的采用随机产生和迁移的无线传感器获取数据的模式,称为基于随机移动agent的WSN(random mobile agent-based WSN,RMAWSN)。

图 1 WSN中的数据传输示意图

RMAWSN中的MA有两种状态,即激活与休眠状态。每个代理激活状态意味着代理能够执行代理各种行为,如环境检测。处于休眠状态的代理能够自动激活,或者根据网络状态激活。休眠状态的代理不意味着节点也处于休眠状态,节点依然能够接收无线信号,执行其他日常工作。

RMAWSN中,每个激活状态的代理运行一个定时器,限制MA的激活时间,因此MA拥有短周期特点。定时器的计数根据代理移动步数减少。每个代理处于休眠状态并等待被激活。采用短周期MA的原因有以下几点:1)能够避免激活代理的分布不均;2) 能够避免MA在一个区域重复迁移;3) 能够控制网络中激活状态代理的数目,提高能量的使用率。

图 1a为移动agent的分布式传感器网络(mobile agent-based distributed sensor network, MADSN)[6]的示意图,该移动agent采用CS模式的WSN的数据传输过程。在sink节点需要多次往返传输数据。监控区域发生异常事件后,附近的传感器需要通知sink节点,在sink节点决策后,派出MA进行监测。该过程需要确定源节点,即能够探测到事件的传感器节点,MA能够根据源节点的分布自行完成行程规划。

图 1b所示,基于移动agent的WSN(mobile agent-based WSN,MAWSN)[7]提出了采用母agent (mother agent)的结构以减少数据传输量。sink节点向目标区域发送母agent,母代理到达目的节点后,发送若干子代理到事件区域周围。每个子代理在完成事件检测后,需要单独从sink节点出发并返回sink节点。

图 1c所示,RMAWSN模式的节点在本地即可获取数据。MA并不由sink节点发出,而在网络中自动生成,并能够随机地迁移。代理在发现事件后可以根据行程规划进行迁移,获取数据后,再单程返回sink节点。这种模式在WSN网络规模较大时,能得到更佳的能耗效率。

定义节点发送、接收、感知过程的单位能耗分别为eter、es;未携带数据的代理lnew假设从每个节点能够获取的数据为lnew。假设图 1中访问的所有节点传输距离相同,代理头部信息相同,图 1中,代理访问的源节点数为n,从sink节点到源节点经过的节点数为m

${E_{\rm{m}}} = {l_{{\rm{new}}}}({e_{\rm{t}}} + {e_{\rm{r}}})$

MA获得数据后,中继节点的能耗也相应地增加为:

${E_{\rm{m}}} = ({l_{{\rm{new}}}} + {l_{{\rm{node}}}})({e_{\rm{t}}} + {e_{\rm{r}}})$

图 1a中,m个MA从sink节点出发,迁移到事件附近的m个源节点,并返回sink节点,总能耗为:

${E_{\rm{a}}} = mn{l_{{\rm{new}}}}({e_{\rm{t}}} + {e_{\rm{r}}}) + n({l_{{\rm{new}}}}{\rm{ + }}{l_{{\rm{node}}}})({e_{\rm{s}}}{\rm{ + }}{e_{\rm{t}}}{\rm{ + }}{e_{\rm{r}}}) + mn({l_{{\rm{new}}}}{\rm{ + }}{l_{{\rm{node}}}}{\rm{)(}}{e_{\rm{t}}}{\rm{ + }}{e_{\rm{r}}})$ (1)

图 1b中,MA从sink节点出发,迁移至源节点,并将数据返回到sink节点的过程,总能耗为:

$ \begin{array}{c} {E_{\rm{b}}} = m{l_{{\rm{new}}}}({e_{\rm{t}}} + {e_{\rm{r}}}) + n{l_{{\rm{new}}}}({e_{\rm{t}}} + {e_{\rm{r}}}) + \\ n({l_{{\rm{new}}}} + {l_{{\rm{node}}}})({e_{\rm{s}}} + {e_{\rm{t}}} + {e_{\rm{r}}}) + \\ m({l_{{\rm{new}}}} + {l_{{\rm{node}}}})({e_{\rm{t}}} + {e_{\rm{r}}}) \end{array}$ (2)

图 1c中,假设节点随机游动k次后发现事件,在遍历n个源节点后返回sink节点的能耗为:

$ \begin{array}{c} {E_{\rm{c}}} = k{l_{{\rm{new}}}}({e_{\rm{t}}} + {e_{\rm{r}}} + {e_{\rm{s}}}) + \\ n({l_{{\rm{new}}}}{\rm{ + }}{l_{{\rm{node}}}})({e_{\rm{s}}} + {e_{\rm{t}}} + {e_{\rm{r}}}) + \\ m({l_{{\rm{new}}}} + {l_{{\rm{node}}}})({e_{\rm{t}}} + {e_{\rm{r}}}) \end{array}$ (3)

由式(1)和式(2),将图 1a的MADSN构架与图 1b的MAWSN构架的能耗进行对比,得:

$ {E_{\rm{a}}} - {E_{\rm{b}}} = {l_{{\rm{new}}}}{\rm{(}}{e_{\rm{t}}} + {e_{\rm{r}}})(mn - m - n)$ (4)

通过式(4)能够看出,若源节点与sink节点越远,源节点数量越多,MAWSN模式较MADSN模式的效率要高很多。

图 1c的RMAWSN模式与图 1b的MAWSN模式相比,得:

$ {E_{\rm{b}}} - {E_{\rm{c}}} = {l_{{\rm{new}}}}[(m + n)({e_{\rm{t}}} + {e_{\rm{r}}}) - k({e_{\rm{s}}} + {e_{\rm{t}}} + {e_{\rm{r}}})]$ (5)

根据式(5),当$m + n \ge \frac{{{e_{\rm{t}}} + {e_{\rm{r}}} + {e_{\rm{s}}}}}{{{e_{\rm{t}}} + {e_{\rm{r}}}}}k$时,MAWSN模式的能耗比RMAWSN模式高,因此在特定的情况下,RMAWSN模式的代理能耗效率更好,更适于较大规模的WSN应用。

3 RMAWSN的覆盖区域

随机产生和随机移动的MA能够获取更好的目标监测能力和更少的活动传感器。本节采用区域覆盖方法评估RMAWSN的随机模型,基于文献[8, 9]中寻找最佳突破路径(maximal breach path)和最佳支撑路径(maximal support path)使用的部分定义。

定义节点的感知范围半径为r;被测物体从S点到D点的路径轨迹为曲线p。设曲线p1p2p的两侧,并分别离曲线p的距离为rp1p2构成的封闭区域为$||{Z_p}||$。

$||{Z_p}||$内若无探测器,即传感器节点无法发现穿越该区域的物体[10],因此物体沿路径p被探测到的可能性为:

$ {P_d}(p) = 1 - P(Np = 0) = 1 - {e^{ - \lambda ||Np||}}$ (6)

SD两点之间曲线p的长度为x,即:

$||{Z_p}|| = 2rx + \pi {r^2} $ (7)

式中,2rxp1p2构成的条状区域面积;πr2为条状区域两端分别与点S和点D为中心的两个半圆面积(其半径为r)。将式(7)代入式(6),得检测到的概率:

${P_d}(p) = 1 - P(Np = 0) = 1 - {e^{ - \lambda 2rx + {\rm{\pi }}{r^2}}} $ (8)

通过式(7),确定发现物体的概率和穿过该区域的最短路径长度,可以推算出穿过区域时,节点能够发现试图穿过该区域的物体所需部署的密度:

$\lambda > \frac{{ - \ln (1 - {P_{\rm{d}}}(p))}}{{{\rm{2}}rx + \pi {r^2}}} $ (9)

若确定检测到目标的概率Pd(p)和目标穿越区域的路径长度x,即区域中活动节点的密度就能根据式(9)计算出。需要提出,当$x \to \infty $时,表示被测物体在区域中不断徘徊,被测的可能性为百分之百。即当$x \to \infty $时,且物体不知活动节点位置,$P_d^\infty \to 1$。

定义被测物体移动速度为v,节点部署密度为${\lambda _s}$,将传感器区域分为n个小区域,即$||{Z_i}||(i = 1,2, \cdots ,n)$,节点穿过区域的时间t = n/v。将t分为m份,定义每一份为一个步长,一个步长的距离为n/m。若物体在$||Z||$移动一个步长的距离,被发现的概率定义为ps

根据式(7),${\lambda _s}$和Ps的关系为:

${P_{\rm{s}}} = 1 - {e^{ - {\lambda _s}(2rn/m + \pi {r^2})}} $ (10)

物体移动一个步长的时间后,所有探测节点根据部署密度${\lambda _s}$重新部署。物体穿过m个步长被发现的概率为:

${P_d} = 1 - {(1 - {p_{\rm{s}}})^m}$ (11)

m足够大,且探测物体的速度已知时,Ps可以设置很小,即根据式(9),传感器节点部署密度${\lambda _s}$可以设置得很小。

由于激活的移动agent密度较随机固定激活节点数量少,显然该算法在网络中所需的总能量要小。同时由于移动agent的随机移动和自动随机产生机制,能量消耗的分布也能满足均匀分布的目标,避免监测区域中过早出现监测空洞。因此通过移动agent形式的MA在寻找事件的过程中,能量消耗和覆盖效率均能获得很好的平衡。

根据式(11),若网络中激活状态的代理密度接近${\lambda _s}$,传感器网络能够有效地检测和跟踪到目标。为了获得所需密度${\lambda _s}$,每个代理保持一个定时器t1,t2记录未被MA访问的时间。假设网络中所有节点数为∑Ni,若t1=tmax,代理将根据概率Paf=λS/∑Ni激活,并设置定时器t1=0。若t1 < tmax,代理处于休眠状态,若另一个MA访问该节点(与该节点通信)时,休眠代理将设置定时器t1=0。

根据式(10),激活状态的代理需要随机在区域$||{Z_p}||$中移动或出现才能达到Pd(p),因此MA需要能够随机迁移到通信范围内的休眠代理。

4 RMAWSN仿真结果

本文采用基于RMAWSN模式的人工鱼群算法(short life artificial fish swarm algorithm, SLAFSA)[11]进行仿真验证。表 1为实验的详细参数。网络存在10个MA,在50×50的网络中一共部署136个节点,节点的通信距离为10,感知距离为4。RMAWSN的MA将运行15次。实验中随机放置了10个事件,仿真结果显示所有事件在5步后均被发现。设定发现事件的MA消失,长时间未被访问的节点根据概率Paf自动激活MA。

表1 移动agent实验参数

MA在网络中的移动情况如图 2所示。根据表 2,在3步后,7个事件被发现,同时接近半数的节点被访问到;在7步后,即图 2c,接近80%的节点被访问,覆盖率接近80%,并发现了所有的事件。在图 2d中,MA覆盖了近90%的节点。根据表 2,在第7步时覆盖率接近80%,并发现了所有的事件。

表2 MA与覆盖率和事件关系

图 2 MA分别在初始、第3、7和第11步的分布状态

图 2b的右下角区域几乎没有节点访问,该区域被当前MA访问的几率很小。图中在点(45,11)处一个新的MA被激活,在5步后,该MA将对该区域探索一遍。这种自我激活的机制能够让算法避开空洞区域。

4.1 RMAWSN的覆盖性能

本文将文献[12]中描述的两种基于AFSA和OAFSA算法与基于RMAWSN的SLAFSA算法进行比较,在表 3中显示了3种算法的网络覆盖率。每种算法使用相同的网络参数,如50x50的区间,50个节点,通信距离为12,感知距离为4。从表 3中可以看到,SLAFSA算法在5步时获得近80%的覆盖率,而在10步时获得了近90%的覆盖率。

表3 MA的起始数目和移动15步后的节点覆盖率 %
4.2 RMAWSN的参数分析

从仿真结果看,在节点密度固定时,RMAWSN节点覆盖率与两个因素相关:MA的数量和MA移动的步数。显然,步数越多获得的覆盖率越高。其次,仿真发现RMAWSN模式下,覆盖率与通信距离无关。

1) MA的数量与覆盖率

MA的数量是网络覆盖中重要的参数之一。在表 4中显示了不同的起始MA数量与MA移动了15步之后的节点覆盖率的关系。根据RMAWSN的随机模型,SLAFSA算法的节点能够在时间t1后随机激活MA,因此即使起始MA的数量为2个,在20步后,网络也能获得接近80%的节点覆盖率。

表4 MA的起始数目和移动后的节点覆盖率

2) 通信距离对覆盖率的影响

节点之间的无线通信是重要的能量消耗因素。越长的通信距离意味着相同密度下的网络将消耗更多的通信能量。有意思的是,算法分析中发现延长通信距离并不能增加网络覆盖的效果。

为研究通信距离与覆盖率的关系,图 3图 4统计了在50×50的范围内部署450个节点,并且运行10步后的结果。图 3研究节点在不同通信距离下的累计激活节点,图 4统计在不同通信距离下的覆盖率,两图结果均显示了激活节点的密度和覆盖范围与通信距离无关。或者说,通信距离对RMAWSN模式的性能影响很小。实验说明采用RMAWSN模式的WSN,节点可以采用较短的通信距离节约能量,且不影响网络的覆盖率。

图 3 不同通信范围的活动节点

图 4 不同通信范围的覆盖率
5 结 束 语

本文提出了一种新的基于移动agent的WSN模式RMAWSN,在减少能量消耗和提高事件的覆盖检测能力上有较好的表现。通过实验,发生在监测区域的事件能够有效地在较短时间内被随机游动的MA发现。由于MA的随机行为和短周期特点,网络需要的活动节点更少,并能有效地发现事件。实验表明,在该模式下节点通信距离可以与覆盖率无关。

参考文献
[1] SUENAGA S, HONIDEN S. Constructing locally centralized applications by mobile agents in wireless sensor networks[C]//Proc of the ATSN. Estoril, Portugal:[s.n.], 2006.
[2] LEE J W, CHOI B S, LEE J J. Energy-efficient coverage of wireless sensor networks using ant colony optimization with three types of pheromones[J]. IEEE Transactions on Industrial Informatics, 2011, 7(3): 419-427.
[3] RAZAVI R, MECHITOV K, AGHA G, et al. Dynamic macroprogramming of wireless sensor networks with mobile agents[J]. Policy, 2007(1): 1-6.
[4] KAKKASAGERI M S, MANVI S S, SORAGAVI G D. Mobile agent based event discovery in wireless sensor networks[C]//Proc of the 5th WSEAS Intl Conf on Applied Computer Science. Hangzhou:[s.n.], 2006.
[5] SALIM S, JAVED M, AKBAR A H. A mobile agent-based architecture for fault tolerance in wireless sensor networks[C]//Communication Networks and Services Research Conference (CNSR). Montreal, QC, Canada: IEEE, 2010.
[6] QI Hai-rong, XU Ying-yue, WANG Xiao-ling. Mobile- agent-based collaborative signal and information processing in sensor networks[J]. Proceedings of the IEEE, 2003, 91(8): 1172-1183.
[7] CHEN M, KWON T, YUAN Y, et al. Mobile agent based wireless sensor networks[J]. Journal of Computers, 2006, 1(1): 14-21.
[8] HEINZELMAN W R, CHANDRAKASAN A, BALAKRISHNAN H. Energy-efficient communication protocol for wireless microsensor networks[C]//Proceedings of the 33rd Annual Hawaii International Conference on System Sciences. Hawwii: USA, IEEE, 2000.
[9] HUANG C F, TSENG Y C, LO L C. The coverage problem in three-dimensional wireless sensor networks[J]. Journal of Interconnection Networks, 2007, 8(3): 209-227.
[10] LIU B, TOWSLEY D. A study of the coverage of large-scale sensor networks[C]//IEEE International Conference on Mobile Ad-hoc and Sensor Systems. Fort Lauderdale, FL, USA: IEEE, 2004.
[11] YANG T, YONG T. Short life artificial fish swarm algorithm for wireless sensor network[C]//International Conference on Computational Problem-solving (ICCP). Beijing: IEEE, 2013.
[12] WANG Yi-yue, LIAO Hong-mei, HU Heng-yang. Wireless sensor network deployment using an optimized artificial fish swarm algorithm[C]//International Conference on Computer Science and Electronics Engineering (ICCSEE). Hangzhou: IEEE, 2012.