基于改进离散差分算法的汇聚节点定位方法

文档序号:10597686阅读:492来源:国知局
基于改进离散差分算法的汇聚节点定位方法
【专利摘要】本发明提供了一种基于改进离散差分算法的汇聚节点定位方法,充分考虑到实际工程中节点的异构性、路由路径的可靠性对汇聚节点位置的影响,在改进离散差分算法中引入自适应的缩放因子,能够使得算法初期保持较强的全局搜索能力,后期保持较强的局部搜索能力;引入自适应的变异机制,根据进化过程中种群演化的趋势,选择合适的变异策略,既能保持种群的多样性,避免陷入局部最优,从而提高离散差分算法的全局优化能力,又能使得算法快速收敛,解决了原有差分算法在解决离散变量优化时存在的“早熟”收敛和陷入局部最小值的技术问题,从而得到优化的汇聚节点定位部署,增强了数据通信的可靠性,提高了网络服务质量。
【专利说明】
基于改进离散差分算法的汇聚节点定位方法
技术领域
[0001] 本发明涉及无线传感器网络技术领域,具体涉及一种基于改进离散差分算法的汇 聚节点定位方法。
【背景技术】
[0002] 近年来,随着微机电技术的发展和硬件价格的下降,无线传感器网络的应用范围 日益扩大,在环境监测、智能家居、灾害应急和军事等领域得到了广泛应用。在这些应用中, 无线传感器网络系统通常由传感节点和汇聚节点(也称为s i nk节点)构成。传感节点负责感 知物理世界参数的变化并将采集到的数据通过单跳或多跳形式传输给汇聚节点。汇聚节点 较之传感节点具有更强的存储能力、计算处理能力,它负责将普通的感知节点发给它的信 息进行处理后发给Internet等外部网络。由于汇聚节点一般价格昂贵,并且对传感器网络 的服务质量有重要影响,合理的汇聚节点布局对增强网络的监控能力和提高网络服务质量 显得尤为重要。
[0003] 现有的对于汇聚节点定位的研究,一方面假定参与感知任务的传感节点都是类型 相同的节点,即所有传感节点的感知半径、通信半径和能量等参数都相同,忽略了节点的异 构性才是节点最普遍的存在形式,所得的研究成果和方法运用于实际工程实践中存在较大 的差距;另一方面,对汇聚节点定位方法的研究,大多针对普通节点到汇聚节点的传输路径 的长度进行优化达到降低能耗的目的,但在一些对可靠性要求比较严格的场合下,最短路 径有时并不一定最可靠的。
[0004] 群优化算法作为一种启发式算法,近年来在传感器网络资源优化中得到了广泛应 用。差分算法作为一种典型的群优化算法,具有运算简单、受控参数少和优化能力强的特 点,得到了广大研究者的重视。本发明利用差分算法优化能力强的特点对汇聚节点的位置 进行优化,保证传输的可靠性,同时根据优化模型的特点,对原有差分算法进行改进,增强 其在离散问题上的优化能力,克服原有差分算法的"早熟"收敛和陷入局部最小值的缺点。

【发明内容】

