自适应数据传输方法、装置及设备、计算机可读存储介质与流程

文档序号:17927082发布日期:2019-06-15 00:29阅读:137来源:国知局
自适应数据传输方法、装置及设备、计算机可读存储介质与流程

本发明属于通信技术领域,具体涉及一种自适应数据传输方法、装置及设备、计算机可读存储介质。



背景技术:

目前常用的数据传输方法主要有:泛洪传输方法和低功耗自适应分簇传输方法。

其中,泛洪传输方法的基本思想是源节点将数据传递给周围邻居节点,并保留数据的副本。周围邻居节点再将数据发送给其他节点,直到数据最终到达目的节点。泛洪传输方法虽然数据传输效率极高,但是网络中产生了大量冗余的数据副本,浪费了网络的能量。

低功耗自适应分簇传输方法的基本思想是将网络分为多个区域,每个区域有专门的簇头采集普通节点的数据,簇头节点再将数据进行融合,最终发送到基站。但是该方法没有考虑节点当前的剩余能量信息,导致部分区域的簇头节点过快死亡。



技术实现要素:

本发明旨在至少解决现有技术中存在的技术问题之一,提供一种自适应数据传输方法、装置及设备、计算机可读存储介质。

解决本发明技术问题所采用的技术方案是一种自适应数据传输方法,包括:

将数据传输区域划分为多个网格,并获取数据传输区域中的各个节点和基站的坐标,以及网格质心;

根据每个网格内的各个节点的坐标、节点个数,以及所获取的网格质心,计算得到每个网格的质心效益值;

根据每个节点的当前剩余能量值和初始能量值,获取每个节点的剩余能量效益值,并根据每个节点的剩余能量效益值和该节点所在网格的质心效益值,计算每个节点的簇头效益值,并将簇头效益值最小的节点作为簇头节点,并将簇头节点作为当前节点;

根据所述当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点;

将当前节点的下一跳节点作为当前节点,并返回根据所述当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点的步骤,直至将数据转发至基站。

优选的是,所述根据每个网格内的各个节点的坐标、节点个数,以及所获取的网格质心,计算得到每个网格的质心效益值的步骤,包括:

对于每一个网格,根据网格质心的坐标和各个节点的坐标,获取网格质心与每个节点之间的距离,并确定出网格质心与节点之间的距离最大值和最小值;

通过公式:计算出每个网格质心效益值;其中,

dk表示第k个网格的质心效益值;ck表示第k个网格的质心;x0表示ck的横坐标;y0表示ck的纵坐标;ni表示第k个网格中任一节点;xi表示ni的横坐标;yi表示ni的纵坐标;maxd(ni,ck)表示ck与ni之间的最大距离;mind(ni,ck)表示ck与ni之间的最小距离;n表示第k个网格中的节点个数。

优选的是,所述根据当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点的步骤,包括:

根据当前节点的坐标和其邻居节点的坐标,计算得到当前节点和其邻居节点之间的距离;

根据当前节点的坐标和基站的坐标,计算得到当前节点和基站之间的坐标;

获取当前节点的邻居节点初始能量值和当前剩余能量值;

通过公式:计算当前节点的邻居节点的适应度函数,并将适应度函数最小的一者作为当前节点的下一跳节点;其中,

n0表示当前节点;nj表示n0的任意一个邻居节点;nbs表示基站;g(nj)表示nj的适应度函数;d(nj,n0)表示n0与nj之间的距离;d(nj,nbs)表示nj与nbs之间的距离;d(n0,nbs)表示n0与nbs之间的距离;ecur(nj)表示nj的当前剩余能量值;eini(nj)表示nj的初始能量值。

解决本发明技术问题所采用的技术方案是一种自适应数据传输装置,包括:

初始化模块,用于将数据传输区域划分为多个网格,并获取数据传输区域中的各个节点和基站的坐标,以及网格质心;

质心效益值获取模块,用于根据每个网格内的各个节点的坐标、节点个数,以及所获取的网格质心,计算得到每个网格的质心效益值;

簇头节点获取模块,用于根据每个节点的当前剩余能量值和初始能量值,获取每个节点的剩余能量效益值,并根据每个节点的剩余能量效益值和该节点所在网格的质心效益值,计算每个节点的簇头效益值,并将簇头效益值最小的节点作为簇头节点,并将簇头节点作为当前节点;

下一跳节点获取模块,用于根据所述当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点;以及,

遍历模块,用于将当前节点的下一跳节点作为当前节点,并返回根据所述当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点的步骤,直至将数据转发至基站。

优选的是,所述质心效益值获取模块,具体用于对于每一个网格,根据网格质心的坐标和各个节点的坐标,获取网格质心与每个节点之间的距离,并确定出网格质心与节点之间的距离最大值和最小值;

通过公式:计算出每个网格质心效益值;其中,

