无线传感器网络的多sink部署与容错方法

文档序号:10555510阅读:713来源:国知局
无线传感器网络的多sink部署与容错方法
【专利摘要】本发明涉及无线传感器网络的多sink部署与容错方法,首先提出的基于改进粒子群聚类的多sink优化部署方法,将改进的粒子群算法与K?均值聚类相结合,对网络区域内所有传感器节点进行聚类和分区,多个sink节点分别部署在每一类的中心,以达到网络分区合理、多sink节点部署优化的效果;同时针对多sink网络中某个sink节点失效的情况,提出一个带容错机制的路由算法,采用多路径路由的容错机制,创建从源节点到不同sink节点的两条路径,当某个sink节点失效时,激活备选路由。本发明在无线传感器网络中部署多个sink节点可以提高网络的可靠性,当一个sink节点发生故障时,还有另外几个sink节点可以替代该sink节点的工作,保证网络的可靠运行,延长了网络的生命周期。
【专利说明】
无线传感器网络的多S i nk部署与容错方法
技术领域
[0001]本发明属无线传感器网络技术领域,涉及一种无线传感器网络的多sink部署与容 错方法,特别是涉及了基于改进粒子群聚类的多sink优化部署方法与一个带容错机制的路 由算法。
【背景技术】
[0002] 无线传感器网络(Wireless Sensor Networks,WSN)是一种全新的信息获取方式, 它不需要固定网络支持,以其随机布置、自组织、抗毁性强、适应苛刻环境等优势,具有在多 种场合满足信息获取的实时性、准确性、全面性等需求的能力。由于无线传感器网络的应用 前景愈来愈广泛,已引起了许多国家学术界和工业界的高度重视,被认为是对21世纪产生 巨大影响力的技术之一。
[0003] WSN具有监测范围广、无需人工干预、自动长期采集数据等特点,因此可以在物联 网应用中发挥重要作用。但是受限于传感器网络的多对一传输模式,传感器网络中靠近 sink的节点通常由于承担过重的转发任务而提前死亡,形成所谓的"能量空洞"。在能量空 洞产生后,网络外围的数据无法传送到sink,从而导致网络过早死亡。为了解决"能量空洞" 问题,最大限度地提高传感器网络的生命期。我们还考虑更多的因素。分簇传感器网络作为 一种层次型网络,通过其数据融合和层次性结构等特性,一定程度上均衡网络中节点的能 量消耗并提高了网络寿命。
[0004]目前在传感器网络的非均匀节点部署策略和分簇传感器网络性能优化等方面已 有大量的研究成果,以期达到更大的能量利用率和网络寿命。发明专利"一种面向精准农业 的WSN节点部署方法"(申请号:201310306040.4)将整个WSN网络分成多个一级固定簇头、多 个二级簇头、多个传感器节点和sink节点,其中一级固定簇头属于总线型拓扑结构,依次排 列最终与sink节点相连,每一个固定簇头和多个二级非固定簇头相连通,一个二级非固定 簇头和多个传感器节点相连通,一级固定簇头和sink节点采用太阳能供电以减小能耗和提 高可靠性;但没有不适用多个s ink节点的情况,且没有考虑容错方法。

【发明内容】

