一种无线传感器网络的蚁群优化的任播路由方法与流程

文档序号:19249705发布日期:2019-11-27 20:02阅读:158来源:国知局
一种无线传感器网络的蚁群优化的任播路由方法与流程

本发明属于无线传感器网络任播路由技术领域,具体为一种无线传感器网络的蚁群优化的任播路由方法。



背景技术:

近年来物联网技术不断取得新的成果,已经运用到国防军事、环境监测、交通管理、医疗卫生、制造业、抗灾抢险等领域,作为物联网底层重要技术之一的无线传感器网络已经成为了研究热点。其中任播路由技术是无线传感器网络中一项十分重要的研究技术。在无线传感器网络中,由于传感器节点能量来源于有限电源(电池),节点计算和存储能力较弱,且发送数据包要消耗能量,故无线传感器网络中存在网络延迟、网络生存时间短、网络耗能不均匀的问题。



技术实现要素:

本发明的目的在于解决无线传感器网络中存在网络延迟、网络生存时间短、网络耗能不均匀的问题,提供了一种无线传感器网络的蚁群优化的任播路由方法。

本发明解决其技术问题的技术方案是:一种无线传感器网络的蚁群优化的任播路由方法,包括以下步骤:

z1:指定一个发送节点为p,设p能够接收到其周围4个不同的sink节点的信号强度,进而转换为信号强度值,且4个sink节点均位于p的通信范围之内,其中s1、s2、s3、s4分别代表4个不同的sink节点,且每个sink节点的坐标位置是已知的;设发送节点p到其中一个sink节点的任一条路径上有k个节点;k个节点中包括p和一个sink节点;

z2:设定p在一个四边形abcd中,s1、s2、s3、s4分别在四边形abcd的四条边上;将p到s1、s2、s3、s4的信号强度值转换为p与s1、s2、s3、s4之间的距离值且分别记为ls1p、ls2p、ls3p、ls4p;根据sink节点的坐标位置计算得出s1和s2的距离值记为ls1s2,s2和s3的距离值记为ls2s3,s3和s4的距离值记为ls3s4,s4和s1的距离值记为ls4s1;

z3:将四边形s1s2s3s4区域记为ⅰ区且面积为s□s1s2s3s4;p、s1和s2形成三角形区域的面积记为sδs1s2p;p、s2和s3形成三角形区域的面积记为sδs2s3p;p、s3和s4形成三角形区域的面积记为sδs3s4p;p、s4和s1形成三角形区域的面积记为sδs1s4p;且三角形as1s2区域记为ⅱ区,三角形bs2s3区域记为ⅲ区;三角形cs3s4区域记为ⅳ区;三角形ds1s4区域记为ⅴ区;根据步骤z2得到的各参数,计算sδs1s2p、sδs2s3p、sδs3s4p、sδs1s4p、s□s1s2s3s4,设

z4:判断p位于哪个区域:

①当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于ⅰ区;

②当sδs1s2p=0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s1s2上,视为ⅱ区;

③当sδs1s2p≠0,sδs2s3p=0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s2s3上,视为ⅲ区;

④当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p=0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s3s4上,视为ⅳ区;

⑤当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p=0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s1s4上,视为ⅴ区;

⑥当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p>s□s1s2s3s4时,则p位于四边形s1s2s3s4之外且在四边形abcd之内;然后计算p到s1、s2的距离之和为l1=ls1p+ls2p;计算p到s2、s3的距离之和为l2=ls2p+ls3p;计算p到s3、s4的距离之和为l3=ls3p+ls4p;计算p到s1、s4的距离之和为l4=ls1p+ls4p;当l1=min(l1,l2,l3,l4),即l1为l1、l2、l3、l4中的最小值,那么p位于ⅱ区;当l2=min(l1,l2,l3,l4),即l2为l1、l2、l3、l4中的最小值,p位于ⅲ区;当l3=min(l1,l2,l3,l4),即l3为l1、l2、l3、l4中的最小值,p位于ⅳ区;当l4=min(l1,l2,l3,l4),即l4为l1、l2、l3、l4中的最小值,p位于ⅴ区;

z5:然后通过蚁群算法来选取一条从p到s1、s2、s3或s4之间的最短路径即最优传输路径,所述蚁群算法的适应度函数为:

