APP下载

考虑电导率和能量的水下电场自适应调整多权值成簇算法

2021-10-18吴佳楠贺曼利邸焕双谢广明

关键词:关节点能量消耗权值

吴佳楠,贺曼利,邸焕双,2,谢广明

(1.长春大学网络安全学院,吉林长春,130000;2.长春理工大学法学院,吉林长春,130000;3.北京大学工学院湍流与复杂系统国家重点实验室,智能仿生设计实验室,北京,100871)

21世纪是人类开发利用海洋的世纪,而水下机器人是人类开发、利用海洋的主要手段之一[1]。自主式水下航行器(autonomous underwater vehicle,AUV)被广泛用于如海洋勘探与测深、搜索和救援、环境监测和考古调查等任务[2−4],而具有自主操纵器系统的干预AUV 被用于自停靠、搜索和取回物体等任务[5]。

多AUV 具有高度并行性、冗余性的优点,是单个AUV 所无法比拟的[6],组网是多AUV 更好的合作十分重要的举措之一,然而,由于水下环境的特殊性,传统通信方法难以适用于水下。目前的水下通信方法主要有水下声通信、水下光通信和水下电场通信等。

1)水下声通信是水下通信中使用最广泛的技术,可以实现长达数十千米的长距离连接[7−8]。但是声学链路的传输数据速率相对较低[9],且声学链路有严重的通信延迟,不能支持大量数据实时交换,声学收发器通常体积大,成本高且耗能大并不经济[10]。此外,海洋生物利用声波完成通信和导航[11],声学技术也会影响海洋生物的通信和生活。

2)与声学方法相比,光学方法具有高传输数据速率,低链路延迟的特点,可以实现水下大容量数据传输。但是极易受到海水、悬浮颗粒、浮游生物等对光波的吸收衰减、散射等因素的影响,该方法的使用环境受到限制[12]。

3)水下电场通信速率高、延迟小,且相比于声学和光学通信来说既不需要体积大的收发器,又不受水流、水质等水下环境因素的影响。

短距离无线高数据速率水下通信系统变得越来越重要,研究人员模拟OFDM 调制光进行无线水下通信,实现短距离无线高数据传输[13]。FRATER 等[14]通过仿真比较了在大量小型AUV 集群中使用电磁和声波信号获得的网络吞吐量,发现对于相同的原始信道比特率,使用电磁信号比使用声信号获得的吞吐量最多可以高1个量级。

与水声通信相比,利用水下电场实现水下近距离的无线通信具有一定的优势[15]。水下电场通信的原理是当发射端电流形成的交变电磁场的变化频率满足准静态场条件时,放置其附近在一定范围内的接收端能检测到电势差变化,从而通过滤波、放大电路还原出发送端的信息[16]。由于发射电极板周围必须形成电场,接收电极板才能检测到电势差,而且接收电极板与发送电极板之间的角度也对电势差有影响,通信功耗较大。同时由于电场强度与其距离的立方成反比,在距离远的地方,电场信号微弱,在具有噪声干扰的情况下难以有效检测电场信号,只有在近距离情况下,才具备通信的可能性[15]。且电场通信本身会受到实际水域的电导率影响,低电导率海水的电场幅度要明显高于高电导率海水的电场幅度[17]。

北京大学机器鱼课题组[18−20]受弱电鱼启发设计的仿箱鲀机器鱼使用水下电场进行通信,其通信距离能达到3~10 m。水下电场通信不仅速率高,延迟小,而且所需设备体积较小,适合小型AUV搭配使用。但是大量AUV 利用水下电场通信时,通信距离限制是不得不考虑的一个问题,同时对于小型AUV 来说,由于水下环境复杂,在完成任务的过程中充电是十分困难的,能量表征了网络的生命周期。基于此,引入“分簇”思想,将网络划分为簇,可以方便网络的资源管理,灵活地分配各种资源,可扩展性好,适用于大规模网络。分簇机制减少了节点之间的控制信息开销和路由开销,更加容易控制拓扑结构的变化,降低了节点能量消耗,增加了网络容量和生命周期[21−22]。分簇算法大量应用于无线传感器网络(wireless sensor network,WSN)中,如减小汇聚点簇首压力,考虑能量均衡的非均匀分簇思想[23−26],除此之外,针对无线自组织网络的多权值成簇算法也非常多[27−28]。

