基于GA-BP神经网络的深海集矿机避障系统
李鹏英,冯雅丽,张文明,杨春晖
(北京科技大学 土木与环境工程学院,北京,100083)
摘 要:结合深海集矿机的实际作业环境,建立集矿机的实时避障神经网络模型。该模型采用多传感器融合技术,将声纳传感器采集到的环境信息进行处理后作为BP神经网络的输入;设定车体的注视向量、转向角和速度为网络输出;根据集矿机实际行进情况,并综合人的行走经验,设置能够实现实时避障的网络导师训练信号。引入遗传算法对已建立BP避障模型进行改进,以克服局部极小值问题。仿真研究表明:遗传算法优化后的BP神经网络,能够有效训练达到预期目标,并能在很大程度上克服BP网络的局部极小值问题。在Matlab中给出障碍物环境中的避障仿真结果,表明此方法的可行性。
关键词:深海集矿机;BP神经网络;遗传算法;避障
中图分类号:TP273 文献标志码:A 文章编号:1672-7207(2010)04-1374-05
System of obstacle avoidance used in deep-seabed vehicle based on BP neural network and genetic algorithm
LI Peng-ying, FENG Ya-li, ZHANG Wen-ming, YANG Chun-hui
(School of Civil and Environmental Engineering, University of Science and Technology Beijing, Beijing 100083, China)
Abstract: A real-time obstacle avoidance neural network model was created according to the real working environment of deep-seabed vehicle. An information fusion method of multi-sensor was proposed to deal with the environmental situation collected by sonar sensors used in deep-seabed vehicle, and then the input of BP neural network was realized. Watching vector, steering angle and speed of the vehicle was set as output of BP network. Tutor training signal to achieve real-time obstacle avoidance was developed based on the moving way of both vehicle and man. Then, genetic algorithm was introduced to improve the BP neural network, so the problem of incidental trap in local minima with BP neural network was overcome. The simulation results indicate that the BP neural network improved by genetic algorithm can efficiently reach the expected target, and the problem of incidental trap in local minima is modified to a large extent. The simulation result of movement of the vehicle in the environment with obstacles shown in MATLAB indicates that the method is feasible.
Key words: deep-seabed vehicle; BP neural network; genetic algorithm; obstacles avoidance
近年来,随着科技的不断创新和进步,在处理未知的、变化的环境下移动机器人的局部路径规划方面取得了巨大的突破,提出了多种方法,如基于模型反应式方法的人工势场法(APF)[1]、基于行为反应式方法的模糊逻辑控制方法(FL)[2-3]以及遗传算法(GA)[4-6]、神经网络方法(NN)等[7-10]。深海富钴结壳及热液硫化物调查区水深为800~4 000 m,包括洋中脊、海山、海盆等地质单元;海底底质类型为基岩(变质玄武岩、火山岩、沉积岩、玻璃质碎屑岩和结壳等硬基底)、砂(松散有孔虫砂等)和泥(未固结的深海软泥等),矿体地形崎岖不平,多见突起和断裂,抗压强度为0.08~68.2 MPa,地形坡度一般在5?~35?之间[11]。因此,深海集矿机所面临作业环境存在高复杂性和不可预测性。基于模型的控制算法,从海底环境模型的建立到集矿机局部路径规划的算法实现,都需要考虑到各方面的影响因素,计算量大,实时性较差。而基于行为的反应式方法通过人的知识来指导机器人的行为,反应快,实时性好,且允许存在一定程度的噪声。为此,本文作者提出基于遗传算法的集矿机BP神经网络避障模型,将2种基于行为的反应式方法结合应用。重点放在神经网络对传感器输入信息的融合和拟人输出行为控制上,充分发挥神经网络高度的非线性逼近能力和自适应能力。并利用遗传算法的全局搜索能力调整BP神经网络的初始化权值和阈值,从而克服其局部极小值问题。
1 GA-BP避障神经网络设计
人工神经网络(简称ANN)是指用大量的简单计算单元(即神经元)构成的非线性系统[12],是基于模仿人脑高度的独立信息处理能力而建立的一种高层次拟人信息融合和处理系统[13],具有高度的并行性、非线性全局性和自适应能力。
反向传播算法是用来学习神经网络权值最常用的方法,该算法通过目标输出和实际输出的均方误差不断调整权值,以达到最佳拟合实际函数的目标。但对于较为复杂的网络模型,容易出现局部极小值问题。
遗传算法是一种通过模拟自然进化过程搜索全局最优解的算法,该算法同时考虑搜索空间上的多点,并使用概率法则来引导其搜索,避免局部极小的可能性很大[14]。本文将遗传算法应用于神经网络中,首先,将拟人信息融合技术用于分析障碍物环境,建立深海集矿机避障的神经网络模型;其次,应用遗传算法调整网络的权值,执行遗传操作;最后,将执行遗传算法所采用的二进制代码译成十进制,输出优化结果解决实际问题。这样,既继承了遗传算法“很强的宏观搜索能力和良好的全局优化能力”,又发扬了神经网络“较强的非线性逼近能力”,可以应用于海底这一复杂的非线性多变量环境的系统控制。
1.1 BP神经网络设计
1.1.1 BP神经网络的输入设定
集矿机在海底800~4 000 m工作,周围环境采用水下声纳传感器来检测,分别在车体正前方、左前方、右前方、左方和右方安装5个声纳传感器(本文所设传感器分布仅用于提出思路,实际情况中可以根据需要改变传感器的数目及方向),以判断在车体上述方向的障碍物。各方向声波束与障碍物的相交程度,经传感器融合技术处理作为神经网络的输入。传感器及障碍物分布如图1所示。
图1 传感器及障碍物分布示意图
Fig.1 Schematic distribution of sensors and obstacles
在图1中:1个扇形区域代表1个传感器可检测的最大区域(因为声纳传感器是以一定角度发射声波来检测目标的);L为传感器可测最远距离;阴影区域代表障碍物区域;扇形区域与阴影区域重叠则表示传感器检测到障碍物。图1所示为集矿机在行进过程中,全部障碍物区域及其任意组合经传感器检测后需要转向时的所有可能情况(2号和3号传感器同时检测到障碍物,与1,2和3号传感器同时检测到障碍物视为同种环境类型)。设定超声波传感器检测到障碍物时返回“1”信号,反之,返回“0”信号,那么,5个传感器将分别产生5个返回信号,将这5个信号采用多传感器融合技术[15]处理后即可作为避障神经网络模型的输入。利用BP 神经网络对其进行信息融合,在实验中,对于采集到的信息,去掉相同的环境信息,则剩下的信息就为代表网络全部输入特征的模式,这样,本文所设计BP神经网络含有32种输入模式。例如向量(1,0,0,0,0)表示只有1号传感器检测到障碍物的输入模式。
1.1.2 BP神经网络的输出设定
根据实际避障控制要求,将神经网络的输出设置为3个,用来更新集矿机的注视向量、转向角和转向速度,如图2所示。在图2中:向量m为注视向量,它始终指向垂直车体的正方向(集矿机前进的方向)或反方向(本文规定转向角大于90?时为非前进方向);v为速度;ω为集矿机避开障碍物所需要的转向角。
图2 集矿机注视向量、转向角及速度示意图
Fig.2 Schematic of watching vector, steering angle and speed of vehicle
以传感器返回信号为依据,确定与之相对应的障碍物分布情况,对已经设定的3个输出量,分别采取人为设置的方法,逐个设置导师信号。为了与输入模式匹配,首先将抽象的输出数值化,设定如下:对于注视向量而言,“1”表示正方向;“-1”则表示反方向。对于转向角而言,“1”表示不转向,即转向角为0?;“-2”表示向左转φ?;“2”表示向右转φ?(φ根据集矿机实际情况而定,本文仿真中选取45?);“-3”表示向左转90?;“3”表示向右转90?;“4”则表示向右转向180?。对于速度而言,“1”表示集矿机正常工作速度;“2”表示转向时减速后的速度。以输入模式为(0,1,0,0,0)为例,(0,1,0,0,0,1,2,2)代表其对应的网络训练导师信号,即当仅有2号传感器检测到障碍物时,集矿机右转一定角度即可实现避障。
结合集矿机的实际行进情况,并综合人的行走经验,对全部典型环境构成的向量一一制定相应的导师信号训练网络,网络训练的完成就意味着整组非线性关系已确定。也就是说,网络已经对人的独立思维处理能力进行了一定程度的模拟,可以针对采集到的任意信息给出合理的输出,进而使集矿机达到实时避障的目的。
1.1.3 BP神经网络整体结构
本文设计的BP神经网络为3层,各层神经元设置分别为:输入层神经元为5个,隐藏层神经元为10个,输出层神经元为3个,网络中所有的权值设定在[-1,1]区间内,由遗传算法进行学习更新。网络整体组织结构如图3所示。
神经网络训练参数包括训练样本、最大循环次数、训练期望误差和学习速率。已划分的32种输入模式为本文所需训练样本;最大循环次数设定为50,期望误差值选取0.001,学习速率选取1.0。
图3 BP神经网络整体组织结构
Fig.3 Organizational structure of BP neural network
1.2 遗传算法设计
在神经网络中,权值的初始化是网络最终输出优劣程度最重要的决定因素之一,同时,也在很大程度上影响着网络本身的训练效果。不同的初始权值可能会对训练时间、收敛性、泛化误差造成很大的差异。为了更好地解决神经网络初始权值的确定问题,本文利用遗传算法的宏观搜索和全局优化能力来确定初始权值和阈值,将遗传算法的初始种群规模设定为50,遗传代数选取100代,执行遗传操作。图4所示为本文所采用方法的具体流程。
图4 遗传算法优化BP神经网络学习方法流程图
Fig.4 Flowcharting of BP neural network’s learning method optimized by genetic algorithm
2 Matlab实验仿真结果与分析
根据上述模型,应用Matlab神经网络工具箱和遗传工具箱[16]进行仿真分析。为了更清楚地说明遗传算法在神经网络应用中的优势,首先对没有引入遗传算法的BP神经网络进行训练。经多次训练观察,发现BP神经网络会出现图5所示情况,即在误差达到训练目标之前,陷入局部极小,从而导致训练失败。将遗传算法引入BP神经网络后,发现网络会在较小的训练代数内达到所要求误差,在很大程度上克服了局部极小值问题。其中,达到要求误差精度所需训练代数为10~50代,本文选取训练代数为15代时的情况加以说明,如图6所示。
图5 BP神经网络训练误差曲线
Fig.5 Error-training of BP neural network
图6 GA-BP神经网络训练误差曲线
Fig.6 Error-training of GA-BP neural network
适应值的度量是遗传算法群体演化的依据。在GA-BP神经网络权值优化过程中,适应值设置为网络均方误差平方和的倒数,用来描述网络对所求权值的满意度。图7所示为遗传算法的适应值。从图7可以看出:适应值函数曲线呈单调上升状态,并在短期训练时间内趋于稳定,表明网络实现所期望输出的能力越来越强,并快速完成了训练任务,达到稳定状态,使得输出尽大可能地逼近网络的设计目标。并且适应值趋于稳定后,其值可达到约88%,从而表明神经网络训练是较成功的。
本文建立了不同的不确定障碍物环境和集矿机预定行走路径,以全面检验避障效果。仿真参数如下:障碍物环境尺寸(长×宽)为50 m×50 m;集矿机外形尺寸(长×宽)为2 m×2 m;行走速度为1 m/s(正常行走速度)和0.5 m/s(转向速度);传感器测量最大距离为2 m。避障实验仿真结果如图8和图9所示。其中:点型矩阵区域代表所设定随机障碍物区域;方块代表模拟集矿机;x和y分别为海底局部区域经、纬度坐标;虚线所示线路为方块避障行走轨迹(考虑到图片清晰度,行进路线由每隔0.2 s所取集矿机的中心点组成)。可见:应用本文所述方法,可以使集矿机在不同的障碍物分布环境中,根据预定路径,实时调整自身的运行轨迹,从而较好地实现避障与路径规划。
图7 遗传算法的适应值曲线
Fig.7 Fitness of genetic algorithm
图8 避障模拟结果1
Fig.8 Obstacle avoidance simulation result 1
图9 避障模拟结果2
Fig.9 Obstacle avoidance simulation result 2
3 结论
(1) 结合深海集矿机的实际作业环境,建立集矿机的避障BP神经网络模型,并将遗传算法引入神经网络训练过程的学习方法,克服了BP神经网络的局部极小值问题,从而使得GA-BP避障神经网络模型具备了良好的学习能力。
(2) 根据集矿机的实际行进情况,并综合人的行走经验,将人的形象思维应用于网络输出的设定过程,进行了拟人化信息融合处理,使得集矿机可以根据神经网络的输出不断地调整自己的运行轨迹,达到实时避障的目的。
(3) 利用传感器融合技术分析传感器采集信息,将集矿机可能遇到的障碍物环境逐一确定,制定详细的对应行为规则,学习方法不依赖于特定环境,具有很强的适应性和泛化能力。
参考文献:
[1] 王随平, 熊光辉. 深海履带机器车的实时导航和避障[J]. 中南大学学报: 自然科学版, 2007, 38(1): 128-132.
WANG Sui-ping, XIONG Guang-hui. Real-time navigation and obstacle avoidance for deep-seabed tracked vehicle[J]. Journal of Central South University: Science and Technology, 2007, 38(1): 128-132.
[2] 郝东, 刘斌. 移动机器人路径追踪的模糊控制方法[J]. 微计算机信息, 2008, 24(10-2): 235-236.
HAO Dong, LIU Bin. Study on mobile robot fuzzy control method for intelligent path following[J]. Microcomputer Information, 2008, 24(10-2): 235-236.
[3] 何文广. 基于模糊神经控制的机器人避障算法[J]. 黑龙江工程学院学报, 2008, 22(3): 46-49.
HE Wen-guang. The calculation of avoiding barriers for robot based on fuzzy neural control[J]. Journal of Heilongjiang Institute of Technology, 2008, 22(3): 46-49.
[4] 谭宝成, 廉春原, 徐艾, 等. 一种基于改进遗传算法的机器人路径规划方法[J]. 西安工业大学学报, 2008, 28(5): 456-459.
TAN Bao-cheng, LIAN Chun-yuan, XU Ai, et al. A method of improved genetic algorithm for robotic path planning[J]. Journal of Xi’an Technological University, 2008, 28(5): 456-459.
[5] Woonggie H, Seungmin B, Taeyong K. Genetic algorithm based path planning and dynamic obstacle avoidance of mobile robots[C]//Proceedings of IEEE International Conference on Computational Cybernetics and Simulation, 1997: 2747-2751.
[6] 段俊花, 李孝安. 基于改进遗传算法的机器人路径规划[J]. 微电子学与计算机, 2005, 22(1): 72-76.
DUAN Jun-hua, LI Xiao-an. Robot path planning based on improved genetic algorithm[J]. Microelectronics & Computer, 2005, 22(1): 72-76.
[7] 朱云国, 周松林.基于BP神经网络的移动机器人路径规划[J]. 煤矿机械, 2007, 28(8): 42-44.
ZHU Yun-guo, ZHOU Song-lin. Path planning for mobile robot based on BP neural network algorithm[J]. Coal Mining Machinery, 2007, 28(8): 42-44.
[8] 顾亦然, 王锁萍. 遗传算法与神经网络在接纳控制中的应用[J]. 计算机工程与应用, 2005, 41(19): 143-145.
GU Yi-ran, WANG Suo-ping. Application in admission control with genetic algorithms and neural network[J]. Computer Engineering and Applications, 2005, 41(19): 143-145.
[9] 陈华华, 杜歆, 顾伟康. 基于神经网络和遗传算法的机器人动态避障路径规划[J]. 传感技术学报, 2004(4): 551-555.
CHEN Hua-hua, DU Xin, GU Wei-kang. Neural network and genetic algorithm based dynamic obstacle avoidance and path planning for a robot[J]. Journal of Sensing Technology, 2004(4): 551-555.
[10] 布伟光, 何中市, 高静. 无监督神经网络在游戏中的应用研究[J]. 计算机工程与应用, 2008, 44(16): 90-93.
BU Wei-guang, HE Zhong-shi, GAO Jing. Application research of unsupervised neural networks in game development[J]. Computer Engineering and Applications, 2008, 44(16): 90-93.
[11] Moon J W. Current state and future prospect of Korean activities on the seafloor sulfides and cobalt-rich crusts[C]//Proceedings of International Symposium on New Deep Seabed Mineral Resources Development Policy. Korea: Ansan, 2004: 203-208.
[12] 魏海坤. 神经网络结构设计的理论与方法[M]. 北京: 国防工业出版社, 2005: 3-10.
WEI Hai-kun. The theory and method of structural design of neural network[M]. Beijing: National Defense Industry Press, 2005: 3-10.
[13] 唐述, 刘东. 拟人多信息融合在机器人避障中的应用[J]. 机器人技术, 2008, 24(2/4): 219-221.
TANG Shu, LIU Dong. Application of data fusion in obstacle avoidance of robot[J]. Robot Technology, 2008, 24(2/4): 219-221.
[14] 吴涛. 用遗传算法优化神经网络权值[J]. 湛江师范学院学报, 2007, 28(3): 120-122.
WU Tao. Optimization of weights in neural networks based on genetic algorithm[J]. Journal of Zhanjiang Normal College, 2007, 28(3): 120-122.
[15] 李贻斌, 刘明, 周风余. 移动机器人的多传感器信息融合方法[J]. 系统工程与电子技术, 1999, 21(9): 55-57.
LI Yi-bin, LIU Ming, ZHOU Feng-yu. Multi-ultrasonic sensor fusion method for mobile robot[J]. Systems Engineering and Electronics, 1999, 21(9): 55-57.
[16] 闻新. Matlab神经网络仿真与应用[M]. 北京: 科学出版社, 2003: 167-240.
WEN Xin. Matlab simulation of neural networks and application[M]. Beijing: Science Press, 2003: 167-240.
收稿日期:2009-01-06;修回日期:2009-03-18
基金项目:国家自然科学基金资助项目(50874006);国际海底区域性研究开发“十一五”项目(DYXM-115-04-02-03)
通信作者:冯雅丽(1967-),女,北京人,教授,从事车辆工程技术研究;电话:010-62332467;E-mail: ylfeng126@126.com
(编辑 陈爱华)