基于人工免疫算法和蚁群算法的协同控制方法研究

2022-10-08 01:12张春黎
关键词:执行器亲和力协作

张春黎

(黄山职业技术学院 工业与财贸系, 安徽 黄山 245000)

无线传感执行网络(wireless sensor and actor networks,WSANs)是近期信息科学和自动化技术研究的热点[1],它在环境监测、军事侦察、智能家居、动物定位和跟踪、智能交通、城市管理等领域有着广阔的应用前景[2-3]。典型的无线传感执行网络通常包括传感器节点(sensor nodes)、执行节点(actor nodes) 、接收发送器(sink)和任务管理节点[4]。为了提高网络的检测和反应能力,需要在传感器节点和执行节点中添加协调机制,比如传感器节点与传感器节点之间的协调、传感器节点与执行器节点之间的协调、执行器节点与执行器节点之间的协调[5]。成国营等[6]针对传感器与执行器协同和执行器与执行器协同问题,提出了基于生物免疫机制的传感器与执行器自适应路由协同算法。易军等[7]利用熵权的任务分派算法解决了执行器节点任务并发执行的能耗问题。王艳等[1]采用昆虫生物种群协作机制减少了执行器间的协作能耗。然而,这些方法主要针对执行器间或传感器与执行器间的协作问题,且能耗较高。本研究针对无线传感执行网络的传感器节点与执行器节点间的协作,提出了一种WSANs智能传感器节点间协调机制,使多个传感器和多个执行器能在无线传感执行网络中合理有效地进行合作,以完成对各种事件的处理,在一致性方面达到快速收敛,提高整个任务的执行效率。

1 WSANs协同控制

1.1 WSANs的基本组成

一个典型的WSANs由传感器、执行器、接收发送器和任务管理器等节点组成,如图1所示。传感器负责从环境中感知信息并收集数据,执行器接收传感器发送过来的数据并根据数据进行操作,接收发送器负责监控整个网络,并且和任务管理器通信。与传统的无线传感网络相比,WSANs加入了执行器节点。执行器节点能量较为充足,具有较强的计算能力,并且具备移动性。加入这类特殊的节点,可使WSANs具有监测功能、控制功能和执行功能,能够更好地与环境动态交互[1]。

图1 WSANs基本结构Fig.1 Basic structure of WSANs

1.2 引入蚁群算法

将蚁群算法引入无线传感执行网络中,每个节点都拥有一个信息素表。使用2个种类的蚂蚁,分别称为前向蚂蚁和反向蚂蚁[8]。前向蚂蚁携带4种信息:所需要的传感器类型;相关传感器区域;数据传输速率;相关时间段。传感器的能量非常有限,考虑最佳路径不仅仅要求距离,更要考虑路径的能量水平,例如选择距离较长但能量水平高比选择距离较短但能量水平低的路径要好。算法中的每只蚂蚁根据状态转移规则发现它的下一步跳转,同时每只蚂蚁可根据局部校正规则和全局校正规则迅速找出最短路径。

1.2.1状态转移规则

假设q是均匀分布在[0,1]的随机数,q0是(0,1)的一个恒定数,蚂蚁被随机放置在i节点,蚂蚁选择下一个节点j的概率可根据公式(1)、(2)求出。

当q≤q0时,则

j=arg max{[τi, j(t)]α[ηi,k(t)]β}。

(1)

当q>q0时,则

(2)

式中:j∈Ni;τi, j(t)表示节点i与j之间路径的信息素;Ni表示蚂蚁尚未经过的节点集合;α和β是控制信息素和路径距离之间的相对重要性参数;ηi, j(t)是节点i与节点j之间的距离倒数。

1.2.2局部校正规则

当蚂蚁在节点间移动时,更新边界上的信息素τi,j(t):

τi,j(t+1)=(1-ρ)τi,j(t)+ρΔτi,j(t),

(3)

式中:ρ表示局部信息素衰减参数;Δτi,j(t)表示节点i与节点j之间的信息素增量。

当新增信息素含量为m只蚂蚁在初始节点i与终点节点j路径上留下的信息素总和时,信息素增量可表示为

(4)

(5)

1.2.3全局校正规则

当一个节点有一个来自邻居节点的反向蚂蚁经过时,它的信息素就会更新。一旦所有蚂蚁全部完成一次运作,就需要全局校正。这里使用双向融合战略,只有最好的和最差的路径会更新蚂蚁的信息素:

τi,j(t+n)=(1-α)τi,j(t)+αΔτi,j(t),

(6)

(7)

式中:α是局部信息素衰减参数;Q1和Q2的值是恒定的。

1.3 引入人工免疫算法

在WSANs中,选取参与协作的最优执行器问题是一类目标优化问题,使用人工免疫算法可以快速搜索出全局最优值,它的记忆功能可保留亲和力较高的多个个体,避免了盲目寻优。假定一个无线传感执行网络的某一区域中,有4×5个执行器接收到任务信息。执行器接收到任务信息后,经过初步分析,此任务需要由8个执行器节点共同协作完成。用xij(i=1,2,3,4;j=1,2,3,4,5)表示执行器节点,若xij=0,则表示执行器为睡眠模式,未参加任务;若xij=1,则表示执行器参与任务。执行器分布情况如矩阵(包括能量矩阵A和处理能力矩阵B)所示:

(8)

首先要确定执行器群体,包括指标(执行器的计算处理能力η和可利用能量E)和参数k1、k2的大小;然后选定初始抗体群,并且计算它们的亲和力,根据克隆规则淘汰亲和力小的,对亲和力大的再次进行克隆;最后利用设定的变异规则,生成新的抗体群之后进行变异操作。重复上述步骤T次,当大于或等于设定的阈值时停止操作,否则继续重复操作。操作结束后,所求出的最优解就是最适合执行目标任务的执行器,由这些执行器共同协作完成任务。

2 仿真与分析

2.1 基于蚁群算法的传感器协同机制仿真及分析

将基于蚁群算法的WSANs智能传感器节点间协同机制放在MATLAB 2012环境中进行仿真,主要仿真的是传感器之间在数据协作传输时,通过蚁群算法选定最优路径及最佳跳转节点的节能问题和传输效率。仿真时有以下设置:①将传感器节点随机放置在1 000 m×1 000 m的区域中;②操作初始时,每个传感器节点被赋予1个单位的能量;③假定传感器发射和接收分别损耗0.005个单位和0.000 5个单位;④无线电的有效传输范围是250 m;⑤参数M=30,Q=100,Q1=Q2=10,α=β=1,ρ1=ρ2=0.7,τi,j(t)=10,Nmax=200。

为了更直观地看出基于蚁群算法的智能传感器节点间协同机制的优越性,将仿真结果与文献[9]中的ARA算法和文献[10]中的LEACH算法进行了比较。图2所示为算法的平均能耗情况,其中横坐标表示传感器节点的个数,节点数在20~120,每次增加20个,纵坐标表示剩余能量百分比。由图2可看出:当节点数为20时,3种算法具备相似的能耗,剩余能量百分比在97%左右;随着节点密度的增加,即节点拥有更多的邻居节点,可选择性变大,3种算法的剩余能量与节点密度正相关;当节点数达到120时,3种算法的剩余能量百分比分别为99.4%(蚁群算法)、98.2%(ARA算法)和96.8%(LEACH算法)。可以看出,在算法能量损耗上蚁群算法少于ARA算法和LEACH算法。蚁群算法提供了更好的性能,使传感器协作传输过程节省更多的能量,说明蚁群算法有助于传感器数据协同传输能量利用率提高。

图2 算法的平均能耗Fig.2 Average energy consumption of the algorithm

蚁群算法、ARA算法和LEACH算法的数据包传输率见图3。

图3 数据包传输率Fig.3 Packet transmission rate

由图3可看出,在节点数为20~80时,随着节点数目的增加,蚁群算法数据包传输率逐渐提高,而ARA算法和LEACH算法的数据传输率基本不变,在75%左右;当节点数大于80时,3种算法的数据包传输率与节点数正相关,按数据传输率由大到小排列分别为蚁群算法、LEACH算法、ARA算法;在节点数为120时,蚁群算法的数据包传输率达到最大值95%,明显优于另外两个算法,并且收敛速度加快,说明蚁群算法使传感器在协同合作进行数据包传输时极大地提高了数据包传输率。综上所述,基于蚁群算法的WSANs智能传感器协调机制使传感器在协同合作进行数据传输过程中,节约了更多能量,数据包传输率也有很大提升,总体上提高了协作效率。

2.2 基于人工免疫算法的多执行器协同机制仿真及分析

在MATLAB 2012仿真环境中进行基于人工免疫算法的多执行器协作方法仿真。仿真数据包括4×5执行器的可利用能量矩阵A和4×5执行器的计算处理能力矩阵B:

其中,目标函数中K1=15,K2=0.1。将数据进行200次迭代运算得出最终结果,绘制出了人工免疫算法亲和力值的变化曲线,如图4所示。

图4 人工免疫算法亲和力值变化曲线Fig.4 Variation curve of affinity value calculated by artificial immunity

由图4可以看出,人工免疫算法经过60次迭代运算后,图像趋于稳定,亲和力值最大(约147.5)并且不再变化,说明此时已经达到最优解。综合考虑计算处理能力和可利用的能量,用亲和力值(147.5)表示。最优解x13、x14、x15、x32、x33、x34、x35、x43状态为1,说明这8个执行器共同协作完成这项任务是最完美的选择。经过60次迭代就可求出最优解,充分说明人工免疫算法的寻优能力明显缩短了确定最优执行器的时间。当迭代次数小于60时,亲和力值逐步上升,主要是因为克隆和变异使得子代具有更大的优势,从而导致亲和力值逐步上升,最重要的是保证了收敛速度。使用人工免疫算法,可以使参与协作的执行器快速达到最优,从而提高协作效率。

3 结语

本研究针对传感器之间的协作问题,提出了一种基于蚁群算法的智能传感器协同机制,在传感器之间协作传输数据时,利用蚁群算法可以找出最优路径,缩短协作时间,并且可以节约能量。通过仿真验证发现,在数据传输效率和能量损耗方面,蚁群算法优于ARA算法和LEACH算法。同时,针对执行器节点间的协作,提出了一种基于人工免疫算法的智能执行器协同机制。经过仿真验证可知,在迭代次数为60时协调机制达到收敛状态,亲和力最大值为147.5,极大提高了执行器之间的协作效率。

猜你喜欢
执行器亲和力协作
多场下压电喷油器执行器电学特性试验研究
更正说明
自动驾驶汽车执行器故障冗余算法
鲁渝扶贫协作进行曲
扶贫协作中的山东力量
X-431实测篇2010年奔驰B200空调执行器电机学习
监督桥 沟通桥 协作桥
协作
Just for today
周毅:做个有亲和力的气质女