葛蓉, 胡勤友, 涂兴华, 徐铁
(1.江苏海事职业技术学院 航海技术学院,南京 211170; 2.上海海事大学 商船学院,上海 201306)
近年来,我国经济的飞速发展带动航运业繁荣.水上交通安全工作是一项基础性工作,历来受到海事部门的高度重视,因此正确及时地掌握水上交通安全形势是开展水上交通安全监管工作的前提和依据.目前,经过一些学者的研究分析,运用于水上交通安全评价的数学模型或方法有很多,如加权评价法、神经网络法、故障树分析法等.其中加权评价法操作性强、简便易算,常用的有模糊综合评判法[1]、层次分析法、德尔菲法等,这几种方法均能将定性和定量相结合、步骤完善、所得的评价结果有一定的参考价值和预见性,因而在水上交通安全评价中被广泛应用.
根据评价水上交通的目的和特征,通常由专家调查的方式确定较吻合的指标体系,同时由一定数量的领域内专家主观赋值确定指标权重,因此对专家存在较强的依赖.认识到指标权重的主观性较强,为使权重更准确可信、符合逻辑,很多学者在这方面进行研究[2],在一些常见方法的基础上提出更多的数学模型和方法[3].
文献[4]研究Delphi-AHP(Analytic Hierarchy Process,层次分析法)构权过程中专家意见一致性的统计检验问题,提出用p阶对称均值比指标度量,并建议用极差法和模拟法确定阈值,是一致性检验的新方法;文献[5]将集对分析(Set Pair Analysis,SPA)模型引入安全评价;文献[6]将SPA与AHP比较,得出SPA法能够对专家判断的同一性和差异性进行有效处理,更易于区分各指标的权重;文献[7]在安全评价中引入模糊变权法,权重与单指标评价值相关联,突出不理想指标,使评价结果更符合实际情况.
上述几种方法都仅仅在一定程度上对单个专家赋权值进行修正,对整个专家权重向量集中的异常向量不能进行有效识别.这些异常向量会降低评价结果的准确性,为提高权重向量的可信度,应尽早发现并消除.本文提出一种基于DBSCAN算法的权重向量异常分析方法,能快速、有效地检测出专家权重向量集中的异常向量.
在运用加权评价法评价复杂的水上交通系统安全时,有以下3个关键步骤:
步骤1确定评价指标.主要是根据水上交通特点和评价目的,选择影响安全形势的因素作为评价指标,如自然条件、船舶状况等,并构造判断矩阵.
步骤3得出评价结果.对权重向量w和评判矩阵R进行矩阵运算B=wR,得出评价结果.
评价中的权重向量集通常为数值属性的多维数据集,在大多数情况下没有提前标记,而当某向量区别于其他多数向量时,将其标记为异常向量.导致异常的原因可能是专家主观判断失误等,识别这些异常权重向量正是分析的目标.
检测异常数据是聚类的一种附属结果,故往往选取聚类算法作为检测方法.文献[8]对基于聚类的异常挖掘算法进行大量研究;文献[9]基于密度聚类算法对样本数据库进行异常检测,为运用聚类算法进行权重向量异常分析提供基础.
聚类是数据挖掘[10-11]中的一项重要技术,根据向量之间的“相似程度”将向量划分为不同的簇,目的是使同一簇中的向量相似度最大化、不同簇中的向量相似度最小化.完成聚类后,可能剩余少数向量无法归入任何簇中,这些少数向量即为检测出的异常向量.[12]传统的聚类算法根据数据类型、聚类目的等大致可以被分为5类:层次方法、划分方法、基于密度方法、基于网格方法和基于模型方法.文献[13]就异常数据分析对PAM算法、BIRCH算法、DBSCAN算法和CURE算法这4种典型的聚类算法进行比较,其中DBSCAN算法适用于任意形状的聚类,对异常数据最为敏感,故DBSCAN算法对于权重向量的异常分析有一定的可行性.
DBSCAN算法是一种较具有代表性的基于密度的聚类算法,根据密度阈值控制簇的增长,采用迭代法查找对象归入簇.[14]运用DBSCAN算法需指定2个参数:①邻域半径E,由权重向量间的欧氏距离确定;②邻域半径范围内的权重向量最小数目M.设定M和E后,算法步骤如下:
步骤1检测权重向量集中且其邻域半径E范围内包含的权重向量数目≥M的权重向量p,以p为核心对象建立新簇C,并将其包含的所有权重向量加入C.
步骤2对C中尚未处理的权重向量q,若其邻域半径E范围内包含的权重向量数目≥M,则将其所包含的权重向量(已处理的权重向量除外)加入C;若包含的权重向量数目 步骤3重复步骤2,扩展C所包含的权重向量,直到没有新的权重向量加入. 步骤4重复步骤1~3,直到权重向量集中的所有向量都归入某一簇,同时未加入任何一簇的权重向量标记为异常向量. DBSCAN算法流程见图1. 图1 DBSCAN算法流程 为检验DBSCAN算法对权重向量异常分析的效果,参照调查专家意见,按照“人-机-环境”理论选定这3项为分析影响水上交通的指标,取130位专家填写的问卷结果,构造判断矩阵,再计算出130个专家指标权重向量如下: 对上述权重向量作三维散点图,见图2.由图2可以看出,权重向量总体集中分布,但在密度上存在一定的差异,且边缘处可能存在个别权重向量异常偏离. 图2 权重向量三维散点图 参照数据量和向量分布情况,采用DBSCAN算法进行异常分析.为简化计算可设定参数M=5.为确定E,计算向量集中的某一权重向量wi=(wi1,wi2,…,wik)与其第M(M=5)个最邻近对象wj=(wj1,wj2,…,wjk)之间的欧氏距离: d(wi,wj)= 在本实例中,k=3.对计算所得d四舍五入精确到小数点后两位有效数字,并按大小排序,统计其所对应的数据个数,见图3. 图3 计算所得d所对应的数据个数统计 观察图中曲线走势,将图中曲线峰值对应的d设定为E,即E=0.10. 运用MATLAB编写DBSCAN算法程序,将对应的M和E参数值输入,可得部分聚类结果,见表1.表1中:K表示第K类聚类簇;K值为空的权重向量为游离状态,未归入任何一个聚类簇,这些权重向量即为分析出的异常权重向量,见图4. 表1 部分聚类结果 图4 权重向量异常分析结果 指标权重向量在常用的水上交通安全加权评价法中扮演着重要的角色,因评价中的权重系数通常由一定数量的领域内专家主观赋权,因此得到的权重向量可能产生异常.DBSCAN算法是一种基于密度的聚类算法,适用于任意形状的聚类,对异常数据敏感性高.本文将DBSCAN算法运用于异常权重向量的分析,实验显示:在130组数据中,异常权重向量共3组,从数据分布情况看,分析出的异常向量与正常向量有比较明显的差异,因而此方法可行.总之,对权重向量集进行分析后,可防止异常权重向量的干扰,对提高评价结果的质量有一定的效果. 参考文献: [1]张侃, 赵仁余. 模糊综合评判中零关系指标对船舶航行环境安全评价结果的影响[J]. 上海海事大学学报, 2007, 28(3): 16-18. [2]王靖, 张金锁. 综合评价中确定权重向量的几种方法比较[J]. 河北工业大学学报, 2001, 30(2): 52-57. [3]孙晓东, 田澎. 群决策中基于一致性强度的专家意见集结方法[J]. 系统工程与电子技术, 2008, 30(10): 1895-1898. [4]苏为华,吴鑑洪.Delphi-AHP构权过程中专家意见一致性的统计检验问题研究[J].统计研究, 2010, 27(7): 84-88. [5]吴建军,肖英杰.基于集对分析的定线制水域航行环境的综合安全评价[J].上海海事大学学报, 2011, 32(1): 30-34. [6]吴建军,蔡垚,刘正江.综合安全评价中指标权重的集对分析[J].中国航海, 2010, 33(3): 60-63. [7]刘强, 王凤武, 岳兴旺. 模糊变权法在船舶综合安全评价中的应用[J]. 大连海事大学学报, 2010, 36(4): 21-22. [8]苏晓珂. 基于聚类的异常挖掘算法研究[D]. 上海: 东华大学, 2010. [9]张晓. 基于密度聚类算法的异常检测[J]. 伊犁师范学院学报:自然科学版, 2010(4): 51-54. [10]TAN Pang-Ning, STEINBACH M, KUMAR V. 数据挖掘导论[M]. 范明, 范宏建, 译. 北京: 人民邮电出版社, 2006: 383-464. [11]HAN Jiawei, KAMBER M. 数据挖掘概念与技术[M]. 范明, 孟小峰, 译. 2版. 北京:机械工业出版社, 2007: 251-303. [12]王天真, 刘萍, 汤天浩, 等. 一种基于k-means聚类的航运信息孤立点分析算法[J].上海海事大学学报, 2011, 32(3): 54-57. [13]杨延娇, 门维江. 基于异常点挖掘的聚类算法比较研究[J]. 甘肃联合大学学报, 2008, 22(1): 87-90. [14]熊忠阳, 孙思, 张玉芳, 等. 一种基于划分的不同参数值的DBSCAN算法[J]. 计算机工程与设计, 2005, 26(9): 2319-2321.3 权重向量异常分析实例
3.1 确定参数
3.2 实验结果
4 结束语