基于属性约简的海事人为失误致因分析
2010-05-09金永兴
郑 滨,金永兴
(上海海事大学商船学院,上海 200135)
0 引言
20世纪80年代,西方研究人员发现约80%海事事故的发生与人为因素有关;1991年,英国运输部海运委员会发布关于海难原因的研究报告,指出人为因素导致船舶碰撞事故发生的比率高达90%.随着经济的发展和科技的进步,以船舶自动识别系统(Automatic Identification System,AIS)为代表的先进助航设备不断出现,船舶的自动化和智能化程度不断提高.然而,越来越先进的设备并未在根本上杜绝海上交通事故的发生,因此,对人为因素的分析研究有利于海事预防.
人为失误分析(human fault analysis)或人的可靠性分析(human reliability analysis)是由人类工效学(ergonomics)发展起来的1门新兴学科,而数据挖掘中的粗糙集(rough set)方法被证明在多维数据的知识发现领域卓有成效.因此,本文重点探讨如何将2者结合,以找到1种不仅处理简便而且行之有效的分析海事人为失误致因的方法.
1 海事人为失误致因分析方法
海上交通系统包含人、机、环境及管理等方面要素.在海上交通事故范畴内,“人为失误”可理解为遵守《国际海上避碰规则》的任何疏忽,包括对良好船艺、海员的通常做法以及特殊情况下要求的任何戒备的疏忽等.这些疏忽不利于船舶间行动的协调,使船舶碰撞的危险度增加.
传统的人为失误及其影响因素的识别方法有:简单易行的失误分析表方法、屏障分析法;全面系统的FSA(IMO推荐)、人为失误危险和可操作性分析方法;需要大量数据支持的统计分析法;利用专家判断来完成的任务分析法等.上述识别方法虽各有其自身特点,但也各有局限,主要在于识别时会受到人为因素(专家、识别人员等)的影响,且在识别人为失误的内在机理方面有一定难度.
我国的一些海事问题学者[1-3]尝试在专家调查和事故报告分析的基础上,借助灰色关联分析和模糊集隶属度的计算解决这一问题,获得一些宝贵经验.然而,该方法操作较为复杂,不但需要用问卷调查逐个了解专家对任一人为失误致因的看法,而且需要逐个用灰色识别方法计算人为失误及其影响因素的灰色关联度.
刘正江[2]提出使用数据挖掘等方法解决海事中人为失误与其影响因素间的关系问题,并已运用关联分析方法取得很好的效果,但由于影响因素众多(30个),在使用关联分析数据挖掘时需多次反复整理计算并妥善分析解释,才能获得有价值的信息.受此启发,本文尝试用属性约简思想解决上述问题.
2 粗糙集与属性约简
1982年,波兰学者PAWLAK基于边界线区域思想提出粗糙集理论,用于研究不完整数据及不精确知识的表达、学习和归纳,其主要思想是在保持知识库归纳能力不变的前提下,通过约简删除不相关或不重要的冗余数据,并在此基础上进行知识发现.[4]
粗糙集及属性约简的一些基本概念如下:
(1)知识系统的表达.1个知识系统可用如下的表达式体现
(2)不可区分关系.在系统S=(U,A)中,对于B⊆A,定义B在U上的不可分辨关系为I(B)={(x1,x2)∈U ×U|b(x1)=b(x2),∀b∈B},U 上的不可分辨关系I(B)也为1种等价关系.
(3)集合的上下近似.给定知识库K=(U,R)和U的分类U/R,对每个U的子集X⊆U,将以下2个集合分别作为X的R下近似和R上近似:
式中:[x]R表示包含元素x∈U的R等价类,即RX为利用知识R和U中所有确定属于X的元素集合;RX为利用知识R和U中所有可能属于X的元素集合.
(4)正域、负域和边界域.PR(X)=RX称为X的R正域;NR(X)=U-RX称为X的R负域;BR(X)=RX-RX称为X的边界域.正域PR(X)=RX为对于知识R能完全确定属于X的对象集合.同样,负域NR(X)为对于知识R确定不属于X的对象集合,即X的补集.边界域是1种不确定域,即对于知识R,属于边界域的对象不能确定地划分是否属于X.X的上近似由对于知识R不能排除其属于X的可能性的对象构成,是正域和边界域的并集.
(5)约简与核.一般在实际应用中,知识库中有些部分是冗余的,需要在保持知识库初等范畴的情况下消除冗余,进行知识的简化.
当Q独立,Q⊆P且I(Q)=I(P),则Q为P的简约,以J(P)表示.获得简约的过程称为约简.全部简约的交集称为P的核,即H(P)=∩J(P).粗糙集一系列的概念示意见图1.
图1 粗糙集概念示意
3 遗传算法
基于粗糙集理论的属性约简的基本原理如下:通过求各属性的重要性并排序,在泛化关系中找出与原始数据具有相同决策或分辨能力的相关属性的最小集合,实现信息约简,以产生更为简练且有意义的知识.[5]
但在算法层面,计算属性集的最小约简是个NP-Hard问题,即随着属性数目的增长,计算的复杂程度随时间呈指数倍增长.由于遗传算法是模拟生物在自然环境中的遗传和进化过程形成的1种自适应全局优化概率搜索算法,其搜索方式不是单一的方向或结构,而是将多个个体作为可能的解并考虑搜索空间全局范围内的抽样,从而以更大的可能性收敛到全局最优解.由于遗传算法本身的全局优化及隐含并行点的特点,将其用于求解知识约简问题可减少计算复杂度,加快计算速度.遗传算法的基本原理见图2.
图2 遗传算法基本原理
将问题的解编码成染色体,在算法开始时生成初始解空间(初始种群)并指定适应度函数,然后反复执行遗传操作:选择适应度强的染色体进行交叉,生成新的种群后再对其进行变异,直至找到满足条件的种群为止.用遗传算法进行属性约简的流程如下:
(1)编码.采用符号编码的方法,将染色体表示为有序数列τ(a1,a2,…,an),即将每个属性按其在论域U中的原始位置编成0或1的代码串.如果某属性不对用例结果产生影响,那么其在染色体中的基因编码为0,反之则为1.
(2)选择.先计算每个染色体的适应度,而后用公式FN(x)=F(x)/Σ F(x)得到标准化适应度.以FN(x)为概率分布,用轮盘赌算法进行选择,实现对群体中个体的优胜劣汰(即适应度高的个体被遗传到下一代群体的概率大).
(3)交叉.采用部分匹配交叉的方法解决单断点交叉产生的非法后代问题.先随机在父染色体中选择两交叉点,并交换两交叉点间的基因段.对于交换区间外的重复值,得到其在另一个父体中的位置,用该位置上的值进行代替,交叉示意如下:
(4)变异.将染色体中随机的2个位置互换,互换方式如下:
4 基于属性约简的海事人为失误致因分析
直接或间接导致海上交通事故发生的人为失误有很多种,根据专家判断及文献[3]的研究成果,导致船舶碰撞事故发生的主要人为失误一般包括瞭望不当和避碰决策失误等.
本文利用粗糙集的属性约简方法对海事人为失误信息进行数据挖掘试验.人为因素原始数据采用文献[3]中列出的100份从中国、澳大利亚、加拿大、美国、新西兰、英国和瑞典等国海事机构出版的船舶碰撞事故报告集.该数据集收集12种人为失误(不安全行为)和30种影响因素,见表1.为探讨使用属性约简进行海事人为失误致因分析的方法,本文仅选择作为主要人为失误之一的“瞭望不当”及其影响因素数据进行试验.方法论决定后,其他11种人为失误可用同样的方法进行分析整理.选用波兰华沙大学研制的粗糙集研究工具RSES软件包进行数据挖掘试验,并对试验结果进行分析.[6]试验采用RSES软件包中自带的基于遗传算法的属性约简算法自动计算出25个经过约简的属性集合.这些集合已删除某些被认为不重要的属性,能保证其知识归纳能力保持不变.通过分析各因素在这25组经约简的属性集合出现的几率可判断其重要性.各属性因素在25个约简集合中出现的个数见图3.
表1 30种船舶碰撞事故的人为失误影响因素
图3 属性约简实验结果
以在约简集合中的出现几率≥66.7%(2/3)为基准整理属性约简结果,从30个影响因素中得到9个主要因素.与文献[3]的研究结果相对照,发现仅有2个因素不相同,一致率达到78%.进一步研究被属性约简方法忽略的2个因素发现,“监督”与“通航密度”元素在约简集合中的出现几率相对较高,分别达到60%和50%,按重要性分别列第10和12位.用属性约简方法和关联规则方法得到的研究结果对比情况见表2.
表2 用属性约简与关联规则方法得到的研究结果比较
5 结束语
对试验结果的整理分析表明,属性约简方法在海事人为失误的致因分析领域具有一定的意义.属性约简方法与传统的灰色关联等方法相比简便易行;与关联规则等其他数据挖掘方法相比,粗糙集方法也有无需提供任何先验信息,且产生的知识简单、易于整理与理解等特点.此外,将遗传算法应用于属性约简可以在保证归纳正确性的同时进一步降低计算复杂度,减少计算时间.鉴于目前我国海上交通事故数据的采集规模,本文提出的数据挖掘方法有一定的现实意义.然而,遗传算法计算过程中的参数选择会在一定程度上影响数据挖掘的效果,如何准确地选择参数将是今后进一步的研究方向.
[1]张春来,许乐平,崔连军,等.海上安全中人为因素研究的几种方法[J].大连海事大学学报,2000,26(3):76-79.
[2]刘正江.船舶碰撞过程中的人的可靠性分析[D].大连:大连海事大学,2004.
[3]王庆东.基于粗糙集的数据挖掘方法研究[D].杭州:浙江大学,2005.
[4]陈伟统,钱沄涛.基于粗糙集理论的网络入侵检测方法[J].计算机工程,2006,32(16):133-135.
[5]RAMANNA S,PETERS J F,AHN T.Software quality knowledge discovery:a rough set approach[C]//Comput Software& Applications Conf(COMPSAC).Proc 26th Annual Int,2002:1140-1145.
[6]NGUYEN S H,NGUYEN H S.Analysis of STULONG data by rough set exploration system(RSES)[EB/OL].(2003-01-23)[2009-08-27].http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.89.2218.