ORF Operations Research and Fuzziology 2163-1476 Scientific Research Publishing 10.12677/ORF.2020.104028 ORF-38593 ORF20200400000_22299415.pdf 数学与物理 基于蚁群算法的传感器充电路线规划——考虑有无障碍物影响 Charging Route Planning for Sensors Based on Ant Colony Algorithm—Consider the Presence or Absence of Obstacles 正浩 2 1 淑文 2 1 2 1 贵州大学数学与统计学院,贵州 贵阳 null 13 11 2020 10 04 269 277 © Copyright 2014 by authors and Scientific Research Publishing Inc. 2014 This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/

随着物联网的快速发展,无线可充电传感器网络(WRSN)在环境、设备监测等技术应用方面越来越广泛。本文针对移动充电器寻找充电路线最优问题,建立基于蚁周系统的蚁群算法模型,将无障碍的最优路径问题转化为经典旅行商问题。其中,为合理考虑通行道路实际分布情况,加入实际障碍物对道路通行能力的影响,利用蚁群算法寻找各节点间的避障路径组成距离矩阵后,采用最近插入法求解全局最优路径。 With the rapid development of Internet of Things, wireless rechargeable sensor network (WRSN) has been widely applied in environmental, device monitoring and other technologies. In this paper, an ant colony algorithm model based on ant week system is established to find the optimal charging route for mobile chargers, and the barrier-free optimal path problem is transformed into the classic travel agent problem. Among them, in order to reasonably consider the actual distribution of the passage road and add the influence of actual obstacles on the road capacity, ant colony algorithm is used to find the obstacle avoidance paths between each node to form the distance matrix, and the nearest insertion method is adopted to solve the global optimal path.

蚁群算法,旅行商问题,路径规划, Ant Colony Algorithm Travel Agent Problem Path Planning
摘要

随着物联网的快速发展,无线可充电传感器网络(WRSN)在环境、设备监测等技术应用方面越来越广泛。本文针对移动充电器寻找充电路线最优问题,建立基于蚁周系统的蚁群算法模型,将无障碍的最优路径问题转化为经典旅行商问题。其中,为合理考虑通行道路实际分布情况,加入实际障碍物对道路通行能力的影响,利用蚁群算法寻找各节点间的避障路径组成距离矩阵后,采用最近插入法求解全局最优路径。

关键词

蚁群算法,旅行商问题,路径规划

Charging Route Planning for Sensors Based on Ant Colony Algorithm

—Consider the Presence or Absence of Obstacles

Zhenghao Chen, Shuwen Xiang*, Li Zhang

School of Mathematics and Statistics, Guizhou University, Guiyang Guizhou

Received: Oct. 22nd, 2020; accepted: Nov. 6th, 2020; published: Nov. 13th, 2020

ABSTRACT

With the rapid development of Internet of Things, wireless rechargeable sensor network (WRSN) has been widely applied in environmental, device monitoring and other technologies. In this paper, an ant colony algorithm model based on ant week system is established to find the optimal charging route for mobile chargers, and the barrier-free optimal path problem is transformed into the classic travel agent problem. Among them, in order to reasonably consider the actual distribution of the passage road and add the influence of actual obstacles on the road capacity, ant colony algorithm is used to find the obstacle avoidance paths between each node to form the distance matrix, and the nearest insertion method is adopted to solve the global optimal path.

Keywords:Ant Colony Algorithm, Travel Agent Problem, Path Planning

Copyright © 2020 by author(s) and beplay安卓登录

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

1. 引言

随着物联网的快速发展,无线可充电传感器网络(WRSN)在环境监测及设备监测等技术应用方面越来越广泛,人们对其性能需求越来越高,规划合理的充电路线对WRSN正常工作意义重大 [ 1 ]。无线可充电传感器网络包括一个数据中心,若干传感器及一个或多个移动充电器三个部分 [ 2 ]。在整个系统中,传感器从环境中收集信息后传递给数据中心,各传感器之间、数据中心与传感器之间均可以互相传递信息,移动充电器需要给传感器定期充电,保证WSN能够正常且持续工作。移动充电器以一定速度从数据中心出发,在每个传感器处停留一段时间,并按固定充电速率给传感器充电,每个传感器又以特定的能耗速率工作,因此需要规划出移动充电器的最优充电路径减小路上的耗能,且满足传感器能量需求。针对目前国内外一些较多应用的路线规划方法,如遗传算法,模拟退火算法,粒子群算法等 [ 3 ] [ 4 ] [ 5 ],广泛应用在机器人作业路径规划方面 [ 6 ] [ 7 ] [ 8 ],但在解决复杂场景路线时效率较低。