由步骤z1可知从p到s1、s2、s3或s4任一sink节点间的任一条路径上均包括k个节点,设p到s1、s2、s3或s4任一sink节点间均包括m条路径;每条路径均可得一个适应度函数值fsjz,适应度函数值fsjz表示p到s1、s2、s3或s4任一sink节点间的第z条路径的距离,其中1≤z≤m;li为第z条路径上第i个节点和第i+1个节点间的距离,从p到s1、s2、s3或s4任一sink节点间均包括m个适应度函数值fsjz,从p到s1、s2、s3或s4任一sink节点间的m个适应度函数值fsjz中,选出p到s1的最小适应度函数值fs1m即为p到s1的最优传输路径的距离、p到s2的最小适应度函数值fs2m即为p到s2的最优传输路径的距离、p到s3的最小适应度函数值fs3m即为p到s3的最优传输路径的距离、p到s4的最小适应度函数值fs4m即为p到s4的最优传输路径的距离;

z6:设p发送的数据包大小为d,由步骤z5可得,p向s1的最优传输路径的距离为fs1m,p向s2的最优传输路径的距离为fs2m,p向s3的最优传输路径的距离为fs3m,p向s4的最优传输路径的距离为fs4m,p通过最优传输路径发送数据包,则当p位于ⅰ区时,p向s1发送的数据包大小为p向s2发送的数据包大小为p向s3发送的数据包大小为p向s4发送的数据包大小为当p位于ⅱ区时,p向s1发送的数据包大小为p向s2发送的数据包大小为当p位于ⅲ区时,p向s2发送的数据包大小为p向s3发送的数据包大小为当p位于ⅳ区时,p向s3发送的数据包大小为p向s4发送的数据包大小为当p位于ⅴ区时p向s4发送的数据包大小为p向s1发送的数据包大小为

步骤z4分区确定p的位置,确定p所在区域之后,p向附近的多个sink节点发送数据包,这样可以减少发送数据包的时间,降低网络延迟。步骤z5中进一步通过蚁群算法对传输路径进行优化,确定出p到sink节点间的最优传输路径,这能够减少p发送数据包的时间,使数据包尽快送到sink节点,进一步降低网络延迟;所述蚁群算法为现有技术,蚁群算法(aco)在书名为《matlab优化算法案例分析与应用》、由清华大学出版社出版的、作者为余胜威且出版日期为2014年9月的出版物上有详细公开。步骤z6中在发送数据包时,p按一定的权重比例向各sink节点发送数据包,这样不只是一个sink节点可接收到数据包并且在工作,而是多个sink节点能接收到数据包并且在工作,故有利于网络均衡能耗,使得整个网络的生存时间加长。

本发明的有益效果是:本发明所述方法先确定好p所在区域,然后选择出p到sink节点间最优传输路径,最后p按一定的权重比例发送数据包,故能够降低网络延迟,减少发送时间;均衡节点能耗,减少网络耗能;提高网络整体生存时间。

附图说明

图1为本发明所述一种无线传感器网络的蚁群优化的任播路由方法的原理示意图。

图2为本发明所述p到sink节点之间的结构示意图(增加了普通节点)。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其他实施方式,都属于本发明所保护的范围。

参见附图1和附图2,现对本发明提供的一种无线传感器网络的蚁群优化的任播路由方法进行说明。

一种无线传感器网络的蚁群优化的任播路由方法,包括以下步骤:

z1:指定一个发送节点为p,设p能够接收到其周围4个不同的sink节点的信号强度,进而转换为信号强度值,且4个sink节点均位于p的通信范围之内,其中s1、s2、s3、s4分别代表4个不同的sink节点,且每个sink节点的坐标位置是已知的;设发送节点p到其中一个sink节点的任一条路径上有k个节点;k个节点中包括p和一个sink节点;具体如图2所示,n1、n2、n3……nk-2即为普通节点,具体的,p和sink节点之间的n1、n2、n3……nk-2是随机分布的;

z2:设定p在一个四边形abcd中,s1、s2、s3、s4分别在四边形abcd的四条边上;将p到s1、s2、s3、s4的信号强度值转换为p与s1、s2、s3、s4之间的距离值且分别记为ls1p,ls2p,ls3p,ls4p;根据sink节点的坐标位置可以计算得出s1和s2的距离值记为ls1s2,s2和s3的距离值记为ls2s3,s3和s4的距离值记为ls3s4,s4和s1的距离值记为ls4s1;

z3:将四边形s1s2s3s4区域记为ⅰ区且面积为s□s1s2s3s4;p、s1和s2形成三角形区域的面积记为sδs1s2p;p、s2和s3形成三角形区域的面积记为sδs2s3p;p、s3和s4形成三角形区域的面积记为sδs3s4p;p、s4和s1形成三角形区域的面积记为sδs1s4p;且三角形as1s2区域记为ⅱ区,三角形bs2s3区域记为ⅲ区;三角形cs3s4区域记为ⅳ区;三角形ds1s4区域记为ⅴ区;根据步骤z2得到的各参数,计算sδs1s2p、sδs2s3p、sδs3s4p、sδs1s4p、s□s1s2s3s4,设