前期研究重点多是水下通信技术、分簇算法研究以及AVU 的形状、姿态和运动控制等,未考虑到实际水域环境电导率影响水下电场通信的AUV 通信控制。本文作者提出一种考虑实际水域电导率和节点剩余能量的水下电场通信自适应调整多权值成簇算法。使用节点度、通信成本和剩余能量3个参数综合考量节点权值,在电场通信距离的限制之下,将大群分成小簇,簇首管理控制簇内部事务,网关节点负责转发簇与簇间的消息,此外还增加副簇首,在簇首退出网络时,副簇首迅速代替簇首,减少重新选簇首期间的消息传递次数,节省能量消耗。同时,设计水域电导率和节点剩余能量组合而成的开关S,针对网络环境改变,系统能够根据S 和相应门限值进行自适应调整,降低系统的能量消耗,完成任务。

1 系统模型

假设网络在部署时,节点都处于同一平面内,随机布置N个节点,其应用场景是节点统一从出发点到达目的点。用Vi来表示第i个节点,相应的节点集为V={V1,V2,V3,…,Vn},|V|=N,假设:

1)所有的节点都是同构的,具备数据融合的功能,每个节点都有一个唯一的标识(ID);

2)链路是对称的,Vi到Vj的链路状态与Vj到Vi的链路状态一致。

同时,为网络中的节点设计4种角色。

1)簇首:用于领导和决策整个簇的行为;

2)副簇首:便于快速更换簇首;

3)网关:用于簇间交流的节点;

4)成员:簇内的普通成员。

网络的拓扑结构如图1所示,由图1可见:每个簇由角色分别为簇首、副簇首、网关和普通成员的多个节点构成,其中,簇首负责簇内通信;副簇首在簇首能量耗尽或者失联的情况下迅速成为新簇首,缩短系统重新成簇的时间并减少在重新成簇期间发送的大量报文,减少能量消耗;网关节点则是通过“簇A−网关节点−簇B”的模式实现簇间通信。

图1 分簇路由协议拓扑结构Fig.1 Cluster routing protocol topology

2 算法设计

算法主要分成3个部分,即簇形成、簇更新和维护、自适应调整方案。

2.1 簇形成

簇形成阶段包括簇首选举、副簇首和网关节点的确立。节点成簇流程如图2所示。选用节点可用度Dv、节点的通信成本Cv和节点的消耗能量Ev这3个参数组成节点的权值。为了避免参数单位不同而导致的某一参数对簇首选举起主导作用的问题,统一对3个参数进行归一化处理。根据节点的权值选举出簇首,周围的节点入簇并得到自己的角色,形成簇。此外,还增加了副簇首提高系统稳定性,网关节点的设计也导致整个网络互联互通。相比较基于权值的成簇算法,本算法的优势如下:

图2 簇形成流程图Fig.2 Flowchart of cluster formation

1)节点理想度可进行自适应调整,通过网络中存活节点的度数,取其平均值为节点理想度,计算简单方便。

2)引入了副簇首的概念,在簇区域发生改变时,副簇首能迅速成为簇首,减少引发的重新成簇过程中节点发送的消息数量,缩短成簇时间,减少能耗。

2.1.1 节点权值计算

1)可用度计算。节点Vi确定邻居节点数di,并获取邻居节点的信息(定义一跳返回的节点为邻居节点)。

对每节点Vi的可用度,计算其度数与节点自适应理想度δ之差,进行归一化处理记为

式中:di为节点Vi的度数;δ为节点Vi自适应的理想度数。

若节点理想度大,则形成的簇数目会减少,但有可能会造成网络拥堵,同时,簇首的网络负载也会较大,缩短簇首的寿命;若节点理想度小,则形成的簇数目较多,有可能造成网络资源的严重浪费。本算法设计的节点自适应理想度δ不同于之前大多数人所考虑到节点理想度数,而是通过节点的平均节点数和节点自身能量,计算节点理想度数,称之为节点自适应理想度数,记为

