一种基于莱维飞行的无线传感器网络节点分簇方法及系统

    专利查询2022-07-07  175



    1.本发明属于无线传感器网络领域,尤其涉及一种基于莱维飞行的无线传感器网络节点分簇方法及系统。


    背景技术:

    2.本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
    3.随着网络规模的增大,学术界开始尝试通过对传感器节点分簇的方式来均衡网络能耗,分别从是否预先划分区域、分簇是否均匀、是否结合其他算法等多个方面来实现网络的分簇。研究表明,网络节点分簇是目前实现wsn节能和延寿最有效的方法。
    4.现有分簇算法的缺点:
    5.(1)不适合在大规模的无线传感器网络中应用。
    6.(2)没有说明簇头节点在整个网络中的布设情况。因此,很可能出现被选出的簇头节点集中于某一区域的情况,这样就会使得一些普通节点的周围没有任何簇头节点,从而导致网络能耗分布不均匀。
    7.(3)不适用于节点能量不均衡的网络。
    8.(4)部分算法容易陷入局部最优的情况,导致结果不易收敛。


    技术实现要素:

    9.为了解决上述背景技术中存在的至少一项技术问题,本发明提供一种基于莱维飞行的无线传感器网络节点分簇方法及系统,其将基于莱维飞行的粒子群优化算法融入簇头节点的选举过程,对无线传感器网络的节点进行分簇,从而达到节省节点耗电量,延长节点存活时间和网络生存周期的目的。
    10.为了实现上述目的,本发明采用如下技术方案:
    11.本发明的第一个方面提供一种基于莱维飞行的无线传感器网络节点分簇方法,包括如下步骤:
    12.在目标区域内设置粒子群,给每个粒子赋予随机初始速度和初始位置;
    13.结合每个粒子赋予随机初始速度和初始位置以及适应度函数确定局部最优解和全局最优解的粒子的初始位置;
    14.粒子群按照基于莱维飞行的粒子群优化算法描述的运动轨迹对目标区域进行搜索,基于局部最优解和全局最优解的粒子的初始位置,结合适应度函数不断更新下一轮每个粒子的速度和位置,并计算下一轮每个粒子的适应度,得到每一轮的局部最优解和全部最优解的粒子的位置;
    15.判断更新次数是否已经超过设定阈值,若是,则粒子进行莱维飞行,更新下一轮粒子的位置,否则判断粒子位置是否收敛,若是则选出设定数目的簇头节点的节点坐标,否则继续对目标区域进行搜索。
    16.本发明的第二个方面提供一种基于莱维飞行的无线传感器网络节点分簇系统,包括:
    17.粒子群设置模块,被配置为:在目标区域内设置粒子群,给每个粒子赋予随机初始速度和初始位置;
    18.粒子群优化算法模块,被配置为:结合每个粒子赋予随机初始速度和初始位置以及适应度函数确定局部最优解和全局最优解的粒子的初始位置;
    19.粒子群按照基于莱维飞行的粒子群优化算法描述的运动轨迹对目标区域进行搜索,基于局部最优解和全局最优解的粒子的初始位置,结合适应度函数不断更新下一轮每个粒子的速度和位置,得到每一轮的局部最优解和全部最优解的粒子的位置;
    20.网络节点分簇模块,被配置为:判断更新次数是否已经超过设定阈值,若是,则粒子进行莱维飞行,更新下一轮粒子的位置,否则判断粒子位置是否收敛,若是则选出设定数目的簇头的节点坐标,否则继续对目标区域进行搜索。
    21.本发明的第三个方面提供一种计算机可读存储介质。
    22.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述所述的一种基于莱维飞行的无线传感器网络节点分簇方法中的步骤。
    23.本发明的第四个方面提供一种计算机设备。
    24.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的一种基于莱维飞行的无线传感器网络节点分簇方法中的步骤。
    25.与现有技术相比,本发明的有益效果是:
    26.本发明基于莱维飞行的粒子群优化算法融入簇头节点的选举过程,对无线传感器网络的节点进行分簇,从而达到节省节点耗电量,延长节点存活时间和网络生存周期的目的,可以更好的节省节点耗电量,延长节点存活时间和网络生存周期。输出结果说明了簇头节点的数目以及分布状况,不会出现簇头节点集中在网络某一区域的现象,这样就避免了一些节点周围没有任何簇头节点,从而导致网络能耗分布不均匀的情况。
    27.整个分簇过程我们只需要得到目标区域的边长、汇聚节点和传感器节点的分布状况就可以了,与传感器网络的规模没有关系,因此可以应用于大规模的无线传感器网络中,在粒子群算法的基础上加入了莱维飞行的原理,有效地改善了部分算法容易陷入局部最优,导致不易收敛的情况。
    附图说明
    28.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
    29.图1是本发明实施例1基于莱维飞行的无线传感器网络节点分簇方法流程图。
    具体实施方式
    30.下面结合附图与实施例对本发明作进一步说明。
    31.应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常
    理解的相同含义。
    32.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
    33.术语解释
    34.无线传感器网络:(wireless sensor networks,wsn)是可以感知信息的网络,是物联网体系中的一种。通过与通信技术的结合,可以建立一个能够满足不同用户需求的网络。wsn可以改善人们的生活,推动当代社会的发展。wsn是一种自动组网的、能量有限的、计算能力有限的无线网络,是由大量简单的、成本低廉的传感器随机布设而成的。
    35.wsn目前被广泛应用于生产生活、工业、军事等众多领域。然而,在网络的实际布设时,为提高数据采集的准确性,需要在监测区域内布设大量的传感器节点,微型化和低成本成为了传感器节点最重要的要求。为了达到这一要求,传感器节点采用电池供电。由于布设环境的随机性和恶劣性,使得电池能源难以及时进行物理补充,所以wsn能量受限。再者传感器节点自身存储容量和运算能力存在固有限制,更需要wsn合理的分配网络资源,以保证网络能够持续稳定的正常工作。
    36.步骤1:在目标区域内设置粒子群,给每个粒子赋予随机初始速度和初始位置;
    37.步骤2:结合每个粒子赋予随机初始速度和初始位置以及适应度函数确定局部最优解和全局最优解的粒子的初始位置;
    38.步骤3:粒子群按照基于莱维飞行的粒子群优化算法描述的运动轨迹对目标区域进行搜索,基于局部最优解和全局最优解的粒子的初始位置,结合适应度函数不断更新下一轮每个粒子的速度和位置,得到每一轮的局部最优解和全部最优解的粒子的位置;
    39.步骤4:判断更新次数是否已经超过设定阈值,若是,则粒子进行莱维飞行,更新下一轮粒子的位置,否则判断粒子位置是否收敛,若是则选出设定数目的簇头的节点坐标,否则继续对目标区域进行搜索。
    40.无线传感器节点是实际存在的点,粒子群是虚拟的,粒子群中的n个粒子按照公式描述的轨迹对axa的矩形区域进行搜索,n个粒子每轮都会有一个位置,将每轮的位置坐标带入适应度函数,然后将这n个适应度进行比较,算法结束后,适应度函数取值最大的点的位置坐标就代表了簇头节点坐标。算法的本质就是让一些个体(n个粒子)按照一定的规律或者轨迹对一个连续区间进行快速搜索,最终得到满足我们要求的一些离散点。步骤1中,所述目标区域为边长为a
    ×
    a的矩形区域,该区域内随机分布着n个无线传感器节点,汇聚节点坐标已知。最终将选出设定数目的簇头的节点坐标对应可以得到无线传感器节点。
    41.所述汇聚节点为sink节点,主要负责无线传感器网络与外网(如 gps,internet等)的连接,可看作网关节点。
    42.步骤2中,所述适应度函数,用于对网络内的所有节点进行评估,具体为:
    43.fitness(x,y)=α
    ·
    f1 β
    ·
    f2 γ
    ·
    f3ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
    (1)
    44.式中,α β γ=1;
    45.f1表示k个簇头节点到汇聚节点的距离之和的倒数,f1越大,表示k个簇头节点到汇聚节点的距离越短,网络的通信成本越低。
    46.f2表示k个簇头节点所覆盖的普通节点的数量之和,f2越大,表示k个簇头节点所覆盖的普通节点的数量越多,网络的性能越好。
    47.f3表示k个簇头节点的剩余能量的加权之和,f3越大,表示k个簇头节点的剩余能量之和越大,网络生命周期越长。
    [0048][0049]
    x表示粒子的横坐标,y代表粒子的纵坐标,d
    ic
    表示粒子i到汇聚节点的距离,ni表示粒子i通信范围内所能覆盖的节点数量,ei表示粒子i的剩余能量。 k表示簇头节点的个数,k为多少,就要选出多少个簇头节点,计算公式为:
    [0050][0051]
    其中,n是正方形目标区域中的传感器节点总数,a是正方形目标区域的边长,d是该区域中所有传感器节点到汇聚节点的距离的期望,ε1表示自由空间模型放大参数,ε2表示多路径衰减模型放大参数,ε3表示发送接受能耗。
    [0052]
    本实施例中,可以选取ε1=10pj/bit,ε2=0.0013pj/bit,ε3=50nj/bit。
    [0053]
    所述汇聚节点为sink节点,主要负责无线传感器网络与外网(如 gps,internet等)的连接,可看作网关节点。
    [0054]
    基于莱维飞行的粒子群优化算法包括粒子速度更新过程和粒子位置更新过程,具体的公式如下:
    [0055][0056][0057]
    其中:公式(3)是粒子速度更新式,公式(4)是粒子位置更新式,t为当前迭代次数;ω为惯性权重;c1、c2为学习因子;r1、r2为[0,1]内均匀分布的随机数, 算法的参数对算法的性能有较大影响,参数c1和r1表示粒子受自身最优的影响程度,c2和r2表示粒子受种群最优的影响程度,通常取c1和c2为2,惯性权重决定了对粒子当前速度继承的程度;表示第t代粒子i的位置,表示第t代粒子i的速度。pi称为局部最优解;pg表示整个粒子群所取到的对于适应度函数的最优解,pg成为全局最优解。
    [0058]
    步骤3中,所述粒子进行莱维飞行,更新下一轮粒子的位置公式为:
    [0059][0060]
    其中,表示xi第t代粒子i的位置,为点对点乘法,a表示步长控制量, levy(λ)为随机搜索路径,并且满足:
    [0061]
    levy(λ)~μ=t-λ
    ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
    (6)
    [0062]
    莱维飞行的本质是一种随机步长,它符合莱维分布,由于莱维分布十分复杂,目前还无法实现。所以常用mantegna算法模拟,mantegna算法数学表示如下:
    [0063]
    因此可以得到步长s,计算式为:
    [0064][0065]
    其中:μ、v为正态分布,定义为:
    [0066][0067][0068]
    其中,σv=1,β通常取值常数为1.5。
    [0069]
    实施例二
    [0070]
    本实施例提供了一种基于莱维飞行的无线传感器网络节点分簇系统,包括:
    [0071]
    粒子群设置模块,被配置为:在目标区域内设置粒子群,给每个粒子赋予随机初始速度和初始位置;
    [0072]
    粒子群优化算法模块,被配置为:结合每个粒子赋予随机初始速度和初始位置以及适应度函数确定局部最优解和全局最优解的粒子的初始位置;
    [0073]
    粒子群按照基于莱维飞行的粒子群优化算法描述的运动轨迹对目标区域进行搜索,基于局部最优解和全局最优解的粒子的初始位置,结合适应度函数不断更新下一轮每个粒子的速度和位置,得到每一轮的局部最优解和全部最优解的粒子的位置;
    [0074]
    网络节点分簇模块,被配置为:判断更新次数是否已经超过设定阈值,若是,则粒子进行莱维飞行,更新下一轮粒子的位置,否则判断粒子位置是否收敛,若是则选出设定数目的簇头的节点坐标,否则继续对目标区域进行搜索。
    [0075]
    实施例三
    [0076]
    本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述所述的一种基于莱维飞行的无线传感器网络节点分簇方法中的步骤。
    [0077]
    实施例四
    [0078]
    本实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的一种基于莱维飞行的无线传感器网络节点分簇方法中的步骤。
    [0079]
    本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
    [0080]
    本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
    生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
    [0081]
    这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
    [0082]
    这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
    [0083]
    本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory, rom)或随机存储记忆体(random accessmemory,ram)等。
    [0084]
    以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
    转载请注明原文地址:https://tc.8miu.com/read-944.html

    最新回复(0)