z4:判断p位于哪个区域:

①当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于ⅰ区;

②当sδs1s2p=0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s1s2上,视为ⅱ区;

③当sδs1s2p≠0,sδs2s3p=0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s2s3上,视为ⅲ区;

④当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p=0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s3s4上,视为ⅳ区;

⑤当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p=0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p=s□s1s2s3s4时,则p位于边s1s4上,视为ⅴ区;

⑥当sδs1s2p≠0,sδs2s3p≠0,sδs3s4p≠0,sδs1s4p≠0且sδs1s2p+sδs2s3p+sδs3s4p+sδs1s4p>s□s1s2s3s4时,则p位于四边形s1s2s3s4之外且在四边形abcd之内;然后计算p到s1、s2的距离之和为l1=ls1p+ls2p;计算p到s2、s3的距离之和为l2=ls2p+ls3p;计算p到s3、s4的距离之和为l3=ls3p+ls4p;计算p到s1、s4的距离之和为l4=ls1p+ls4p;当l1=min(l1,l2,l3,l4),即l1为l1、l2、l3、l4中的最小值,那么p位于ⅱ区;当l2=min(l1,l2,l3,l4),即l2为l1、l2、l3、l4中的最小值,p位于ⅲ区;当l3=min(l1,l2,l3,l4),即l3为l1、l2、l3、l4中的最小值,p位于ⅳ区;当l4=min(l1,l2,l3,l4),即l4为l1、l2、l3、l4中的最小值,p位于ⅴ区;

z5:然后通过蚁群算法来选取一条从p到s1、s2、s3或s4之间的最短路径即最优传输路径,所述蚁群算法的适应度函数为:

由步骤z1可知从p到s1、s2、s3或s4任一sink节点间的任一路径上均包括k个节点;设p到s1、s2、s3或s4任一sink节点间均包括m条路径;每条路径均可得一个适应度函数值fsjz,适应度函数值fsjz表示p到s1、s2、s3或s4任一sink节点间的第z条路径的距离,其中1≤z≤m;比如说fs11表示p到s1间的第1条路径的距离;li为第z条路径上第i个节点和第i+1个节点间的距离,从p到s1、s2、s3或s4任一sink节点间均包括m个适应度函数值fsjz,从p到s1、s2、s3或s4任一sink节点间的m个适应度函数值fsjz中,选出p到s1的最小适应度函数值fs1m即为p到s1的最优传输路径的距离、p到s2的最小适应度函数值fs2m即为p到s2的最优传输路径的距离、p到s3的最小适应度函数值fs3m即为p到s3的最优传输路径的距离、p到s4的最小适应度函数值fs4m即为p到s4的最优传输路径的距离;

z6:设p发送的数据包大小为d,由步骤z5可得,p向s1的最优传输路径的距离为fs1m,p向s2的最优传输路径的距离为fs2m,p向s3的最优传输路径的距离为fs3m,p向s4的最优传输路径的距离为fs4m,p通过最优传输路径发送数据包,则当p位于ⅰ区时,p向s1发送的数据包大小为p向s2发送的数据包大小为p向s3发送的数据包大小为p向s4发送的数据包大小为当p位于ⅱ区时,p向s1发送的数据包大小为p向s2发送的数据包大小为当p位于ⅲ区时,p向s2发送的数据包大小为p向s3发送的数据包大小为当p位于ⅳ区时,p向s3发送的数据包大小为p向s4发送的数据包大小为当p位于ⅴ区时p向s4发送的数据包大小为p向s1发送的数据包大小为

本发明所述方法首先利用节点间接收到的信号强度值转换为节点间的距离值,然后利用这些距离值一步一步推算出p的所在位置,sink节点能接收到它周围的所有节点(所有普通节点以及p)的信号强度,sink节点通过信号强度对它周围的各个节点进行位置判断和路径规划,然后sink节点把最优传输路径直接传输给p,最后p通过最优传输路径的距离并按一定的权重比例发送数据包,故能够降低网络延迟,减少发送时间;均衡节点能耗,减少网络耗能;提高网络整体生存时间。

进一步的,作为本发明所述的一种无线传感器网络的蚁群优化的任播路由方法的一种具体实施方式,p所在区域是利用rssi测距算法将信号强度值转换为距离值计算得到的。

上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。

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