式中:n为存活的总节点个数。

2)通信成本计算。对节点Vi,计算其到所有邻居节点的距离的总和C(i)v,并进行归一化处理,这表征节点的覆盖范围,以此表示节点的通信成本。

式中:N(vi)为节点Vi的邻居节点表;area(vi)为节点的通信范围;xi和yi为节点的二维坐标;xj和yj为节点邻居节点的二维坐标;R为节点的通信半径。

3)剩余能量计算。不同于以往简单地将节点充当簇首的时间相加,根据网络的通信机制并考虑节点消耗能量的方式,计算节点剩余能量,除了节点均有的监听和移动的能量消耗,簇首节点的能量消耗与簇内成员通信之外,增加了簇首与簇外网关节点之间的通信能量消耗,相应地,网关节点需要考虑簇内簇首和簇外簇首这2类簇首的通信能量消耗,而普通成员节点只考虑与簇首之间的通信能量消耗。同样对剩余能量做归一化处理,记为

式中:Ec为节点Vi的初始能量;tm,em和dm分别为节点第m次担当簇首的时间、能量消耗和可计算消耗度;tn,en和dn分别为节点第n次担当网关的时间、能量消耗和可计算消耗度数;tk和ek分别为节点第k次担当普通节点的时间和能量消耗。

计算节点Vi的组合权重W(i)v:

式中:w1,w2和w3分别为节点Vi的可用度、通信成本以及剩余能量的权重。

2.1.2 簇首选举

1)节点初始化。节点计算自身权重,初始化状态为“未成簇”,并发送Hello 广播报文,与相邻节点建立连接。

2)未成簇节点构成备选簇首表。

3)查询备选簇首表中的节点是否符合选举簇首的标准,即比较该节点与邻居中可用度不为0的节点的权值;若为最大,且自身可用度不为0,则更改角色为“簇首”,并将状态修改为“已入簇”。

4)从备选簇首表删除该节点信息,转步骤3),直至备选簇首表为空时转步骤5)。

5)未成簇节点加入邻居节点中通信代价较小、ID 较小且可用度不为0 的簇首所在簇,并标记为“已入簇”,相应簇首可用度减1,若所有邻居簇首可用度均为0,则自身成簇,更改角色为“簇首”,并将状态修改为“已入簇”。

6)重复步骤5),直到所有节点成簇为止。

2.1.3 副簇首和网关节点确立

当所有节点入簇之后,需要确定副簇首和网关节点。

1)簇首查找成员表,选择簇内权值第二小的节点作为副簇首,节点角色标记为副簇首并将此信息同步给簇内成员;

2)簇首查找邻居节点表,若表中存在属于其他簇的节点,则簇首选择其中通信代价较小的节点作为网关节点,以“簇首A−网关节点−簇首B”模式实现簇间通信。

2.2 簇更新和维护

簇的更新和维护分为2种情况:1)节点能量耗尽时,网络拓扑发生改变引起的簇维护;2)新节点进入簇首通信范围之内引起的簇更新。

2.2.1 节点能量耗尽

节点能量耗尽时需要退出簇,节点的邻居节点需从邻居表中删除其信息,系统的网络拓扑将发生改变。此时,节点的角色不同会导致算法有所差别。

1)若节点是簇首,则副簇首成为新簇首,接管在其通信范围内的所有原簇首成员,通信范围外的成员节点则触发重新成簇过程,加入新簇;

2)若节点是副簇首,则簇首选择新副簇首;

3)若节点是网关节点,则此节点所在簇间通信链路选择新网关节点;

4)若节点是普通节点,则簇首及其邻居节点删除此节点的信息。

2.2.2 新节点入簇

1)在新节点进入簇首通信范围之内时会引起簇更新,网络拓扑结构相应发生变化。则新节点与簇首比较权值,若新节点权值小于簇首,则新节点成为新簇首,原簇首成为副簇首,网络更新信息。转步骤4);