dk表示第k个网格的质心效益值;ck表示第k个网格的质心;x0表示ck的横坐标;y0表示ck的纵坐标;ni表示第k个网格中任一节点;xi表示ni的横坐标;yi表示ni的纵坐标;maxd(ni,ck)表示ck与ni之间的最大距离;mind(ni,ck)表示ck与ni之间的最小距离;n表示第k个网格中的节点个数。

优选的是,所述下一跳节点获取模块,具体用于根据当前节点的坐标和其邻居节点的坐标,计算得到当前节点和其邻居节点之间的距离;

根据当前节点的坐标和基站的坐标,计算得到当前节点和基站之间的坐标;

获取当前节点的邻居节点初始能量值和当前剩余能量值;

通过公式:计算当前节点的邻居节点的适应度函数,并将适应度函数最小的一者作为当前节点的下一跳节点;其中,

n0表示当前节点;nj表示n0的任意一个邻居节点;nbs表示基站;g(nj)表示nj的适应度函数;d(nj,n0)表示n0与nj之间的距离;d(nj,nbs)表示nj与nbs之间的距离;d(n0,nbs)表示n0与nbs之间的距离;ecur(nj)表示nj的当前剩余能量值;eini(nj)表示nj的初始能量值。

解决本发明技术问题所采用的技术方案是一种自适应数据传输设备,其特征在于,包括:至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令,当所述计算机程序指令被所述处理器执行时实现上述的方法。

解决本发明技术问题所采用的技术方案是一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,当所述计算机程序指令被处理器执行时实现上述的方法。

本发明具有如下有益效果:

本发明中所提供的自适应数据传输方法,利用网格质心效益值、剩余能量效益值以及适应度函数等因素进行自适应数据采集和传输。在保证网络连通性的前提下,保证了网络能量的均衡消耗。

附图说明

图1为本发明的实施例1的自适应数据传输方法的流程图;

图2为本发明的实施例2的自适应数据传输装置的示意图;

图3为本发明的实施例3的自适应数据传输设备的示意图。

具体实施方式

为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。

实施例1:

如图1所示,本实施例提供一种自适应数据传输方法,包括如下步骤:

s1、将数据传输区域划分为多个网格,并获取数据传输区域中的各个节点和基站的坐标,以及网格质心。

具体的,该步骤是一个初始化的步骤,将数据传输区域划分为多个呈矩阵排布的网格,每个网格的边长均为a,假若共划分为k个网格,每个网格的均为多个节点。此时,可以根据网格建立坐标系,这样一来,可以得到每个网格内的节点坐标、基站坐标,以及各个网格的质心坐标。

s2、根据每个网格内的各个节点的坐标、节点个数,以及所获取的网格质心,计算得到每个网格的质心效益值。

具体的,在该步骤中,对于每一个网格,根据网格质心的坐标和各个节点的坐标,获取网格质心与每个节点之间的距离,并确定出网格质心与节点之间的距离最大值maxd(ni,ck)和最小值mind(ni,ck)。

通过公式:计算出每个网格质心效益值;其中,

dk表示第k个网格的质心效益值;ck表示第k个网格的质心;x0表示ck的横坐标;y0表示ck的纵坐标;ni表示第k个网格中任一节点;xi表示ni的横坐标;yi表示ni的纵坐标;maxd(ni,ck)表示ck与ni之间的最大距离;mind(ni,ck)表示ck与ni之间的最小距离;n表示第k个网格中的节点个数。

s3、根据每个节点的当前剩余能量值和初始能量值,获取每个节点的剩余能量效益值,并根据每个节点的剩余能量效益值和该节点所在网格的质心效益值,计算每个节点的簇头效益值,并将簇头效益值最小的节点作为簇头节点,并将簇头节点记作当前节点。

具体的,在该步骤中获取每个当前剩余能量值,记作ecur(ni),初始能量值,记作eini(ni),通过计算每个节点的当前剩余能量值和初始能量值的比,得到每个节点的剩余能量效益值eres(ni),也即,之后,根据步骤s2中计算出的每个网格的质心效益值dk和该网格内的节点的剩余能量效益值eres(ni)的比,得到每个节点的簇头效益值并将簇头效益值最小的节点作为簇头节点。

s4、根据当前节点(也即步骤s3中获取的簇头节点)的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点。

具体的,该步骤可以包括:

根据当前节点的坐标和其邻居节点的坐标,计算得到当前节点和其邻居节点之间的距离;

根据当前节点的坐标和基站的坐标,计算得到当前节点和基站之间的坐标;

获取当前节点的邻居节点初始能量值和当前剩余能量值;

通过公式:计算当前节点的邻居节点的适应度函数,并将适应度函数最小的一者作为当前节点的下一跳节点;其中,

