一种无线传感器网络多收发器多信道分配算法的制作方法

文档序号:12756627阅读:311来源:国知局
一种无线传感器网络多收发器多信道分配算法的制作方法与工艺
本发明涉及数据密集型无线传感器网络
技术领域
,特别是一种无线传感器网络多收发器多信道分配算法。
背景技术
:无线传感器网络(WSN)在数据密集型领域的应用日益增加,例如结构健康监测领域,地震监测,以及火山监测等等。这些应用均需要传输大量数据到WSN中的汇聚节点,对于此类应用,如何最大化吞吐量是一个亟待解决的问题。传统的WSN多采用基于单信道单收发器竞争型通信架构,该种架构很难满足数据密集型领域的大数据量传输的需求。多信道多收发器的架构能够很好地解决这个问题。目前,基于多信道多收发器的多是针对Mesh网络、Wlan网络,而针对WSN领域的的研究还不是很多。对于WSN的多收发器多信道分配,可以采用粒子群优化算法来实现。粒子群算法(PSO)是基于模拟鸟群觅食行为的全局搜索算法。其中,每一个粒子代表一种可行的信道分配方案,通过多个粒子模拟鸟群觅食过程来得到最优解。每个粒子运动向自身最优值和其他粒子群最优值聚集,通过多次迭代得到最后的最优解。上述传统的粒子群算法搜索空间有限,当网络中传感器数量较大时候,可能陷入局部收敛的情况。技术实现要素:有鉴于此,本发明的目的是提出一种无线传感器网络多收发器多信道分配算法,能够提供全局搜索,获得更好的优化效果,并且在相同粒子群的情况下,具有更快的收敛速度,大大加快了获取最优解的求解速度。本发明采用以下方案实现:一种无线传感器网络多收发器多信道分配算法,具体包括以下步骤:步骤S1:建立无线传感器网络的通信网络拓扑图G,用G=(V,E)表示,其中,V表示WSN中节点,E表示节点间的通信链路的集合;通过通信拓扑图G获取网络链路潜在冲突图Gc,用Gc=(Vc,Ec)来表示,其中通信网络拓补图G中的通信链路数量为M;步骤S2:以所述无线传感器网络中的每一种多收发器多信道分配的可行解作为一个粒子,建立粒子群;所述粒子群中具有K个M维粒子;在当前时刻t时,针对第i个M维粒子,i=1~K,随机产生一个满足约束条件的N维位置Xi(t)=(xi1,xi2,...,xiM),xi1~xiM为第1~M条通信链路的信道分配方案;步骤S3:计算当前时刻t每个粒子的网络总干扰值,获得每个粒子的自身最优信道分配方案作为自身最优位置Pbesti(i=1~K);同时,以当前时刻t网络总干扰值最小的信道分配方案作为粒子群的全局最优信道分配方案,即全局最优位置Gbest;步骤S4:以遗传简化粒子群算法GA-SSO进行粒子的迭代搜索,其中在粒子的位置更新后,增加信道合并的操作;当迭代搜索进行至设定的迭代次数,就获得最终的优化结果,实现多信道多收发器的的优化;其中,所述遗传简化粒子群算法GA-SSO以无线传感器网络的总干扰值作为适应度。进一步地,所述步骤S4具体包括以下步骤;步骤S41:以遗传简化粒子群算法GA-SSO对每个粒子进行位置的更新,其中粒子i在t+1时刻的位置Xi(t+1)更新为:Xi(t+1)=Xi(t),ifr∈[0,Cw),Cross(Xi(t),Pbesti(t)),ifr∈[Cw,Cp),Cross(Xi(t),Gbest(t)),ifr∈[Cp,Cg),Mutate(Xi(t)),ifr∈[Cg,1);]]>其中,Cw为粒子i保持不变的概率,Cp为粒子i在当前时刻与个体最优位子的交叉因子,(Cp-Cw)为对应的交叉概率,Cg为粒子i在当前时刻与全局最优位置的交叉因子,(Cg-Cp)为对应的交叉概率;r为区间[0,1]内一均匀分布选取的独立随机数;步骤S42:判断位置Xi(t+1)是否满足收发器数量约束条件,若不满足,则进行信道合并操作;步骤S43:计算下一时刻t+1每个粒子所对应信道分配方案的网络总干扰值,获得每个粒子的自身最优位置Pbesti',i=1~K,并获得粒子群的全局最优位置Gbest';将Pbesti'对应的网络总干扰值与Pbesti对应的网络总干扰值进行对比,若Pbesti'对应的网络总干扰值更小,则将Pbesti'的值赋给Pbesti;将Gbest'对应的网络总干扰值与Gbest对应的网络总干扰值进行对比,若Gbest'对应的网络总干扰值更小,则Gbest'将的值赋给Gbest。步骤S44:判断是否达到预设的迭代次数;若达到迭代次数,则获得本次迭代的Pbest1~PbestK以及Gbest,把全局最优位置Gbest作为最终的信道分配方案;否则,返回步骤S41,进行下一次迭代。进一步地,计算所述每个粒子所对应信道分配方案的网络总干扰值包括以下步骤:步骤S31:在所述无线传感器网络中,根据节点的坐标获取网络通信图为G,再由通信图G获取网络潜在冲突图Gc;步骤S32:计算单条链路ei在信道分配方案f中的干扰值,计算采用下式:I(ei)=Σei,ej∈VcGc(i,j);]]>其中,Vc表示Gc中顶点(即G中链路),ei与ej的信道相同时干扰值为1;步骤S33:计算信道分配方案的总干扰值:I(f)=Σe∈VcI(e);]]>进一步地,步骤S42中,所述进行信道合并操作具体包括以下步骤;步骤S421:将已经分配好的链路信道分配方案f转化为节点信道分配方案fv;步骤S422:找出拥有最多不同信道总数量m的节点i;步骤S423:判断m是否大于节点的约束条件,所述节点约束条件为节点的收发器数量C;若m小于等于C,则该信道分配方案不需要进行信道合并;若m大于C,则该信道分配方案需要进行信道合并操作,进入步骤S424;步骤S424:找出与节点i相连的链路的信道编号,找出数量最少的两个信道编号c1,c2;步骤S425:将信道编号为c1的链路的信道编号改为c2;同时,将于该链路相连的信道编号为c1的链路的信道编号也改变为c2;步骤S426:返回步骤S421至步骤S423,若符合约束条件,则将该信道分配方案作为信道合并后的满足收发器数量约束条件的信道方案;否则,返回步骤S424,进行下一次的信道合并操作。与现有技术相比,本发明有以下有益效果:1、本发明通过结合遗传算法和简化粒子群算法的特点,引入了遗传算法中的交叉变异操作,对多收发器多信道分配的结果提高了全局搜索能力以及运行速度。2、本发明采用无线传感器网络的总干扰值作为遗传简化粒子群算法GA-SSO的适应度函数,总干扰值能够很好地反映每一个分配方案的优劣。同时,本发明结合现实网络环境中收发器数量有限的约束,提出一种信道合并方法,使得该方法能够更好的适应现实环境。附图说明图1为本发明实施例的方法流程示意图。图2为本发明实施例中遗传简化粒子群算法GA-SSO在信道数量一定,收发器数量不同的条件下的性能比较示意图。具体实施方式下面结合附图及实施例对本发明做进一步说明。如图1所示,本实施例提供了一种无线传感器网络多收发器多信道分配算法,具体包括以下步骤:步骤S1:建立无线传感器网络的通信网络拓扑图G,用G=(V,E)表示,其中,V表示WSN中节点,E表示节点间的通信链路的集合;通过通信拓扑图G获取网络链路潜在冲突图Gc,用Gc=(Vc,Ec)来表示,其中通信网络拓补图G中的通信链路数量为M;步骤S2:以所述无线传感器网络中的每一种多收发器多信道分配的可行解作为一个粒子,建立粒子群;所述粒子群中具有K个M维粒子;在当前时刻t时,针对第i个M维粒子,i=1~K,随机产生一个满足约束条件的N维位置Xi(t)=(xi1,xi2,...,xiM),xi1~xiM为第1~M条通信链路的信道分配方案;步骤S3:计算当前时刻t每个粒子的网络总干扰值,获得每个粒子的自身最优信道分配方案作为自身最优位置Pbesti(i=1~K);同时,以当前时刻t网络总干扰值最小的信道分配方案作为粒子群的全局最优信道分配方案,即全局最优位置Gbest;步骤S4:以遗传简化粒子群算法GA-SSO进行粒子的迭代搜索,其中在粒子的位置更新后,增加信道合并的操作;当迭代搜索进行至设定的迭代次数,就获得最终的优化结果,实现多信道多收发器的的优化;其中,所述遗传简化粒子群算法GA-SSO以无线传感器网络的总干扰值作为适应度。在本实施例中,所述步骤S4具体包括以下步骤;步骤S41:以遗传简化粒子群算法GA-SSO对每个粒子进行位置的更新,其中粒子i在t+1时刻的位置Xi(t+1)更新为:Xi(t+1)=Xi(t),ifr∈[0,Cw),Cross(Xi(t),Pbesti(t)),ifr∈[Cw,Cp),Cross(Xi(t),Gbest(t)),ifr∈[Cp,Cg),Mutate(Xi(t)),ifr∈[Cg,1);]]>其中,Cw为粒子i保持不变的概率,Cp为粒子i在当前时刻与个体最优位子的交叉因子,(Cp-Cw)为对应的交叉概率,Cg为粒子i在当前时刻与全局最优位置的交叉因子,(Cg-Cp)为对应的交叉概率;r为区间[0,1]内一均匀分布选取的独立随机数;步骤S42:判断位置Xi(t+1)是否满足收发器数量约束条件,若不满足,则进行信道合并操作;步骤S43:计算下一时刻t+1每个粒子所对应信道分配方案的网络总干扰值,获得每个粒子的自身最优位置Pbesti',i=1~K,并获得粒子群的全局最优位置Gbest';将Pbesti'对应的网络总干扰值与Pbesti对应的网络总干扰值进行对比,若Pbesti'对应的网络总干扰值更小,则将Pbesti'的值赋给Pbesti;将Gbest'对应的网络总干扰值与Gbest对应的网络总干扰值进行对比,若Gbest'对应的网络总干扰值更小,则Gbest'将的值赋给Gbest。步骤S44:判断是否达到预设的迭代次数;若达到迭代次数,则获得本次迭代的Pbest1~PbestK以及Gbest,把全局最优位置Gbest作为最终的信道分配方案;否则,返回步骤S41,进行下一次迭代。在本实施例中,计算所述每个粒子所对应信道分配方案的网络总干扰值包括以下步骤:步骤S31:在所述无线传感器网络中,根据节点的坐标获取网络通信图为G,再由通信图G获取网络潜在冲突图Gc;步骤S32:计算单条链路ei在信道分配方案f中的干扰值,计算采用下式:I(ei)=Σei,ej∈VcGc(i,j);]]>其中,Vc表示Gc中顶点(即G中链路),ei与ej的信道相同时干扰值为1;步骤S33:计算信道分配方案的总干扰值:I(f)=Σe∈VcI(e);]]>在本实施例中,步骤S42中,所述进行信道合并操作具体包括以下步骤;步骤S421:将已经分配好的链路信道分配方案f转化为节点信道分配方案fv;步骤S422:找出拥有最多不同信道总数量m的节点i;步骤S423:判断m是否大于节点的约束条件,所述节点约束条件为节点的收发器数量C;若m小于等于C,则该信道分配方案不需要进行信道合并;若m大于C,则该信道分配方案需要进行信道合并操作,进入步骤S424;步骤S424:找出与节点i相连的链路的信道编号,找出数量最少的两个信道编号c1,c2;步骤S425:将信道编号为c1的链路的信道编号改为c2;同时,将于该链路相连的信道编号为c1的链路的信道编号也改变为c2;步骤S426:返回步骤S421至步骤S423,若符合约束条件,则将该信道分配方案作为信道合并后的满足收发器数量约束条件的信道方案;否则,返回步骤S424,进行下一次的信道合并操作。实施例1。针对上述思想,对本发明使用的遗传简化粒子群算法,与简化粒子群算法以及DPSOCA算法在多收发器多信道分配问题进行仿真。考虑25个传感器部署在面积为1000*1000m2的区域中。粒子群大小为50,传感器的通信半径为250m,干扰半径为250m,每个节点可用信道数为5,收发器数量为3。设定的Cg=0.5,Cp=0.3,Cw=0.1,迭代次数为1000次。考虑100次随机实验,算法的性能如表1所示。表1算法性能对比结果表明,GASSO的收敛速度更快,优化效果较好。网络最小干扰值GASSO为5.55%,SSO为6.42%,DPSOCA为5.75%。实施例2。为了进一步说明上述问题,对本发明使用的遗传简化粒子群算法,与简化粒子群算法以及DPSOCA算法在多收发器多信道分配问题进行仿真。考虑25个传感器部署在面积为10001000m2的区域中。粒子群大小为50,传感器的通信半径为250m,干扰半径为250m,每个节点可用信道数为12,收发器数量为12。设定的Cg=0.5,Cp=0.3,Cw=0.1,迭代次数为1000次。通过改变可用收发器数量,获取不同的总干扰值。图2为网络配置25个节点时,9个正交信道不同收发器数量的冲突百分比变化情况。随着接口数目的增加,整个网络的干扰值先随着收发器的数量增加迅速降低,然后降低的速度逐渐减慢。当收发器数量为6时,再继续增加节点的收发器数量,干扰值基本不会变化。原因是:当收发器数量少的时候,对链路进行信道分配,链路对应的节点分配的信道受到收发器数量的约束大,干扰值大;当收发器数量增加时,这种约束愈来愈小,干扰值随之减小;当收发器数量增加到一定数量时,再继续增加收发器数量,对新增加的收发器所分配的信道有可能已经在同一个节点的其他收发器上已经分配了,因此,对整个网络的干扰没有产生更大的影响了。同时,由于该三种算法均起源于粒子群算法,给予足够的时间与迭代次数,均能够得到不错的结果。以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1