耿立卓,郝 雪,刘 璐,林春龙,高 琦
(1.国网河北省电力有限公司培训中心,河北石家庄 050023;2.北京科东电力控制系统有限责任公司,北京 100192)
电力通信网作为运行通道,在电力生产控制与管理信息服务中发挥了重要的作用,保障了电网安全稳定地运行[1]。由于电力行业对继电保护和安全控制服务的路由配置有着严格的限制,如何合理地利用电力通信网中大量的非一致性业务,以降低在维护或故障状态下的运行风险,是电力通信网进行安全防护的重要措施[2]。针对电力通信网路由优化仿真设计,在考虑变电站间实际光纤链路容量限制的条件下,建立了最优化整数线性规划配置模型,优化电力通信骨干网的通信通道配置[3]。但是,该方法存在长期停滞的缺陷,导致路由优化仿真效果不佳;而另一种是根据Ad Hoc 通信网络节点路由链路分析结果,结合蚁群算法自适应优化网络链路,完成Ad Hoc 通信网络的局部路由修复[4]。但是,该算法收敛速度慢,优化性能较差。针对上述存在的问题,提出了一种基于人工蜂群算法的电力通信网路由优化仿真方法。
人工蜂群算法通过模拟蜜蜂采蜜行为来求解优化问题,在相关的约束条件下,优化问题求解是通过选取一组参数使目标函数达到最佳值。利用数学规划的形式表示最优问题:
式中,X表示n维实数空间向量,每一个分量都表示参数向量中各分量的约束,如gi(X)≤0 可简单地理解为各分量的范围。在优化问题中,目标函数是参数矢量选取的基础[5]。
将人工蜂群算法应用于电力通信网络能量优化时,首先需要对电力通信网络协议进行数学建模,然后找到待优化问题对应的数学模型,再利用人工蜂群算法求解实际问题[6-8]。根据电力通信网路由模型特点,进行如下假设:
1)将电力通信网路由节点部署在通信范围内;
2)由能量模型确定通信功率,可以改变节点通信半径;
3)所有节点均可以直接与基站节点通信;
4)通信范围内的节点均不受限制,初始能量一致;
5)所有节点位置不可变;
6)节点能量耗尽即宣布死亡[9]。
在上述假设的前提下,针对层次结构的路由协议,可将网络中的路由能量优化表示为分层的方案,使通信能量最小化[10-11]:
式中,i∈CN表示簇内成员节点;j∈CH表示簇首节点;Ei表示簇内成员节点与首节点之间通信所消耗的能量;Ej表示簇首节点通信耗能[12]。
通过上述数学描述,可确定电力通信网路由能量,为路由优化仿真提供数据支持。
通信网路由优化仿真步骤如下:
步骤1:在待部署区域中,首先对集成网络节点位置进行编码;
步骤2:待种群初始化后,在最大邻域范围内搜索节点,此时迭代次数为0,即为初始搜索;
步骤3:将蜜蜂全部置于侦察蜂模式中,随机产生N个可能解,计算适应度,将蜜蜂分为侦察蜂和观察蜂[13];
步骤4:在蜂巢内进行搜索,将搜索到的解与当前解进行对比分析,借助贪婪法则选择最优解;
步骤5:观察蜂群跟随概率并进行计算;
步骤6:判断蜜源是否超过邻域搜索限制的次数,如果超过则放弃该蜜源,随机寻找新的蜜源;
步骤7:记录蜜蜂找到的最优解,此时迭代次数为1;
步骤8:判断是否达到最大迭代次数,若是,则转步骤9,如果不是则返回步骤4。
步骤9:在最大迭代次数下,输出最优解[14]。具体如图1 所示。
图1 通信网路由优化仿真步骤
在求解最佳能量路由时,该算法需要获取电力通信网路由节点的实时剩余能量信息,确定通信消耗能量。然而,电力通信网路由节点在通信时,都会消耗大量能量[15]。针对该问题,设计了剩余能量采集算法流程:
步骤1:判断通信数据剩余能量采集是否超时,超时则结束剩余能量采集,反之进行步骤2;
步骤2:接收电力通信网中的剩余能量信息;
步骤3:选择节点中新节点的插入位置;
步骤4:更新选择向量,输出剩余能量采集结果。
根据上述剩余能量采集流程,避免因为收集剩余能量而出现不必要的能量损耗问题。
在用人工蜂群算法求解能量优化问题时,需要根据初始化过程中的能量消耗矩阵和剩余能量获取阶段更新的剩余能量矢量向量,在下一轮电力通信网络中的通信中从候选节点矢量选项中选择能量消耗最小的簇头节点组合[16]。簇头节点采用贪心策略选择最接近的簇节点,得到最优的能量路由。
采用蜂群算法求解最佳能量路径后,将设置好的簇头节点发送至Sink 节点。收到消息后,簇头节点改变其角色,向树节点发送请求,获得群集节点的信息。Sink 节点接收到访问请求后,通过簇头节点的移动建立Sink 节点与簇头节点之间的通信。在此基础上,确定了电力通信网络最优路径,下一轮数据中所有节点都基于此路径与Sink 节点完成通信。
虽然人工蜂群算法在求解全局近似最优解方面取得了较好的效果,但是人工蜂群算法的响应速度无法满足实际要求。若在前期部署的基站运行中发生负载偏移,将会影响网络服务质量或造成能量浪费。因此,提出了动态调整负载敏感性的解决方案,通过优化网络部署方式,根据基站在一个局部负荷变化范围内制定动态调整方案,弥补调整和运行过程中实时部署方案的不足,基站可在一定时间间隔内检测实际负载Loadi,并根据情况进行调整[17-19]。
1)当满足Loadi≥Cap时,即当负载超过设定的阈值时,其承受的荷载即为基站超过的负载。为使负荷分布均匀,达到较好的覆盖效果,需在基站对应的网格内确定最远和最近的两个基站,开启最近基站替换最远基站,减少不必要的能耗。如果网格中只有一个基站,没有任何改变,该地区的网格会在新基站投入使用后改变。若新电网继续过载,系统将继续处理,直到正确分配负荷为止。
2)当满足Loadi<时,即基站负荷小于其容量的一定比例,表示基站接近空载。在这一过程中,将关闭基站以节省能量,区域网格划分状态会随着基站关闭而改变。
最初的网格区被周围基站的新区域所覆盖,关闭基站的负荷由其他基站承担。但是基站一旦关闭,就会造成基站超负荷,导致基站再次启动时发生过载现象。由于基站启动后负载较小,再次关闭后形成了类似“乒乓切换现象”。为避免这种现象的发生,通过采用设定最小关闭间隔时间和预先探测的方法,对基站运行状态进行有效调整。
①设定最小关闭间隔时间
通过设定一个特定的阈值,使其最小关闭间隔时间符合基站的关闭要求。若基站开启的时间与最后开始时间接近,而且小于特定的阈值,则基站无法关闭。如果相反,基站关闭。
②预先探测
在基站BSi即将关闭时,系统首先检测基站是否造成其他基站超载。由于上一次启动是由于其他基站负荷过大,每个基站不会关闭,若此基站关闭导致其他基站过载,则仅负责相应区域的调整和提高响应速度。
以Matlab 为仿真平台,以图2 所示的某节点拓扑结构进行仿真分析。
图2 节点拓扑结构
图2 中的该电力通信网络范围为100 m×100 m,节点数量为150个,路由执行数量为2 000个,数据包大小为512 bit,节点初始能量为0.75 J。
为了验证基于人工蜂群算法的电力通信网路由优化仿真方法的有效性,将该方法与最优化整数线性规划配置模型、蚁群算法,从网络平均剩余能量、节点存活数量两个方面,对优化仿真方法进行评价。
1)网络平均剩余能量
对比人工蜂群算法、最优化整数线性规划配置模型、蚁群算法的网络平均剩余能量,结果如图3所示。
图3 三种方法网络平均剩余能量对比分析
由图3 可知,使用基于人工蜂群算法最高平均剩余能量为0.67 J,最低平均剩余能量为0.34 J;使用最优化整数线性规划配置模型最高平均剩余能量为0.67 J,最低平均剩余能量为0.32 J;使用蚁群算法最高平均剩余能量为0.67 J,最低平均剩余能量为0.22 J。使用基于人工蜂群算法平均剩余能量要比最优化整数线性规划配置模型、蚁群算法高,说明网络平均能耗较低;与最优化整数线性规划配置模型、蚁群算法相比,平均能量呈线性递减,说明电力通信网络稳定。
2)节点存活数量
三种方法的节点存活数量对比结果如图4所示。
图4 三种方法节点存活数量对比分析
由图4 可知,使用基于人工蜂群算法最大节点存活数量为98个,最小节点存活数量为83 个;使用最优化整数线性规划配置模型最大节点存活数量为98个,最小平均剩余能量为72 个;使用蚁群算法最大节点存活数量为96个,最小节点存活数量为60个。通过上述对比结果可知,使用基于人工蜂群算法,在网络负载均衡方面明显优于最优化整数线性规划配置模型和蚁群算法。
基于电力通信网路由节点的位置及剩余能量信息,建立最佳能量适应度模型,并采用人工蜂群算法对电力通信网路由进行合理聚类。仿真测试结果表明,人工蜂群算法不仅能够保证通信质量和能量平衡,同时也延长了网络的使用寿命。在未来研究中将采用多组协同进化方法,以进一步提高算法的收敛速度和精度。