本发明实施例涉及传感器网络技术领域,尤其涉及一种传感器网络中节点剩余能量的均衡方法及装置。
背景技术:
无线传感器网络(wirelesssensornetworks,wsns)的基本作用是监测环境、发现和定位环境中的目标。由于传感器节点价格低廉,可广泛应用于数字战场监控、国防安全、医疗保健、环境监测等领域。每个传感器节点都有感知范围和通信范围,传感器节点能感知到感知范围内的环境信息并且能与通信范围内的其它节点相互通信。传感器节点的位置变化影响覆盖、通信能耗和信息处理。
在传感器网络中,对于未知监测区域,通常采用随机的方式部署节点,但是随机部署一般不能达到覆盖要求,存在覆盖空洞,因此需要对传感器节点的部署进行规划。利用传感器节点的移动特性,可以快速对目标区域形成有效的覆盖,从而进行数据收集。在传感器网络的使用过程中,有些传感器节点消耗的能量较少,有些传感器节点消耗的能量较多,造成了传感器节点能量消耗不均匀,导致大量传感器节点提前死亡,从而导致传感器网络发生通信故障,传感器网络的稳定性较差。
技术实现要素:
本发明实施例提供一种传感器网络中传感器节点剩余能量的均衡方法及装置,以解决目前在传感器网络的使用过程中,有些传感器节点消耗的能量较少,有些传感器节点消耗的能量较多,造成了传感器节点能量消耗不均匀,导致大量传感器节点提前死亡,从而导致传感器网络发生通信故障,传感器网络的稳定性较差的问题。
本发明实施例的一个方面是提供一种传感器网络中传感器节点剩余能量的均衡方法,包括:
计算传感器网络的剩余能量分布系数;
判断所述剩余能量分布系数是否大于预设均衡系数;
若所述剩余能量分布系数大于所述预设均衡系数,则对所述传感器网络中的各传感器节点进行均衡处理,执行以下均衡处理步骤:
步骤1、根据所述剩余能量分布系数,计算所述各传感器节点所受到的虚拟力合力;
步骤2、根据所述各传感器节点所受到的虚拟力合力,更新所述各传感器节点的分布;
若进行均衡处理后所述传感器网络的剩余能量分布系数仍然大于所述预设均衡系数,对所述传感器网络迭代进行所述均衡处理,直至所述传感器网络的剩余能量分布系数小于或者等于所述预设均衡系数。
本发明实施例的另一个方面是提供一种传感器网络中传感器节点剩余能量的均衡装置,包括:
计算模块,用于计算传感器网络的剩余能量分布系数;
判断模块,用于判断所述剩余能量分布系数是否大于预设均衡系数;
均衡处理模块,用于若所述剩余能量分布系数大于所述预设均衡系数,则对所述传感器网络中的各传感器节点进行均衡处理,执行以下均衡处理步骤:
步骤1、根据所述剩余能量分布系数,计算所述各传感器节点所受到的虚拟力合力;
步骤2、根据所述各传感器节点所受到的虚拟力合力,更新所述各传感器节点的分布;
所述均衡处理模块还用于若进行均衡处理后所述传感器网络的剩余能量分布系数仍然大于所述预设均衡系数,对所述传感器网络迭代进行所述均衡处理,直至所述传感器网络的剩余能量分布系数小于或者等于所述预设均衡系数。
本发明实施例提供的传感器网络中传感器节点剩余能量的均衡方法及装置,通过计算传感器网络的剩余能量分布系数,若剩余能量分布系数大于预设均衡系数,则根据剩余能量分布系数,计算各传感器节点所受到的虚拟力合力;根据各传感器节点所受到的虚拟力合力,更新各传感器节点的分布,以对传感器网络中的各传感器节点进行均衡处理,若进行均衡处理后传感器网络的剩余能量分布系数仍然大于预设均衡系数,对传感器网络迭代进行均衡处理,直至传感器网络的剩余能量分布系数小于或者等于预设均衡系数,从而使得传感器网络中传感器节点剩余能量分布均匀,实现传感器网络中传感器节点剩余能量的均衡,从而可以避免传感器节点提前死亡,提高了传感器网络的稳定性。
附图说明
图1为本发明实施例一提供的传感器网络中传感器节点剩余能量的均衡方法流程图;
图2为本发明实施例二提供的传感器网络中传感器节点剩余能量的均衡方法流程图;
图3为本发明实施例三提供的传感器网络中传感器节点剩余能量的均衡装置的结构示意图;
图4为本发明实施例四提供的传感器网络中传感器节点剩余能量的均衡装置的结构示意图。
具体实施方式
为使本发明的技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的传感器网络中传感器节点剩余能量的均衡方法流程图。本发明实施例针对目前在传感器网络的使用过程中,有些传感器节点消耗的能量较少,有些传感器节点消耗的能量较多,造成了传感器节点能量消耗不均匀,导致大量传感器节点提前死亡,从而导致传感器网络发生通信故障,传感器网络的稳定性较差的问题,提供了传感器网络中传感器节点剩余能量的均衡方法。如图1所示,该方法具体步骤如下:
步骤s101、计算传感器网络的剩余能量分布系数。
其中,传感器网络的剩余能量分布系数越小,表示传感器网络中各传感器节点的剩余能量分布越均匀;传感器网络的剩余能量分布系数越小,表示传感器网络中各传感器节点的剩余能量分布越不均匀。
步骤s102、判断剩余能量分布系数是否大于预设均衡系数。
其中,预设均衡系数可以由技术人员根据历史数据和经验值进行设定,本实施例对于预设均衡系数的值不做具体限定。例如,可以将预设均衡系数设定为1、2、或3等,优选地,可以将预设均衡系数设定为2。
步骤s103、若剩余能量分布系数大于预设均衡系数,则对传感器网络中的各传感器节点进行均衡处理。
具体地,对传感器网络中的各传感器节点进行均衡处理,具体可以通过执行以下均衡处理步骤实现:
步骤1、根据剩余能量分布系数,计算各传感器节点所受到的虚拟力合力。
步骤2、根据各传感器节点所受到的虚拟力合力,更新各传感器节点的分布。
具体地,步骤2可以采用如下方式实现:
根据各传感器节点所受到的虚拟力合力,更新各传感器节点的坐标,从而更新各传感器节点的分布。
在步骤s103之后,返回执行步骤s101,对均衡处理后的传感器网络迭代进行步骤s101-s103的处理,直至剩余能量分布系数小于或者等于预设均衡系数时结束。
步骤s104、若剩余能量分布系数小于或者等于预设均衡系数,结束。
本发明实施例通过计算传感器网络的剩余能量分布系数,若剩余能量分布系数大于预设均衡系数,则根据剩余能量分布系数,计算各传感器节点所受到的虚拟力合力;根据各传感器节点所受到的虚拟力合力,更新各传感器节点的分布,以对传感器网络中的各传感器节点进行均衡处理,若进行均衡处理后传感器网络的剩余能量分布系数仍然大于预设均衡系数,对传感器网络迭代进行均衡处理,直至传感器网络的剩余能量分布系数小于或者等于预设均衡系数,从而使得传感器网络中传感器节点剩余能量分布均匀,实现传感器网络中传感器节点剩余能量的均衡,从而可以避免传感器节点提前死亡,提高了传感器网络的稳定性。
实施例二
图2为本发明实施例二提供的传感器网络中传感器节点剩余能量的均衡方法流程图。在上述实施例一的基础上,本实施例中,根据剩余能量分布系数,计算各传感器节点所受到的虚拟力合力,包括:将任意一个传感器节点作为目标节点,计算目标节点受到来自其他各传感器节点的虚拟力;计算目标节点与其他各传感器节点之间的能量差系数;根据目标节点与其他各传感器节点之间的能量差系数、剩余能量分布系数、上一轮均衡处理中目标节点与其他各传感器节点之间的能量调节函数值、以及本轮的预设调节系数,计算目标节点与其他各传感器节点之间归一化的能量调节函数值;根据目标节点与其他各传感器节点之间归一化的能量调节函数值、以及目标节点受到来自其他各传感器节点的虚拟力,计算各传感器节点所受到的虚拟力合力。如图2所示,该方法具体步骤如下:
步骤s201、计算传感器网络的剩余能量分布系数。
其中,传感器网络的剩余能量分布系数越小,表示传感器网络中各传感器节点的剩余能量分布越均匀;传感器网络的剩余能量分布系数越小,表示传感器网络中各传感器节点的剩余能量分布越不均匀。
步骤s202、判断剩余能量分布系数是否大于预设均衡系数。
其中,预设均衡系数可以由技术人员根据历史数据和经验值进行设定,本实施例对于预设均衡系数的值不做具体限定。例如,可以将预设均衡系数设定为1、2、或3等,优选地,可以将预设均衡系数设定为2。
步骤s203、若剩余能量分布系数大于预设均衡系数,将任意一个传感器节点作为目标节点,计算目标节点受到来自其他各传感器节点的虚拟力。
本实施例中,该步骤具体可以采用如下方式实现:
将任意一个传感器节点ni作为目标节点,根据公式(2),计算目标节点ni受到来自其他各传感器节点nj的虚拟力:
其中,ni表示传感器网络中的第i个传感器节点,i=1,2,…,n,nj表示传感器网络中的第j个传感器节点,j=1,2,…,n并且j≠i,
另外,虚拟吸引力系数、虚拟排斥力系数均为大于零且小于1的实数,虚拟吸引力系数、虚拟排斥力系数可以由技术人员根据初始传感器网络中各传感器节点的分布情况进行设定,本实施例对于虚拟吸引力系数和虚拟排斥力系数的值不做具体限定。预设的任意两个传感器节点之间的理想距离阈值可以由技术人员根据历史经验进行设定,本实施例对于预设的任意两个传感器节点之间的理想距离阈值不做具体限定。
本实施例中,ni中根据i取指的不同,可以表示传感器网络中的任意一个传感器节点,从而本实施例中的目标节点可以为传感器网络中的任意一个传感器节点。
步骤s204、计算目标节点与其他各传感器节点之间的能量差系数。
本实施例中,该步骤具体可以采用如下方式实现:
根据公式(3)计算目标节点ni与其他各传感器节点nj之间的能量差系数,
其中,
本实施例中,目标节点可以为传感器网络中的任意一个传感器节点,因此该步骤中可以计算得到传感器网络中任一两个传感器节点之间的能量差系数。
步骤s205、根据目标节点与其他各传感器节点之间的能量差系数、剩余能量分布系数、上一轮均衡处理中目标节点与其他各传感器节点之间的能量调节函数值、以及本轮的预设调节系数,计算目标节点与其他各传感器节点之间归一化的能量调节函数值。
本实施例中,该步骤具体可以采用如下方式实现:
计算目标节点与其他各传感器节点之间的能量差系数的绝对值的最小值,将最小值作为传感器网络的最优能量差系数。例如,传感器网络的最优能量差系数的计算方式可以采用公式
根据公式(4)计算目标节点ni与其他各传感器节点nj之间的能量调节函数值,
其中,eij(k+1)表示在第(k+1)轮的均衡处理中ni与nj之间的能量调节函数值,eij(k)表示在第k轮的均衡处理中ni与nj之间的能量调节函数值,k为大于等于1的正整数,eij(1)为预设的在第一轮的均衡处理中ni与nj之间的能量调节函数值,
对目标节点ni与其他各传感器节点nj之间的能量调节函数值进行归一化处理,得到目标节点ni与其他各传感器节点nj之间归一化的能量调节函数值。
具体地,对目标节点ni与其他各传感器节点nj之间的能量调节函数值进行归一化处理具体可以采用如下方式来实现:
ecij(k+1)=(tanh(eij(k+1))+1)/2,其中
步骤s206、根据目标节点与其他各传感器节点之间归一化的能量调节函数值、以及目标节点受到来自其他各传感器节点的虚拟力,计算各传感器节点所受到的虚拟力合力。
本实施例中,该步骤具体可以采用如下方式实现:
根据公式(5),计算各传感器节点所受到的虚拟力合力;
其中,
上述步骤s203-s206为若剩余能量分布系数大于预设均衡系数,则根据剩余能量分布系数,计算各传感器节点所受到的虚拟力合力的过程。
步骤s207、根据各传感器节点所受到的虚拟力合力,计算各传感器节点的坐标信息。
本实施例中,该步骤具体可以采用如下方式实现:
根据各传感器节点所受到的虚拟力合力、以及公式(6),计算各传感器节点的坐标信息;
其中,(xi(k+1),yi(k+1))表示在第(k+1)轮的均衡处理之后ni的坐标;(xi(k),yi(k))表示在第k轮的均衡处理之后ni的坐标;
步骤s208、根据所各传感器节点的坐标信息,更新各传感器节点的位置。
上述步骤s206-s208为根据各传感器节点所受到的虚拟力合力,更新各传感器节点的分布的过程。
上述步骤s203-s208为若剩余能量分布系数大于预设均衡系数,则对传感器网络中的各传感器节点进行均衡处理的过程,在对传感器网络中的各传感器节点进行均衡处理之后,返回执行步骤s201,对均衡处理后的传感器网络迭代进行步骤s201-s208的处理,直至剩余能量分布系数小于或者等于预设均衡系数时结束。
需要说明的是,本实施例中根据传感器网络剩余能量分布系数,对均衡处理后的传感器网络迭代进行均衡处理,本实施例中,用第(k+1)轮的迭代标识本轮迭代,那么第k轮的迭代为上一次迭代的过程,在本轮迭代中,需要用到上一轮迭代中的计算结果,第一轮迭代中的参数可以由技术人员根据历史经验进行设定,本实施例对于第一轮迭代中参数的初始值不做具体限定。
步骤s209、若剩余能量分布系数小于或者等于预设均衡系数,结束。
本发明实施例提供了若剩余能量分布系数大于预设均衡系数,则对传感器网络中的各传感器节点进行均衡处理的详细过程,通过计算传感器网络的剩余能量分布系数,若剩余能量分布系数大于预设均衡系数,则对传感器网络中的各传感器节点进行均衡处理,若进行均衡处理后传感器网络的剩余能量分布系数仍然大于预设均衡系数,对传感器网络迭代进行均衡处理,从而使得传感器网络中传感器节点剩余能量分布均匀,实现传感器网络中传感器节点剩余能量的均衡,从而可以避免传感器节点提前死亡,提高了传感器网络的稳定性。
实施例三
图3为本发明实施例三提供的传感器网络中传感器节点剩余能量的均衡装置的结构示意图。本发明实施例提供的传感器网络中传感器节点剩余能量的均衡装置可以执行传感器网络中传感器节点剩余能量的均衡方法实施例提供的处理流程。如图3所示,该装置30包括:计算模块301、判断模块302和均衡处理模块303。
具体地,计算模块301用于计算传感器网络的剩余能量分布系数。
判断模块302用于判断所述剩余能量分布系数是否大于预设均衡系数。
均衡处理模块303用于若所述剩余能量分布系数大于所述预设均衡系数,则对所述传感器网络中的各传感器节点进行均衡处理,执行以下均衡处理步骤:
步骤1、根据所述剩余能量分布系数,计算所述各传感器节点所受到的虚拟力合力;
步骤2、根据所述各传感器节点所受到的虚拟力合力,更新所述各传感器节点的分布。
所述均衡处理模块303还用于若进行均衡处理后所述传感器网络的剩余能量分布系数仍然大于所述预设均衡系数,对所述传感器网络迭代进行所述均衡处理,直至所述传感器网络的剩余能量分布系数小于或者等于所述预设均衡系数。
本发明实施例提供的装置可以具体用于执行上述实施例一所提供的方法实施例,具体功能此处不再赘述。
本发明实施例通过计算传感器网络的剩余能量分布系数,若剩余能量分布系数大于预设均衡系数,则根据剩余能量分布系数,计算各传感器节点所受到的虚拟力合力;根据各传感器节点所受到的虚拟力合力,更新各传感器节点的分布,以对传感器网络中的各传感器节点进行均衡处理,若进行均衡处理后传感器网络的剩余能量分布系数仍然大于预设均衡系数,对传感器网络迭代进行均衡处理,直至传感器网络的剩余能量分布系数小于或者等于预设均衡系数,从而使得传感器网络中传感器节点剩余能量分布均匀,实现传感器网络中传感器节点剩余能量的均衡,从而可以避免传感器节点提前死亡,提高了传感器网络的稳定性。
实施例四
图4为本发明实施例四提供的传感器网络中传感器节点剩余能量的均衡装置的结构示意图。在上述实施例三的基础上,本实施例中,如图4所示,均衡处理模块303包括:虚拟力合力计算单元3031和节点分布更新单元3032。
本实施例中,所述计算模块还用于,
获取所述传感器网络中各传感器节点的剩余能量,根据所述各传感器节点的剩余能量,根据公式(1)计算所述剩余能量分布系数;
其中,σ表示所述剩余能量分布系数,ni表示所述传感器网络中的第i个传感器节点,i=1,2,…,n,ei表示ni的剩余能量,n表示所述传感器网络包括的传感器节点的数量。
具体地,虚拟力合力计算单元3031用于:
将任意一个传感器节点作为目标节点,计算所述目标节点受到来自其他各传感器节点的虚拟力;
计算所述目标节点与其他各传感器节点之间的能量差系数;
根据所述目标节点与其他各传感器节点之间的能量差系数、所述剩余能量分布系数、上一轮所述均衡处理中所述目标节点与其他各传感器节点之间的能量调节函数值、以及本轮的预设调节系数,计算所述目标节点与其他各传感器节点之间归一化的能量调节函数值;
根据所述目标节点与其他各传感器节点之间归一化的能量调节函数值、以及所述目标节点受到来自其他各传感器节点的虚拟力,计算所述各传感器节点所受到的虚拟力合力。
所述虚拟力合力计算单元3031还用于:
将任意一个传感器节点ni作为目标节点,根据公式(2),计算所述目标节点ni受到来自其他各传感器节点nj的虚拟力:
其中,ni表示所述传感器网络中的第i个传感器节点,i=1,2,…,n,nj表示所述传感器网络中的第j个传感器节点,j=1,2,…,n并且j≠i,
所述虚拟力合力计算单元3031还用于:
根据公式(3)计算所述目标节点ni与其他各传感器节点nj之间的能量差系数,
其中,
所述虚拟力合力计算单元3031还用于:
计算所述目标节点与其他各传感器节点之间的能量差系数的绝对值的最小值,将所述最小值作为所述传感器网络的最优能量差系数;
根据公式(4)计算所述目标节点ni与其他各传感器节点nj之间的能量调节函数值,
其中,eij(k+1)表示在第(k+1)轮的所述均衡处理中ni与nj之间的能量调节函数值,eij(k)表示在第k轮的所述均衡处理中ni与nj之间的能量调节函数值,k为大于等于1的正整数,eij(1)为预设的在第一轮的所述均衡处理中ni与nj之间的能量调节函数值,
对所述目标节点ni与其他各传感器节点nj之间的能量调节函数值进行归一化处理,得到所述目标节点ni与其他各传感器节点nj之间归一化的能量调节函数值。
所述虚拟力合力计算单元3031还用于:
根据公式(5),计算所述各传感器节点所受到的虚拟力合力;
其中,
所述节点分布更新单元3032用于:
根据所述各传感器节点所受到的虚拟力合力、以及公式(6),计算所述各传感器节点的坐标信息;
其中,(xi(k+1),yi(k+1))表示在第(k+1)轮的所述均衡处理之后ni的坐标;(xi(k),yi(k))表示在第k轮的所述均衡处理之后ni的坐标;
根据所各传感器节点的坐标信息,更新所述各传感器节点的位置。
本发明实施例提供的装置可以具体用于执行上述实施例二所提供的方法实施例,具体功能此处不再赘述。
本发明实施例提供了若剩余能量分布系数大于预设均衡系数,则对传感器网络中的各传感器节点进行均衡处理的详细过程,通过计算传感器网络的剩余能量分布系数,若剩余能量分布系数大于预设均衡系数,则对传感器网络中的各传感器节点进行均衡处理,若进行均衡处理后传感器网络的剩余能量分布系数仍然大于预设均衡系数,对传感器网络迭代进行均衡处理,从而使得传感器网络中传感器节点剩余能量分布均匀,实现传感器网络中传感器节点剩余能量的均衡,从而可以避免传感器节点提前死亡,提高了传感器网络的稳定性。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。