[0005] 本申请通过提供一种基于改进离散差分算法的汇聚节点定位方法,在该改进离散 差分算法中引入自适应的缩放因子和自适应的变异机制,以解决原有差分算法的"早熟"收 敛和陷入局部最小值的技术问题,从而得到优化的汇聚节点定位,增强了数据通信的可靠 性,提高了网络服务质量。
[0006] 为解决上述技术问题,本申请采用以下技术方案予以实现:
[0007] -种基于改进离散差分算法的汇聚节点定位方法,包括如下步骤:
[0008] S1:网络环境设置及节点部署:在长度为L,宽度为W的二维平面监测区域中进行栅 格划分,将传感器节点g随机放置在栅格点上,其中,i = 1,2…,M,M为传感器的类型数,j = 1,2…,N,N为传感器的总数,若节点^^位于节点通信半径内,则节点能将数据传输至 节点其中,V,jie j,节点g到节点0的数据链路的可靠性为(0,1)之间的 随机数,汇聚节点的候选位置也设置在栅格点上,设汇聚节点位置的编码方式为(X,Y),其 中,X为汇聚节点横坐标,Y为汇聚节点纵坐标,X和Y取值范围为保证汇聚节点在监测区域 内,若汇聚节点在节点通信半径内,则节点$能直接将数据传输至汇聚节点,设定此时 节点g到汇聚节点的通信链路的可靠性为1; n
[0009] S2:解评价:利用公式^ =-D&d)来评价节点5]到汇聚节点sink的可靠 k:=l 性,式中为代价,即运用Di jkstra算法求得节点到汇聚节点sink的最佳可靠性路 径,n为最佳可靠性路径的跳数,rk为从节点到汇聚节点sink最短路径中第k跳的可靠性, ln(rk)表示对rk取自然对数,所有节点到汇聚节点sink的可靠性为:C ~ ^^ ;
[0010] Di jkstra算法求解最佳可靠性路径的方法为:
[0011] A1:假设用带权的邻接矩阵arcs来表示带权有向图,arcs[i][ j]表示弧<Vi,Vj>上 的权值(此处即为-In(节点Si与节点Sj之间通信链路的可靠性));若< Vl,Vj>不存在,则置 arcs[i][j]为m;S为已找到从v出发的最佳可靠性路径的终点的集合,它的初始状态为空 集;那么,从v出发到图上其余顶点(终点) Vl可能达到的最佳可靠性路径长度的初值为:
[0012] D[ i] =arcs[LocateVex(G, v) [ i] ]viG V;
[0013] A2:选择vj,使得D [ j ] =Min {D [ i ] Vi G V_S}
[0014] Vj是当前求得的一条从v出发的最佳可靠性路径的终点,令S = SU {j};
[0015] A3:修改从v出发到集合V-S上任一顶点vk可达的最佳可靠性路径长度,若D[j] + arcs[ j][k]<D[k],则修改D[k]=D[ j]+arcs[ j][k]。
[0016] S3:利用改进的离散差分算法对汇聚节点的位置进行优化:
[0017] S31:种群及参数初始化:设置种群个体数目NP,最大迭代次数MAX_ITE,R交叉因子 CR,缩放因子F的最大值为Fu,最小值为Fl,对种群中的NP个个体进行初始化(Xi,Yi),其中,Xi G [Lmin,Lmax],YiG [Wmin,Wmax],Lmin为长度L的最小值,Lmax为长度L的最大值,W min为宽度W的 最小值,Wmax为宽度W的最大值;
[0018] S32:计算缩放因子F: ,式中,F(in)为迭 代次数为in的缩放因子;expO表示以自然常数e为底数的指数函数;
[0019] S33:变异个体计算及其有效性检验:
[0020] S331:变异后的新个体为:
[Vf - PA + F{in) x (Pr2 - Pr.) delta > threshold
[0021] < " = p. + F(in) x (P,wi - P.) + F(in) x (Pr2 - Pr^) delta < threshold
[0022] 其中,
,式中,threshold为阈值,fmean为种群中所有个体适应度 的平均值,fbest为种群中适应度最好个体的适应度值,ri,r2,r3G {1,2,"_,NP}且ri辛r2辛 r3,Pri为种群中序号为ri的个体,Pr2为种群中序号为r2的个体,Pr3为种群中序号为r 3的个 体,Pi为种群中序号为i的个体;
[0023] S332:对变异后的个体Vi的每一维向下取整;
[0024] S333:检验取整后新个体Vi的有效性,即检验新个体Vi的第一维值是否在[Lmin, Lmax]中,检验新个体Vi的第二维值是否在[Wmin,Wmax]中,若能满足有效性条件,则进入步骤 S34,否则,跳转至步骤S334;
[0025] S334:利用随机函数重新生成新个体,并跳转至步骤S332;
[0026] S34:交叉操作: rVu rand{)<CR or j = jniih,
[0027] R .(m + 1) = ^ ^ |^(叫其他
[0028] 式中,iG{l,2,…,NP},j,j進dG{l,2},rand〇 为(0,1)之间的随机数;
[0029] S4:判断迭代是否结束,若下一次迭代次数in+1大于最大迭代次数MAX_ITER或者 delta大于阈值tolerance,则迭代结束,进入步骤S5,否则,迭代次数in+1,跳转至步骤S32 继续优化;
[0030] S5:利用步骤S2对产生的解的质量进行评价,选择种群个体中C最小的个体,即为 汇聚节点的部署位置。
[0031] 进一步地,步骤S334中利用随机函数重新生成新个体的方式为:
[0032] Vi,l = Lmin+rand( ) X (Lmax-Lmin),Vi,2 = Wmin+rand() X (Wmax-Wmin),其中,Vi,1 为个体 Vi的第一维值,Vi, 2为个体Vi的第二维值,rand ()为产生随机数的随机函数。
[0033]作为一种优选的技术方案,步骤S31中所述交叉因子CR = 0.9,缩放因子的最大值 Fu = 1,缩放因子的最小值Fl = 0.1;步骤S4中所述threshold = 10-2。
[0034] 与现有技术相比,本申请提供的技术方案,具有的技术效果或优点是:得到优化的 汇聚节点定位,增强了数据通信的可靠性,提高了网络服务质量。
【附图说明】
[0035] 图1为本发明的汇聚节点定位方法流程图;
[0036] 图2为利用改进的离散差分算法对汇聚节点的位置进行优化的流程图;
[0037]图3为算法收敛性对比图;
[0038]图4为不同部署节点下算法优化能力对比图。
【具体实施方式】
[0039] 本申请实施例通过提供一种基于改进离散差分算法的汇聚节点定位方法,在该改 进离散差分算法中引入自适应的缩放因子和自适应的变异机制,以解决原有差分算法的 "早熟"收敛和陷入局部最小值的技术问题,从而得到优化的汇聚节点定位,增强了数据通 信的可靠性,提高了网络服务质量。
[0040] 为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式,对 上述技术方案进行详细的说明。
[0041] -种基于改进离散差分算法的汇聚节点定位方法,如图1所示,包括如下步骤: [0042] S1:网络环境设置及节点部署:在长度为L,宽度为W的二维平面监测区域中进行栅 格划分,将传感器节点g随机放置在栅格点上,其中,i = 1,2…,M,M为传感器的类型数,j = 1,2…,N,N为传感器的总数,若节点5;;位于节点通信半径内,则节点能将数据传输至 节点$,.其中,V,iiei;,jie j,节点#到节点<的数据链路的可靠性为(0,1)之间的 随机数,汇聚节点的候选位置也设置在栅格点上,设汇聚节点位置的编码方式为(X,Y),其 中,X为汇聚节点横坐标,Y为汇聚节点纵坐标,X和Y取值范围为保证汇聚节点在监测区域 内,若汇聚节点在节点g通信半径内,则节点<能直接将数据传输至汇聚节点,设定此时 节点g到汇聚节点的通信链路的可靠性为1;
[0043] 至于栅格划分的粒度,需要根据具体监测任务和监测对象的性质来决定,在本实 施例中,二维平面大小为8X8, 即L = 8,W = 8,栅格划分的粒度为1X1,共设置了2种类型的 传感器节点,每一种类型均有10个传感器节点,即M=2,N=20,类型一的传感器通信半径为 4,类型二的传感器通信半径为6,若节点之间存在通信链路,该通信链路的可靠性为0到1之 间的随机数。 n
[0044] S2 :解评价:利用公式C、.,来评价节点g到汇聚节点sink的可靠 性,式中为代价,即运用Di jkstra算法求得节点$到汇聚节点sink的最佳可靠性路 径,n为最佳可靠性路径的跳数,^为从节点g到汇聚节点sink最短路径中第k跳的可靠性, In(rk)表示对rk取自然对数,所有节点到汇聚节点sink的可靠性为:C = IC\
[0045] Di jkstra算法求解最佳可靠性路径的方法为:
[0046] A1:假设用带权的邻接矩阵arcs来表示带权有向图,arcs[i][ j]表示弧<vi,vj>上 的权值(此处即为-In(节点S1与节点P之间通信链路的可靠性));若< Vl,Vj>不存在,则置 arcs[i][j]为为已找到从v出发的最短路径的终点的集合,它的初始状态为空集;那 么,从v出发到图上其余顶点(终点) Vl可能达到的最佳可靠性路径长度的初值为:
[0047] D[ i] =arcs[LocateVex(G, v) [ i] ]viG V;
[0048] A2:选择vj,使得D [ j ] =Min {D [ i ] Vi G V_S}
[0049] Vj是当前求得的一条从v出发的最佳可靠性路径的终点,令S = SU {j};
[0050] A3:修改从v出发到集合V-S上任一顶点vk可达的最佳可靠性路径长度,若D[j] + arcs[ j][k]<D[k],则修改D[k]=D[ j]+arcs[ j][k]。
[0051] S3:利用改进的离散差分算法对汇聚节点的位置进行优化,如图2所示:
[0052] S31:种群及参数初始化:设置种群个体数目NP,最大迭代次数MAX_ITE,R交叉因子 CR,缩放因子F的最大值为Fu,最小值为Fl,对种群中的NP个个体进行初始化(Xi,Yi),其中,Xi G [Lmin,Lmax],YiG [Wmin,Wmax],Lmin为长度L的最小值,Lmax为长度L的最大值,W min为宽度W的 最小值,Wmax为宽度W的最大值;
[0053] 在本实施例中,设种群的个体数目NP = 30,最大迭代次数MAX_ITER = 200,Lmin = 0, Lmax = 7,Wmin = 0,Wmax = 7,CR = 0.9,Fu=l,Fl = 0.1,threshold=10-2。
[0054] S32:计算缩放因子F:
1式中,F(in)为迭 代次数为in的缩放因子;expO表示以自然常数e为底数的指数函数;
[0055] 从上式中可以看出,在算法开始初期,缩放因子F取值较小,使得算法保持较好的 搜索能力,随着迭代次数增加,F的值逐渐增大,增强了算法局部优化能力。
[0056] S33:变异个体计算及其有效性检验:
[0057] S331:变异后的新个体为: =戽 + F(/?) X (/^ - pr3) delta > threshold
[0058] < h 二乃 + FO) X d, - f) + F衡)X (4 -尸,)delta ^threshold
[0059] 其中
,式中,threshold为阈值,其值一般由解决问题的特点来 定,若为高维问题,取值为10'若为低维问题,取值为l〇_2,fm_为种群中所有个体适应度的 平均值,fbest为种群中适应度最好个体的适应度值,ri,r2,r3G {1,2,"_,NP}且ri辛r2辛r3, Prl为种群中序号为ri的个体,Pr2为种群中序号为r2的个体,Pr3为种群中序号为r 3的个体,Pi 为种群中序号为i的个体;
[0060] S332:对变异后的个体Vi的每一维向下取整;
[00611 S333 :检验取整后新个体Vi的有效性,即检验新个体Vi的第一维值是否在[Lmin, Lmax]中,检验新个体Vi的第二维值是否在[Wmin,Wmax]中,若能满足有效性条件,则进入步骤 S34,否则,跳转至步骤S334;
[0062] S334:利用随机函数重新生成新个体,并跳转至步骤S332;
[0063] 随机函数重新生成新个体的具体方式为:Vi,l = Lmin+rand() X (Lmax-Lmin),Vi,2 = Wmin+randO X (wmax-wmin),其中,Vi;1为个体Vi的第一维值,乂"为个体乂册第二维值,^!!^) 为产生随机数的随机函数。
[0064] S34:交叉操作: r \VU ra/?t/() <CR or j = jnnhl
[0065] P,(in + X) = i ,J 其他
[0066] 式中,i G {1,2,…,NP},j,j進dG {1,2},rand()为(0,1)之间的随机数;
[0067] S4:判断迭代是否结束,若下一次迭代次数in+1大于最大迭代次数MAX_ITER或者 delta大于阈值tolerance,则迭代结束,进入步骤S5,否则,迭代次数in+1,跳转至步骤S32 继续优化;
[0068] S5:利用步骤S2对产生的解的质量进行评价,选择种群个体中C最小的个体,即为 汇聚节点的部署位置。 n
[0069] 由于本发明中采用Cv.Z/〃(/).)评价解的质量,代价函数中为了计算方便 广 k-A 添加了一个负号,对于本发明的优化目标汇聚节点部署位置,使得节点到汇聚节点的路径 可靠性最好,即选择使得 Sj ,smk 能取得最小值的解。
[0070] 基于改进离散差分算法运行后的结果如图3和图4所示,其中所有的结果均为15次 算法运行后得到结果的平均值。图3为在部署异构节点数为20的情况下,本发明提出的改进 离散差分算法与原有差分算法收敛性能比较,从图3可以看出,改进离散差分算法由于采用 了参数自适应的缩放因子以及根据种群进化特点而自适应选择的变异策略,较之原有的差 分算法具备较好的收敛性能,同时能种群得到的解的质量优于原有差分算法(由于本实施 例目标函数为最小值函数,也就是适应度越小越好)。为了更好地比较两种算法在不同部署 节点的情况下的目标优化能力,在同样的部署区域内,通过改变部署节点的数目从而得到 不同节点布局密度情况下的汇聚节点的优化位置,结果如图4所示,从图4可以看出,改进离 散差分算法在不同的节点部署密度情况下,目标优化能力都优于原有差分算法,证明了改 进离散差分算法的有效性。
[0071] 本申请的上述实施例中,本发明提供了一种基于改进离散差分算法的汇聚节点定 位方法,充分考虑到实际工程中节点的异构性、路由路径的可靠性对汇聚节点位置的影响, 采用根据进化种群的特点控制参数自适应和变异策略自适应的改进离散差分算法,在改进 离散差分算法中引入自适应的缩放因子,能够使得算法初期保持较强的全局搜索能力,后 期保持较强的局部搜索能力;引入自适应的变异机制,根据进化过程中种群演化的趋势,选 择合适的变异策略,既能保持种群的多样性,避免陷入局部最优,从而提高离散差分算法的 全局优化能力,又能使得算法快速收敛,解决了原有差分算法的"早熟"收敛和陷入局部最 小值的技术问题,从而得到优化的汇聚节点定位部署,增强了数据通信的可靠性,提高了网 络服务质量。
[0072] 应当指出的是,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例, 本技术领域的普通技术人员在本发明的实质范围内所做出的变化、改性、添加或替换,也应 属于本发明的保护范围。
【主权项】
1. 一种基于改进离散差分算法的汇聚节点定位方法,其特征在于,包括如下步骤: S1:网络环境设置及节点部署:在长度为L,宽度为W的二维平面监测区域中进行栅格划 分,将传感器节点^随机放置在栅格点上,其中,i = l,2···,Μ,Μ为传感器的类型数,j = 1, 2…,N,N为传感器的总数,若节点01位于节点gi通信半径内,则节点g.i能将数据传输至节 点0,其中,i' 41£1;_]",」1^夂节点&11到节点>^的数据链路的可靠性为(0,1)之间的随 机数,汇聚节点的候选位置也设置在栅格点上,设汇聚节点位置的编码方式为(X,Y),其中, X为汇聚节点横坐标,Υ为汇聚节点纵坐标,X和Υ取值范围为保证汇聚节点在监测区域内,若 汇聚节点在节点$通信半径内,则节点$能直接将数据传输至汇聚节点,设定此时节点S; 到汇聚节点的通信链路的可靠性为1; S2:解评价:利用公3Η平价节点*^到汇聚节点s i nk的可靠性,式 中,为代价,即运用Di jkstra算法求得节点$到汇聚节点sink的最佳可靠性路径,η 为最佳可靠性路径的跳数,rk为从节点$到汇聚节点sink最短路径中第k跳的可靠性,In(rk)表示对rk取自然对数,所有节点到汇聚节点s ink的可靠性为: S3:利用改进的离散差分算法对汇聚节点的位置进行优化: S31:种群及参数初始化:设置种群个体数目NP,最大迭代次数MAX_ITE,交叉因子CR,缩 放因子F的最大值为Fu,最小值为Fl,对种群中的NP个个体进行初始化(Xi,Yi),其中,Xi e [Lmin,Lmax],Yie [Wmin,Wmax],Lmin为长度L的最小值,Lmax为长度L的最大值,W min为宽度W的最 小值,Wmax为宽度W的最大值; S32:计算缩放因子F:ζ中,F(in)为迭代次 数为in的缩放因子;expO表示以自然常数e为底数的指数函数; S33:变异个体计算及其有效性检验: S331:变异后的新个体为:其4,中,threshold为阈值,fme3an为种群中所有个体适应度的平 均值,fbest为种群中适应度最好个体的适应度值,ri,r2,r3e {1,2,…,NP}且η辛Γ2辛r3,Pri 为种群中序号为ri的个体,Pr2为种群中序号为r2的个体,Pr3为种群中序号为r3的个体,Pi为 种群中序号为i的个体; S332:对变异后的个体Vi的每一维向下取整; S333:检验取整后新个体Vi的有效性,即检验新个体Vi的第一维值是否在[Lmin,Lmax]中, 检验新个体Vi的第二维值是否在[Wmin,Wmax]中,若能满足有效性条件,则进入步骤S34,否 贝1J,跳转至步骤S334; S334:利用随机函数重新生成新个体,并跳转至步骤S332; S34:交叉操作:式中,1£{1,2,'",即},]_,>_^{1,2},瓜11(1()为(0,1)之间的随机数; S4:判断迭代是否结束,若下一次迭代次数in+Ι大于最大迭代次数MAX_ITER或者 delta大于阈值tolerance,则迭代结束,进入步骤S5,否则,迭代次数in+Ι,跳转至步骤S32 继续优化; S5:利用步骤S2对产生的解的质量进行评价,选择种群个体中C最小的个体,即为汇聚 节点的部署位置。2. 根据权利要求1所述的基于改进离散差分算法的汇聚节点定位方法,其特征在于,步 骤S334中利用随机函数重新生成新个体的方式为: Vi,l = Lmin+rand〇 X (Lmax-Lmin),Vi,2=Wmin+rand〇 X (Wmax-Wmin),其中,Vi,l为个体Vi的第 一维值,Vi,2为个体Vi的第二维值,rand()为产生随机数的随机函数。3. 根据权利要求1所述的基于改进离散差分算法的汇聚节点定位方法,其特征在于,步 骤S31中所述交叉因子CR = 0.9,缩放因子的最大值Fu = 1,缩放因子的最小值Fl = 0.1。
【文档编号】H04W84/18GK105959912SQ201610098466
【公开日】2016年9月21日
【申请日】2016年2月23日
【发明人】李明
【申请人】重庆工商大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1