粗糙集-BP神经网络组合在PSC选船模型中的应用
2012-04-29孙忠华杨婷婷
孙忠华 杨婷婷
摘 要:本文以欧盟最新港口国监督法令(2009/16/EC)巴黎备忘录目标船选船机制(NIR)为研究对象,提
出基于粗糙集和BP神经网络组合算法的PSC的新选船模型。研究结果表明:该算法有效结合粗糙集
理论与BP神经网络的优点,属性约简科学合理,避免选择评价因素的主观影响,简化了网络结构。
关键词:粗糙集 BP神经网络 约简 PSC选船
2009/16/EC欧盟最新港口国监督法令第10条“船舶风险等级”规定:“所有停靠欧盟成员国港口或锚地的船舶在船舶检查数据库中都具有一个船舶风险等级信息,风险等级决定了检查等级、检查周期和检查范围。”而船舶风险等级的评估则由包括船型、船龄、船旗国、认可组织及管理公司表现在内的通用参数和基于一定历史时期内(通常是3年)在巴黎备忘录地区港口国监督检查缺陷数和滞留次数的历史参数共同确定。但由于该选船方法中的风险因素只是提供了一些相对具有代表性的因素,这些因素是否科学,能否通过PSC历史检查数据对船舶风险因素进行重新梳理,而且该机制只是对风险因素进行打分并通过简单的相加得出船舶风险值,是线性选船模型,而实际上PSC预测选船模型是非线性模型。
PSC选船模型国内外相关研究主要集中在层次分析法和模糊综合评价方法,魏栋等人采用BP神经网络可以很好地逼近非线性性函数的特性,采用BP神经网络建立了FSC检查选船模型。但BP神经网络需要大量样本数据进行训练,收敛速度慢,并易陷入局部最优。本文以2009/16/EC巴黎备忘录目标船选船机制(NIR)为研究对象,基于粗糙集和BP神经网络组合算法提出一种创新性的PSC选船模型。该算法采用了RSES粗糙集理论工具箱进行属性约简,并通过决策挖掘的知识训练样本建立神经网络。
基于粗糙集理论在PSC选船模型中的应用
粗糙集理论是由波兰数学家Pawlak于1982年首次提出的,它是一种处理不确定、不精确和不完全数据的新理论,特别在数据库知识挖掘领域,粗糙集已经成为知识获取的有力工具。信息决策系统T可表示为T=(U,A,C,D),其中U是对象的集合,即论域,A是属性集合,如果属性A集可以分为条件属性集C和决策属性集D,即C∪D=A,C∩D=?覫,则该信息系统称为决策系统或决策表。对于每个属性子集R?哿A,不可分辨关系为:Ind(R)={(x,y)∈U×U:r∈R:r(x)=r(y)},显然Ind(R)是一个等价关系,在不产生混淆的情况下可用R代替Ind(R)。所谓约简,即不含多余属性并保证分类正确的最小条件属性集。一个信息决策表壳同时存在多个约简。关系等价族R中所有不可约去的关系称为核,由它构成的集合称为R的核集,记作Core(R)。
1、构建PSC评价决策表
根据辽宁海事局2006-2010年内PSC检查结果建立一个船舶风险因素决策表,共50个记录,对于决策属性值ACC,高风险船舶进行了PSC检查的置为1;低风险船舶暂未进行PSC检查的置为0。根据NIR船舶风险因素评价,具体的条件属性分别为:
船型={其他类型,散货船,油船客船及危险品船}
船龄={船龄小于等于5年的船舶,船龄大于5年而非老旧船舶,老旧船舶而船龄小于特别定期检验船龄船舶,船龄大于特别定期检验船龄而尚未需强制报废船舶}
船员扣分情况={未扣过分,扣分1次,扣分2次,扣分2次以上}
航线={国内航线,国际航线}
吨位={0~500GRT,500~3000GRT,3000~10000GRT,10000GRT+ }
船旗国={是否方便旗国家,船旗国的滞留率,船旗国核准公约程度}
认可机构船级社={是否为IACS会员,船级社的滞留率}
公司NSM体系={A类,B类, C类}
船舶NSM体系={A类,B类, C类}
天气地理及水文={A类,B类, C类}
过去36个月每次检查记录的缺陷数量={前三次安检平均缺陷数小于等于5个,前三次安检平均缺陷数大于5个但小于等于10个,前三次安检平均缺陷数大于10个但小于等于15个,前三次安检平均缺陷数大于15个}
过去36个月滞留数量={未被滞留,被滞留1次,被滞留2次,被滞留2次以上}
距上次检查时间={0~6个月,7~12个,13个月+}
距上次滞留时间={0~6个月,7~12个,13个月+}
是否存在未纠正缺陷={不存在,存在}
2、离散化
由于粗集理论方法分析的决策是有限维的离散化数据表,因此对上述数据必须进行离散化,使属性值离散化后的空间维数最小,才能进行粗糙集分析。对各条件属性指标相对应的离散化规则如下:
VTYPE={1,2,3},VAGE={1,2,3,4},VMARINER={1,2,3,4},VROUTE={1,2},VTON={1,2,3,4},VFLAG={1,2,3},VCS={1,2},VCNSM={1,2,3},VSNSM={1,2,3},VWET={1,2,3},VDEF={1,2,3},VDET={1,2,3,4},VDUR1={1,2,3},VDUR2={1,2,3},VDEF2={1,2},决策属性离散化为VACC={1,0}。
3、基于RSES粗糙集软件的数据挖掘
采用Warsaw University开发粗糙集数据处理系统RSES 对PSC选船决策表进行约简,得出属性约简集,规则集及各属性分布频度。具体步骤如下:
RSES决策表生成。在Newproject下用“InsertTable”插入新表格并导入原始决策表。新的决策表共有100条记录,16个属性,其中15个为条件属性,1个为决策属性。
约简。利用粗糙集理论中常见的约简和规则生成算法—基因遗传算法(genetical algorithm),规则集生成。共产生22个约简集1544条规则,与无约简的决策规则集相比,扩大了15.4倍。各约简集的规则数为:
|Rules{TYPE,MARINER,FLAG,CNSM,DEF,DUR2,ROUTE}|=126
|Rules{TYPE,MARINER,FLAG,CNSM,DEF,DEF2}|=124
|Rules{TYPE,MARINER,ROUTE,CS,CNSM,WET,DUR2}|=58
|Rules{TYPE,MARINER,CNSM,WET,DEF,DEF2}|=56
计算可信度。根据可信度定义,CFij=card(Ci∩Dj)/card(Ci), Ci∩Dj≠?覫这里只列举条件属性TYPE的可信度计算方法,其他同。
CF(TYPE→ACC(1))=card(TYPE∩ACC(1))/card(TYPE)=962/1544=0.62
CF(TYPE→ACC(0))=card(TYPE∩ACC(0))/card(TYPE)=582/1544=0.38
则我们可以认为船型指标导致进行PSC检查的可信度大于不进行PSC检查的可信度。
综上选取Rules{TYPE,MARINER,FLAG,CNSM,DEF,DUR2,ROUTE}作为PSC检查的评价因素约简集。
BP神经网络在PSC选船模型中的应用
本文采用权值训练中使用误差逆向传播方式的反向传播(backward propagation, BP)神经网络。使用MATLAB语言的神经网络工具箱提供的函数和神经网络类,采用Sigmoid函数作为传输函数,使用net=newff(minmax(Xtrain),[10,10,1],{'tansig','tansig','purelin'},'traingdm')建立神经网络。这里构建3个隐层的神经网络,第一个隐层节点个数10, 第2个隐层节点数个数为10,第3个隐层有1个节点。具体设置如下:
自学习的学习率net.trainParam.lr = 0.02;
学习系数的初始值,Marquardt调整参数net.trainParam.mu=0 ;
学习系数下降因子net.trainParam.mu_dec= 0.9;
学习系数上升因子net.trainParam.mu_inc=1.05;
训练步数net.trainParam.epochs = 10000;
训练目标net.trainParam.goal = 0.01;
将训练样本使用规则约简后从辽宁海事局PSC检查数据库中另选10组样本对网络进行测试经过7419步训练,性能达到0.00999992,网络平滑收敛于全局极小值,得出训练过程的均方误差曲线。表1为测试样本,可见真实检查结果和该算法辨识结果误差较小,从而证明该网络精度较高,满足实际PSC工作需要。
(作者单位:大连海事大学)