[0005] 本发明所要解决的技术问题是提供无线传感器网络的多sink部署与容错方法,特 别是提供了基于改进粒子群聚类的多sink优化部署方法与一个带容错机制的路由算法,保 证网络的可靠运行,延长了网络的生命周期。
[0006] 本发明的无线传感器网络的多sink部署与容错方法,无线传感器网络中部署多个 sink节点,包括多sink部署方法和容错方法;部署完成后,在每个子网区域内再次利用粒子 群聚类算法,对传感器节点进行分簇,采用多路径路由容错机制,建立多条到不同sink节点 的路由路径,二者结合使用,保证无线传感网络的可靠运行;
[0007] 所述多sink部署方法为基于改进粒子群聚类的多sink优化部署方法,将改进的粒 子群算法与K-均值聚类相结合,对网络区域内所有sink节点进行聚类,分成K个不同的区 域,多个sink节点分别部署在每一类的中心,以达到网络分区合理且多sink节点部署优化 的效果;
[0008] 所述改进的粒子群算法是指改进惯性权重计算的粒子群算法,进一步是改进惯性 权重计算和加入扰动因素的粒子群算法;在PSO算法中,惯性权重系数ω的设置对算法的收 敛速度和算法结果有很大影响,ω较大时,全局搜索能力强;ω较小时,局部搜索能力强。在 标准的PSO算法中,惯性权重系数ω是以固定方式线性递减的,这种线性递减并不是以粒子 群中粒子的实际收敛情况进行动态调整全局搜索能力和局部搜索能力的。由于粒子飞行具 有不可预见性,粒子群的收敛并不是线性的。因此定义ω线性递减不是很合理。本发明对 PSO算法中的惯性权重进行了改进,惯性权重计算改进为:
[0009]
[0010] 其中,k为迭代次数,COk为第k次迭代的惯性权重,c〇max、COmin分别表示最大惯性权 重和最小惯性权重;/t表示第k代第i个粒子的适应度,表示第k代粒子群的全局最优解; 惯性权重影响着算法的收敛速度和结果,当粒子群中粒子分散时,粒子的适应度差异较大, ω 1{值较大;当粒子群趋于收敛时,ω k值逐渐减小;当粒子群收敛于全局最优点时,ω 0。因此,ω >^可以根据每一次迭代时粒子群的收敛情况进行动态自适应调节惯性权重。所述 加入的扰动因素是指,当速度小于某一极小值时,随机抽取占群体比例为10%的粒子进行 位置随机初始化,进行迭代寻优;
[0011] 所述改进的粒子群算法与K-均值聚类相结合是指先用κ-means算法计算出各类的 中心,然后在粒子群算法初始化时将其赋值给某个粒子,其余粒子随机初始化,最后用粒子 群算法完成聚类;K-均值聚类具体为:K均值聚类也称K-means算法,是一种最基本的聚类算 法,基本思想是根据数据的内在性质,将其划分为K个聚类区,尽可能地使类内离散度最小、 类间离散度最大。其基本步骤如下:
[0012] (1)从数据对象中随机选择K个对象作为初始聚类中心Cl,C2, ...,ck。
[0013] (2)将每个对象按最小距离原则划分到最近的一个聚类中心Cl(i = l,2,…,k),被 指定到同一质心的点属于同一个聚类,共形成K个聚类。
[0014] (3)计算新的聚类中心V1, S
其中N1为第i个聚类域匕包含的个数。
[0015] ⑷计算判断,是否等于Cl,若不相等则转至步骤2),直到1 = Cl,即聚类中心不 再发生变化,聚类算法结束。
[0016] 所述容错方法为带容错机制的多sink分簇路由算法,采用多路径路由容错机制, 建立多条到不同s ink节点的路由路径。首先,确定备选目的s ink节点,簇头节点在其他子网 区域的sink节点中选择离自身位置最近的sink节点作为备选目的sink节点;然后,确定备 选路由路径,簇头节点在自身邻节点集合中选择到备选目的s ink节点近的簇头节点作为下 一跳节点的集合,然后通过定义路由路径评价函数,综合考虑路径上的能量消耗、路径上的 最小剩余能量和路径上数据包的传输跳数等因素,选择综合指标最佳的那条路由路径作为 备选路由路径;当负责该区域的sink节点失效时,触发一个信号,通知本区域内的所有传感 器节点,簇头节点接收到该消息后,中间节点将所传输的数据包传回至源节点,删除目的节 点为该s i n k的路由路径,并向邻居广播s i n k节点失效的消息,当簇头节点接收到该消息后, 立即查看自己的目标sink节点是否该失效sink节点,若是,则立即启动备选路由路径。
[0017] 作为优选的技术方案:
[0018] 如上所述的无线传感器网络的多sink部署与容错方法,所述方法的具体步骤为:
[0019] (1)初始化。初始化包括粒子编码、K-means的聚类数目K的设定、粒子群算法中的 粒子编码和粒子数目L的设定。对于粒子编码采用实数编码方式,每个粒子作为一个可行解 组成粒子群,每个粒子的位置由K个聚类中心组成,通过调整聚类中心获得最优划分。每个 粒子由三个部分组成,即粒子位置、速度和适应度值。
[0020] 粒子i的位置编码结构表示为:
[0021] Xi= [ci, C2, , Cj, ··· ,ck]
[0022] 其中Cj表示类j的聚类中心,是一个2维矢量。
[0023]粒子i的速度编码结构为:
[0024] Vi= [vi, V2, , Vj, ,νκ]
[0025] 其中Vj表示第j个聚类中心的速度值,是一个2维矢量。
[0026] 对于第i个粒子,先将每个传感器节点随机指派为某一类,作为最初的聚类划分, 然后计算各类的聚类中心,作为粒子i的位置编码X 1,设置粒子i各聚类中心的初始速度为 〇,计算粒子的适应度fi;
[0027] (2)对每个粒子,根据在粒子群优化算法中的适应度函数计算其聚类中心和更新 粒子的适应度值;
[0028] (3)根据粒子群中粒子的适应度大小,得到粒子的个体最优位置Pld和全局最优位 置 Pgd;
[0029] (4)更新惯性权重系数ω ;
[0030] (5)根振
更新粒子的速度,根据
更新粒子的速度;
[0031] (6)判断粒子的速度是否小于某一极小值;若否,则不加入扰动策略;若是,则加入 扰动策略:随机抽取占群体比例为10%的粒子进行位置随机初始化,进行迭代寻优;
[0032] (7)对每个传感器节点,根据粒子的聚类中心,按照最近邻法则,来确定该传感器 节点位置的聚类划分;
[0033] (8)如果达到结束条件,则算法结束,输出每个sink节点部署的位置;否则,转到步 骤(2)继续迭代;
[0034] 所述达到结束条件是指达到设定的聚类效果或设定的最大迭代次数。
[0035] 如上所述的无线传感器网络的多sink部署与容错方法,聚类中心的位置计算按如 下公式:
[0036]
[0037] 其中,CjP为类j的聚类中心的位置;N表示传感器节点的个数;
[0038] Colj是一个NXK的加权矩阵,矩阵元素由0或1组成,当传感器节AS1属于类j时为 1,不属于时为〇;
[0039] 3^表示传感器节点Si的位置;
[0040] 粒子适应度函数如下:
[0041]
[0042]其中,K表示聚类的类别数,即预计部署sink节点个数;m表示属于类j的传感器节 点个数。在粒子群优化算法中,适应度函数用于判断种群进化过程中粒子所在位置的好坏。 在聚类算法中衡量聚类效果的好坏,主要取决于总的类内离散度F。类内离散度F越小,聚类 效果越好。
[0043] 如上所述的无线传感器网络的多sink部署与容错方法,某一极小值是指粒子的在 迭代过程中,其速度不再发生变化。
[0044] 如上所述的无线传感器网络的多sink部署与容错方法,部署完成后,在每个子网 区域内再次利用改进的粒子群聚类算法,对传感器节点进行分簇,具体为:
[0045] 在每个sink负责的子网区域内,利用粒子群聚类算法对该区域内的传感器节点进 行分簇,选择离聚类中心较近的并且剩余能量相对较高的节点作为簇头节点;在一个簇内, 簇头选举公式为:
[0046]
[0047] 其中,E表示传感器节点的当前剩余能量,EO表示传感器节点的初始能量,因此,E/ EO表示传感器节点的剩余能量级,davertocen表示本簇内所有传感器节点到簇中心的距离的 平均值,Cl1表示传感器到簇中心的距离,(^和^分别;
的权重系数;在选择 簇头节点时,选择离簇中心近的并且剩余级能量高的节点当选簇头。
[0048] 如上所述的无线传感器网络的多sink部署与容错方法,所述容错方法具体步骤 为:
[0049] (1)在每个子网区域内,均有一个sink节点负责收集本网络区域内传感器节点采 集的数据,则该子网内所有的簇头节点的主路由的目的sink节点即为该sink节点;在簇头 节点与其目的sink节点间建立路由,通过定义路由路径评价函数,综合考虑路径上的能量 消耗、路径上的最小剩余能量和路径上数据包的传输跳数等因素,选择综合指标最佳的那 条路由路径作为为主路由;
[0050] 所述路由路径评价函数为:
[0051 ] fp= (Costp)aX (EreP)PX (HopcountP)Y
[0052]其中,Costp表示该条路径传输能耗,Erep表示该条路径上的最小剩余能量, Hopcountp表示该条路径上源节点到sink节点的跳数。α表示能量消耗系数,为正数;β表示 节点剩余能量系数,为负数;Y表示节点到sink的传输跳数系数,为正数。
[0053] (2)为了应对sink节点出现故障的情况,建立一条备选路由路径;首先,确定备选 目的s ink节点,簇头节点在其他子网区域的s ink节点中选择离自身位置最近的s ink节点作 为备选目的Sink节点;然后,确定备选路由路径,簇头节点在自身邻节点集合中选择到备选 目的sink节点近的簇头节点作为下一跳节点的集合,然后通过定义路由路径评价函数,综 合考虑路径上的能量消耗、路径上的最小剩余能量和路径上数据包的传输跳数等因素,选 择综合指标最佳的那条路由路径作为备选路由路径;当负责该区域的sink节点失效时,触 发一个信号,通知本区域内的所有传感器节点,簇头节点接收到该消息后,中间节点将所传 输的数据包传回至源节点,删除目的节点为该sink的路由路径,并向邻居广播sink节点失 效的消息,当簇头节点接收到该消息后,立即查看自己的目标sink节点是否该失效sink节 点,若是,则立即启动备选路由路径。
[0054] 所述的无线传感器网络的多sink部署与容错方法,可设定sink节点的数目K为5, 网络中随机分布的传感器节点个数为400,网络区域为600mX 600m,将整个网络划分为5个 子网分区,每个sink节点负责收集一个子网分区中传感器节点采集的数据,然后对sink节 点进行部署,改进的粒子群算法的学习因子C1 = C2=1.2,簇头选举公式中ω i = c〇2 = 0.5, 路由路径评价函数函数中,α = 2,β = _5, γ =2。
[0055] 本发明的一种无线传感器网络的多sink部署与容错方法,首先提出的基于改进粒 子群聚类的多sink优化部署方法,将改进的粒子群算法与K-均值聚类相结合,对网络区域 内所有传感器节点进行聚类,分成K个不同的区域,多个sink节点分别部署在每一类的中 心,以达到网络分区合理、多sink节点部署优化的效果;同时针对多sink网络中某个sink节 点失效的情况,提出一个带容错机制的路由算法,该算法采用多路径路由的容错机制,创建 从源节点到不同sink节点的两条路径,到本子网区域的sink节点的最优的路径为主路由, 到其他sink节点的最优的路径作为备选路由路径,当某个sink节点失效时,激活备选路由。 本发明在无线传感器网络中部署多个sink节点可以提高网络的可靠性,当一个sink节点发 生故障时,还有另外几个s ink节点可以替代该s ink节点的工作,保证网络的可靠运行,延长 了网络的生命周期。
[0056] 有益效果
[0057] (1)采用智能算法对多sink优化部署。提出了改进的粒子群聚类算法(IPSCO)比标 准的粒子群聚类算法(IPSO)收敛速度要快,当陷入局部最优解时,IPSCO算法能够较快的跳 出局部最优解,进而去寻找全局最优解。
[0058] (2)延长WSN网络的生命周期越长,提出了一种基于改进粒子群聚类的多sink部署 算法,该算法主要针对大规模的无线传感器网络,在网络区域内部署多个sink节点,将大规 模的网络分为较小的子网。该算法主要是根据传感器节点的位置信息进行聚类,然后将 sink节点部署在每一类的中心
[0059] (3)保证网络的可靠运行。采用多路径路由的容错机制,创建从源节点到不同sink 节点的两条路径,到本子网区域的sink节点的最优的路径为主路由,到其他sink节点的最 优的路径作为备选路由路径,当某个sink节点失效时,激活备选路由。
【附图说明】
[0060] 图1是本发明改进的粒子群聚类算法(IPSCO)流程图;
[0061 ]图2是本发明IPSCO算法部署多sink节点的布局图;
[0062]图3是本发明IPSCO算法与IPSO聚类算法的迭代结果对比图;
[0063]图4是本发明的不同部署算法的网络生命周期对比图;
[0064]图5是本发明的无线传感器网络系统多sink容错整体模型;
[0065]图6是本发明的多sink节点放置图;
[0066]图7是本发明的多sink网络分区中传感器节点分簇拓扑图;
[0067]图8是本发明的多sink网络多路径路由容错过程图;
[0068] 图9是本发明的加容错机制与未加容错机制的数据包接收率对比图。
【具体实施方式】
[0069] 下面结合【具体实施方式】,进一步阐述本发明。应理解,这些实施例仅用于说明本发 明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术 人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限 定的范围。
[0070] 实施例1
[0071] -种无线传感器网络的多sink部署与容错方法,通过基于改进粒子群聚类的多 sink优化部署方法,将改进的粒子群算法与K-均值聚类相结合,对网络区域内所有传感器 节点进行聚类,分成K个不同的区域,多个sink节点分别部署在每一类的中心,以达到网络 分区合理、多sink节点部署优化的效果;同时针对多sink网络中某个sink节点失效的情况, 提出一个带容错机制的路由算法,该算法采用多路径路由的容错机制,其步骤如图1所示。
[0072] 假设网络需要部署sink节点的数目K为5,网络中随机分布的传感器节点个数为 400,网络区域为600mX600m,将整个网络划分为5个子网分区,每个sink节点负责收集一个 子网分区中传感器节点采集的数据,然后对sink节点进行部署,改进的粒子群算法的学习 因子Cl = C2 = l .2,簇头选举公式中CO1= c〇2 = 0.5,路由路径评价函数函数中,α = 2,β = -5, γ = 2,具体步骤如下:
[0073] ⑴初始化。给定聚类数目Κ = 5和粒子数目L = 400,对于第i个粒子,先将每个传感 器节点随机
[0074]指派为某一类,作为最初的聚类划分,然后计算各类的聚类中心:
[0075]其中,聚类中心的位置Cjp是按照K均值聚类的聚类中心计算方法计算得来的,其表 达式如式所示。
[0076]
[0077] Colj是一个NXK的加权矩阵,矩阵元素由0或1组成,当传感器节AS 1属于类j时为 1,不属于时为〇 ;m表示属于类j的传感器节点个数;Sip表示传感器节点的位置;Cjp表示类j 的聚类中心的位置。粒子i的位置编码X1,计算粒子的适应度h,设置粒子i各聚类中心的初 始速度为0。
[0078] (2)对每个粒子,根据相应的聚类划分,根据在粒子群优化算法中的适应度函数计 算其聚类中心和更新粒子的适应度值:
[0079]其中,定义粒子适应度函数如下:
[0080]
[0081 ] 其中,K表示聚类的类别数,即饿计部著sink节点个数;N表示传感器节点的个数; ω "是一个NXK的加权矩阵,矩阵元素由0或1组成,当传感器节AS1属于类j时为1,不属于 时为〇;m表示属于类j的传感器节点个数;S ip表示传感器节点的位置;Cjp表示类j的聚类中 心的位置。
[0082] (3)根据粒子群中粒子的适应度大小,得到粒子的个体最优位置Pld和全局最优位 置 Pgd。
[0083] (4)根据改进后的PSO算法中的惯性权重的公式更新惯性权重系数ω,其中comax取 0.9, comin取0.5;
[0084]其中,PSO算法中的惯性权重进行了改进,具体表达式如下所示:
[0085]
[0086] 其中,k为迭代次数,cok表示第k次迭代时的惯性权重,comax、comin分别表示最大惯 性权重和最小惯性权重,当惯性权重ω大于co max时,置ω = comax;当惯性权重ω小于comin 时,ω = ωΜη,这样就可以使得ω限定在区间[comin,comax]内。/f表示第k代第i个粒子的适 应度表示第k代粒子群的全局最优解。惯性权重影响着算法的收敛速度和结果,当粒子 群中粒子分散时,粒子的适应度差异较大,ω 1Mt较大;当粒子群趋于收敛时,ω 1Mt逐渐减 小;当粒子群收敛于全局最优点时,ω k值为〇。
[0087] (5)根据PSO算法中动态跟踪两个"最优解"来进行不断更新所有粒子的速度和位
置,
[0088]
[0089]
[0090]
[0091]
[0092]其中,在600mX600m网络区域内随机部署400个传感器节点,sink节点部署个数为 〖,学习因子(31 = 02 = 1.2<^(]为粒子:[第(1维的速度,0为惯性权重系数,1'1,^是介于(0,1)之 间的随机数,CdPc2为学习因子,X ld为粒子i在第d维的位置。惯性权重系数ω为随时间线性 递减函数,它可使粒子群算法在开始时搜索较大的区域,从而较快地定位最优聚类的大致 位置,随着ω逐渐减小,粒子速度减慢,开始精细地局部搜索。
[0093] (6)判断粒子的速度是否小于某一极小值,若是则加入扰动策略,随机抽取占群体 比例为10%的粒子进行位置随机初始化,进行迭代寻优。
[0094] (7)对每个传感器节点,根据粒子的聚类中心编码,按照最近邻法则,来确定该传 感器节点位置的聚类划分,
[0095] 其中,粒子的聚类中心编码具体为:每个粒子由三个部分组成,即粒子位置、速度 和适应度值。粒子i的位置编码结构表示为:
[0096] Xi= [ci, C2, , Cj, ··· ,ck];
[0097] 其中表示类j的聚类中心,是一个2维矢量。
[0098]粒子i的速度编码结构为:
[0099] Vi= [vi, V2, , Vj, ,νκ];
[0100] 其中Vj表示第j个聚类中心的速度值,是一个2维矢量。粒子i的适应度值fi为一个 实数。
[0101] (8)如果达到结束条件(等到足够好的位置或最大迭代次数),则算法结束,输出每 个sink节点部署的位置;否则,转到步骤(2)继续迭代。
[0102] (9)部署完成后,在每个子网区域内再次利用粒子群聚类算法,对传感器节点进行 分簇,其中,簇头选举公式为:
[0103]
[0104] 其中,E表示传感器节点的当前剩余能量,EO表示传感器节点的初始能量,因此,E/ EO表示传感器节点的剩余能量级,davertocen表示本簇内所有传感器节点到簇中心的距离的 平均值,Cl1表示传感器到簇中心的距离,ω#Ρω 2是权重系数。在选择簇头节点时,选择离簇 中心近的并且剩余级能量高的节点当选簇头。
[0105] 利用改进的粒子群聚类算法部署多sink节点的布局图如图2所示;改进的粒子群 聚类算法和标准的粒子群聚类算法进行多sink部署时的迭代结果对比如图3所示;分别利 用改进的粒子群聚类算法、标准的粒子群聚类算法和RDF算法进行多sink部署后的网络生 命周期对比如图4所示。
[0106] (10)采用多路径路由容错机制,建立多条到不同sink节点的路由路径,具体步骤 如下:
[0107] 1)在每个子网区域内,均有一个sink节点负责收集本网络区域内传感器节点采集 的数据,则该子网内所有的簇头节点的主路由的目的sink节点即为该sink节点。在簇头节 点与其目的sink节点间建立路由,通过定义路由路径评价函数,综合考虑路径上的能量消 耗、路径上的最小剩余能量和路径上数据包的传输跳数等因素,选择综合指标最佳的那条 路由路径作为为主路由。
[0108] 2)为了应对sink节点出现故障的情况,建立一条备选路由路径。首先,确定备选目 的sink节点,簇头节点在其他子网区域的sink节点中选择离自身位置最近的sink节点作为 备选目的sink节点。然后,确定备选路由路径,簇头节点在自身邻节点集合中选择到备选目 的s ink节点近的簇头节点作为下一跳节点的集合,然后通过定义路由路径评价函数,选择 综合指标最佳的那条路由路径作为备选路由路径。当负责该区域的sink节点失效时,触发 一个信号,通知本区域内的所有传感器节点,簇头节点接收到该消息后,中间节点将所传输 的数据包传回至源节点,删除目的节点为该s i n k的路由路径,并向邻居广播s i n k节点失效 的消息,当簇头节点接收到该消息后,立即查看自己的目标sink节点是否该失效sink节点, 若是,则立即启动备选路由路径。
[0109] 无线传感器网络系统多sink容错整体模型如图5所示;多sink节点放置图如图6所 示;多sink网络分区中传感器节点分簇拓扑图如图7所示;多sink网络多路径路由容错过程 图如图8所示;加容错机制与未加容错机制的数据包接收率对比图如图9所示。
【主权项】
1. 无线传感器网络的多sink部署与容错方法,无线传感器网络中部署多个sink节点, 其特征是:包括多sink部署方法和容错方法;先利用改进的粒子群聚类算法对多sink的部 署进行优化,优化部署完成后,在每个子网区域内再次利用改进的粒子群聚类算法,对传感 器节点进行分簇,然后针对多sink网络中某个sink节点失效的情况,利用带容错机制的路 由算法,采用多路径路由的策略,创建从源节点到不同sink节点的两条路径,当某个sink节 点失效时,激活备选路由,从而保证无线传感网络的可靠运行; 所述改进的粒子群聚类算法是指改进惯性权重计算的粒子群算法和加入扰动因素;惯 性权重计算改进为:其中,k为度rw乂 m,W-店政化化里,Umax、Wmin刀'則巧7]^最大惯性权重和 最小惯性权重;/f表示第k代第i个粒子的适应度,表示第k代粒子群的全局最优解。2. 根据权利要求1所述的无线传感器网络的多Sink部署与容错方法,其特征在于,所述 多S ink部署方法的具体步骤为: (1) 初始化: 初始化包括粒子编码、K-means的聚类数目K的设定、粒子群算法中的粒子编码和粒子 数目L的设定;对于粒子编码采用实数编码方式,每个粒子作为一个可行解组成粒子群,每 个粒子的位置由K个聚类中屯、组成,通过调整聚类中屯、获得最优划分;每个粒子由=个部分 组成,即粒子位置、速度和适应度值; 粒子i的位置编码结构表示为: Xi=[Cl,C2,...,Cj,...,CK]; 其中Cj表示类j的聚类中屯、,是一个2维矢量; 粒子i的速度编码结构为: Vi=[Vl,V2,...,Vj,...,VK]; 其中Vj表示第j个聚类中屯、的速度值,是一个2维矢量; 对于第i个粒子,先将每个传感器节点随机指派为某一类,作为最初的聚类划分,然后 计算各类的聚类中屯、,作为粒子i的位置编码XI,设置粒子i各聚类中屯、的初始速度为0,计 算粒子的适应度fi; (2) 对每个粒子,根据在粒子群优化算法中的适应度函数计算其聚类中屯、和更新粒子 的适应度值; (3) 根据粒子群中粒子的适应度大小,得到粒子的个体最优位置Pid和全局最优位置Pgd; (4) 更新惯性权重系数CO; (5 )根据更新粒子的速度,根据!新粒子的速度; (6)判断粒子的速度是否小于某一极小值;若否,则不加入扰动策略;若是,则加入扰动 策略:随机抽取占群体比例为10%的粒子进行位置随机初始化,进行迭代寻优; (7) 对每个传感器节点,根据粒子的聚类中屯、,按照最近邻法则,来确定该传感器节点 位置的聚类划分; (8) 如果达到结束条件,则算法结束,输出每个sink节点部署的位置;否则,转到步骤 (2)继续迭代; 所述达到结束条件是指达到设定的聚类效果或设定的最大迭代次数。3. 根据权利要求1所述的无线传感器网络的多sink部署与容错方法,其特征在于,聚类 中屯、的位置计算按如下公式:其中,Cw为类j的聚类中屯、的位置;N表示传感器节点的个数; WiJ是一个NXK的加权矩阵,矩阵元素由0或1组成,当传感器节点Si属于类j时为1,不 属于时为0; Sip表示传感器节点Si的位置; 粒子适应度函数如下: 其中,K表示聚类的类力y m,叩W H印>巧*S1 I-1 -m ; 示属于类j的传感器节点个 数。4. 根据权利要求1所述的无线传感器网络的多sink部署与容错方法,其特征在于,某一 极小值是指粒子的在迭代过程中,其速度不再发生变化。5. 根据权利要求1所述的无线传感器网络的多sink部署与容错方法,其特征在于,部署 完成后,在每个子网区域内再次利用改进的粒子群聚类算法,对传感器节点进行分簇,具体 为: 在每个sink负责的子网区域内,再次利用改进的粒子群聚类算法对该区域内的传感器 节点进行分簇,选择离聚类中屯、较近的并且剩余能量相对较高的节点作为簇头节点;在一 个簇内,簇头选举公式为:其中,E表示传感器节点的当前剩余能量,EO表示传感器节点的初始能量,因此,E/E0表 示传感器节点的剩余能量级,davertDcen表示本簇内所有传感器节点到簇中屯、的距离的平均 值,d康示传感器到簇中屯、的距离,…和CO 2分别是^和的权重系数;在选择簇头 EU dj 节点时,选择离簇中屯、近的并且剩余级能量高的节点当选簇头。6. 根据权利要求1所述的无线传感器网络的多sink部署与容错方法,其特征在于,所述 容错方法具体步骤为: (1)在每个子网区域内,均有一个sink节点负责收集本网络区域内传感器节点采集的 数据,则该子网内所有的簇头节点的主路由的目的sink节点即为该sink节点;在簇头节点 与其目的sink节点间建立路由,通过定义路由路径评价函数,综合考虑路径上的能量消耗、 路径上的最小剩余能量和路径上数据包的传输跳数等因素,选择综合指标最佳的那条路由 路径作为为主路由; 所述路由路径评价函数为: fp= (CostpTx 巧 rep)ex (Hopcountp) 丫; 其中,Costp表示该条路径传输能耗,Erep表示该条路径上的最小剩余能量,化pcountp表 示该条路径上源节点到sink节点的跳数;a表示能量消耗系数,为正数;0表示节点剩余能量 系数,为负数;T表示节点到sink的传输跳数系数,为正数; (2)为了应对sink节点出现故障的情况,建立一条备选路由路径;首先,确定备选目的 sink节点,簇头节点在其他子网区域的sink节点中选择离自身位置最近的sink节点作为备 选目的sink节点;然后,确定备选路由路径,簇头节点在自身邻节点集合中选择到备选目的 sink节点近的簇头节点作为下一跳节点的集合,然后通过定义路由路径评价函数,综合考 虑路径上的能量消耗、路径上的最小剩余能量和路径上数据包的传输跳数等因素,选择综 合指标最佳的那条路由路径作为备选路由路径;当负责该区域的sink节点失效时,触发一 个信号,通知本区域内的所有传感器节点,簇头节点接收到该消息后,中间节点将所传输的 数据包传回至源节点,删除目的节点为该sink的路由路径,并向邻居广播sink节点失效的 消息,当簇头节点接收到该消息后,立即查看自己的目标sink节点是否该失效sink节点,若 是,则立即启动备选路由路径。
【文档编号】H04W40/32GK105915451SQ201610341097
【公开日】2016年8月31日
【申请日】2016年5月19日
【发明人】丁永生, 姚光顺, 李芳 , 郝矿荣, 蔡欣, 刘天凤
【申请人】东华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1