CN103916927B - 一种基于改进和声搜索算法的无线传感器网络路由方法 - Google Patents
一种基于改进和声搜索算法的无线传感器网络路由方法 Download PDFInfo
- Publication number
- CN103916927B CN103916927B CN201410097200.3A CN201410097200A CN103916927B CN 103916927 B CN103916927 B CN 103916927B CN 201410097200 A CN201410097200 A CN 201410097200A CN 103916927 B CN103916927 B CN 103916927B
- Authority
- CN
- China
- Prior art keywords
- harmony
- node
- hop
- data base
- eval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提出了一种基于改进和声搜索算法的无线传感器网络路由方法,包括以下步骤:Step1、初始化算法相关参数HMS、HMCR、PAR以及评价次数eval_Nomax;Step2、利用轮盘赌初始化和声记忆库HM;Step3、评价和声库中各和声路径的适应度;Step4、设置eval_No=0;Step5、设置i=0;Step6、产生候选和声;Step7、eval_No++,若eval_No<eval_Nomax,执行Step8;否则执行Step11;Step8、对和声库中的第i条和声Xi={s,x2,…xj,…,d},进行邻域搜索;Step9、eval_No++,若eval_No<eval_Nomax,执行Step10;否则执行Step11;Step10、i++,若i<HMS,执行Step6;否则执行Step5;Step11、记录和声记忆库中的最优和声路径。本发明的路由方法具有较高的能效,并且能够有效地延长整个网络的生命周期。
Description
技术领域
本发明属于无线传感器网络技术领域,具体涉及一种改进和声搜索算法的路由方法。
背景技术
无线传感器网络(Wireless Sensor Network,WSN)与传统的因特网以及最近几年发展迅猛的无线自组网(MobileAd Hoc Network)都有着很大程度上的不同。在传统的因特网和Ad Hoc网络中,每个网络节点通常情况下是一台个人电脑或者移动设备,用户使用因特网和Ad Hoc网主要是用来获取网络共享信息,所以不管是因特网还是AdHoc网络,路由协议设计的目的主要是为了提高服务质量,而不必考虑用户消耗多少能量。无线传感网络则不同,无线传感网络是在检测区域(通常情况下环境十分恶劣或者人无法到达)内散播大量的微型传感器节点,这些传感节点并没有固定的ID,而是通过自组织的方式组成一个传感器网络。无线传感器网络一经问世,便获得了社会各界的青睐,应用在军事,医疗,环境等各个领域。
路由算法在无线传感器网络中发挥着重要作用,它对各节点的能耗、整个网络的生命周期以及通信质量起着关键性的作用。因此,路由算法的研究受到越来越多的关注。由于传感器网络具有能量受限、资源受限、拓扑结构变化频繁等特点,因此,传统的路由机制不能适应无线传感网络,必须设计与之相应的路由算法。
至今,用于无线传感器网络的路由协议主要包括:平面路由协议(Flooding协议、SPIN协议、MTE协议、Directed Diffusion协议)、层次路由协议(LEACH协议)、基于位置信息的路由协议(GAF协议、GEAR协议)以及基于数据流和QoS的路由协议。
目前,基于智能优化算法的路由方法在无线传感器网络技术领域也有了一些应用,主要是基于蚁群算法(Ant Colony Optimization,ACO)的路由方法和基于蜂群算法(Bee Colony Optimization,BCO)的路由方法。
无线传感网络路由协议的研究已经逐渐成为热点,路由协议的研究从简单到复杂,从以数据为中心到高质量要求,并向着智能化方向发展,如何建立高效、自适应的传感路由算法成为当前研究的一个热点。
和声搜索算法是2001年韩国学者Geem等人提出的一种新颖的智能优化算法。算法模拟了音乐演奏中乐师们凭借自己的记忆,通过反复调整乐队中各乐器的音调,最终达到一个美妙的和声状态的过程。和声搜索算法有很强的全局搜索能力,易于收敛到全局最优解,其流程图如图1所示,执行步骤如下所示:
Step1:初始化算法相关参数。
初始化HMS(和声记忆库的大小,即种群容量大小)、HMCR(选择概率)、PAR(调整概率)、BW(调整带宽)、评价次数eval_Nomax。
Step2:和声记忆库(Harmony Memory,HM)初始化。
在此步骤中,式(1)所示的HM通过在内产生一组随机数来初始化,其中1≤i≤n。从而根据式(2)得到第j个解向量的第i个变量值:
上式中,j=1,2,…,HMS,Random(0,1)是0到1之间的随机数。
Step3:计算和声库中各和声的适应度。
Step4:设置eval_No=0。
Step5:即兴演奏候选和声。
Step5.1:在此步骤中,一个新的和声向量由三个规则产生:
①记忆选择;
②随机选择;
③音高调整。
产生一个候选和声被称之为即兴演奏,先通过规则①和②确定是记忆选择还是随机选择,具体如下所示:
式中,P1为0到1之间的随机数,xrand(i),j表示在HM的第j列分量中随机选择一个分量,Ωj表示第j个分量的定义域。
Step5.2:每个经过记忆选择得到的音调将被进一步检验决定是否需要音高调整,此操作使用PAR参数,音高调整决策如下所示:
式中,P2为0到1之间的随机数。
Step5.3:计算候选和声的适应度值f(π);
Step5.4:更新HM。
依据目标函数值,如果候选和声向量优于HM中最差的向量,则新向量取代HM中最差的和声向量,否则不操作。
Step6:检查是否停止迭代。
eval_No++,若eval_No<eval_Nomax,执行Step5;否则执行Step7。
Step7:记录和声库中的最优解。
然而,传统的和声搜索算法不能直接用于无线传感器网络路由。
发明内容
鉴于此,本发明的目的在于提出一种基于改进和声搜索算法的无线传感器网络路由方法,通过对路径适应度模型进行改进,使得该协议在能效以及延长整个无线传感器网络寿命方面具有极大的优越性。
本发明采用以下技术方案以实现上述发明目的:
一种基于改进和声搜索算法的无线传感器网络路由方法,包括以下步骤:
Step1、初始化算法相关参数HMS、HMCR、PAR以及评价次数eval_Nomax;
Step2、利用轮盘赌初始化和声记忆库HM;
Step3、计算和声库中各和声(路径)的适应度;
Step4、设置eval_No=0;
Step5、设置i=0;
Step6、产生候选和声并更新和声记忆库;
Step7、eval_No++,若eval_No<eval_Nomax,执行Step8;否则执行Step11;
Step8、对和声库中的第i条和声Xi={s,x2,…,xj,…,d}进行邻域搜索;
Step9、eval_No++,若eval_No<eval_Nomax,执行Step10;否则执行Step11;
Step10、i++,若i<HMS,执行Step6;否则执行Step5;
Step11、记录和声记忆库中的最优和声(路径)。
与现有技术相比,本发明具有以下有益效果:路由算法具有较高的能效,并且能延长整个网络的生命周期。本发明的技术效果还将在具体实施方式的阐述中得到进一步体现。
附图说明
图1为传统HS算法流程图;
图2为本发明实施例中改进的和声搜索算法求解WSN最优路径的流程图;
图3为本发明实施例中改进和声搜索算法的候选路径生成流程图;
图4为本发明实施例中改进和声搜索算法的路径邻域搜索流程图;
图5为本发明实施例中和声库初始化示意图;
图6为本发明实施例中候选和声生成示意图;
图7为本发明实施例中路径邻域搜索示意图;
图8为本发明实施例中随机生成100个节点的WSN场景;
图9为本发明实施例的改进和声搜索算法(IHS)与蚁群算法平均适应度的收敛情况对比。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将参考附图并结合实例来详细说明本发明。
本发明针对无线传感器网络路由的特点,对传统和声搜索算法进行改进,改进和声搜索算法进行WSN路由的流程图如图2所示,具体包括以下内容:
(1)和声记忆库的初始化
在传统和声搜索算法中,和声记忆库中的每条和声必须要求维数相同,如式(1)所示。在本发明实施例中,和声记忆库中的每条和声是通过轮盘赌产生的,它们的维数可以不相同,每条和声的首尾元素分别是源节点和汇聚节点,HM如式(5)所示。
式中,s代表源节点编号,d代表汇聚节点编号,xi,j表示其它传感器节点编号。
由上式可以看出,和声库中的各和声的长度(即维数)可能不相同。
(2)候选和声的产生
候选和声的产生如图3所示,其中:
式中,表示在节点的通信范围内节点的集合,{x1,j,x2,j,…,xHMS,j}表示和声库的第j列,P1为0到1之间的随机数,xrand(i),j表示在HM的第j列分量中随机选择一个分量,表示在节点的通信范围内随机选择一个节点。
当随机数P1小于和声搜索算法的选择概率HMCR时,候选和声的下一跳从和声记忆库中选择;否则,随机从当前节点的通信范围内选择未到达过的节点作为下一跳。
如果下一跳节点取自和声记忆库,则需要判断其是否需要调整:当随机数P2小于调整概率PAR时,对取自和声库中的音调进行调整,随机从当前节点的通信范围内选择未到达过的节点替换掉被选择的节点作为下一跳,否则,保持被选择的节点做为下一跳。如果下一跳节点仅取自当前节点的通讯范围,与和声库无关,则无需调整。以此类推,直到到达汇聚节点。
其中,对候选和声中取自和声库中的音调进行的调整如下:
式中,P2为0到1之间的随机数。
(3)邻域搜索
如图4所示,对和声库中的第i条和声Xi={s,x2,…,xj,…,d}进行邻域搜索,数学模型如下:
该领域搜索方法能显著提高算法的收敛速度。
(4)路径的适应度函数模型
本发明实施例中,无线传感器网络路由的路径适应度函数模型如式(9)所示,使用该模型能使路由算法有较高的能效,并且能延长整个网络的生命周期,特别是针对各节点初始总能量不相同的情况。
式中,分子为无线电能耗模型,分母为路径中节点的剩余能量指标。L为路径的长度,Eelec为传输和接受的单元能耗,取值为50nJ/bit,Eamp为传输放大的单元能耗,取值为100pJ/(bit*m2),k为源节点发送的数据包大小,di,i+1表示第i个节点和第i+1个节点之间的距离,EMin表示路径中剩余能量最少的节点的剩余能量,EAvg表示路径中所有节点的平均剩余能量。
具体而言,本发明实施例的方法包括以下步骤:
Step1、初始化算法相关参数HMS、HMCR、PAR以及评价次数eval_Nomax。
Step2、利用轮盘赌初始化和声记忆库HM。
利用轮盘赌初始化和声记忆库时,节点i通信范围内的节点j的选择概率P(i,j)如下所示:
式中,hopj表示节点j的跳数,hopk表示节点k的跳数,hopmax表示所有节点中的跳数最大的节点的跳数,Ej表示节点j的剩余能量,Ek表示节点k的剩余能量,allowedi表示可以成为节点i的下一跳的节点集合,No(allowedi)表示集合allowedi的元素数量。
通过该选择概率,可以使初始路径以较大的概率选择靠近汇聚节点并且剩余能量较多的节点,和声记忆库的初始化示意图如图5所示。
Step3、计算和声库中各和声(路径)的适应度f(π)。
Step4、设置eval_No=0。
Step5、设置i=0。
Step6、产生候选和声并更新和声记忆库。
候选和声的生成示意图如图6所示,从图6可以看出,候选和声的第一个节点为源节点,选择下一跳时,r1<HMCR,并且r2>PAR,因此,算法随机从和声库的第二列选择源节点通信范围内的节点(这里的示例选择节点31)做为下一跳;选择第三个节点时,r1>HMCR,因此,算法随机从节点31的通信范围内选择一个没有到达过的节点(这里的示例选择33)做为下一跳;依此类推,可以得到候选和声如图6所示。
Step6.1、计算候选和声的适应度值f(π);
Step6.2、将候选和声与HM中最差的和声进行比较,如果优于该最差和声,则将该最差和声替换出和声记忆库。
Step7、eval_No++,若eval_No<eval_Nomax,执行Step8;否则执行Step11。
Step8、对和声库中的第i条和声Xi={s,x2,…,xj,…,d}进行邻域搜索。
邻域搜索示意图如图7所示,通过随机选择路径中的节点,在被选节点的上一跳和下一跳的通信范围交集内随机选择一个未到达过的节点将被选节点替换,从而完成邻域搜索。对于图中的路径,选择了第71个节点进行邻域搜索,从图中可以看出,节点71的上一跳节点33和下一跳节点80的通信范围交集中包括节点63、64、65、71、82,因此,算法随机从中选择一个节点(这里的示例选择节点63)替代节点71完成邻域搜索。
Step8.1、计算邻域搜索得到的和声的适应度值f(π)。
Step8.2、将邻域搜索得到的和声与进行邻域搜索之前的和声进行比较,如果优于之前的和声,则将之前的和声替换出和声记忆库。
Step9、eval_No++,若eval_No<eval_Nomax,执行Step10;否则执行Step11。
Step10、i++,若i<HMS,执行Step6;否则执行Step5。
Step11、记录和声记忆库中的最优和声(路径)。
本发明的效果可以通过以下仿真实验和比较进一步验证:
选取图8所示的WSN场景,将本发明中的改进和声搜索算法(IHS)与蚁群算法(ACO)进行比较。编程语言为C++,计算机配置为:intel I7-3610QM处理器、8GB内存、2GB独显、windows764位操作***的笔记本电脑。场景中各节点的横坐标和纵坐标分别如表1和表2所示,各节点的初始总能量如表3所示。
表1WSN各节点的横坐标
No | X轴坐标 | No | X轴坐标 | No | X轴坐标 | No | X轴坐标 | No | X轴坐标 |
1 | 1038.063699 | 21 | 288.486155 | 41 | 93.880562 | 61 | 108.570707 | 81 | 332.141475 |
2 | 470.015997 | 22 | 1070.806875 | 42 | 1000.758772 | 62 | 350.735654 | 82 | 434.161440 |
3 | 796.022940 | 23 | 663.764978 | 43 | 684.108914 | 63 | 260.472487 | 83 | 877.499586 |
4 | 760.394988 | 24 | 141.228770 | 44 | 130.028695 | 64 | 581.335254 | 84 | 927.195665 |
5 | 451.998943 | 25 | 950.243855 | 45 | 1032.180685 | 65 | 918.536073 | 85 | 757.365042 |
6 | 73.157485 | 26 | 700.444053 | 46 | 80.002362 | 66 | 1014.104825 | 86 | 510.760722 |
7 | 268.720797 | 27 | 551.871345 | 47 | 70.394198 | 67 | 807.038443 | 87 | 697.026192 |
8 | 18.310381 | 28 | 200.715905 | 48 | 810.720847 | 68 | 360.427584 | 88 | 1050.648601 |
9 | 506.471469 | 29 | 40.233365 | 49 | 370.548313 | 69 | 322.964728 | 89 | 181.477631 |
10 | 830.160846 | 30 | 232.451389 | 50 | 500.487349 | 70 | 772.977461 | 90 | 657.995492 |
11 | 225.383031 | 31 | 402.776618 | 51 | 847.995887 | 71 | 958.541697 | 91 | 746.170122 |
12 | 586.077114 | 32 | 674.172879 | 52 | 54.363618 | 72 | 1060.103491 | 92 | 676.354322 |
13 | 180.533438 | 33 | 1083.709733 | 53 | 900.195729 | 73 | 100.013495 | 93 | 335.769779 |
14 | 316.659651 | 34 | 178.979018 | 54 | 785.705198 | 74 | 543.693628 | 94 | 407.495452 |
15 | 615.102143 | 35 | 760.686848 | 55 | 499.784261 | 75 | 119.200772 | 95 | 164.825008 |
16 | 825.980727 | 36 | 1004.310202 | 56 | 617.938018 | 76 | 276.033431 | 96 | 880.467342 |
17 | 936.457298 | 37 | 518.066244 | 57 | 450.612913 | 77 | 978.149229 | 97 | 560.717385 |
18 | 191.847072 | 38 | 150.599881 | 58 | 200.698715 | 78 | 172.276119 | 98 | 374.317783 |
19 | 467.889095 | 39 | 850.394587 | 59 | 610.976658 | 79 | 103.613207 | 99 | 815.726448 |
20 | 966.266690 | 40 | 500.090378 | 60 | 1025.537819 | 80 | 599.772413 | 100 | 236.224196 |
表2WSN各节点的纵坐标
No | Y轴坐标 | No | Y轴坐标 | No | Y轴坐标 | No | Y轴坐标 | No | Y轴坐标 |
1 | 881.514269 | 21 | 199.332398 | 41 | 321.105262 | 61 | 426.254537 | 81 | 1010.474719 |
2 | 900.139546 | 22 | 1069.791995 | 42 | 700.612919 | 62 | 424.629072 | 82 | 650.299109 |
3 | 899.920884 | 23 | 801.707617 | 43 | 358.620706 | 63 | 412.729792 | 83 | 946.840883 |
4 | 410.732085 | 24 | 200.400755 | 44 | 125.729568 | 64 | 433.350737 | 84 | 450.859689 |
5 | 385.646460 | 25 | 911.142851 | 45 | 978.116910 | 65 | 682.606005 | 85 | 677.851248 |
6 | 66.067060 | 26 | 900.857773 | 46 | 740.034856 | 66 | 1063.605136 | 86 | 185.154071 |
7 | 913.267222 | 27 | 1000.791881 | 47 | 801.882039 | 67 | 226.182588 | 87 | 995.057549 |
8 | 482.812712 | 28 | 680.135671 | 48 | 805.298556 | 68 | 343.500789 | 88 | 788.639293 |
9 | 614.032108 | 29 | 595.278889 | 49 | 910.798429 | 69 | 288.815268 | 89 | 871.881713 |
10 | 721.787934 | 30 | 100.733508 | 50 | 460.712389 | 70 | 303.128055 | 90 | 115.568055 |
11 | 1000.455846 | 31 | 501.791736 | 51 | 101.356461 | 71 | 186.416999 | 91 | 770.734480 |
12 | 560.215866 | 32 | 580.014018 | 52 | 374.851807 | 72 | 20.033960 | 92 | 496.312489 |
13 | 775.619619 | 33 | 111.453285 | 53 | 863.584556 | 73 | 525.222154 | 93 | 111.029792 |
14 | 650.651168 | 34 | 486.843473 | 54 | 133.825872 | 74 | 267.788594 | 94 | 212.913741 |
15 | 952.032544 | 35 | 545.073400 | 55 | 339.555109 | 75 | 945.644309 | 95 | 350.252580 |
16 | 465.951681 | 36 | 150.193973 | 56 | 1047.642382 | 76 | 521.872265 | 96 | 250.712968 |
17 | 126.031318 | 37 | 693.612356 | 57 | 750.816902 | 77 | 982.082183 | 97 | 791.564358 |
18 | 166.525170 | 38 | 50.084703 | 58 | 272.840217 | 78 | 1065.785511 | 98 | 830.837048 |
19 | 253.999471 | 39 | 350.309441 | 59 | 710.146587 | 79 | 646.616879 | 99 | 615.348936 |
20 | 780.701144 | 40 | 531.949780 | 60 | 90.656761 | 80 | 179.078778 | 100 | 583.095624 |
表3WSN各节点的初始能量(单位:J)
No | 初始能量 | No | 初始能量 | No | 初始能量 | No | 初始能量 | No | 初始能量 |
1 | 189.099 | 21 | 100.381 | 41 | 151.735 | 61 | 119.724 | 81 | 155.074 |
2 | 129.258 | 22 | 153.197 | 42 | 102.072 | 62 | 199.359 | 82 | 140.593 |
3 | 164.165 | 23 | 187.918 | 43 | 179.553 | 63 | 159.133 | 83 | 146.913 |
4 | 156.905 | 24 | 192.096 | 44 | 161.199 | 64 | 182.574 | 84 | 124.812 |
5 | 145.439 | 25 | 141.026 | 45 | 125.343 | 65 | 157.619 | 85 | 194.046 |
6 | 152.181 | 26 | 100.421 | 46 | 101.685 | 66 | 185.379 | 86 | 147.032 |
7 | 147.108 | 27 | 181.948 | 47 | 128.184 | 67 | 126.374 | 87 | 147.581 |
8 | 170.327 | 28 | 173.424 | 48 | 146.522 | 68 | 131.690 | 88 | 192.737 |
9 | 166.277 | 29 | 195.279 | 49 | 154.796 | 69 | 177.456 | 89 | 190.847 |
10 | 162.810 | 30 | 177.532 | 50 | 119.761 | 70 | 165.133 | 90 | 123.875 |
11 | 126.447 | 31 | 127.323 | 51 | 166.588 | 71 | 146.883 | 91 | 108.466 |
12 | 106.641 | 32 | 118.311 | 52 | 117.698 | 72 | 158.251 | 92 | 156.359 |
13 | 110.291 | 33 | 184.161 | 53 | 189.349 | 73 | 131.391 | 93 | 199.634 |
14 | 143.953 | 34 | 140.440 | 54 | 150.172 | 74 | 108.939 | 94 | 183.139 |
15 | 127.235 | 35 | 149.321 | 55 | 138.179 | 75 | 179.272 | 95 | 120.127 |
16 | 120.252 | 36 | 121.894 | 56 | 119.306 | 76 | 127.662 | 96 | 114.154 |
17 | 175.655 | 37 | 159.423 | 57 | 120.710 | 77 | 149.406 | 97 | 164.483 |
18 | 166.973 | 38 | 172.442 | 58 | 191.479 | 78 | 198.212 | 98 | 124.055 |
19 | 187.793 | 39 | 132.496 | 59 | 176.263 | 79 | 115.293 | 99 | 140.373 |
20 | 189.001 | 40 | 177.221 | 60 | 114.594 | 80 | 106.696 | 100 | 176.168 |
蚁群算法的节点选择概率pk(r,s)如下所示:
式中,T(r,s)是路径(r,s)上的信息素,E(s)是节点s的剩余能量,Mk是蚂蚁k的禁忌表。
信息素更新模型如下所示:
式中,EMink为第k条路径中剩余能量最少的节点的能量,EAvgk为第k条路径中节点的平均剩余能量,Fdk为第k条路径的节点数量。
该信息素更新模型既考虑了能效也考虑了整个网络的生命周期,对于蚁群算法,所得的效果较好。
对于图8所示的WSN场景,改进和声搜索算法和蚁群算法的相关参数设置如表4所示,表中,两种算法的算法参数均为近优值;路径的适应度函数模型如式(9)所示。
表4两种算法的相关参数设置
图8中,五角星表示的节点为源节点,倒三角表示的节点为汇聚节点。两种算法的运行结果比较如图9所示,横轴表示迭代次数,纵轴表示50次独立运行后每代种群的平均适应度均值。
从图9可以看出,IHS算法的效果要明显好于ACO算法的效果,IHS算法得到的路径更节能,并且路径中节点的剩余能量更多。
IHS算法所得的最优路径适应度为8.88593e-006,路径所消耗的能量为0.136J,路径的跳数为15,对应的最优路径为:6→44→18→21→69→68→5→50→64→92→35→99→10→65→20→88。
ACO算法所得的最优路径适应度为9.27144e-006,路径所消耗的能量为0.143J,路径的跳数为17,对应的最优路径为:6→38→30→93→21→69→68→5→50→64→92→35→99→10→65→20→42→88。
由上可见,IHS算法所得的最优路径较ACO算法所得的最优路径能节省4.9%的能量,并且能减少11.8%的跳数,传输时延更小。
以上证明了IHS算法在指定源节点的情况下,能比ACO算法找到更好的路径。为了比较两种算法在整个网络生命周期的表现情况,利用两种算法分别对图8所示的WSN场景进行路由循环,各节点的初始总能量如表3所示,相关参数设置如表5所示,分别记录下第一个节点死亡所经历的周期数,结果如表6所示。
表5两种算法的相关参数设置
表6两种算法在WSN生命周期的比较
从表6可以看出,与利用ACO算法路由相比,利用IHS算法进行路由能使整个WSN的生命周期延长40.8%。因此,IHS算法优于ACO算法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于改进和声搜索算法的无线传感器网络路由方法,包括以下步骤:
Step 1、初始化和声记忆库的大小HMS以及评价次数的最大值eval_Nomax;
Step 2、利用轮盘赌初始化和声记忆库HM,具体的,和声记忆库中的每条和声是通过轮盘赌产生的,其维数可以不相同,和声记忆库中的每条和声的首尾元素分别是源节点和汇聚节点,和声记忆库HM如下:
式中,Xi代表第i条和声,s代表源节点编号,d代表汇聚节点编号,xi,j表示其它传感器节点编号;
Step 3、计算和声记忆库中各和声的适应度f(π),其中各和声为传感器网络路由中的路径;
Step 4、设置评价次数eval_No=0;
Step 5、设置i=0;
Step 6、产生候选和声并更新和声记忆库;
Step 7、eval_No++,若eval_No<eval_Nomax,执行Step 8;否则执行Step 11;
Step 8、对和声记忆库中的第i条和声Xi={s,x2,…,xj,…,d}进行邻域搜索,即通过随机选择路径中的节点,在被选节点的上一跳和下一跳的通信范围交集内随机选择一个未到达过的节点将被选节点替换,从而完成邻域搜索,具体包括:
Step 8.1、计算邻域搜索得到的和声的适应度f(π);
Step 8.2、将邻域搜索得到的和声与进行邻域搜索之前的和声进行比较,如果优于之前的和声,则将之前的和声替换出和声记忆库;
且
其中,Neib(xj-1)表示在节点xj-1的通信范围内节点的集合,Neib(xj+1)表示在节点xj+1的通信范围内节点的集合,xj∈Neib(xj-1)表示在节点xj-1的通信范围内随机选择一个节点;
Step 9、eval_No++,若eval_No<eval_Nomax,执行Step 10;否则执行Step 11;
Step 10、i++,若i<HMS,执行Step 6;否则执行Step 5;
Step 11、记录和声记忆库中的最优和声路径。
2.根据权利要求1所述的方法,所述Step 2中,节点i通信范围内的节点j的选择概率P(i,j)如下:
式中,hopj表示节点j的跳数,hopk表示节点k的跳数,hopmax表示所有节点中的跳数最大的节点的跳数,Ej表示节点j的剩余能量,Ek表示节点k的剩余能量,allowedi表示可以成为节点i的下一跳的节点集合,No(allowedi)表示集合allowedi的元素数量。
3.根据权利要求1所述的方法,所述Step 6中,所述候选和声X'={s,x'2,…,x'j,…,d},其中:
式中,s代表源节点编号,d代表汇聚节点编号,Neib(x'j-1)表示在节点x'j-1的通信范围内节点的集合,{x1,j,x2,j,…,xHMS,j}表示和声记忆库的第j列,P1为0到1之间的随机数,HMCR为选择概率,xrand(i),j表示在HM的第j列分量中随机选择一个分量,x'j∈Neib(x'j-1)表示在节点x'j-1的通信范围内随机选择一个节点。
4.根据权利要求3所述的方法,所述Step 6中:
当随机数P1小于和声搜索算法的选择概率HMCR时,候选和声的下一跳从和声记忆库中选择;否则,随机从当前节点的通信范围内选择未到达过的节点作为下一跳;
如果下一跳节点取自和声记忆库,则判断取自和声记忆库的节点即音调是否需要调整:当随机数P2小于调整概率PAR时,对取自和声记忆库中的音调进行调整,随机从当前节点的通信范围内选择未到达过的节点替换掉被选择的节点作为下一跳,否则,保持被选择的节点做为下一跳;直到到达汇聚节点,其中,P2为0到1之间的随机数。
5.根据权利要求4所述的方法,所述对取自和声记忆库中的音调进行调整具体为:
6.根据权利要求1所述的方法,所述Step 6包括:
Step 6.1、计算候选和声的适应度f(π);
Step 6.2、将候选和声与HM中最差的和声进行比较,如果优于该最差和声,则将该最差和声替换出和声记忆库。
7.根据权利要求1所述的方法,所述适应度为:
式中,L为路径的长度,Eelec为传输和接收的单元能耗,Eamp为传输放大的单元能耗,k为源节点发送的数据包大小,di,i+1表示第i个节点和第i+1个节点之间的距离,EMin表示路径中剩余能量最少的节点的剩余能量,EAvg表示路径中所有节点的平均剩余能量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410097200.3A CN103916927B (zh) | 2014-03-17 | 2014-03-17 | 一种基于改进和声搜索算法的无线传感器网络路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410097200.3A CN103916927B (zh) | 2014-03-17 | 2014-03-17 | 一种基于改进和声搜索算法的无线传感器网络路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103916927A CN103916927A (zh) | 2014-07-09 |
CN103916927B true CN103916927B (zh) | 2017-06-13 |
Family
ID=51042234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410097200.3A Active CN103916927B (zh) | 2014-03-17 | 2014-03-17 | 一种基于改进和声搜索算法的无线传感器网络路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103916927B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486807B (zh) * | 2014-11-28 | 2017-08-11 | 华中科技大学 | 一种小规模无线传感器网络的路由方法 |
CN106447026B (zh) * | 2016-09-13 | 2018-12-11 | 哈尔滨工程大学 | 一种基于布谷鸟和声搜索机制的iir数字滤波器生成方法 |
CN106550422B (zh) * | 2016-11-08 | 2017-08-25 | 华中科技大学 | 一种基于和声搜索算法的无线传感器网络分簇路由方法 |
CN109067918B (zh) * | 2018-09-25 | 2020-12-22 | 西北农林科技大学 | 一种物联网中的联合内容缓存和更新策略的方法及算法 |
CN110364188A (zh) * | 2019-07-12 | 2019-10-22 | 深圳创维-Rgb电子有限公司 | 音频播放方法、装置及计算机可读存储介质 |
CN110798874A (zh) * | 2019-07-31 | 2020-02-14 | 天津大学 | 一种基于和声搜索的能量有效路由方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101689287A (zh) * | 2007-06-28 | 2010-03-31 | 微软公司 | 关于传感器的上下文敏感可靠性的学习和推理 |
CN102098687A (zh) * | 2011-03-02 | 2011-06-15 | 上海大学 | 一种工业无线传感器网络多目标最优部署的方法 |
-
2014
- 2014-03-17 CN CN201410097200.3A patent/CN103916927B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101689287A (zh) * | 2007-06-28 | 2010-03-31 | 微软公司 | 关于传感器的上下文敏感可靠性的学习和推理 |
CN102098687A (zh) * | 2011-03-02 | 2011-06-15 | 上海大学 | 一种工业无线传感器网络多目标最优部署的方法 |
Non-Patent Citations (2)
Title |
---|
"An Energy Efficient Harmony Search Based Routing Algorithm for Small-Scale Wireless Sensor Networks";Bing Zeng等:;《2014 IEEE 17th International Conference on Computational Science and Engineering》;20141231;全文 * |
"An improved harmony search based energy-efficient routing algorithm for wireless sensor networks";Bing Zeng等:;《Applied Soft Computing 41(2016)135-147》;20151225;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103916927A (zh) | 2014-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103916927B (zh) | 一种基于改进和声搜索算法的无线传感器网络路由方法 | |
Yue et al. | Optimization‐based artificial bee colony algorithm for data collection in large‐scale mobile wireless sensor networks | |
Elhabyan et al. | A Pareto optimization-based approach to clustering and routing in Wireless Sensor Networks | |
Kaaniche et al. | Mobility prediction in wireless ad hoc networks using neural networks | |
Labrador et al. | Topology Control in Wireless Sensor Networks: with a companion simulation tool for teaching and research | |
Yu et al. | A dynamic clustering and energy efficient routing technique for sensor networks | |
Song et al. | Unequal clustering algorithm for WSN based on fuzzy logic and improved ACO | |
CN106550422B (zh) | 一种基于和声搜索算法的无线传感器网络分簇路由方法 | |
CN104010336B (zh) | 一种两级异构分簇的水下无线传感器网络路由方法 | |
CN104486807B (zh) | 一种小规模无线传感器网络的路由方法 | |
Tareq et al. | Mobile ad hoc network energy cost algorithm based on artificial bee colony | |
Chandren Muniyandi et al. | An improved harmony search algorithm for proactive routing protocol in VANET | |
CN103781146A (zh) | 基于蚁群算法的无线传感器网络最优路由路径构建方法 | |
Torkestani | An adaptive backbone formation algorithm for wireless sensor networks | |
Heidari et al. | A novel approach for clustering and routing in WSN using genetic algorithm and equilibrium optimizer | |
Kasnesis et al. | Cognitive friendship and goal management for the social IoT | |
CN109474973A (zh) | 基于蚁群算法的自组网路径确定方法、装置、设备及介质 | |
Umar et al. | SALMA: an efficient state-based hybrid routing protocol for mobile nodes in wireless sensor networks | |
Darabkh et al. | An innovative RPL objective function for broad range of IoT domains utilizing fuzzy logic and multiple metrics | |
Nath et al. | Optimizing FANET routing using a hybrid approach of firefly algorithm and ACO-Lévy flight | |
Kalimuthu et al. | Fuzzy logic based DSR trust estimation routing protocol for MANET using evolutionary algorithms | |
Li et al. | IATLR: Improved ACO and TOPSIS-based layering routing protocol for underwater acoustic networks | |
Singh et al. | Designing an energy efficient network using integration of KSOM, ANN and data fusion techniques | |
CN104581820B (zh) | 基于分区的时隙分配方法和装置 | |
Kuwelkar et al. | OF-FZ: An optimized objective function for the Ipv6 routing protocol for LLNs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |