张立欣,刘雨濛,贾世迎,王浩任,李明浩
(1.石家庄国有资本投资运营集团有限责任公司,河北 石家庄 050011;2.石家庄市轨道交通集团有限责任公司,河北 石家庄 050035;3.北京城建设计发展集团股份有限公司,北京 100037)
本论文分为工程案例事故大数据分析与明挖车站和盾构区间安全评价两个部分组成。
工程案例事故大数据分析基于工程事故案例历史数据,划分明挖车站和盾构区间工程事故案例数据,在此基础上,对明挖车站以及盾构区间的典型安全事故类型进行划分,利用随机森林等机器学习算法挖掘不同安全事故类型下的影响因素(基坑围护结构形式、基坑规模、周边环境、地质参数等),并结合机制知识,筛选发生安全事故的主要影响因素[1]。
明挖车站和盾构区间安全评价以明挖车站和盾构区间安全事故的主要影响因素为输入变量,明挖车站与盾构区间安全性评价等级为输出变量,基于标准化欧式距离算法,分别构建明挖车站与盾构区间安全性等级评价模型,对明挖车站与盾构区间安全性等级进行预测[2]。
安全事故影响因素分析的所需数据主要包含以下3 个方面。
(1)勘察数据。包含工程概况数据、建筑物及地下管线调查报告、详细的勘察报告数据等。
(2)设计数据。包含钻孔数据、围护结构设计方案数据、土建方案设计数据、车站主体结构主要构件尺寸数据、防水设施参数数据、隧道埋深、隧道截面设计数据等。
(3)工程事故案例数据。包含事故的大概情况、具体情况、事故发展经过、事故项目地质勘察资料的数据记录,围护结构设计数据等。
本模块针对具体的事故类型,将根据影响因素分析得到的明挖车站安全事故关键影响因素和盾构区间安全事故关键影响因素作为输入数据。
主要结构构件尺寸如表1 所示。
2.2.1 安全事故影响因素分析
输出对应安全事故类型的主要影响因素及量化指标,其次根据大数据分析算法寻找到与输入数据最接近的事故案例数据,给出经验数据中该车站可能发生的事故类型、处置过程,供用户参考。
2.2.2 安全等级评价分析
根据具体的安全评价内容,输出相应事故的预测值,事故具体类型,并根据评价标准划分,输出车站及区间的安全等级。
字段类型分别为int,float,varchar,在已给样本数据集中找到与目标样本相似度最高的样本。
针对后期要采用的算法,需要对数据进行相应的预处。
(1)可能会存在某些数据缺失的情况,对应缺失的数据统一用0 来填充。
(2)因为要进行数据计算,varchar 字符串字段需要进行数字转化,例如,岩土名称可以建立对应的映射表转化{“缺失”:0,“A 岩土”:1,B 岩土:2}。
将对应的岩土名称转换成int 类型数据以供后续数据处理。
(3)针对int,float 数据进行数据标准化,将各维数据的分布统一化,避免因为数据分布的不同影响算法的结果,标准化的过程如下。
m:数据的均值。
s:数据的标准差。
X:需要标准的数据。
X*:标准化过后的数据。
标准化公式如式(1)所示。
标准化后的值=(标准化前的值-字段数据的均值)/字段数据的标准差。
样本数据集大约有100 条数据,目的是从这100 条数据中找到与目标数据最相近的样本,可以通过回归算法来计算数值来选取数值最详尽的样本,可以通过聚类算法来通过样本分类来找到与之相近的数据,但是这些常规的机器学习算法对于100 条数据来说可能没有能力完成参数学习,所以这里推荐使用相似度计算方式,协同过滤的方式直接寻找与目标数据相近的数据。
(1)余弦距离。将样本视为不同的向量,通过向量的余弦计算来选取最相似。
(2)欧式距离。计算样本在欧式空间中的距离计算。
(3)曼哈顿距离。计算样本的城市街区距离计算。
(4)切比雪夫距离。计算样本的数值差的绝对值计算。
(5)马氏距离。量纲无关的欧式空间距离计算。
(6)皮尔逊相关度。余弦相似度在维度值缺失情况下的一种改进计算。
(7)标准化欧式距离。标准化过后的欧式空间距离计算。
在上一步的数据标准化处理后进行计算。
视样本为n 维向量(n 为样本字段数:91)。
xij:i 代表第i 个样本;j 代表第j 个字段变量。
两个n 维向量a(x11,x12,…,x1n)与b(x21,x22,…,x2n)间的标准化欧氏距离的公式如式(2)所示。
式中:d12——样本1 与样本2 之间的距离,后续记为d1:2。
现有100 个样本数据集,与一个目标样本。
通过数据处理后的标准化数据,将这100 个样本数据集和1 个目标样本转化为向量分别两两计算标准化欧式距离,目标样本为101,求出来的结果如下。
d_array=[d101:1,d101:2,d101:3,d101:4,…d101:n,…d101:100]。
为避免距离最小结果只取一个可能会导致由于数据同一字段的差值又不同字段相似来弥补造成的误差,所以建议最后取3 个与目标函数距离最近的样本。
Min(d_array,3)。
取d_array 中距离最小的3 个样本,为我们需要的与目标样本最近的样本。
选用标准化欧式距离的原因主要是因为我们的目的是在一个多维空间中找到一个与目标样本距离最近,相似度最高的样本,但是由于不同维度的数据可能存在不同的分布如果某一个维度的数据取值很大,那么结果很可能就被这个维度的数据所决定,所以需要解决不同维度数据分布的问题,针对这个问题选择使用标准化的欧式距离,在进行标准化过后的数据满足数学期望为0,方差为1,这样各个维度的数据相当于有了相同的数据分布,那么在多维空间中,每个维度对于距离的贡献度就变成了一致的,不会受某几个维度产生过大的干扰,标准化欧氏距离也称为加权欧氏距离(weighted euclidean distance),也可以理解为是在欧式距离上的一种加权算法,区别在于这个加权值是通过数据本身的特性计算出来的。
余弦距离:主要是为了考虑维度的相同趋势的相似度计算,但是在安全分析数据需求中我们针对单一维度的数据是相似的,不存在数据整体上浮和整体下浮,我们想要的只是多维空间中距离最近的样本。
(1)欧式距离。容易被少数大数值的维度所影响。
(2)曼哈顿距离。计算样本的非直接距离,在目前需求中我们只需要考虑直接距离。
(3)切比雪夫距离。计算样本的数值差的绝对值计算。
(4)马氏距离。在协方差矩阵是对角阵的情况下就是标准化欧氏距离,考虑计算复杂度,没有必要使用。
(5)皮尔逊相关度。余弦相似度在维度值缺失情况下的一种改进计算,主要作用于余弦距离相似。
(6)聚类算法。通常是一类数据的聚合,针对单一数据相似计算与上述距离算法类似,基于需求选取此算法并不合适,并且由于样本数据集数据量问题,可能没有很好的效果表现。
(7)其余机器学习算法。不符合需求,且由于数据量问题可能没有办法充分学习参数,影响结果表现[3]。
数据集datas=[X1,X2,X3……X100]
目标数据target=X101。
映射集dict1={“A 名称”:1,“B 名称”:2}。
距离结果集d_array=(100)[float]长度为100 的浮点距离结果集。
标准化函数normal_function(column_data)参数为对应字段所有的数据。
标准化欧式距离计算函数distance_function(data1,data2)参数为待求距离的两个样本数据。
最小值函数min(d_array,n)参数1 为距离结果集,参数2 为number 为从小到大排序前n 个值。
Step1:
for data in datas: #对现有数据进行循环计算
for column in data: #对每条数据的每个字段进行循环计算
If data[column]is null:#对空值进行处理
data[column]= 0
If data[column].type is varchar:
data[column]= dict1.get(data[column]) # 根据字符串字段值转换为对应int
Step2:
for data in datas: #对现有数据进行循环计算
for column in data: #对每条数据的每个字段进行循环计算
data[column]= normal_function(datascolumns)#对样本的对应字段标准化计算
Step3:
for data in datas:
distance = distance_function(data,target)
d_array += distance
Step4:
data1,data2,data3 = min(d_array,3)
data1,data2,data3 为需求结果
安全性评价可视化界面包含3 部分:①安全事故影响因素分析。②事故预警分析。③安全等级评价分析。
安全事故影响因素分析可视化实施主函数为Influence_Factor_Analysis,该函数主要利用随机森林算法对安全事故进行影响因素分析,得到造成安全事故的关键因素,并确定其关键影响指标和权重排序。最终可视化输出为不同类型安全事故的关键影响因素以及关键因素的影响指标和权重[4]。
安全事故预警分析可视化实施主函数为Accident_Warning_Analysis,该函数主要利用支持向量机算法对安全事故进行预警分析,得到某一类型安全事故发生的概率,并确定该类型安全事故发生与否。最终可视化输出为不同类型安全事故的发生概率。
安全性等级评价分析可视化实施主函数为Security_Level_Assessment,该函数主要利用XGBoost 算法对车站和区间变形量进行预测分析,并根据变形安全性标准将变形量划分为若干个安全性等级,得到车站和区间预测变形量对应的安全性等级。最终可视化输出为明挖车站和盾构区间的安全性等级[5]。
通过BIM 数据集成平台,以单位工程(车站或区间)的数据ID 关联模型,进行定位展示。
在对样本数据进行了空值处理,字符串转化,标准化过后,通过选取与目标样本标准化距离最小的3 个样本为最终结果。
后续可根据样本数量的增加可以选择相应的回归算法进行相似度计算,并且由于字段过多可以进行pca 降维对数据进行预处理,来对线性相关的维度进行降维处理,减少计算复杂度,避免数据维度相关的影响。