发明名称 基于均匀分簇和数据聚合的无线传感器网络路由方法
摘要 本发明公开了一种基于均匀分簇和数据聚合的无线传感器网络路由方法。其实现步骤是:(1)根据网络中能量消耗最小,确定网络中的最小传输距离,网络中的最优簇头数,簇头之间最小距离;(2)利用最优簇头数目和簇头之间最小距离,选出网络中能量较大且分布均匀的节点作为簇头;(3)根据最小传输距离,用所有簇头节点与SINK节点组成一棵以SINK为根的最小树作为簇间路由;(4)簇内成员节点将数据发送给簇头节点,簇头节点将收集到的数据与自己感知的数据聚合成一个数据包后,沿着建立的簇间路由将数据发送给网关SINK节点。本发明与现有技术相比,具有可扩展性强、网络生命周期长、延迟低的优点,可用于实现不同规模无线传感器网络的数据收集与传输。
申请公布号 CN102769890B 申请公布日期 2014.08.20
申请号 CN201210213143.1 申请日期 2012.06.26
申请人 西安电子科技大学 发明人 齐小刚;韩峰;陈杰
分类号 H04L12/725(2013.01)I;H04W40/10(2009.01)I;H04W40/24(2009.01)I;H04W84/18(2009.01)I 主分类号 H04L12/725(2013.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 一种基于均匀分簇和数据聚合的无线传感器网络路由方法,包括如下步骤:(1)在面积为S=L×L的平面区域内,随机抛撒N个同构的无线传感器节点,其中500≤L≤700,N=400,并将网关节点SINK布置在网络中心,其坐标为(L/2,L/2),该网关节点SINK用于接收并处理整个无线传感器网络收集的数据;(2)根据整个网络的最小能耗,计算网络的最小传输距离D、网络的最优簇头数K和簇头之间最小距离d:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>D</mi><mo>=</mo><mn>2</mn><msqrt><mfrac><msub><mi>E</mi><mi>elec</mi></msub><msub><mi>&epsiv;</mi><mi>fs</mi></msub></mfrac></msqrt><mo>,</mo></mrow>]]></math><img file="FDA0000525177190000011.GIF" wi="282" he="166" /></maths><img file="FDA0000525177190000012.GIF" wi="1207" he="244" /><maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>d</mi><mo>=</mo><msqrt><mfrac><mrow><mn>2</mn><mi>S</mi><mi>arccos</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac></mrow><mrow><mi>&pi;K</mi><msqrt><mfrac><mn>1</mn><msup><mi>&alpha;</mi><mn>2</mn></msup></mfrac><mo>-</mo><mfrac><mn>1</mn><mn>4</mn></mfrac></msqrt></mrow></mfrac></msqrt><mo>,</mo></mrow>]]></math><img file="FDA0000525177190000013.GIF" wi="449" he="282" /></maths>式中,E<sub>elec</sub>表示每发送或接收单位bit数据的能耗,ε<sub>fs</sub>表示为节点中的放大电路在单位面积内传播单位bit数据的能耗,S为区域面积,N为传感器节点数目,d<sub>SINK</sub>表示网络中节点到SINK节点的距离,E[d<sub>SINK</sub>]表示为网络中节点到基站的距离期望,α为一个参数,仿真时α=1.3;(3)根据网络最优簇头数K和簇头之间最小距离d,在网络中选出K个节点作为簇头,将非簇头节点加入簇:(3a)选取网络中剩余能量最大的节点作为第一个簇头,其余簇头选取时,若节点与已经当选为簇头的节点之间的距离大于d,则把该节点加入到候选簇头集合S_candidate中,在候选簇头集合S_candidate中选取能量最大的一个节点作为第二个簇头,以此类推,选出K个簇头;(3b)所有簇头向其周围非簇头节点广播自己成为簇头的消息HEAD_MSG,周围非簇头节点根据接收到的信号的强弱向簇头发送请求加入消息JOIN_MSG,即非簇头节点向与自己距离最近的簇头发送请求加入消息,若簇头节点收到一个非簇头节点加入的消息,则向该非簇头节点发送允许加入的消息,即非簇头节点加入簇;(4)根据网络最小传输距离D,用所有簇头节点与SINK节点组成一棵以SINK为根的最小树作为簇间路由:(4a)将网关SINK节点作为树的根节点,同时将所有簇头节点初始化为树外节点;(4b)根据Prim的最小树方法,每次在整个网络中选择权值<img file="FDA0000525177190000026.GIF" wi="106" he="57" />最小的一个树外簇头节点加入树中,直到所有的簇头节点全部加入到树中,<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>w</mi><mrow><msub><mi>v</mi><mi>j</mi></msub><msub><mi>tov</mi><mi>i</mi></msub></mrow></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mo>|</mo><mi>D</mi><mo>-</mo><msub><mi>d</mi><mrow><msub><mi>v</mi><mi>j</mi></msub><msub><mi>tov</mi><mi>i</mi></msub></mrow></msub><mo>|</mo></mrow></mfrac><mo>+</mo><mfrac><msub><mi>d</mi><mrow><msub><mi>v</mi><mi>j</mi></msub><mi>toSINK</mi></mrow></msub><mrow><msub><mi>d</mi><mrow><msub><mi>v</mi><mi>i</mi></msub><mi>toSINK</mi></mrow></msub><mo>+</mo><msub><mi>d</mi><mrow><msub><mi>v</mi><mi>j</mi></msub><msub><mi>tov</mi><mi>i</mi></msub></mrow></msub></mrow></mfrac><mo>,</mo></mrow>]]></math><img file="FDA0000525177190000021.GIF" wi="743" he="180" /></maths>式中,D为网络最小传输距离,<img file="FDA0000525177190000022.GIF" wi="114" he="84" />表示树外簇头节点v<sub>j</sub>到树中节点v<sub>i</sub>的距离,<img file="FDA0000525177190000023.GIF" wi="151" he="84" />表示v<sub>j</sub>到SINK的距离,<img file="FDA0000525177190000024.GIF" wi="150" he="77" />表示v<sub>i</sub>到SINK节点的距离,<img file="FDA0000525177190000025.GIF" wi="118" he="68" />表示节点v<sub>j</sub>与节点v<sub>i</sub>之间的权值;(5)簇内成员节点将数据发送给簇头节点,簇头节点将收集到的数据与自己感知的数据进行数据聚合后,沿着由步骤(4)建立的簇间路由将数据发送给网关SINK节点,一轮数据收集结束;(6)重复步骤(3)~(5)直至无线传感器网络中出现第一个能量耗尽的节点,网络生命周期结束。
地址 710071 陕西省西安市太白南路2号