2)若新节点权值大于簇首小于副簇首,则新节点成为新副簇首,原副簇首回归为普通节点,网络更新信息。转步骤3);否则,新节点入簇为普通成员节点,网络更新信息。

3)收到更新信息的簇首判断是否更新簇间通信链路。

2.3 自适应调整方案

水下环境复杂多变,节点在水下不可能总是处于理想情况,节点势必会受到水下环境的影响。水下电场通信本身会受到实际水域的电导率影响,低电导率海水的电场要明显高于高电导率海水的电场。在实际水域中若电导率突然变化,节点网络拓扑可能会发生变化。

图3所示为简化的电场通信物理模型[16],2 块接收电极板P1和P2的电势差E(r,q)为

图3 简化的电场通信物理模型Fig.3 Simplified physical model of electric field communication

式中:和分别为发射电极附近P点极坐标下径向和方位角向的单位电场强度;d1为2个发送电极板之间的距离;d2为2 个接收电极板之间的距离;r为P点到2个发送电极板中点的距离;θ为P点的极坐角;I0为流经发射电极的电流。

从式(8)可见:水体电导率σ和节点间的距离r对接收电极板的电势差有影响,本文主要从实际水域的电导率和节点剩余能量出发,考虑节点的自适应调整方案。在网络运行过程中,簇首节点会根据当前的电导率和自身剩余能量级别grade按照相应的权重得出一个开关值,簇首依据此开关值判断此时是否要缩小簇规模,即断开通信代价较大的节点,减少簇总体能量消耗,延长网络生命周期。本文将电导率和节点剩余能量结合起来,引入g为分级参数,g与节点剩余能量有关,表征此时的能量级别,将电导率和能量级别按照一定权重关系组成一个开关S,如式(9)所示。

式中:S为此时簇内通信代价,簇首通过判断S衡量通信代价,采取相应措施;wa和wb分别为电导率和节点间距离的权重;Ec为节点剩余能量;Eori为节点初始能量;σc为盐度精确地为35‰的海水的电导率;Eori为节点的初始能量。

自适应调整的具体措施如下:

1)簇首计算开关S;

2)簇首判断S与通信代价级别T1和T2大小:

3)若S≤T1,则保持原有通信状态不变;若T1

3 仿真实验

实验以Matlab 为平台,验证本文算法的有效性以及自适应调整的合理性。实验分为2 个部分,第1 部分验证算法的功能,第2 部分选取在WSN中应用最广泛的低功耗自适应集簇分层型协议(low energy adaptive clustering hierarchy algorithm,LEACH)算法与本文算法进行比较,LEACH 协议是基于簇的路由协议,簇头负责簇内其他传感器节点的数据传输任务,而且LEACH还采用节点轮换当选簇头的轮转法选择簇头,均衡能耗。本文使用网络生命周期和网络能量消耗2个指标,验证在水下电场条件下算法在延长生命周期和降低能量消耗方面的性能。

3.1 参数配置

实验中节点分为4种角色:簇首、副簇首、网关节点和普通节点。实验环境为节点在长×宽为200 m×200 m的区域内移动,节点最大通信距离为10 个单位长度,节点初始能量为1 J,簇首节点单位时间内与单位成员节点之间以及属于其他簇的网关节点的通信消耗均为0.002 J,普通成员节点单位时间的能量损耗为0.001 J,网关节点单位时间内与簇首节点之间的通信损耗为0.002 J。具体参数配置见表1。

表1 参数配置表Table 1 parameter configuration table

3.2 仿真结果与分析

根据以上参数配置,进行仿真实验。

1)簇形成。以点代表节点,节点初始分布的区域长×宽为25 m×25 m,图4所示为簇形成图。由图4可见:100 个节点分成5 个簇,其中,簇首管理成员节点,实现簇内通信,簇间通信则由“簇首A−网关节点−簇首B”模式实现。

图4 簇形成图Fig.4 Cluster formation graph

2)簇首更换。图5所示为不同时刻下网络同一部分簇结构图。由图5可见:t2时刻,原簇首能量耗尽退出簇,当原副簇首成为新簇首时,此簇完成簇首更换。

图5 不同时刻下网络同一部分簇结构图Fig.5 Cluster structure diagram of the same part of network at different times

