基于遗传算法和BP神经网络的海上搜救的研究

2015-09-18 02:33闫海瑞陆能枝上海海事大学信息工程学院上海201306
现代计算机 2015年14期
关键词:案例库子集适应度

闫海瑞,陆能枝(上海海事大学信息工程学院,上海201306)

基于遗传算法和BP神经网络的海上搜救的研究

闫海瑞,陆能枝
(上海海事大学信息工程学院,上海201306)

随着全球经济快速发展,海上活动日益活跃,随之而来的是海上事故频发,这对海上搜救工作提出更高的要求,由于海上救援工作涉及因素众多,将利用遗传算法对所涉及的因素进行属性约简,得到最小的特征子集,并对选中的属性进行标准化处理,然后将处理后的属性作为BP神经网络的初始输入值,对BP神经网络进行训练,将海上搜救案例库中案例按搜救难度分类,使搜索更有针对性,提高搜索效率。

遗传算法;属性约简;BP神经网络;海上搜救

0 引言

近年来,随着经济、贸易全球化的发展,海上活动日益频繁,随之而来的是海上事故也日益增多,在2014年EMSA发布的海上事故伤亡审查报告中,仅欧盟国家就发生了3500余次事故,货船事故总数位居榜首,其次是客船事故,造成了巨大的经济损失和人员伤亡,这对可靠、高效的搜救方案的需求更加迫切。而海上救援涉及因素众多,案例库规模庞大,则在一定程度对海上搜救案例的搜索增添了难度。

1 总体设计思想

BP(Back Propagation)神经网络是目前应用非常广泛的一种神经网络模型,它具有很强大的学习能力,通过输入的初始权阈值,不断学习调整,反馈误差,对网络进行训练,但BP神经网络对初始输入值的有较高要求,而海上事故所涉及到的因素众多,包括气象方面,如风向、风压差、水流流速、能见度等,还包括遇险船舶情况,如遇险船舶类型、有无人员伤亡、船舶吨位、能否通信等因素,同时还要考虑到救援船舶的情况等,这就对数据的先行处理提出了要求,而遗传算法则是优化数据的非常有效的方法。

遗传算法(Genetic Algorithm,GA)是一种通过模拟自然进化中“优胜劣汰”过程来搜索最优解的方法。该算法是由美国Holland J教授在1975年提出的,其主要特征是不需要其他的任何先验知识,适应能力强,它是在问题的解空间中进行搜索,通过群体中个体之间交换信息来完成最优搜索,且对数据的处理是并行进行的。在执行遗传算法时,首先要对问题空间进行二进制编码,将问题转换成机器能够处理的语言,然后根据一定的概率,模拟自然界的遗传行为,例如选择、交叉、变异等,经过一定代数的迭代,最终获得具有最优适应度的个体,得到最优特征属性集。总体设计如图1。

图1 三层BP神经网络模型

根据气象采集数据以及对海上事故的监控,获取所需数据,例如事故发生的地点、距离救援船舶的距离、有无人员遇险、当时的气象情况等,尽可能地获取更多的信息。

由于得到的特征子集包含的属性值不一致,有具体数值型的、模糊概念类型以及数值范围等,需要对其离散化后处理。

将得到的信息利用遗传算法处理,通过选择、交叉、变异操作,剔除冗余、错误的信息,同时也将与决策无关的属性丢弃,得到清洗后的数据,即最小的特征子集。

为消除不同属性量纲的差别,降低网络训练误差,需要对数据进行标准化处理,将其压缩到[0,1]区间上。

设置BP网络的初始权阈值,采用三层BP神经网络,对训练集进行训练,将所有权阈值存储到网络中。

将测试集输入到经过训练的网络中,判断其所属类别,有针对性地搜索所属案例库,找到相似案例及解决方法。

2 利用遗传算法优化数据

在遗传算法中,属性的编码是特征选择的第一步,对每个个体进行二进制编码,如某个属性所在位置对应的是1,则表示该个体包含这个属性,如果是0,则表示该个体中不含有这个属性,每个个体即是问题的特征子集中的一个。

本文所采用的适应度函数定义如下:

其中,card(x)代表一个个体中1的个数,n代表的是这个个体的长度,即含有n个特征属性,k为决策属性对条件属性的依赖度。

在遗传算法中,利用选择运算进行个体的优胜劣汰操作,通常根据个体所占总体个体适应度的比例大小决定,利用“轮盘赌算法”实现。由适应度函数计算出每个个体的适应度F(xi),设问题空间中个体总数为n,则每个个体被选中的概率Psi可以表示为:

然后根据交叉概率Pc和变异概率Pm进行交叉、变异操作。

表1 海上搜救属性表

本文在研究大量文献的基础上,搜集了海上事故搜救时的一些案例,选取了具有一定代表性的10个属性,分别是{船舶类型,船籍,有无人员伤亡,离岸距离,风力,浪高,能见度,温度,通讯能力,事故原因}作为条件属性,决策属性D为搜救难度,并将其进行离散化,如表1(篇幅限制,仅取3个案例作为说明)。

其中船舶类型1表示客船,0表示货船,船籍1表示外籍,0表示本国国籍,1表示有人员伤亡,0表示没有,1表示离岸远,0表示近,风力和浪高从1~10逐级增大,温度0表示低温,1表示正常范围,事故原因2表示火灾,3表示搁浅,通讯能力0表示差,1表示较好,搜救难度1~4逐级增大。

