基于熵权TOPSIS模型的水上交通风险评价软件设计

江福才+王晨+张帆+马全党+邹红兵
DOI:10.13340/j.jsmu.2017.03.006
文章编号:1672-9498(2017)03003106
摘要:为对不同类型的水上交通风险对象进行准确而高效的评价,综合考虑现有风险评价方法及软件的优劣,基于熵权TOPSIS模型,開发一种水上交通风险评价软件。通过分析风险评价软件设计需求,对软件功能进行总体设计和详细设计,将软件分为数据输入、数据计算和数据输出3个模块。数据处理程序由Visual C++6.0语言实现,软件界面通过MFC框架设计。为验证软件的基本功能和评价结果的有效性,对软件进行集成测试和验收测试。结果表明,基于熵权TOPSIS模型的水上交通风险评价软件功能正常、操作简便、准确性好,具有较强的实用性。
关键词:
水上交通; 风险评价; 熵权; TOPSIS; 软件设计
中图分类号: U698.6
文献标志码: A
Risk evaluation software design for waterway transportation
based on entropyweight TOPSIS model
JIANG Fucai, WANG Chen, ZHANG Fan, MA Quandang, ZOU Hongbing

a. School of Navigation; b. Hubei Key Laboratory of Inland Shipping Technology, Wuhan
University of Technology, Wuhan 430063, China)
Abstract:
To evaluate the risk of different objects in waterway transportation area, considering the advantages and disadvantages of the existing risk evaluation methods and softwares comprehensively, the risk evaluation software based on entropyweight TOPSIS model is developed. By analyzing the design demand of risk evaluation software, the overall design and detailed design of the software function are given, and the system of software consists of three modules, data input, data calculation and data output. The data handling program is realized by Visual C++ 6.0 language and the software interface is designed with the help of MFC framework. To verify the basic function and the evaluation result of the software, the integration testing and acceptance test are implemented. The result shows that the risk evaluation software for waterway transportation based on entropyweight TOPSIS model is of normal function, simple operation, high accuracy and strong practicability.
Key words:
waterway transportation; risk evaluation; entropyweight; TOPSIS; software design
0引言
随着海上和内河航运业的迅速发展,港口水工建筑物的数量不断增加。这在促进港口经济发展的同时,也对水上交通安全带来一定的影响。因此,科学地分析水上交通形势以及水工建筑物建设对水域通航环境的影响,进而有针对性地采取风险缓解措施,是当前水上交通安全领域亟待解决的问题。
根据交通运输部《中华人民共和国水上水下活动通航安全管理规定》(交通运输部令2016年第69号)[1]规定,水工建筑物建设或者水上水下活动对通航安全可能造成重大影响,建设单位或主办单位应当在申请海事管理机构水上水下活动许可之前进行通航安全评估。
水上交通风险评价是通航安全评估的重要组成部分。风险评价方法可分为定性评价方法、定量评价方法和综合评价方法,其中定性评价方法主要有专家调查法、核对表法、SWOT分析等,定量评价方法主要有概率评价法、数学模型评价法、安全指数评价法等,综合评价方法主要有综合安全评价、模糊综合评价、数据包络分析、人工神经网络等。
1软件设计需求分析
随着计算机及信息化技术的发展,许多学者进行了风险评价软件的研究和设计,但软件的设计多基于综合评价方法,评价效率不高,如:吴宗之[2]简要介绍了国外风险评价软件的主要类型及SAFETI,WHAZAN,EFFECTS,RISKCURVES等软件的特点和应用情况,提出了在风险评价软件设计中要加强人的可靠性数据库、元件失效数据库以及事故后果模型研究的建议;吴炎等[34]分别基于层次分析法和模糊综合评价方法,开发了AHP评价软件和FCE评价软件,并以风险投资项目决策和企业质量经济效益评价为例,对软件进行了验证;宁航宇[5]结合国内外安全评价项目管理软件和计算机自动安全评价软件的优势,基于HAZOP模型,配合各类辅助分析工具,设计了一种风险评价平台。
有关水上交通风险评价软件设计的研究相对较少,且多处于理论阶段,普适性和可移植性较差,如:严新平等[6]在系统分析风险评价软件的基础上,借鉴各软件的优点,进行了海事风险评价软件的核心功能框架设计,并通过案例说明了软件的预期功能;郭彦斌[7]为分析受限水域平台拖带通航风险,基于云模型构建了受限水域钻井平台拖带作业风险评价模型,并利用 MATLAB 编制了风险评价软件;杨冬伟[8]在邮船进出海港通航安全风险评价研究中,分别建立了邮船航行通航宽度计算模型、富余水深计算模型和风险评价模型,并通过MATLAB进行了软件设计。
考虑到风险评价的准确性和高效性,本文在现有评价软件的基础上,分析各类评价方法的优劣,拟基于逼近理想解排序法(Technique for Order Preference by Similarity to Ideal Solution, TOPSIS)理论,采用熵权法确定评价对象指标权重,开发基于熵权TOPSIS模型的风险评价软件,用于水上水下活动通航安全风险评价,为船舶航行安全和海事部门管理决策提供理论参考与支持。
风险评价软件通过Visual C++6.0语言编程实现,软件界面通过MFC框架设计,在Windows系统上运行。熵权TOPSIS模型较为简单,且主要基于数据处理进行风险评价,而C++语言是面向对象编程的主流语言,运行效率较高,可有效完成软件的设计与开发工作。
2软件功能设计
2.1总体设计
风险评价软件包括数据输入模块、数据计算模块和数据输出模块等3部分,可对包括航道、码头等水工建筑物建设和平台拖航、船舶引航等水上交通行为在内的各类水上水下活动进行评价。使用者根据评价对象的类型,选择相应的可以正确反映出待评价对象风险特征的指标建立指标体系,并将指标量化值输入软件,即可得到待评价对象风险的大小。根据风险评价结果,可提出相应的缓解措施,降低风险程度。风险评价软件应用流程见图1。
2.2详细设计
2.2.1数据输入模块
数据输入模块为软件输入面板,见图2。输入模块主体为评价对象指标值输入区域,综合考虑软件各种使用模式,软件拟设计A,B,C,D,E,F共6个评价对象,可同时对至多6个对象进行相对风险评价,并能对1个对象进行绝对风险评价;每个评价对象设置20个评价指标,可建立至多20个指标的风险评价指标体系。
在评价之前,首先根据需要确定评价对象类型,并建立能切实反映评价对象风险特征的指标体系。其次,选择评价对象并确定评价对象指标值,将其输入软件。对于正向风险指标,即数值越大风险越大
的指标,按数据原值进行输入;对于反向风险指标,即数值越小风险越大的指标,按数值相反数输入。
此外,软件输入面板拟设计3组功能按钮,“计算”按钮、“初始化”按钮和“评价对象”按钮。“计算”按钮用于进行数据检测及数据计算,“初始化”按钮用于清除评价对象指标值输入区域的所有数据,“评价对象”按钮用于清除某个评价对象指标数据。
2.2.2数据计算模块
数据计算模块主要进行数据检测及数据计算,通过功能按钮“计算”实现。
数据检测包括3类:①检测评价对象指标值输入区域有无数据;②检测各评价对象输入指标个数是否相等;③检测评价对象输入指标值是否为有理实数。如果数据检测结果为“否”,则弹出错误提示框,并返回软件输入面板。
数据计算通过熵权TOPSIS模型实现,求解步骤详见软件数据处理模型。
2.2.3数据输出模块
数据输出模块为软件输出面板,见图3。当数据输入无误时,点击软件输入面板的“计算”按钮,就会弹出软件输出面板,显示熵权TOPSIS模型评价结果,即各评价对象风险贴近度。风险贴近度越大说明该评价对象相比于其他评价对象风险越大;若某评价对象风险贴近度位于某两个评价对象之间,则说明其风险也位于上述两个评价对象的风险之间。
算得结果后,点击右上角關闭按钮,可关闭软件输出面板。
3软件数据处理模型
TOPSIS是一种通过计算有限个评价对象与理想化目标的接近程度并进行排序,以在现有对象中进行相对优劣评价的方法。
评价指标通过熵权法确定权重。按照信息论基本原理的解释,熵是系统无序程度的一个度量,信息是系统有序程度的一个度量。在风险评价的多个对象中,某个对象的某个指标信息熵越小,说明该指标提供的信息量越大,在综合评价中所起的作用越大,权重越高。
熵权TOPSIS模型求解可分为建立风险矩阵、确定指标权重、计算风险值等3个步骤[9]。
3.1建立风险矩阵
设有
m个评价对象,n个评价指标, xij表示第i个评价对象第j个评价指标的取值,可得风险判断矩阵
[WTHX]A[WTBX]=(xij)m×n(1)
评价指标一般具有不同的量纲和单位,因此需要对评价指标进行量纲归一化处理,计算公式为
bij=(xij-mini
xij)/(maxi
xij-mini xij)
(2)
在对指标进行量纲归一化之前,需要进行同趋势化处理,将反向指标值按相反数输入公式进行计算。经过对风险判断矩阵的同趋势化和量纲归一化处理后,可得标准风险判断矩阵
[WTHX]B[WTBX]=(bij)m×n(3)
3.2确定指标权重
首先定义各评价指标的熵。设
fij=(bij+1)mi=1(bij+1),
i=1,2,…,m; j =1,2,…,n
(4)
可得各评价指标的熵为
Hj=-1ln
mmi=1
(fijln fij)
(5)
其次,计算各评价指标的熵权:
ωj=(1-Hj)n-nj=1Hj,nj=1ωj=1
(6)
由此得到权重向量
[WTHX]W[WTBX]=(ωj)T, j =1,2,…,n
(7)
标准风险判断矩阵与权重向量相乘可得到加权标准风险判断矩阵
[WTHX]R[WTBX]
[WTHX]R[WTBX]=(ωj·bij)m×n
(8)
令rij=ωj·bij,则
[WTHX]R[WTBX]可表示为
[WTHX]R[WTBX]=(rij)m×n(9)
3.3计算风险值
设最
大风险集为S*,最小风险集为S0,则
S*=(r*jj=1,2,…,n)=
(maxi
rijj=1,2,…,n)
(10)
S0=(r0jj=1,2,…,n)=
(mini
rijj=1,2,…,n)
(11)
各评价对象的指标评价值向量与最大风险集的距离和最小风险集的距离可分别表示为
D*i=nj=1rij-r*jq1/q
(12)
D0i=nj=1rij-r0jq1/q
(13)
式中q可根据实际问题确定,一般选择欧氏距离q=2。
最后,计算各评价对象的指标评价值向量与最大风险集的贴近度Fi,并通过对Fi排序来确定各评价对象风险的大小。
Fi=D0i/(D*i+D0i), i=1,2,…,m
(14)
4软件测试
软件设计完成后需要对软件进行测试[10],考虑到本软件的设计主要为水上交通风险评价服务,因此软件测试可分为集成测试和验收测试。集成测试基于渐增式测试理论,通过白盒测试技术实现,重点测试软件的基本功能;验收测试基于Alpha测试理论,通过黑盒测试技术实现,主要测试软件的有效性和实用性。
4.1集成测试
4.1.1功能按钮测试
打开软件输入面板,点击右上角关闭按钮,软件输入面板正常关闭。
随机输入若干评价对象、等数量指标值,点击某“评价对象”按钮,该对象指标数据清零;点击“初始化”按钮,所有评价对象指标数据清零。
随机输入若干评价对象、等数量指标值,点击“计算”按钮,弹出软件输出面板,显示软件计算结果。
点击软件输出面板右上角的关闭按钮,软件输出面板正常关闭。
4.1.2数据检测测试
①无指标数据输入测试。
在软件输入面板的评价对象指标值输入区域不输入数据时,点击“计算”按钮,弹出错误提示框,显示“未检测到评价指标数据,无法进行计算!”。
点击错误提示框的“确认”按钮,错误提示框关闭,返回软件输入面板。
②输入指标个数不等测试。
在软件输入面板的评价对象指标值输入区域输入不等量评价指标值时,点击“计算”按钮,弹出错误提示框,显示“评价指标数量不等,无法进行计算!”。
点击错误提示框右上角的关闭按钮,错误提示框关闭,返回软件输入面板。
③输入指标数据非有理实数测试。
在软件输入面板的评价对象指标值输入区域的数据存在非有理实数时,点击“计算”按钮,弹出错误提示框,显示“评价指标数据存在异常值,无法进行计算!”。
4.2验收测试
验收测试也称为确认测试,主要目的是验证软件的有效性。为进行验收测试,拟从现有水上交通风险评价研究文献中选取评价对象、指标体系和指标值,针对多个评价对象和单一评價对象的情况,分别使用熵权TOPSIS模型软件进行评价,对比原结果与软件计算结果,以对软件评价结果的准确性进行测试。
4.2.1多对象评价实例
吴定勇等[11]为确定不同航道的安全程度,建立了定量评价航道水域通航环境风险的熵权物元模型,并选取5条航道作为实例,进行了评价。本文决定选取该文献中的评价对象、评价指标体系和指标值,对熵权TOPSIS模型软件进行多对象风险评价的准确性验证。
将待评价对象
A,B,C,D,E的评价指标值输入软件,其中离航道最近的碍航物与航道的距离C7,导助航设施完善率C11和VTS覆盖率C12为反向风险指标,故输入时以相反数输入;点击“计算”按钮,弹出风险贴近度计算结果,见图4。
航道A,B,C,D,E风险贴近度的输出结果
分别
为0.462 284,0.640 433,0.329 654,0.455 361,0.314 055,得到5条航道通航风险状况为BADCE,与原文通过熵权物元模型评价的结果一致。
4.2.2单对象评价实例
周品江等[12]为确
保LNG码头的安全,对影响LNG码头安全的因素进行了辨识,建立了评价指标体系,通过熵权云模型处理风险评价中评价指标的随机性和模糊性,并减少各评价指标权重分配中主观因素的影响,最后以海南LNG码头为例,进行了实例应用。本文选取该文献中的评价对象、评价标准、评价指标体系和指标值,对熵权TOPSIS模型软件进行单对象风险评价的准确性验证。
将风险评价等级标准中各等级下限值作为虚拟评价对象指标值,代表各风险等级,与待评价LNG码头评价指标值一同输入软件,由于其指标均为反向风险指标,故输入时均以相反数输入;点击“计
算”按钮,弹出风险贴近度计算结果,见图5。
根据风险贴近度输出结果,待评价LNG码头风险贴近度为0.070 456,处于“比较安全”风险等级下限0.116 347与“安全”风险等级下限0.012 400
之间,且更偏向于“比较安全”风险等级下限,属“比较安全”,与原文利用熵权云模型得到的评价结果一致。
5结束语
为对水上水下活动的通航安全进行评价,综合考虑现有风险评价方法和软件的优劣,开发了基于熵权TOPSIS模型的水上交通风险评价软件。通过分析水上交通风险评价软件需求,对软件功能进行了设计,基于Visual C++6.0语言编写了数据处理程序,基于MFC框架设计了软件界面,最后对软件进行了集成测试和验收测试,验证了软件的实用性和准确性。
在软件中,通过熵权法确定评价指标权重。熵权法是风险评价领域较为常用的方法,但在实际应用中,可能会受异常值干扰。因此,如何在软件的数据处理模型中对权重的计算方法进行改进,保证评价对象指标权重的精确,是后续的研究工作之一。
参考文献:
[1]
交通运输部. 交通运输部关于修改《中华人民共和国水上水下活动通航安全管理规定》的决定(交通运输部令2016年第69号)[EB/OL]. (20160920)[20170214].http://zizhan.mot.gov.cn/zfxxgk/bnssj/zcfgs/201609/t20160920_2090162.html.
[2]吴宗之. 国外危险评价软件研究进展[J]. 劳动保护科学技术, 1994, 14(3): 2429.
[3]吴炎, 杜栋. AHP评价软件设计与实证研究[J]. 计算机系统应用, 2008(11): 3539.
[4]吴炎, 王周文, 杜栋. 模糊综合评价软件设计与实证[J]. 计算机系统应用, 2011, 20(4): 6468.
[5]宁航宇. 安全评价工程软件的研究与开发[D]. 西安: 西安电子科技大学, 2011.
[6]严新平, 张金奋, 张笛, 等. 海事风险评价软件功能框架设计[J]. 中国航海, 2016, 39(4): 5660.
[7]郭彦斌. 受限水域大型钻井平台拖带通航安全关键技术研究[D]. 武汉: 武汉理工大学, 2016.
[8]杨冬伟. 基于云模型的邮轮进出海港通航安全风险评价研究[D]. 武汉: 武汉理工大学, 2016.
[9]王晨, 江福才, 马全党. 基于熵权TOPSIS模型的航道引航环境风险评价[J]. 安全与环境学报, 2016, 16(3): 3337. DOI:10.13637/j.issn.10096094.2016.03.007.
[10]王谦. 基于评价软件测试的有效性问题研究[J]. 计算机光盘软件与应用, 2012(4): 182183.
[11]吴定勇, 文元桥. 航道通航风险评价的熵权物元模型[J]. 武漢理工大学学报(交通科学与工程版), 2014, 38(5): 11581162. DOI:10.3963/j.issn.20953844.2014.05.047.
[12]周品江, 江福才, 马全党. 基于熵权云模型的LNG码头安全评价[J]. 安全与环境学报, 2016, 16(2): 6164. DOI: 10.13637/j.issn.10096094.2016.02.012.
(编辑贾裙平)