留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于节点移动性的水下动态拓扑控制方法

郝琨 薛旭峰 刘永磊 李志圣 赵晓芳

郝琨, 薛旭峰, 刘永磊, 李志圣, 赵晓芳. 基于节点移动性的水下动态拓扑控制方法[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023152
引用本文: 郝琨, 薛旭峰, 刘永磊, 李志圣, 赵晓芳. 基于节点移动性的水下动态拓扑控制方法[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023152
HAO Kun, XUE Xufeng, LIU Yonglei, LI Zhisheng, ZHAO Xiaofang. Dynamic Topology Control Method for Mobile Underwater Sensor Networks[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023152
Citation: HAO Kun, XUE Xufeng, LIU Yonglei, LI Zhisheng, ZHAO Xiaofang. Dynamic Topology Control Method for Mobile Underwater Sensor Networks[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023152

基于节点移动性的水下动态拓扑控制方法

doi: 10.12178/1001-0548.2023152
基金项目: 国家自然科学基金(61902273)
详细信息
    作者简介:

    郝琨,博士,教授,主要从事水下传感器网络、计算机视觉方面的研究

    通讯作者: 通信作者E-mail:yongleiliu@vip.163.com
  • 中图分类号: TP393

Dynamic Topology Control Method for Mobile Underwater Sensor Networks

图(12) / 表(2)
计量
  • 文章访问数:  529
  • HTML全文浏览量:  205
  • PDF下载量:  7
  • 被引次数: 0
出版历程
  • 收稿日期:  2023-06-01
  • 修回日期:  2023-11-27
  • 网络出版日期:  2024-07-17

基于节点移动性的水下动态拓扑控制方法

doi: 10.12178/1001-0548.2023152
    基金项目:  国家自然科学基金(61902273)
    作者简介:

    郝琨,博士,教授,主要从事水下传感器网络、计算机视觉方面的研究

    通讯作者: 通信作者E-mail:yongleiliu@vip.163.com
  • 中图分类号: TP393

摘要: 针对水下传感器节点随洋流移动导致的网络覆盖率和连通率较低的问题,提出一种新的水下动态拓扑控制方法。节点部署阶段,利用模拟退火算法计算节点的期望部署位置,并采用蜿蜒洋流移动模型预测节点的实际部署位置,节点无须消耗额外能量调节自身位置即可保持网络的全连通和高覆盖率;拓扑优化阶段,以最大化延长网络寿命为目标,自主水下航行器根据节点实时情况执行最佳拓扑优化策略。仿真结果表明,与现有的CDA、SLO及随机部署方案相比,提出的新方法在保持全连通性的前提下具有更好的覆盖率和平均节点度;节点存活率和数据包传输成功率分别提升了11.6%和11.53%,有效提高了网络寿命。

English Abstract

郝琨, 薛旭峰, 刘永磊, 李志圣, 赵晓芳. 基于节点移动性的水下动态拓扑控制方法[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023152
引用本文: 郝琨, 薛旭峰, 刘永磊, 李志圣, 赵晓芳. 基于节点移动性的水下动态拓扑控制方法[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023152
HAO Kun, XUE Xufeng, LIU Yonglei, LI Zhisheng, ZHAO Xiaofang. Dynamic Topology Control Method for Mobile Underwater Sensor Networks[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023152
Citation: HAO Kun, XUE Xufeng, LIU Yonglei, LI Zhisheng, ZHAO Xiaofang. Dynamic Topology Control Method for Mobile Underwater Sensor Networks[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023152
  • 随着科学技术的发展,水下传感器网络(Underwater Sensor Networks, UWSNs)已经被广泛应用于海上勘探、军事监视、海洋学数据采集、灾害预警等军事、科学和商业等领域[1]。然而,由于水声信道固有的诸如高传输时延、有限的带宽、节点移动及严重多径等特点给水下传感器网络拓扑控制带来了很大挑战。因此,UWSNs中高效、可靠的拓扑控制方法成为热点研究问题[2]

    在拓扑控制研究中,节点部署和拓扑优化是两个至关重要的问题。其中覆盖率和连通率是评估节点部署性能的两个主要指标。覆盖率是指节点的总覆盖情况和水下空间的总覆盖情况之比,用于表示传感器网络的覆盖性能;连通率是指能够和水面汇聚节点通信的节点数与总节点数之比,用于表示传感器网络的连通性能。二者存在相互限制的关系,如果要保证更高的连通率,则节点之间的距离会更短,这会导致网络覆盖率降低[3]

    文献[4]提出了一种海狮优化算法,通过多次迭代确定传感器节点部署的最优位置,以保持最高的覆盖率和连通性,这种部署方式较为简单,但难以适应水下拓扑的动态变化。文献[5]提出了一种基于连通支配集的深度自调节分布式节点部署方案,该方案充分考虑了多个因素,保证了节点的有效覆盖和全连通,但节点的能耗过高。文献[6]提出了一种动态拓扑控制算法来实现移动水下无线传感器网络的节点部署,该算法根据节点的运动状态和能量状况来调整节点之间的距离,以优化网络的性能,但该算法对网络中节点数量的要求较高。文献[7]引入了粒子群优化算法和人工蜂群算法用于避免节点故障、改善网络寿命,通过移动冗余节点来填充覆盖空洞区域,该策略同样需要较大的节点能量消耗。

    近年来,随着自主水下航行器(Autonomous Underwater Vehicle, AUV)的应用日益广泛,基于AUV的水下网络拓扑也随之出现[8]。这种拓扑具有更好的灵活性和经济适用性,能够适应水下传感器网络的复杂环境[9]。文献[10]提出了一种AUV辅助的3D网络部署方案,该方案中AUV负责接收传感器节点的信息并转发,这种部署方法可以有效节省传感器网络的整体能量并保证覆盖率和连通性,但是需要较高的部署成本。文献[11]提出了一种基于拓扑重构的拓扑优化策略,该策略通过模拟鱼类行为调整传感器节点的位置来优化水声传感器网络的覆盖率,还提出了基于双AUV的拓扑优化方法,提高了网络拓扑的鲁棒性,延长了网络寿命,但是该策略中拓扑重构需要消耗较多节点能量。

    综上,大部分拓扑控制策略未能充分考虑节点随洋流的移动及节点的能耗等问题,本文提出了一种基于节点移动性的水下动态拓扑控制方法(Dynamic Topology Control Method for Mobile Underwater Sensor Networks, DTCM)。利用模拟退火算法(Simulated Annealing, SA)[12]的全局寻优能力计算出各节点在部署工作完成时的期望位置,再利用蜿蜒洋流移动模型(Meandering Current Mobility Model, MCM)[13]预测各节点实际部署位置,避免了节点主动调节自身位置以消耗额外能量的情况,而是充分利用节点随洋流移动的特性,实现网络的全连通率和高覆盖率;节点部署完成后,AUV周期性收集节点的位置、能量信息并根据节点的剩余能量情况采取最佳的拓扑优化方案,避免发生拓扑空洞问题,从而保证网络的持续稳定运行。

    • 在DTCM中,水下传感器网络由汇聚节点、普通传感器节点、AUV共同组成。汇聚节点部署于水面,经过卫星中继,可以通过无线电通信与地面基站传输数据;水下传感器节点负责监测收集环境数据并通过声信号经一跳或多跳路径将数据传至水面汇聚节点;AUV按照预先规划的路径在水下进行周期性巡航,实时监测水下传感器节点的状态,并根据节点实时情况执行拓扑优化措施。网络模型如图1所示。

      图  1  网络模型图

      本文充分考虑水下节点部署过程中节点随洋流移动的特性。如图1所示,编号为1的传感器节点最先部署,在后续2和3节点部署过程中,节点1会随洋流移动导致位置发生偏移。假设当部署节点3时,节点1已经移动至1'处,如果此时仍按照最初规划位置对节点3进行部署,这对网络拓扑覆盖率和连通率会产生较大影响。

      本文提出的DTCM分为节点部署和拓扑优化两个阶段。

      1) 节点部署阶段:首先采用SA算法计算出所有节点在部署完成时刻的期望位置,在此基础上考虑节点在部署过程中随洋流的移动特性,利用MCM以及节点部署时间预测各节点的实际部署位置。

      2) 拓扑优化阶段:网络运行过程中,AUV按照预设路径巡航,实时收集各传感器节点的位置和能量信息并根据是否存在剩余能量低于设定阈值的节点采取不同的拓扑优化方法,避免发生拓扑空洞问题。

    • DTCM的目标是在节点部署阶段实现拓扑的最优部署,在拓扑优化阶段实现对拓扑的实时最佳优化,所以本文通过引入拥有较强全局寻优能力的SA算法来解决最优化问题,在多种约束条件下建立目标函数。

    • SA算法是一种通用的优化算法,它模拟了固体的退火过程,通过降温来使粒子达到低能量状态。算法的执行包括两个主要部分:退火过程和Metropolis准则。

      在退火过程中,算法从一个初始解开始并逐渐搜索空间中的其他解。初始时,算法设定一个较高的初始温度,并以指数速率降低温度;每次迭代时,算法接受带有一定概率的更劣解,这样可以跳出局部最优而不会被困在局部最优中;随着温度的下降,概率降低,留下的解将越来越优。一般情况设定初始温度越高则结果最优,但是也需要视实际收敛速度和应用情况而定,本文根据仿真的实际情况通过实验选取合适初始温度,确保节点部署位置最优。

      Metropolis准则是决定是否接受新解的关键。如果新解具有更好的优化值,则始终接受该解;否则,以一定概率接受比上一次迭代中更差的解。这个概率与初始温度相关,随着时间的推移而逐渐降低。

    • 在节点部署阶段,为了使用SA算法实现节点最优化部署,本文选取了覆盖重叠最小化、覆盖率和连通率最大化3个子目标。假设$ N = \{ {N_1},{N_2},\cdots,{N_a}\} $$ a $个水下传感器节点构成的节点集,每个节点$ {N_i} = ({{\mathrm{NL}}_i},{{\mathrm{NE}}_i}) $包含其位置和剩余能量信息,则节点部署阶段的多目标优化函数定义如下:

      $$ \left\{ \begin{gathered} {F_1} = \mathop {\arg \min }\limits_N \bigg( {{f_1}\left( N \right) + \frac{1}{{{f_2}\left( N \right)}} + \frac{1}{{{f_3}\left( N \right)}}} \bigg) \\ {\mathrm{s}}.{\mathrm{t}}. \\ C:{f_3}\left( N \right) = 1 \\ \end{gathered} \right. $$ (1)

      式中,$ {f_1}\left( N \right),{f_2}\left( N \right)和{f_3}\left( N \right) $分别表示覆盖重叠、覆盖率和连通率子目标;约束条件C表示在节点部署阶段节点保持全连通状态。

      在拓扑优化阶段,为了实现对拓扑的实时最佳优化,本文选取了覆盖率、连通率最大化和拓扑能量均衡3个子目标,并且定义了最佳优化位置$ {\mathrm{ol}} $,假设其为一个仅包含位置信息的节点$ {N_{{\mathrm{ol}}}} $,与拓扑中的$ a $个节点共同构成节点集$ {N'} = \{ {N_1},{N_2},\cdots,{N_a},{N_{{\mathrm{ol}}}}\} $,则拓扑优化阶段的多目标优化函数定义如下:

      $$ {F_2} = \mathop {\arg \min }\limits_{{\mathrm{ol}}} \bigg( {\frac{1}{{{f_2}\left( {{N'}} \right)}} + \frac{1}{{{f_3}\left( {{N'}} \right)}} + {f_4}\left( {{N'}} \right)} \bigg) $$ (2)

      式中,$ {f_4}\left( N \right) $表示能量均衡子目标,各个子目标的详细设计如下。

      1) 覆盖重叠

      覆盖重叠是指传感器节点之间感知区域重合的部分。若已知传感器节点$ u $$ v $的欧氏距离为$ d\left( {u,v} \right) $,且假设每个节点的探测范围均为球形,半径为$ {R_s} $,则两节点的覆盖重叠部分$ V $可由下式给出:

      $$ V=\left\{\begin{array}{*{20}{c}} \dfrac{4}{3} {\text π} R_s^3\bigg(1-\bigg(\dfrac{d(u, v)}{2 R_s}\bigg)^2\bigg)^{\tfrac{3}{2}}& d(u, v)< 2 R_s \\ 0 & d(u, v) \geq 2 R_s \end{array}\right. $$ (3)

      对于传感器节点组$ N $,若存在$ e $个覆盖重叠区域,则总覆盖重叠部分为:

      $$ {f_1}\left( N \right) = \sum\limits_{i = 1}^e {{V_i}} $$ (4)

      2) 覆盖率

      水下传感器节点的覆盖率是节点部署的一个重要指标,为了评估节点的覆盖率情况,本文引入布尔感知模型。该模型将三维水下区域划分为$ J $个规则立方体区域,若每个立方体的中心在某个节点的传感范围内,则可认定该区域被有效覆盖,假设被有效覆盖的区域为$ {J_s} $,则节点集$ N $的总覆盖率为:

      $$ {f_2}\left( N \right) = C(N) = \frac{{{J_s}}}{J} $$ (5)

      3) 连通率

      水下传感器节点的连通率是一个传感器网络能否正常通信的主要指标。本文将网络连通率定义为能够与水面汇聚节点进行单跳或多跳水声通信的节点数量$ {a_c} $与网络中传感器节点总数$ a $的比值[14]

      $$ {f_3}\left( N \right) = {\text{Net}}C(N) = \frac{{{a_c}}}{a} $$ (6)

      4) 能量均衡

      由于水下传感器节点更换电池困难,节点能量成为了一个非常重要的指标。UWSNs中传感器节点的通信、移动等行为都会造成其能量损失,而通信和移动是能量消耗的主要因素[2]。因为本文提出的方法不涉及节点的主动移动,所以仅考虑通信消耗的能量。

      在拓扑优化阶段,为了保证最佳优化位置$ {\mathrm{ol}} $更接近于能量最小的节点,本文根据传感器节点位置$ {{\mathrm{NL}}_i} $和剩余能量$ {{\mathrm{NE}}_i} $,设计了如下能量均衡函数:

      $$ {f_4}\left( N \right) = \sum\limits_{i = 1}^a {\frac{{d\left( {{\mathrm{ol}},{{\mathrm{NL}}_i}} \right)}}{{{{\mathrm{NE}}_i}}}} $$ (7)
    • 本文充分利用节点随洋流的移动特性,使所有节点在部署过程中随洋流移动后仍然可以保持最优的部署状态。首先,为每个节点随机设置位置初始值,然后利用SA算法迭代出各个节点的最优期望位置,以保证拓扑的高覆盖率和全连通率。在算法执行过程中,需要计算目标函数式(1)以迭代求解最优节点位置。节点的全连通率约束条件使得算法在每次迭代中只接受连通率为1的解,这会导致节点的覆盖率降低。但是,所有节点都可以有效通信,并且通过子目标中的覆盖重叠要求,在保证全连通的前提下达到最大的覆盖率。节点不同连通率的覆盖情况如图2所示。

      图  2  传感器节点不同连通率的覆盖情况

      图2$ {R_c} $表示传感器节点的通信距离,黑色圆圈为传感器节点,灰色圆圈表示节点的覆盖范围,可以看出左图在节点全连通的情况下覆盖范围要小于右图的未连通情况。

      在计算出节点的期望位置后,DTCM根据节点部署时间利用MCM推测出各个节点的实际部署位置。假设每个节点的部署时间都恒定为$ {t_d} $,且$ {t_d} $时间内仅可部署一个节点,则每个节点在部署后都具有不同的漂移时间。假设当前节点的部署序号为$ i $,则该节点在全部$ a $个节点部署过程中的漂移时间$ {t_m} $为:

      $$ {t_m} = (a - i) {t_d} $$ (8)

      MCM采用二维模型来模拟水下节点的移动,因为海洋是旋转的、分层的流体,大部分垂直运动都可以忽略不计。假设部署序号为$ i $的节点平面坐标为$ \left( {{x_i},{y_i}} \right) $,文献[13]将该节点在$ {t_m} $时间内的移动函数定义为:

      $$ \begin{split} &\qquad \qquad \qquad \varPsi ({x_i},{y_i},{t_m}) =- \\ & \tanh \left[ {\frac{{{y_i} - B\left( {{t_m}} \right)\sin \left( {k({x_i} - c{t_m})} \right)}}{{\sqrt {1 + {k^2}{B^2}\left( {{t_m}} \right){{\cos }^2}\left( {k({x_i} - c{t_m})} \right)} }}} \right] \end{split} $$ (9)

      式中,$ k $是当前波数,通常为2π/7.5;$ c $是向下游流动的相速度,通常为0.12;$ B\left( {{t_m}} \right) $表示洋流振幅函数,由式(10)给出:

      $$ B\left( {{t_m}} \right) = A + \varepsilon \cos \left( {\omega {t_m}} \right) $$ (10)

      式中,$ A $表示洋流的平均宽度,通常为1.2;$ \varepsilon $表示调制幅度,通常为0.3;$ \omega $表示调制频率,通常为0.4。所以传感器节点$ i $在随洋流经过时间$ {t_m} $的移动后,平面坐标$ \left( {{{\dot x}_i},{{\dot y}_i}} \right) $可以由下式计算:

      $$ {\dot x_i} = - \frac{{\partial \varPsi \left( {{x_i},{y_i},{t_m}} \right)}}{{\partial {y_i}}} $$
      $$ {\dot y_i} = \dfrac{{\partial \varPsi \left( {{x_i},{y_i},{t_m}} \right)}}{{\partial {x_i}}} $$ (11)

      通过上述方法可以根据每个节点的最优期望位置反推出它们的实际部署位置,使得节点在按照实际部署位置部署后,即使随洋流移动也可以在所有部署工作完成时保持高覆盖率和全连通率。DTCM部署阶段伪代码如下。

      1)随机设定节点集$ N $中各节点的位置初始值;

      2)对每个传感器节点位置进行模拟退火迭代:

      根据初始设定的位置计算目标函数$ F_1 \leftarrow \underset{N}{\arg \min } $$\bigg(f_1(N)+\dfrac{1}{f_2(N)}+\dfrac{1}{f_3(N)}\bigg) $

      设定模拟退火初始温度$ T $、最低温度阈值$ T - {\mathrm{threshold}} $

      while ($ T $>$ T - {\mathrm{threshold}} $)

        针对当前节点迭代一个新的位置;

        计算 ${F_{1{\rm{new}}}} \leftarrow \mathop {\arg \min }\limits_{{N_{{\rm{new}}}}} \bigg( {f_1}\left( {{N_{{\rm{new}}}}} \right) + \dfrac{1}{{{f_2}\left( {{N_{{\rm{new}}}}} \right)}} + \bigg. $$ \bigg. {\dfrac{1}{{{f_3}\left( {{N_{{\rm{new}}}}} \right)}}} \bigg); $

        $ \Delta T \leftarrow {F_{1{\mathrm{new}}}} - {F_1} $

        if ($ \Delta T \lt 0 $&&$ {\mathrm{Net}}C\left( {{N_{{\mathrm{new}}}}} \right) = = 1 $)

          更新当前节点的位置及$ {F_1} $$ N = {N_{\rm{new}}}, {F_1} ={F_{\rm{1new}}}; $

        else if ($ {\mathrm{Net}}C\left( {{N_{\rm{new}}}} \right) = = 1 $)

          以$ \exp \left( { - \Delta T/T} \right) $概率更新节点位置及$ {F_1} $$ N = {N_{\rm{new}}},{F_1} = {F_{\rm{1new}}} $

        end if

        温度$ T $以一定比例逐渐减小;

      end while

      3)重复步骤2)直至确定每个节点的位置,并将这些节点位置设为各节点的最优期望位置;

      4)根据节点的最优期望位置利用MCM模型推测出节点的实际部署位置。

    • 传感器节点随洋流的移动、节点剩余能量过低都会对网络拓扑造成严重影响,如图3所示,编号为2的节点网络负载过大,其能量耗尽会造成网络空洞,而随着节点随洋流的移动,部分节点间的距离也会超出通信范围,导致网络链路断裂。

      图  3  网络拓扑在运行中的变化情况

      为了实现对拓扑的高效优化,DTCM在节点部署完成后,设置AUV按照预设路径周期性巡航。本文假定每个传感器节点都可以根据现有定位方法计算自己的位置,在每一个巡航周期内,AUV通过广播和接收特定分组的数据,实时收集每个传感器节点的位置和剩余能量信息。DTCM为每个节点都设置了最低能量阈值$ E - {\mathrm{threshold}} $,并根据网络中节点的剩余能量情况设计了不同优化方法。

      1)存在节点剩余能量低于最低阈值

      若AUV在收集节点信息过程中,存在某个节点的剩余能量已经低于最低阈值,这说明该节点的网络负载很大,能量已经不能再支持下一轮的网络通信。该节点在接收到AUV广播的特定分组时给AUV发送紧急修复请求,若AUV收到紧急修复请求,则立即执行修复任务:AUV以最高速度运行至问题节点位置,将自身携带的备用传感器节点部署于该位置[15],避免该区域的高网络通信需求使得节点能量耗尽导致拓扑空洞问题,随后AUV继续巡航。

      2)不存在节点剩余能量低于最低阈值

      AUV在收集完所有节点的信息后,利用SA算法计算出最佳优化位置$ {\mathrm{ol}} $,该位置即优化拓扑结构的最佳位置。在该位置的计算中充分考虑了节点剩余能量、拓扑的覆盖率和连通率,以达到拓扑优化效果最大化,有效延长网络寿命。DTCM拓扑优化阶段伪代码如下。

      ① AUV周期性巡航收集节点的位置、剩余能量;

      ② 判断是否存在剩余能量低于最低阈值的节点,若不存在则执行步骤3),否则直接执行步骤4);

      ③ 进行模拟退火迭代,确定最佳优化位置ol:

      将剩余能量最低的节点位置作为$ {\mathrm{ol}} $的初始值;

      根据$ {\mathrm{ol}} $与传感器节点情况计算${F_2} \leftarrow \mathop {\arg \min }\limits_{{\mathrm{ol}}} $

      $ \bigg( {\dfrac{1}{{{f_2}\left( {{N'}} \right)}} + \dfrac{1}{{{f_3}\left( {{N'}} \right)}} + {f_4}\left( {{N'}} \right)} \bigg) $

      设定模拟退火初始温度$ T $、最低温度阈值$ T - {\mathrm{threshold }}$

      while ($ T $>$ T - {\mathrm{threshold}} $)

        针对ol迭代一个新解;

        计算$ {F_{{\rm{2new}}}} \leftarrow \mathop {\arg \min }\limits_{{{\mathrm{ol}}_{{\rm{new}}}}} \bigg( {\dfrac{1}{{{f_2}\left( {{{N'}_{{\rm{new}}}}} \right)}} + \dfrac{1}{{{f_3}\left( {{{N'}_{{\rm{new}}}}} \right)}} + } \bigg. $$\bigg. {{f_4}\left( {{{N'}_{{\rm{new}}}}} \right)} \bigg) $

        $ \Delta T \leftarrow {F_{\rm{2new}}} - {F_2} $

        if ($ \Delta T \lt 0 $)

          更新$ {\mathrm{ol}} $$ {F_2} $

          $ {\mathrm{ol}} = {\mathrm{o}}{{\mathrm{l}}_{\rm{new}}},{F_2} = {F_{\rm{2new}}} $

        else

          以$ \exp \left( { - \Delta T/T} \right) $概率更新$ {\mathrm{ol}} $$ {F_2} : {\mathrm{ol}} = {\mathrm{o}}{{\mathrm{l}}_{\rm{new}}}, {F_2} = {F_{\rm{2new}}} $

        end if

        温度$ T $以一定比例逐渐减小;

      end while

      ④ AUV执行拓扑优化策略。

      本文考虑到AUV行驶到最佳优化位置的过程中节点的位置可能会发生变化,导致优化受到影响这一情况,所以根据MCM分析了AUV不同运行速度下运行不同距离所需的时间内节点的漂移距离,具体内容如表1所示。

      表 1  AUV运行期间节点漂移情况分析

      AUV运行速度/m·s−1 AUV运行距离/m
      140 500 900
      3 0.0014 0.0051 0.0092
      4 0.0011 0.0038 0.0069
      5 0.0009 0.0031 0.0055

      从表中可以看出,AUV在运行至目标点的短时间内,节点的漂移量微乎其微,所以在实际应用中可以忽略此影响。

    • 本方法在MATLAB平台上进行仿真,为了验证方法的有效性,本文分别从节点部署和拓扑优化两部分对方法进行性能评估。水下环境区域模型设为200 m×200 m×500 m,共设置1个汇聚节点,仿真中用到的其他参数及其值如表2所示。

      表 2  仿真参数设置

      仿真参数
      节点初始能量/J 10
      数据包大小/bytes 50
      广播包大小/bytes 5
      传感器节点数量 $ 60 \leqslant a \leqslant 160 $
      感知范围/m $ 10 \leqslant {R_s} \leqslant 70 $
      通信范围:感知范围 $ 1.5 \leqslant \alpha \leqslant 2.0 $
      传输功率/W 2
      接收功率/W 0.4
      广播功率/W 0.002
      频率/kHz 25
      传输比特率/kbps 50
      路由协议 AODV
      网络运行轮数 1000

      本文通过MCM来体现水下传感器节点随洋流的移动性,部分水下传感器节点位置在部署完成时刻及18 h、36 h、54 h、72 h后随洋流变化的情况如图4所示。

      图  4  水下传感器节点位置随洋流变化情况

    • 在第2节中提到使用SA算法计算节点部署的最佳位置,其中初始温度的设定决定了最佳位置的准确性以及算法的收敛速度。本文将初始温度设定在300 ℃~3000 ℃,传感器节点数量为90,实验结果如图5所示。可以观察到初始温度设定较低时,随着设定温度的增加,节点部署的覆盖率呈增加趋势。当初始温度设定为1200 ℃时即可达到较高的覆盖率,随着设定温度的增加覆盖率不再有明显提升。因此,在节点部署性能评估中将初始温度设定为1200 ℃,既可以保证高覆盖率,又尽可能地了缩短算法的收敛时间。本文分别从覆盖率、连通率以及平均节点度3个方面对提出的DTCM节点部署无拓扑优化方案(DTCM without Topology Optimization, DTCMWTO)与SLO算法[4]、CDA算法[5]和随机节点部署无拓扑优化方案(Random without Topology Optimization, RWTO)在同等部署环境下进行比较。

      图  5  覆盖率随初始温度的变化情况

      1)覆盖率:图6为DTCMWTO在传感器节点数量为140时,不同感知范围和通信范围下的覆盖率变化情况。从图示结果可以看出,随着感知范围的增加,覆盖率整体呈增加趋势。然而,在感知范围超过40 m时,覆盖率的增加速度逐渐平缓。这是因为随着感知范围的不断增大,网络整体覆盖率达到一定水平时,覆盖重叠也会不断增加,导致感知范围对覆盖率提升的影响逐渐减小。另外,当通信范围与感知范围的比值$ \alpha $逐渐增大时,覆盖率也随之增加。这是因为在感知范围不变的情况下,$ \alpha $增大会使得通信范围增大,节点之间的距离可以更远,从而提升覆盖率。为了更好地评估方法的性能,本文在后续实验中将感知范围固定为40 m,$ \alpha $固定为1.75。

      图  6  不同感知范围和通信范围覆盖率变化情况

      图7显示了当水下传感器节点数量从60变化到160时,不同方案覆盖率的变化。从图示结果可以看出,随着节点数的增加,4种方案的覆盖率都整体呈增加趋势。在节点数较少时,DTCM的覆盖率要比SLO低一些,这是因为通常传感器节点的通信范围设置为传感范围的1.5~2倍[16],如2.2.1节所述,本方法在节点部署位置的计算过程中为保证传感器节点的全连通,必然会导致牺牲部分覆盖率。当节点数大于120时,DTCM和CDA的覆盖率仍然在稳定增加,而其他方法覆盖率会趋于平稳,这主要是由于随着部署节点的增加,节点随洋流移动的特性会导致覆盖率受到较大影响。从全部节点数情况来看,DTCM相比SLO、CDA及随机部署方法分别平均提高5.50%、6.17%和28.00%。

      图  7  不同节点数量的覆盖率变化情况

      2)连通率:图8显示了不同节点数时不同方案连通率的变化,结果表明,不论传感器节点数量为多少,本文提出的方法DTCM和CDA都能保证节点部署的全连通率,连通性能要高于SLO,而不稳定的随机部署方案平均连通率极低。

      图  8  不同节点数量的连通率变化情况

      3)平均节点度:节点度是指拓扑中节点的邻居节点个数,一个拓扑的平均节点度越高,说明拓扑的连接性越强,也可使得网络流量更加均衡。由于RWTO随机部署节点的不确定性,其节点度的参考价值相对较低,所以评估中不对其进行比较。根据图9的结果,DTCM方法比CDA和SLO算法具有更高的平均节点度。这表明DTCM方法在考虑节点随洋流的移动特性的前提下,仍然可以保证网络具有更好的连接性和可靠性。

      图  9  不同节点数量的平均节点度变化情况

    • 对于一个拓扑来讲,评估其性能的一个重要指标是网络寿命,一般以节点存活率为依据进行评估,但是若稀疏区域的节点不参与网络运行,其可以存活较长时间,所以网络中数据包的有效传输也是一个重要指标,因此本文将具有普适性的AODV路由协议运行于网络拓扑上,分别对DTCM、DTCMWTO和RWTO这3种方案的节点存活率、数据包传递成功率以及综合网络寿命进行了比较,仿真环境与3.2.1节一致,节点数量固定为160。

      1)节点存活率:由于在复杂的水下环境中更换传感器节点电池有较大困难,一旦节点能量耗尽,则会导致覆盖空洞和通信连接中断,所以节点的存活率是评估整个网络寿命的重要指标。本文根据网络运行轮数对3种方案的节点存活率进行了比较。图10结果表明,DTCM的节点存活率比DTCMWTO平均高11.60%,比RWTO平均高25.77%。这主要是由于DTCM中对拓扑的优化可以从全局角度有效解决可能发生的网络空洞问题,延长网络寿命。随着网络的运行,节点存活率下降的速度逐渐减缓并最终稳定在较低水平,这是因为整个网络拓扑结构会逐渐进入不连通状态,导致节点之间无法进行通信,从而不消耗通信能量。

      图  10  网络运行中节点存活率变化情况

      2)数据包传输成功率:数据包传输成功率作为网络有效通信的标志也是衡量网络寿命的一个重要指标。本文同样根据网络运行轮数对3种方案的节点存活率进行了比较,图11结果表明,DTCM的数据包传输成功率比DTCMWTO平均高11.53%,比RWTO平均高55.10%。这主要是由于DTCM在节点部署阶段保证传感器节点全连通率的前提下,后续的拓扑优化使得水下传感器网络可以有效避免可能出现的覆盖空洞和链路断裂等问题。

      图  11  网络运行中数据包传输成功率变化情况

      3) 网络寿命:本文将节点存活率与数据包传输成功率综合评估,通过二者的算术平均表示传感器网络寿命,图12结果表明,DTCM的网络寿命比DTCMWTO平均高11.56%,比RWTO平均高40.44%,可以看出,本文所提出的方法可以有效延长网络寿命。

      图  12  网络运行中网络寿命变化情况

    • 本文提出了一种基于节点移动性的水下动态拓扑控制方法,在节点部署过程中不需要节点主动调节自身位置,而是充分利用节点随洋流移动的特性保证网络的高覆盖率和全连通率,然后优化拓扑延长网络寿命。方法分为两个阶段:首先是节点部署阶段,通过引入SA算法,利用节点随洋流的移动特性计算节点的最优部署位置,以实现高覆盖率和全连通率,有效提高了网络性能;在拓扑优化阶段,通过AUV的周期性巡航收集节点的位置、能量信息,并根据节点情况采取最佳拓扑优化策略。仿真结果表明:与现有的方法相比,本文提出的方法在节点部署上具有更好的覆盖率和连通性,能够适应节点的动态变化;在拓扑优化上能够在低成本低能耗的前提下有效提高拓扑的稳定性、延长网络寿命。但该方法还存在一些不足:该方法的实施需要较大的计算资源和时间成本,AUV在周期性巡航收集节点信息时也缺乏更加高效的规划,在复杂的网络环境下需要花费较多时间。在以后的工作中,将以更好地延长网络寿命为目标,针对拓扑优化作进一步研究。

参考文献 (16)

目录

    /

    返回文章
    返回