利用MATLAB进行遗传算法编程,令Pc=0.7,Pm= 0.1,最大代数设置为150代,选取50组特征属性进行处理,得到最优特征子集{有无人员伤亡,离岸距离,风力,浪高,能见度,温度,事故原因},依赖度为0.85349。

3 特征值标准化

通过遗传算法得到一个最优的特征子集,但由于海上情况复杂,其中所包含属性的特征值可能会含有具体数值类型和文本类型等,需要进行标准化处理,将其映射到[0,1]区间上,处理过程如下:

(1)将各个特征属性赋予确定的数值。根据上述属性约简结果,则可建立矩阵

(3)平移—极差变换,计算公式为yij=(xij'-min{xij' |1≤i≤m|})/(max{xij'|1≤i≤m|}-min{xij'|1≤i≤m|})

此时,数据全部处在[0,1]区间,变换后的矩阵为:

4 BP神经网络

BP神经网络是一种多层前馈神经网络,学习过程分为两个阶段,阶段一是将已知的训练样本作为初始值输入,设置初始权阈值,向后计算各个神经元的输出;阶段二是对权阈值进行调整修正,向目标输出不断靠近。

其中,输入节点为经过处理得到的7个属性值,6个隐层节点,输出节点为4个,表示搜救难度的四个等级,wij为输入层与隐层之间的权值,wjk为隐层与输出层之间的权值。

本文采用50组案例数据进行训练,设置学习率为0.005,训练次数为1000次,精度要求为0.001,并采用一组属性值{1,1,6,5,1,0,2}进行测试,得到输出为{0.0294,0.1101,0.7558,0.1047},可以看出,该案例属于3级救助难度,救助比较困难,基本符合类别判定,在3级救助难度案例库中搜索相似案例即可。

图2 三层BP神经网络模型

5 结语

利用遗传算法对海上事故所涉及因素进行处理,极大地降低了属性的数目,去除了冗余的属性,及不相关属性的干扰,同时也由于属性数目的降低,由属性处理造成的错误也随之降低。利用BP神经网络对案例库中案例进行分类,当有新的案例时,首先取出其最小特征子集,通过BP神经网络分类,判定该案例的搜救难度,然后再在对应难度的案例库中搜索相似案例,使得搜索更具有针对性,提高了案例搜索效率。

[1]胡守仁,余少波,戴葵.神经网络[M].长沙:国防科技大学出版社,1992

[2]张德丰.MATLAB神经网络仿真与应用[M].北京:电子工业出版社,2009

[3]韩瑞峰.遗传算法原理与应用实例[M].北京:兵器工业出版社,2010

[4]王小平,曹立明.遗传算法:理论、应用与软件实现[M].西安:西安交通大学出版社,2002

[5]武志峰,陈冬霞.基于遗传算法的特征子集选择方法[J].河北省科学院学报,2006,9,23(3)

[6]于卫红,贾传荧.BP神经网络在救助船优选中的应用[J].计算机工程,2006,12,32(24)

[7]马曲立,刘怡,朱建冲.基于案例推理的装备保障人员需求预测[J].海军工程大学学报,2013,10,25(5)

[8]顾东晓.基于案例库的诊疗决策支持技术研究[D].博士学位论文,2011,10:58~68

[9]薛金凯.基于案例推理的海上搜救辅助决策研究[D].硕士学位论文,2011,5

[10]张中昱.基于BP神经网络和模糊综合评价的环境分析评价系统[D].硕士学位论文,2006,1

陆能枝,男,副教授,研究方向为决策支持系统及其在港航信息工程中的应用、电子商务、地理信息及物流信息化技术、数据仓库与数据挖掘等

Genetic Algorithm(GA);Attribute Reduction;BP Neural Network;Maritime Search and Rescue

Research on the Maritime Search and Rescue Based on Genetic Algorithm and BP Neural Network

YAN Hai-rui,LU Neng-zhi
(College of Information Engineering,Shanghai Maritime University,Shanghai 201306)

In recent years,activities at sea became so frequent that the number of maritime accidents increased sharply,which put forward higher requirements to the method of maritime search and rescue.Because sea rescue work involves so many factors,uses genetic algorithm to attribute reduction of the factors involved in the work of rescue to get the smallest feature subset,and standardizes the selected property. Then uses the processed attributes as the initial input values of the BP neural network to train the network to sort the cases based on the difficulty in order to improve the search efficiency.

1007-1423(2015)14-0011-04

10.3969/j.issn.1007-1423.2015.14.003

闫海瑞(1989-),女,山东济宁人,硕士研究生,研究方向为计算机软件与理论

2015-04-30

2015-05-06

猜你喜欢
案例库子集适应度
心血管外科教学案例库的建设及应用研究
改进的自适应复制、交叉和突变遗传算法
拓扑空间中紧致子集的性质研究
国内首个海事司法案例库正式上线
基于实践应用的基坑工程设计案例库建设研究
化工原理课程思政案例库建设初探
关于奇数阶二元子集的分离序列
完全二部图K6,n(6≤n≤38)的点可区别E-全染色
一种基于改进适应度的多机器人协作策略
基于空调导风板成型工艺的Kriging模型适应度研究