李 东 周 勇
(中国神华能源股份有限公司,北京市东城区,100011)
在全球信息化水平飞速提升的进程中,国家对煤炭企业信息化与安全生产的重视程度与日俱增,煤炭行业各级领导和工作人员的信息化意识普遍增强,煤炭企业对煤矿信息化建设投入大大增加,煤矿机械化、自动化和信息化建设不断加强,智能传感器、数字传输系统与信息系统的广泛应用使得煤矿企业积累了海量数据。与此同时,为规范煤矿生产安全事故调查处理,原国家安全生产监督管理总局、国家煤矿安监局要求各地安监机构在煤矿发生事故之后,必须由专家团队对事故进行调查,进行严密的事后分析,并形成完整的事故分析报告。综合来看,大量结构化和非结构化数据的积累为大数据方法在煤矿安全领域的应用研究奠定了基础。
当前,随着云计算、物联网技术的飞速发展,大数据已逐步渗透到绝大多数行业和领域,成为重要的生产要素,企业对于海量数据的挖掘和应用,成为企业核心竞争力的重要组成部分。如零售领域通过大数据应用实现客户360°画像,帮助企业分析客户购买行为,针对客户个性化产品推荐,并进行客户群体分析,对下一步销售策略做好预测工作;电信企业利用大数据技术加大对历史数据的分析,动态优化调整网络资源配置,大幅提高无线网络的运行效率;金融行业依靠真实、可靠、稳定、连续、海量的数据渠道,通过海量数据的分析建模,有效提升金融风险的控制能力和控制效率;交通领域在大数据和人工智能的支持下,车辆可以自动驾驶,并可以对线路自学习自优化。然而目前国内外学者对煤矿大数据应用的研究大多还集中在理论层面的应用指导,并未在煤矿实际生产过程中对煤矿数据进行采集和研究,大数据应用水平受到限制。从煤矿企业角度来讲,煤矿企业并未对煤矿生产过程中产生的海量数据进行充分挖掘和利用,煤矿对于信息系统数据的管理还是停留在垂直型单系统层面,数据信息独立保存或简单物理集中,对数据内在关联和规律的研究几乎为零,大量数据的价值未得以充分体现。对事故发生规律的认知,往往是在事故发生后,将事故报告作为事故调研的最后环节,并没有对其进行后续的挖掘和利用,没有对类似事故的相关规律进行研究,无法有效避免类似事故的重复发生。
本研究从煤矿历年的事故分析报告、事故案例等与煤矿安全生产事故相关的文档资料出发,应用大数据技术对大量事故案例进行深入挖掘,多维度、多角度分析事故发生的内在关联和规律性,并通过BP神经网络模型实现事故的预测预判,使煤矿安全生产管理模式由“事后管理”向“事前预防”转变,有效提升煤矿安全管理能力。
如同其他领域,大数据分析技术给煤矿安全领域带来了全新的解决方案。按照在其他领域大数据应用方法、经验,通常的思路是通过事故与事故发生相应时间段历史数据进行关联分析,找出事故发生时历史数据或历史数据之间变化的规律性,从而找到事故与数据的关联关系,并通过实时监控事故关联数据预防安全生产事故的发生。虽然历史上也有大量记载的煤矿安全生产事故,也有现存与事故相关的海量历史数据,如安全监测监控系统、人员定位系统等,但这些数据在煤矿安全领域是无法实现大数据分析。因为煤矿历史数据保存时限短(按照有关规定,煤矿安全监测监控系统、人员定位系统等数据只保存2年时间),历史上发生的超过历史数据保存时限的事故找不到对应的数据,而现存的历史数据相应时间段的事故数量又有限,不具备大数据分析规模,也无法形成统计规律。
图1 技术实现流程图
经过大量的深入调研,不断的实践,找到了适用于煤矿安全领域的大数据分析思路和方法。技术实现流程如图1所示。本研究的技术实现流程主要分为4个部分:
(1)收集大量煤矿事故分析报告、事故案例等与煤矿事故相关的资料,运用文本挖掘方法和Delphi专家调查法识别事故关键要素;
(2)根据事故关键要素,利用Apriori关联算法分析关键要素之间的关联关系,生成关键要素频繁项集;
(3)采集煤矿各信息化系统、自动化控制系统数据,建立与事故关键要素对应的数据指标,并对数据指标监控、预测,从源头上杜绝煤矿安全事故发生的可能性;
(4)在关键要素频繁项集的基础上,采用BP神经网络算法进行建模,通过大数据流计算框架实时预测事故发生的可能性,提出事故预警,有效提升煤矿安全管理水平。
本研究通过实地调研和互联网渠道收集3000多例事故报告,从中筛选出较为完整的包括瓦斯事故、火灾事故、水灾事故、其他类事故案例共1056例作为事故信息分析的主要数据源。其中瓦斯事故551例,占收集事故案例总数的52.2%;水灾事故183例,占17.3%;火灾事故62例,占5.9%;顶板事故57例,占5.4%;其他类事故134例,占19.2%。事故关键要素识别通过以下5个步骤实现:
(1)以通用词典为匹配词典,针对每一类事故采用ansj分词器的NLPAnalysis算法对文本采用流读取的方式进行处理,将事故案例进行分词切分,并对分词结果进行清洗,去除无效词(无文本表征意义的词)和非关键词(无事故表征意义的词),形成分类事故分词数据库。
(2)针对分词数据库进行分词共现分析,在事故案例中,多个分词同时出现可表征一个主题,同时出现的频率越高,表明所表征的主题越重要,针对分词进行二次和三次共现分析,对共现分词进行统计排序,并删除共现频率较低的分词,得到共现分词数据库。
(3)在事故案例的编写过程中,虽然有相对固定的格式和规范的专业术语,但毕竟由不同的人来编写,不同的人对同一事物或现象的描述可能会因为个人语言习惯的不同而不尽相同,描写瓦斯积聚会有“瓦斯…积聚”、“瓦斯…聚集”、“瓦斯…聚积”、“瓦斯积聚”、“瓦斯聚集”、“瓦斯聚积”等多种描述方式,因此,对同一特征的不同表述进行合并,频率累加,得到有效特征数据库。
(4)针对有效特征数据库,构建VSM向量空间模型,运用TFIDF算法计算各个特征的权值,并根据TFIDF值进行排序,去除权值低于设定值的特征,得到事故特征词典。
TFIDF算法可表述为:
式中:ti——事故特征词典中的基本特征;
dj——ti所在事故案例文本;
TF(ti,dj)——ti在事故案例集合中出现的频率;
|D|——全部事故案例的总数;
|DF(ti)|——包含特征ti的文本数;
TFIDF(ti,dj) ——事故特征的权值。
(5)在事故特征词典的基础上,运用Delphi法(专家调查法),将关键要素的关键程度分为特别关键(取值1)、极其关键(取值0.9)、比较关键(取值0.8)、稍微关键(取值0.7)、一般关键(取值0.6)、不太关键(取值0.5)、不关键(取值0.4~0)7个等级,并且经过专家讨论约定,经过多轮次专家问卷调查、归纳、统计之后,取平均权值大于0.6的作为关键要素,最终生成事故关键要素表。以瓦斯事故为例,通过如上分析得到的事故关键要素如表1。
表1 瓦斯事故关键要素
在事故关键要素识别基础上,针对煤矿现有信息化、自动化系统数据,构建事故关键要素指标,进而通过对事故关键要素指标的监控和预测实现事故关键要素的监控和预测。
以瓦斯事故为例,在煤矿现有信息化、自动化系统数据基础上建立瓦斯积聚、瓦斯浓度、地质构造、超能力生产、跑漏风、掘进停风、风量不足、生产能力、通风短路、微风作业、无风作业等事故关键要素与现有数据之间的对应关系,构建事故关键要素监控指标。采用Flume框架采集煤矿监测监控系统、人员定位系统、瓦斯抽放系统、井下自动化控制系统、束管监测系统、矿压监测系统等信息化、自动化系统的数据,通过Storm+Kafka流计算框架实现事故关键要素指标的计算、监控、预测。事故关键要素监控主要包括以下几个方面:
(1)根据瓦斯积聚、瓦斯浓度事故关键要素,构建掘进工作面瓦斯涌出量和回采工作面瓦斯涌出量数据指标。
掘进工作面瓦斯涌出量指标监控。首先通过掘进工作面回风流瓦斯浓度、回风流风速等监测数据,计算工作面以及暴露巷道瓦斯总排放量:
(2)
i=0,1,2,…n-1
式中:Q风排——掘进工作面瓦斯排放总量;
ti——时间;
S——巷道截面积;
Ci——回风流ti时刻瓦斯浓度;
v——风速。
然后根据掘进暴露巷道瓦斯涌出量计算公式:
(3)
式中:Q巷道——暴露巷道瓦斯涌出量;
a、b——常数。
最后由掘进工作面瓦斯涌出量Q工作面、掘进工作面瓦斯排放总量Q风排和暴露巷道瓦斯涌出量Q巷道之间的等量关系Q工作面=Q风排-Q巷道反推出工作面瓦斯涌出量。
由此,通过实时计算、预测掘进工作面瓦斯涌出量,实现掘进工作面瓦斯涌出量指标监控。
回采工作面瓦斯涌出量指标监控。首先通过回采工作面回风流瓦斯浓度、回风流风速等监测数据,计算回采工作面瓦斯排放总量;通过瓦斯排放流量、浓度等数据计算工作面瓦斯抽放量;然后由工作面瓦斯涌出量Q涌、工作面瓦斯抽放量Q抽和瓦斯排放量Q排之间的等量关系Q涌=Q排+Q抽反推出工作面瓦斯涌出量。回采工作面Δt(如每天)时间内瓦斯抽放量可由下式计算:
(4)
i=0,1,2,…,n-1
式中:Q抽——工作面瓦斯抽放量;
Li——瓦斯抽放流量。
回采工作面Δt时间内瓦斯排放量可由下面公式计算:
(5)
i=0,1,2,…,n-1
式中:Q排——工作面瓦斯排放量;
S断——工作面回风巷道最小断面面积;
v——工作面回风流风速。
由此,通过实时计算、预测回采工作面瓦斯涌出量Q涌,实现回采工作面瓦斯涌出量数据指标监控。
(2)根据跑漏风、风量不足、通风短路、微风作业、无风作业等事故关键要素,构建煤矿井下通风网络异常数据指标,并通过煤矿井下通风网络异常分析实现跑漏风、风量不足等事故关键要素的监控。根据监测监控系统中风速传感器的值,计算一定时间内井下风速传感器监测值的变化率:
(6)
i=0,1,2,…,n-1
式中:R——一定时间内井下风速传感器监测值的变化率;
vi——风速监测值;
v0——风速基准值,取上一天该测点平均值。
若一次计算变化率R的值趋于零,说明风速正常波动,如果大于某一设定阀值则认定为异常,并根据所定义的线路进行分析,提供可能的故障位置建议。
(3)根据掘进停风事故关键要素,构建掘进工作面停风后瓦斯浓度预测数据指标,实时监测掘进工作面对应局部通风机工作状态,当监测点局部通风机状态变为“停风”后,通过掘进暴露巷道瓦斯涌出量计算公式实时预测掘进工作面瓦斯涌出量,并根据巷道基本参数预测掘进工作面瓦斯浓度变化趋势,提供掘进工作面积聚高浓度瓦斯排放时间和排放风量建议,避免因掘进工作面瓦斯积聚或高浓度瓦斯排放造成瓦斯事故发生。
(4)根据生产能力事故关键要素,构建产量与瓦斯涌出量安全关系数据指标,通过实时计算最大容许涌出量、最大安全涌出量、工作面实时产量、工作面实时瓦斯涌出量,实时显示工作面产量与瓦斯涌出量以及最大容许涌出量、最大安全涌出量之间的关系,为生产调度提供决策依据,即保持合理生产进度和生产强度,避免安全生产事故发生。最大容许涌出量是以工作面当前涌出量为基础,计算当工作面瓦斯涌出量增加时,该工作面瓦斯排放线路所有瓦斯监测点浓度变化,直至工作面瓦斯涌出量增加Q时各监测点中至少有一个监测点的浓度接近最大允许浓度(系统定义),则工作面当前涌出量加上涌出量增加值Q即最大容许涌出量。工作面实时瓦斯涌出量参见“回采工作面瓦斯涌出量指标监控”部分计算方法。工作面实时瓦斯涌出量是通过采煤机电流、电压等参数以及煤层基本参数来计算,计算公式如下:
(7)
×Ii×k×h×ρ
式中:Q——工作面实时瓦斯涌出量;
I——采煤机电流;
k——割煤系数;
h——煤层高度;
ρ——煤比重。
在关键要素的基础上,研究关键要素之间的相互关联关系,识别事故要素的内在规律。本研究采用Apriori关联分析法 ,以所有事故关键要素作为“所有项集”,针对每一个事故案例文本,进行事故关键要素关联分析。以瓦斯事故为例,通过关联分析形成以下事故关键要素关联频繁项集:I1={掘进工作面,瓦斯鉴定,相对瓦斯涌出量,煤层厚度,绝对瓦斯涌出量,掘进停风,瓦斯积聚};I2={掘进工作面,瓦斯鉴定,相对瓦斯涌出量,煤层厚度,绝对瓦斯涌出量,串联通风,瓦斯积聚};I3={回采工作面,瓦斯鉴定,相对瓦斯涌出量,煤层厚度,绝对瓦斯涌出量,地质构造,煤层顶板,瓦斯积聚};I4={回采工作面,瓦斯鉴定,相对瓦斯涌出量,煤层厚度,绝对瓦斯涌出量,超能力生产,生产能力,瓦斯积聚};I5={回采工作面,瓦斯鉴定,相对瓦斯涌出量,煤层厚度,绝对瓦斯涌出量,主通风机停风,瓦斯积聚};I6={回采工作面,瓦斯鉴定,相对瓦斯涌出量,煤层厚度,绝对瓦斯涌出量,微风作业,无风作业,瓦斯积聚};I7={采空区,瓦斯鉴定,相对瓦斯涌出量,风流短路,跑漏风,风量不足,瓦斯积聚};I8={巷道,瓦斯鉴定, 跑漏风,风量不足,绝对瓦斯涌出量,瓦斯积聚}。
运用BP神经网络在事故关键要素频繁项集基础上进行建模,并通过实时数据预测事故发生的可能性。BP神经网络是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程,符合事故关键要素与事故之间的关系。事故预测模型的建立主要包括以下步骤:
(1)事故关键要素值计算。有些关键要素无论是在事故案例中还是历史数据中都可以找到对应的值,如生产能力、瓦斯浓度等。但有些事故关键要素,如微风作业、无风作业、风流短路等,无论在事故案例中还是历史数据中都没有被量化,因此需要定义这些关键要素的取值方法,从而实现所有事故关键要素的“数据化”,进一步建立事故关键要素与现有数据(如历史数据、实时数据)之间的对应关系,运用数学工具对事故关键要素模型化。同时,由于各关键要素取值的物理含义不同,因此存在着量纲上的差异,这种异量纲性是影响对整体评价的主要因素,指标的无量纲化处理是解决这一问题的主要手段,根据数据特点,对关键要素取值均选择直线型无量纲化方法之标准化法来进行无量纲化处理。
(2)BP网络结构设计。BP网络结构设计包括输入层设计、输出层设计、隐层设计、传递函数选取等。本文以I1频繁项集为例说明BP网络结构设计过程。根据I1事故关键要素频繁项集,分别定义输入层、输出层和隐层,选择S型正切函数tan-sigmod作为输入、输出神经元的传递函数。网络结构如图2所示。
图2 BP神经网络结构图
(3)样本数据构建。以瓦斯事故为例,将551例事故案例作为事故样本数据,从采集到的历史数据中选取10000条数据作为无事故样本数据,构建机器监督学习样本数据,并针对样本数据做无序化处理,保证训练样本和检验样本选取的随机性。
(4)模型训练。运用R语言进行BP神经网络模型训练,顺序选取70%的样本数据作为训练样本,迭代次数为50000次,期望误差小于0.0001。根据多次训练,得出输入层到隐层和隐层到输出层的权值矩阵:
W1=0.0876997100,-0.0066422071,0.0696998621,0.0078810304,0.0006207072,-0.0514464771,0.0544030602;-0.074629618,-0.103108712,-0.031073500,-0.050354069,-0.012048861,0.002357499,0.076872846;0.073716402,-0.053170112,0.080204996,-0.003348473,-0.010859949,-0.008989651,-0.005286401;0.022266238,0.001463615,-0.102531860,-0.079565374,0.033937125,-0.074391767,-0.068804029;-0.006522362,0.138096585,-0.045717480,-0.012498570,0.012444314,-0.070967471,-0.066790315;-0.041634302,0.166882523,0.212686445,0.005154012,0.082844196,-0.056083811,-0.001081871〗
W2=0.35177085,0.02448327,0.04679399,-0.73382014,-0.70519826,-0.75965318〗
(5)模型检验。顺序选取30%的样本数据作为检验样本,共3100多条数据,其中事故数据161条,无事故数据3004条。通过模型计算并与实际结构对比,无事故数据预测准确率达100%,有事故数据预测准确率达96.3%。
(6)模型自适应、学习。在BP神经网络的基础上,运用R语言与hadoop平台的接口功能,自动通过实时数据采集进行输入层(事故关键要素)取值,模型训练,实现模型的自适应、自学习功能。
本研究通过对煤矿安全事故案例等非结构化数据进行文本挖掘研究,发掘煤矿安全生产事故发生规律,识别煤矿事故关键要素以及事故关键要素之间的关联关系,并通过构建事故关键要素监控指标实现事故关键要素监控、预测,通过事故关键要素之间的关联关系建立了基于神经网络的事故预测模型,从而使煤矿安全事故管理模式由“事后管理”转变为“事前预判”,使煤矿安全事故管理技术更加科学化、精准化,管理手段更具有前瞻性。在大数据分析基础上,把机器学习算法引入到煤矿安全管理领域,将对全面提升煤矿安全生产管理整体水平具有重要意义。
掘进工作面瓦斯涌出量指标监控可以为风险预控、生产计划调整、生产进度控制等提供科学依据,如制定合理配风方案及瓦斯预防措施、调整生产进度和生产强度等,避免安全事故发生;回采工作面瓦斯涌出量指标监控可以为风险预控、生产计划制定等提供科学依据,如制定合理配风方案及瓦斯预防措施、调整生产进度和生产强度等,避免安全事故发生;掘进工作面停风后,通过对工作面浓度实时预测、预警,避免掘进工作面瓦斯超限,甚至瓦斯事故发生,并通过实时计算给出瓦斯排放合理建议(如排放时间选择、风量选择),为瓦斯排放提供科学依据。基于神经网络的事故预测模型通过系统试运行阶段的测试,预测效果比较理想。
本研究亦存在不足之处,因采集到的事故案例有限,且文本挖掘方法本身具有一定的局限性,事故要素的挖掘可能不够全面;另外,煤矿现有信息化系统的数据保存周期较短,采集到的数据有限,因此数据监控指标有限,模型应用具有一定的局限性。随着系统的不断运行,数据采集范围的逐渐扩大,事故数据和历史数据的不断积累,样本数据会更加全面,预测效果也会更加全面、准确。