蚁群算法由于其稳定性强、并行能力高等特点,解决了一般路线算法在复杂场景最优路线寻找效率低的问题。而针对实际建筑物的影响情况,避障部分仍可采用蚁群算法寻找节点间的避障路径,具有较强的适用性,针对节点路径考虑更具体,适用于完成寻找该区域全部节点最佳的充电路线任务。

2. 节点数据分析与处理

常见的地图使用了不同的坐标系,导致同一个地址的经纬度在地图上显示有偏差,因此需要对不同地图中的经纬度坐标进行转化。针对某省研发中心给出的各传感器经度坐标与纬度坐标(见表1),使用WGS84坐标系(国际通用)进行坐标系转化,得到传感器分布情况图(图1)。

Sensor longitude and latitude coordinates tabl
节点 传感器经度 传感器纬度 节点 传感器经度 传感器纬度
数据中心 120.7015202 36.37423 传感器15 120.6960585 36.38247931
传感器1 120.6987175 36.37457569 传感器16 120.7005141 36.38276987
传感器2 120.6997954 36.37591239 传感器17 120.6998673 36.37079794
传感器3 120.70691 36.37579616 传感器18 120.6928965 36.37079794
传感器4 120.7056165 36.37248342 传感器19 120.6964897 36.36824059
传感器5 120.7031731 36.37753964 传感器20 120.6969209 36.37143727
传感器6 120.6928965 36.37800457 传感器21 120.7052571 36.36899618
传感器7 120.6943337 36.37521499 传感器22 120.7088504 36.37021674
传感器8 120.6973521 36.37876006 传感器23 120.7087066 36.36731063
传感器9 120.6962022 36.37643544 传感器24 120.7130185 36.36829872
传感器10 120.7011609 36.37905063 传感器25 120.6896626 36.36661314
传感器11 120.6939026 36.38021291 传感器26 120.6937588 36.36242812
传感器12 120.6983582 36.38056159 传感器27 120.6993643 36.38741865
传感器13 120.7025263 36.38120084 传感器28 120.7129466 36.37201847
传感器14 120.6914592 36.38201441 传感器29 120.7002266 36.36428816

表1. 传感器经度坐标与纬度坐标表

图1. 传感器分布情况图

由图1发现原坐标系在GCJ02坐标的传感器多分布于海面上,有五个点在陆地上,将位于海面上各传感器间的可行路径视为无障碍路径,忽略传感器在海面上的偏移,暂将海面上传感器视为移动充电小车为其充电。进一步求出各个节点间的距离,部分节点间距离矩阵见表2。

Partial node distance matrix tabl
单位(KM) 数据中心 传感器1 传感器2 传感器3 传感器4 传感器5
数据中心 0 0.2528993 0.215934 0.5026613 0.3986385 0.3315006
传感器1 0.2528993 0 0.1537638 0.7416836 0.6455424 0.4791811
传感器2 0.215934 0.1537638 0 0.6371484 0.6049453 0.3357139
传感器3 0.5026613 0.7416836 0.6371484 0 0.3184459 0.3692461
传感器4 0.3986385 0.6455424 0.6049453 0.3184459 0 0.502844
传感器5 0.3315006 0.4791811 0.3357139 0.3692461 0.502844 0

表2. 部分节点间距离矩阵表

3. 模型的建立与求解 3.1. 模型的建立

移动充电器从数据中心出发,经过每个传感器一次再返回数据中心的最短路径问题,即经典旅行商问题。首先将表1中所给经纬度从数据中心开始按照顺序依次进行编号,数据中心设为0,传感器依次设为 1 , 2 , ⋯ , 29 。设第k条路径是从节点i到节点j,距离记为。k = 1时表示数据中心到第一个传感器间的距离,k = 30时表示最后一个传感器到数据中心的距离,所以本问题就是求得一条环路,移动充电器从数据中心出发经过29个传感器的路径总距离可以建立如下数学模型:

D = min ∑ k = 1 30 d k ( i , j ) , (1)

s .t .     d k ( i , j ) ≥ 0       ( i , j ) ∈ ( 0 , 1 , ⋯ , 29 ) (2)

对于经典旅行商问题我们采用蚁群算法求解。关于蚁群算法有三种不同模型包括蚁周系统、蚁量系统和蚁密系统。在蚁密和蚁量系统,蚂蚁释放信息素是根据局部情况,蚁周系统中蚂蚁释放信息素依靠的是整体反馈情况,本文是为了寻找一个全局的最短路径,因此采用的是蚁周系统。

蚁群算法在初始迭代时给每条路径上的浓度是一个常数,那时蚂蚁不知道每条路径的长度,它只能随机选择,产生了大量无关紧要的路径,阻碍最优路径搜索过程,同时对信息素浓度局部更新也会产生影响。但在求最短路径时,节点与节点之间的距离是已知的,因此在用蚁群算法求最短路径时,没有必要进行盲目选择,可以对迭代开始时的初始浓度进行精确赋值。