n0表示当前节点;nj表示n0的任意一个邻居节点;nbs表示基站;g(nj)表示nj的适应度函数;d(nj,n0)表示n0与nj之间的距离;d(nj,nbs)表示nj与nbs之间的距离;d(n0,nbs)表示n0与nbs之间的距离;ecur(nj)表示nj的当前剩余能量值;eini(nj)表示nj的初始能量值。

s5、将步骤s4中获取的簇头节点的下一跳节点作为当前节点,并按照步骤s4中的方法获取再下一跳节点,直至将数据转发至基站为止。

本实施例中所提供的自适应数据传输方法,利用网格质心效益值、剩余能量效益值以及适应度函数等因素进行自适应数据采集和传输。在保证网络连通性的前提下,保证了网络能量的均衡消耗。

实施例2:

如图2所示,本实施例提供一种自适应数据传输装置,包括:初始化模块、质心效益值获取模块、簇头节点获取模块、下一跳节点获取模块,遍历模块。

其中,初始化模块,用于将数据传输区域划分为多个网格,并获取数据传输区域中的各个节点和基站的坐标,以及网格质心。

质心效益值获取模块,用于根据每个网格内的各个节点的坐标、节点个数,以及所获取的网格质心,计算得到每个网格的质心效益值。

具体的,质心效益值获取模块,具体用于对于每一个网格,根据网格质心的坐标和各个节点的坐标,获取网格质心与每个节点之间的距离,并确定出网格质心与节点之间的距离最大值和最小值;

通过公式:计算出每个网格质心效益值;其中,

dk表示第k个网格的质心效益值;ck表示第k个网格的质心;x0表示ck的横坐标;y0表示ck的纵坐标;ni表示第k个网格中任一节点;xi表示ni的横坐标;yi表示ni的纵坐标;maxd(ni,ck)表示ck与ni之间的最大距离;mind(ni,ck)表示ck与ni之间的最小距离;n表示第k个网格中的节点个数。

簇头节点获取模块,用于根据每个节点的当前剩余能量值和初始能量值,获取每个节点的剩余能量效益值,并根据每个节点的剩余能量效益值和该节点所在网格的质心效益值,计算每个节点的簇头效益值,并将簇头效益值最小的节点作为簇头节点,并将簇头节点作为当前节点。

下一跳节点获取模块,用于根据所述当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点。

下一跳节点获取模块,具体用于根据当前节点的坐标和其邻居节点的坐标,计算得到当前节点和其邻居节点之间的距离;

根据当前节点的坐标和基站的坐标,计算得到当前节点和基站之间的坐标;

获取当前节点的邻居节点初始能量值和当前剩余能量值;

通过公式:计算当前节点的邻居节点的适应度函数,并将适应度函数最小的一者作为当前节点的下一跳节点;其中,

n0表示当前节点;nj表示n0的任意一个邻居节点;nbs表示基站;g(nj)表示nj的适应度函数;d(nj,n0)表示n0与nj之间的距离;d(nj,nbs)表示nj与nbs之间的距离;d(n0,nbs)表示n0与nbs之间的距离;ecur(nj)表示nj的当前剩余能量值;eini(nj)表示nj的初始能量值。

遍历模块,用于将当前节点的下一跳节点作为当前节点,并返回根据所述当前节点的坐标,当前节点的各个邻居节点的坐标、初始能量值和当前剩余能量值,以及基站的坐标,获取当前节点的各个邻居节点的适应度函数,并将所获取的适应度函数最小的作为当前节点的下一跳节点的步骤,直至将数据转发至基站。

本实施例中所提供的自适应数据传输装置可以采用实施例1中的方法进行数据传输,即利用网格质心效益值、剩余能量效益值以及适应度函数等因素进行自适应数据采集和传输。在保证网络连通性的前提下,保证了网络能量的均衡消耗。

实施例3:

本实发明施例提供了一种自适应数据传输设备,其中本发明实施例1自适应数据传输方法可以由基站小区的节能设备来实现。图3示出了本发明实施例提供的基站小区的节能设备的硬件结构示意图。

该基站小区的节能设备可以包括处理器以及存储有计算机程序指令的存储器。

具体地,上述处理器可以包括中央处理器(cpu),或者特定集成电路(applicationspecificintegratedcircuit,asic),或者可以被配置成实施本发明实施例的一个或多个集成电路。

存储器可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器可包括硬盘驱动器(harddiskdrive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universalserialbus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器可在数据处理装置的内部或外部。在特定实施例中,存储器是非易失性固态存储器。在特定实施例中,存储器包括只读存储器(rom)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存或者两个或更多个以上这些的组合。

处理器通过读取并执行存储器中存储的计算机程序指令,以实现上述实施例中的任意一种基站小区的节能方法。

在一个示例中,基站小区的节能设备还可包括通信接口和总线。其中,如图3所示,处理器、存储器、通信接口通过总线连接并完成相互间的通信。

通信接口,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。

总线包括硬件、软件或两者,将基站小区的节能设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。

实施例4:

本发明实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种自适应数据传输方法。

需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1