3)网络生命周期。图6所示为网络中随时间的死亡节点个数变化。由图6可见:随着电导率增加,不论是LEACH算法还是本文算法网络中节点死亡速率均有所增加,这说明电导率增大会减小网络的生命周期。LEACH 协议的死亡节点数在大概45 r时极速上升,而本文算法的节点死亡率始终保持较和缓的趋势,相较而言本文算法更加稳定。这是因为LEACH每轮都需要执行选举簇首和重新成簇的操作,且簇首是随机选取的,节点能量消耗巨大,因而节点死亡数量短期内急剧增多。本文算法的簇首选取综合考虑节点度、覆盖范围和节点剩余能量,能量较小的节点难以竞争成为簇首,副簇首的设计能够有效减少簇首退出簇时重新成簇过程中的消息数量,降低了系统能量消耗。可见,本文算法能有效延长网络的生命周期。

图6 死亡节点数随时间的变化Fig.6 Number variation of dead nodes over time

图7所示为不同电导率下有无自适应调整策略的网络生命周期对比。由图7可见:在2组不同电导率实验下,有自适应调整策略的网络相较于无自适应调整策略的网络生命周期更长,这是由于采用了自适应调整策略之后,在能量消耗较高时簇首决策断开多余成员节点缩小簇规模,减少发包数量以降低能量消耗,延长了网络的生命周期。

图7 不同电导率下有无自适应调整策略的网络生命周期对比Fig.7 Comparison of network life cycle with or without adaptive strategy under different conductivity

4)网络能量消耗。图8所示为网络的剩余能量和时间的关系,由图8可见:随着时间延长,网络剩余能量逐渐减少。这是因为节点持续不断工作,消耗能量。不论是LEACH算法还是本文算法,在电导率升高情况下,能量消耗速率均有所增加。但使用LEACH算法的网络能量消耗率极高,而本文算法虽然在前期能量消耗率较大,但是相较于LEACH 算法更平缓。本文算法在成簇期间消息数量较多,但是一旦成簇,簇稳定之后能量消耗有所减缓,不需像LEACH 那样每轮都要重新成簇,且随机选择簇首,消耗大量能量。

图8 网络剩余能量随时间变化Fig.8 Remaining network energy versus time

图9所示为不同电导率下有无自适应调整策略的网络剩余能量对比。由图9可见:增加自适应调整策略之后,系统能量消耗方面也有较好表现,这是因为本文算法使用自适应调整方案,缩小簇规模以维持簇内良好通信和降低能量消耗的策略起到效果,有效延长网络生命周期。

图9 不同电导率下有无自适应调整策略的网络剩余能量对比Fig.9 Comparison of remaining network energy with or without adaptive strategy under different conductivity

4 结论

1)提出了一种考虑实际水域电导率和节点剩余能量的水下电场通信的自适应多权值成簇算法。

2)为网络中的节点设计了簇首、副簇首、网关和普通成员4 种角色,其中簇首管理簇内事务,副簇首提高簇稳定性和减小能耗,网关节点加强网络连通性。簇首选举时考量多个关键参数,簇形成之后,系统能够实现簇内通信和簇间通信。

3)根据电导率和剩余能量提出了自适应调整方案,在网络通信环境较差时,降低因维持簇结构而导致的大开销,减少能量消耗,提高网络生命周期。

4)在不同电导率环境下,该算法较稳定,能实现较好分簇效果,达到节省能量、延长网络生命周期的目的。

猜你喜欢

关节点能量消耗权值
太极拳连续“云手”运动强度及其能量消耗探究
一种融合时间权值和用户行为序列的电影推荐模型
中年女性间歇习练太极拳的强度、能量消耗与间歇恢复探究分析
基于深度学习和视觉检测的地铁违规行为预警系统研究与应用
重载机车网络重联TCN 故障节点识别方法研究*
基于5G MR实现Massive MIMO权值智能寻优的技术方案研究
关节点连接历史图与卷积神经网络结合的双人交互动作识别
没别的可吃
强规划的最小期望权值求解算法∗
程序属性的检测与程序属性的分类