对于蚁群算法的工作原理(图2)。

初始化信息素因子α,启发函数因子β,路径启发因子 η i j , η i j = 1 d i j 。其中, d i j 为i到j的欧氏距离; q 0 为蚂蚁状态转移的阈值。设最大迭代次数N,选定蚂蚁数为m。计算节点距离矩阵,定义节点i和节点j之间路径上的初始信息素浓度为 τ i j ,将m只蚂蚁放在起点0处,将各蚂蚁的初始节点0置于当前解集中,第k只蚂蚁从节点i转移到下一个节点j的概率:

P i j k ( t ) = { τ i j α ( t ) η i j β ( t ) ∑ s ∈ a l l o w e d k i     τ i s α ( t ) η i s β ( t ) j ∈ a l l o w e d k i 0 j ∉ a l l o w e d k i (3)

其中, a l l o w e d k i = { 与   i   相 连 的 节 点 } − { 蚂 蚁   k   已 经 访 问 过 的 节 点 } ,即每只蚂蚁对每个节点最多访问一次。

在蚂蚁完成一次搜索后,信息素一方面要挥发掉一部分,另一方面蚂蚁在走过的路径上要释放一定量的信息素。设挥发和增加信息素的系数均为ρ,更新规则如下:

τ i j ( t + 1 ) = ( 1 − ρ ) τ i j ( t ) + ρ Δ τ i j ( t ) (4)

Δ τ i j ( t ) = ∑ k = 1 m Δ τ i j k ( t ) (5)

其中 Δ τ i j k ( t ) 是本次循环中蚂蚁k的信息素增加量,若蚂蚁没有经过此路径,则 Δ τ i j k ( t ) = 0 ,否则,用Q表示增加浓度的总和,可视为一个常数,用 L k 为第k只蚂蚁在本次循环搜索中搜索到的路径长度,则定义 Δ τ i j k ( t ) = Q L 。

重复以上工作,直到所有蚂蚁都到达终点,得到m条路径集合 { l 1 , l 2 , ⋯ , l m } 。比较m条路径的长度有 { l 1 < l 2 < ⋯ < l m } ,记最优解为 L l o c a t i o n ,平均解为 L ¯ ,当前迭代最短路径为 L min ,对此路径上的信息素浓度进行全局更新:

τ i j ( t + 1 ) = τ i j ( t ) + σ μ Δ τ i j (6)

σ = 1 2 tanh ( L l o c a t i o n − L min L ¯ − L min ) + 1 2 (7)

图2. 蚁周系统的蚁群算法流程图

3.2. 模型的求解 3.2.1. 无障碍情况

借助软件python,求解蚁群算法下路线规划的最优解,运行结果的路径图与收敛图见图3、图4。

图3. 蚁群算法运行结果路径图

图4. 蚁群算法运行结果收敛图

最终求得最短路径为:0-2-1-9-8-12-10-13-16-27-15-14-11-6-7-18-25-26-29-19-20-17-21-23-24-28-22-4-3-5-0。

最短距离为:11.5819498643260 KM。

通过迭代后的最短距离与平均距离收敛图,对比可以发现在迭代次数达到大概40次后最短距离趋于稳定状态,当迭代次数大概在430次之后的平均距离波动较小,说明蚁群算法稳定性较好。

3.2.2. 有障碍情况

生活中对移动充电器充电路线有影响的因素有很多,如天气因素、交通因素和路况因素等等,相对于无障碍情况下影响最大的就是路况因素,而路况因素中最为突出的就是建筑物。各节点之间如果存在大量建筑物则移动充电器只能不断绕行,这大大增加了路上的能量消耗,所以在有大量建筑物的情况下寻找最短移动距离是减少路上能耗的最为关键的问题。在前面建立的自适应蚁群算法的基础上,结合可视图法与插入法对此类问题进行求解 [ 9 ]。

考虑实际路况中城市建筑对道路通行的影响,现将位于陆地建筑中的节点25、18、26、29加入实际路况即障碍物的影响下进行研究。由于节点15、12、17位于沿海广场,周围无较大建筑物障碍影响通行,其余节点均位于海面上,故将这些节点作为无障碍点处理。增加障碍物影响后,重新得到各节点之间的最短距离,如传感器25与传感器18之间,由于陆地建筑影响无法直接采用两点之间连线长度作为最短距离。在水经注万能地图下载器中找到建筑物经纬度坐标,运用蚁群算法画出障碍物的平面图(图5)。

图5. 陆地建筑物平面图

增加障碍物影响后,如果将所有的点带入实际路况中进行实际考察,绘制最短路径图,针对障碍物较多的情况无法快速找出全局最优路径,为节约时间将问题分开来看:机器可以并行计算出各个节点在实际路况中的两两节点间最短距离,重新获得各节点之间的最短距离作为实际路况的距离矩阵D,利用距离矩阵D求解移动充电器访问每一个传感器一次并回到数据中心的最短回路,这样将问题就转化为组合优化中的一个NP完全问题。

利用距离矩阵D求解移动充电器访问每一个传感器一次并回到数据中心的最短回路,在求解方法的选择上,如果使用精确解,例如枚举法来解决该题,本题涉及到30个点的路线求解,依靠现有计算机很难在短时间实现。因此由于使用精确解算法求解问题的规模十分有限,实际情况中往往使用近似解法,考虑到插入算法求解质量高的优点,选择最近插入法作为最短路径的求解方法,为增加解的质量,进行1000次计算后得到最优路径图(图6)。

图6. 陆地建筑物平面图

最短距离为:12.5374902553823 KM

最优路线为:0-1-2-12 -8-9-7-6-11-14-15-27-16-13-10-5-3-4-22-28-24-23-21-29-19-26-25-18-20-17-0。

由上面有建筑物影响得到的最优路径图可以看出,虽然只有18、25、26、19、29这五个点附近有障碍物,但是与之相邻点的路径会间接受到影响。

4. 结论

我们选用国际通用的坐标系进行节点分布研究,考虑了两种不同的情况的路径建模,分别是有障碍和无障碍的,排除了单一性,片面性对模型的影响,使模型的可利用率更高,实用性更高,更加贴近生活。蚁群算法由于其稳定性强、并行能力高等特点,解决了一般路线算法在复杂场景最优路线寻找效率低的问题,对无关路径起到抑制作用,避免蚂蚁的盲目搜索,提高了搜索全局最优解的速率,适用于完成寻找该区域全部节点最佳的充电路线任务。而且加入实际建筑物的影响后,避障部分仍可采用蚁周系统的蚁群算法模型寻找节点间的避障路径,模型具有较强的适用性,在有限的时间和资源上,我们的模型针对节点路径考虑更具体,可广泛使用在各类海陆路线一般选择工作中。

基金项目

本文获得国家自然科学基金项目(71961003)资助。

文章引用

陈正浩,向淑文,张 立. 基于蚁群算法的传感器充电路线规划——考虑有无障碍物影响Charging Route Planning for Sensors Based on Ant Colony Algorithm—Consider the Presence or Absence of Obstacles[J]. 运筹与模糊学, 2020, 10(04): 269-277. https://doi.org/10.12677/ORF.2020.104028

参考文献 References 刘建华. 基于智能优化算法的机器人路径规划与目标跟踪方法研究[D]: [硕士学位论文]. 上海: 东华大学, 2017. 李孟霖, 余祥, 巫岱玥, 许新坤. 基于蚁群TSP算法的路径规划问题研究[C]//中国指挥与控制学会. 第六届中国指挥控制大会论文集(上册). 北京: 中国指挥与控制学会, 2018: 7. Wang, P., Gao, S., Li, L., et al. (2019) Obstacle Avoidance Path Planning Design for Autonomous Driving Vehicles Based on an Improved Artificial Potential Field Algorithm. Energies, 12, 2342.
https://doi.org/10.3390/en12122342
Lee, H.Y., Shin, H. and Chae, J. (2018) Path Planning for Mobile Agents Using a Genetic Algorithm with a Direction Guided Factor. Electronics, 7, 212.
https://doi.org/10.3390/electronics7100212
Li, G. and Chou, W. (2018) Path Planning for Mobile Robot Using Self Adaptive Learning Particle Swarm Optimization. Science China Information Sciences, 61, 052204.
https://doi.org/10.1007/s11432-016-9115-2
张松灿, 普杰信, 司彦娜, 孙力帆. 蚁群算法在移动机器人路径规划中的应用综述[J]. 计算机工程与应用, 2020, 56(8): 10-19. 林树锋, 王冬姣, 叶家玮, 刘鲲. 基于蚁群算法的水下机器人机械臂工作路径优化[J]. 水下无人系统学报, 2019, 27(1): 45-50. 刘可, 李可, 宿磊, 王琨, 张秋菊. 基于蚁群算法与参数迁移的机器人三维路径规划方法[J]. 农业机械学报, 2020, 51(1): 29-36. 陈志, 韩兴国. 改进蚁群算法在移动机器人路径规划上的应用[J]. 计算机工程与设计, 2020, 41(8): 2388-2395.
Baidu
map