1、2023.4电脑编程技巧与维护1概述无线传感器网络12被广泛应用于军事侦察、农业生产、智能交通监测等3领域。在实际应用中,感知信息只有须带有位置信息才能有实际意义。但受限于能量、计算和存储能力,无线传感器网络节点无法采用传统的全球定位系统或无线网络定位技术进行定位,必须为之设计低开销、高精度的专用定位算法。传统的DV-Hop算法虽然成本比较低但定位精度不高;有许多学者提出用传统的智能优化算法4对传统的定位算法进行改进,其定位精度比传统的定位算法高,但方法仍然需要进一步改进。为了解决这个问题,提出一种基于植物群落行为对无线传感器网络节点定位的改进方法,在成本合理化的前提下,进一步提高定位精度。2
2、DV-Hop 算法2.1传统 DV-Hop 算法DV-Hop算法5分为以下3步。(1)无线传感网(WSN)中的信标节点向全网广播自身节点位置信息,直到所有节点都被记录到所有信标节点的最小跳数值。(2)信标节点根据(1)获得的其他信标节点的位置信息和跳数值,求得平均每跳的实际距离,如公式(1)所示并全网广播。(1)其中,信标节点i、j两点坐标值为(xi,yi)、(xj,yj);hij为信标节点i、j之间的最小跳段数。利用公式(2)可以求得未知节点到信标节点间的距离。Dij=Hopsizeihij(2)(3)未知节点利用记录到各个信标节点之间的距离,未知节点坐标由极大似然估计法或三边测量法计算得到
3、。2.2DV-Hop 算法误差分析引起WSN定位精度较低的原因很多,例如,节点分布不均匀、DV-Hop方法自身问题等,从以下几个方面进行阐述。(1)WSN中的节点通常分布不均匀,导致网络中平均每跳距离有较大的差异。(2)最小二乘法存在一定的计算误差6,会影响对未知节点坐标的估计,也会出现传统的DV-Hop定位精度变低。针对上述问题提出一种新型人工智能定位算法,利用植物群落行为对平均每跳距离进行优化,提高精度,并代替最小二乘法求解未知节点坐标,减少其计算所带来的误差。3定位模型的建立3.1植物群落算法改进平均跳距3.1.1 植物群落算法的播种操作清空数据集合,包括清空植物植株个体的目标定位数据、
4、植物植株播种集合、植物群落开花集合、植物群落结果邻居对集合;植株个体的路由节点集合采用十进制编码方式,经过的传感器节点由每个集合元素表示;当植物植株个体1经过的传感器节点数目为9时,植物植株个体编码为1=3106925871,表示植物 植 株1的 路 由 节 点 集 合 从 源 节 点3开 始,经 过10,6,9到目的节点1,即完成从源节点到目的节点的路由遍历;通过公式(3)对植株的个体集合进行初始化,其中,植物植株个体i与j互为邻居,ij是植物植株个体作者简介:江珊(1997),女,研究生,硕士,研究方向为计算机网络技术。一种基于植物群落算法的无线传感器网络定位方法江珊,蔡政英(三峡大学计算
5、机与信息学院,湖北 宜昌443002)摘要:针对 DV-Hop 算法定位精度低的问题,提出了一种基于植物群落行为在 DV-Hop 算法中的定位方法。首先,该算法利用植物群落算法与 DV-Hop 算法的第 2 阶段相结合实现最小误差的平均跳距;其次,植物群落算法在后期求解未知节点坐标时对其值进一步优化。最后,仿真结果显示,改进算法在不增加额外开销的情况下,定位误差进一步降低,相比其他传统群智能优化算法对 DV-Hop 方法的改进,算法的定位精度有很大的优势。关键词:无线传感器网络;DV-Hop 算法;植物群落算法67DOI:10.16184/prg.2023.04.0382023.4电脑编程技巧
6、与维护的集合;Lj,min为二进制编码的无线传感器网络搜索空间的可行解下界;Hj,min为二进制编码的无线传感器网络搜索空间的可行解上界;ri,j为一个随机数,取值范围是0,1。ij=Lj,min+ri,j(Hj,min-Lj,min)(3)3.1.2 植物群落算法的生长操作由植物群落在无线传感器网络中进行生长操作,并对未知节点进行目标定位;植物群落个体分别随机搜索新的传感器节点,再修改植物群落个体的一部分二进制位重新编码;通过公式(4)和公式(5)生成新的节点,i,j是步长因子,是一个属于-1,1的随机数。Si,j=i,j+i,j(i,j-r,j)(4)Si,j=i,j+i,j(j-r,j)
7、(5)3.1.3 植物群落算法的开花操作由植物群落在无线传感器网络中进行开花操作并随机选择锚节点进行目标定位;分别以锚节点为源节点方向,锚节点为目的节点方向,分别计算两个方向上植物植株个体的目标定位计算函数,取两个目标定位计算函数结果的平均值作为未知节点的目标定位数。开 花 集 合 为B=i|i=1,2,3,Population_size,且0probability21;检查植物群落开花集合的大小,是否与植物群落种群大小一致。3.1.4 植物群落算法的结果操作植物群落开花集合中的单个植物植株个体,随机选择一个邻居植物植株个体,按照植物群落结果概率学习邻居植物植株个体的一部分路由,这两个植物植株
8、个体组成邻居对,以成对方式添加进植物群落结果邻居对集合中;对于结果集合为C和邻居对i,j,有i,jC,且0probability31。3.1.5 适应度函数DV-Hop的主要误差是由平均每跳距离引起的,在此引入群智能优化算法对平均每跳距离进行优化。具体步骤如下。(1)假设网络中有n个信标节点,avghopsizei为每个信标节点i的平均每跳距离,信标节点i和j之间的最小跳数为hopij,信标节点i和信标节点j的实际距离dij可以由公式(6)表示,信标节点i和信标节点j的估计距离dij可以由公式(7)表示,误差Pij可由信标节点i、j间的实际距离与其估计距离之差计算得到,如公式(8)所示:(6)
9、dij=avghopsizeihopij(7)Pij=dij-dij(8)当Pij最小时,即能求出符合条件的avghopsizei,即计算最小误差avghopsizei就变成求如公式(9)所示的优化问题:(9)(2)为了减少植物群落行为算法优化后的跳距误差,引入距离误差修正系数,然后适应度函数由这些权值修正,如公式(10)所示:(10)(3)改进的适应度函数如公式(11)所示:(11)3.2求解未知节点坐标在DV-Hop定位算法中,由于最小二乘法的计算会有一定的误差,利用智能优化算法可以将误差减小,未知节点与信标节点的距离误差e可以由公式(12)表示:(12)其中,(x,y)为未知节点的估计位
10、置;(xi,yi)为第i个信标节点的位置;未知节点到信标节点的估算距离用Di表示。当距离误差最小时,未知节点的坐标越接近真实值,所以将公式(12)转化为适应度函数,如公式(13)所示:(13)4算法步骤(1)初始化网络参数,包括网络区域面积、网络的节点数量及节点跳数。(2)锚节点向全网广播信息。所有节点接收并记录跳数信息后转发给邻居节点,每个节点都能够记录到所有信标节点的最小跳数值。(3)计算锚节点之间的距离。(4)初始化植物群落行为算法参数。包括植物群落中植株种群的大小,植株个体的数值类型和大小,植物植株的目标定位数据,迭代次数,植物群落的生长变异、开花及结果概率且有0生长变异概率proba
11、bility1结果概率probability3开花概率probability21。根据锚节点的坐标和跳数值及锚节点之间的距离列出适应度函数,用植物群落行为算法求解跳距。(5)通过上述算法得到平均跳段数,并将其广播到682023.4电脑编程技巧与维护植物群落算法平均定位误差10.90.80.70.60.50.40.30.20.10DV-HOPACOPSO20253035404550通信半径图2通信半径-平均定位误差图3信标节点数量-平均定位误差网络中,使所有未知节点接收到平均每跳距离。(6)未知节点计算得出到每个信标节点间的距离。(7)已知未知节点到每个信标节点的距离及锚节点的位置和未知节点列出
12、适应度函数,用植物群落行为算法求出未知节点的坐标。5实验结果与分析为了验证算法的性能,进行试验仿真分析,将植物群落算法和DV-Hop算法、DV-HopPSO定位算法和DV-HopACO定位算法进行分析、对比。仿真环境是在Matlab 2018b平台中进行,将节点随机部署在200m200m的矩形区域内,节点的通信半径为30m;在植物群落行为算法中,植株种群数目为30,迭代次数为100,误差阈值小于0.0001,植物群落行为算法的生长变异概率为0.2,开花概率为0.9,结果概率为0.8,实验结果取50次实验结果的平均值。定位的评价标准如公式(14)所示:(14)其中,(xt,yt)为估算位置值;(
13、xi,yi)为真实位置值;R为通信半径值;M为总未知节点个数值。图1选取了一个基准函数,x-500,500,设置种群数都为30,最大迭代次数为100,测定植物群落和PSO、ACO算法的收敛性,可以看出,植物群落算法的收敛速度明显快于另外两种算法。在实验中,锚节点为20个,节点总数为100个,由图2可以看出,随着通信半径的增加,4种算法的定位误差都呈上升趋势,但植物群落算法的定位误差变化是最小的。图3中节点通信半径为30m,节点总数为100个,将植物群落算法与其他3种算法进行定位误差的分析、比较。由图3可以看出,当锚节点的个数增加时,4条曲线都呈下降趋势,但是植物群落行为算法的定位误差最小。6结
14、语提出了一种新的人工智能方法,该方法利用DV-Hop和植物群落算法的结合解决定位精度问题。通过实验结果显示,在相同的条件下相比传统的定位算法,植物群落算法的定位精度效果较好,为无线传感器网络目标定位提供了一种较好的方案。参考文献1MOSTAFAEI H.Energy efficient A lgorithm for Reli-able Routing of Wireless Sensor Networks J.IEEETransactions on Industrial Electron-ics,2019,66(7):5567-5575.2SANGEETHA M,SABARI A.Geneti
15、c optimization ofhybrid clustering algorithm in mobile wireless sensornetworks J.Sensor review,2018,38(4):526-533.3李健.基于无线传感器网络的安全网络运行环境构建J.计算机工程与应用,2017,53(22):66-70.图1智能算法收敛函数值0-2000-4000-6000-8000-10000-12000-14000各智能算法收敛结果对比PSOACOPCA迭代次数050100150植物群落算法信标节点数量2025303540455010.90.80.70.60.50.40.30.
16、20.10平均定位误差DV-HOPACOPSO(下转第99页)692023.4电脑编程技巧与维护4LI Q,WANG H,WANG L C.Research of P2P baseddistributed network management J.Computer engi-neering,2006,32(13):1-13.5谢松.基于蚁群算法的无线传感器网络节点定位算法研究D.武汉:华中师范大学,2014.6DRAGOS N,BADRI N.DV based positioning in AdHoc networks J.Telecommunication systetns,2003,22(
17、1-4):267-280.7丛珊,陈桂芬.无线传感器网络DV-Hop定位算法J.长春理工大学学报(自然科学版),2018,41(2):105-109.器、16G内存、500G硬盘。软件环境:实验选用MySQL5.6版本。4.2实验结果及对比分析在相同的实验环境下,针对同一张表,模拟不同数量级数据,将具有表分区功能的表和原生表做对比实验。在同样的联合多张表SQL语句下,分两种情况测试数据查询的效率:一种具有表分区;另一种不具有表分区。从表1中可以看出随着数据量不断增大,改造前与改造后所需时间差距明显拉大,改造后所需时间比改造前缩短很多,查询效率明显提高。5结语MySQL分区技术将数据库的优势引入
18、处理海量日志数据的项目中,降低了系统项目使用后期更换数据库的风险,满足了企业对系统开发的需求,减少了系统维护的成本,延长了系统项目的使用寿命。从MySQL分区技术的概念理论入手,概述了数据库分区技术的使用场景,深入讲解了MySQL分区的分类及分区的使用方法,通过实验数据验证数据库分区技术的可行性和优越性。测试结果显示,将MySQL数据库分区技术应用到海量日志的系统项目中,成功解决了企业系统应对海量数据时存在的性能问题,达到了预期的效果。参考文献1王宏伟.MySQL分区技术在传统项目中的应用J.信息与电脑(理论版),2021,33(9):10-13.2白俊,郭贺彬.基于ElasticSearch
19、的大日志实时搜索的软件集成方案研究J.吉林师范大学学报(自然科学版),2014,35(1):85-87.3何江银,黄岷,李端肃,等.基于FEK的大数据网络日志分析J.信息记录材料,2019,20(5):149-150.4邹燕飞.云计算技术在海量数据挖掘中的应用研究J.自动化与仪器仪表,2017(6):185-186.5鲜征征,叶嘉祥.一种改进的ELK日志采集与分析系统J.软件导刊,2019,18(8):105-110.6谭敏,谭家兴.基于大数据日志的智能运维系统设计J.长江工程职业技术学院学报,2019,36(1):10-12.7单康康,王佶,常晓洁,等.基于大数据的校园网海 量 日 志 分 析 平 台 研 究J.信 息 通 信,2017(3):154-155.8姜承尧.MySQL技术内幕:SQL编程M.北京:机械工业出版社,2012.9叶云霜,林伟华,刘福江,等.关系数据库中海量要素存储的分区优化研究J.计算机技术与发展,2020,30(1):167-173.表1改造前后的速度对比功能对比类别改造前所需时间改造后所需时间5万条数据1.3430.0910万条数据1.7560.7820万条数据2.8170.8830万条数据4.2880.9650万条数据6.3891.0260万条数据9.0141.87单位:s(上接第69页)99