本发明属于土木工程结构健康监测与机器学习技术交叉领域,是一种土木工程结构健康监测智能化技术。
背景技术:
大型土木工程结构在服役期间会不可避免地老化而出现病症。这些病症严重影响了土木结构的正常运行,甚至对人身安全构成威胁。因此保证土木结构的稳定性对国家而言至关重要。在过去的几年中,结构健康监测已发展成为一种用于维持结构稳定性的通用技术。有效的监测数据为力学行为分析和进一步的性能预测提供了必要的基础。为了收集准确的监测数据,许多学者致力于新型传感器的研究和监测方案的优化。
然而,现有的技术条件无法对结构进行全面监控。当前大多数监测部分和监测点都是根据经验和半经验方法确定的。特别是对于复杂地下环境中的建筑,在没有监测点的位置可能会发生许多紧急情况。因此,利用优化的监测方案和有限的监测点对整个结构的力学行为进行分析具有重要意义。
由于结构力学行为分析对于保持结构稳定性有重要意义,许多研究者一直致力于使用经典理论力学进行研究。由于解法困难,近年来,逐渐被以有限元法,离散元法及其扩展方法为代表的数值模拟方法取代。通过将实际边界条件应用于已开发的模型,可以通过数值模拟结果反映结构的敏感和危险位置。但是,边界条件的变化对结构性能具有重大影响。在恶劣的环境下,结构易于遭受不可预测的紧急情况的干扰,这使得根据原始边界条件计算出的力学分析无效。急需一种能够适应复杂边界条件的先进方法。近年来,随着计算机科学的飞速发展,机器学习方法已广泛应用于日常生活中,包括交通规划,医学研究,金融领域等。从大量的数据中抽取结构变化特征已经成为当下研究的趋势。与上述领域的普及相比,机器学习在土木工程中的应用相对有限。
技术实现要素:
本发明技术解决问题:针对隧道结构健康监测领域传感器布设位置依靠经验与半经验的方法、布设数量较少而导致的监测范围受限的问题。本发明提出一种将隧道监测断面受力特征与数据驱动方法结合的方法。该方法在现有监测数据的基础上,结合实际监测环境受力特性,运用机器学习方法,实现全断面受力感知,为后续隧道结构性态分析提供参考。
本发明将断面划分为有限区域,使用水土分算的方法分析断面受力特征,然后使用基于非负矩阵分解的方法,在现有监测数据的基础上融入断面受力特征,实现全断面的受力感知。
本发明的技术方案为:一种隧道结构健康监测系统的全断面受力感知方法,包括如下步骤:
步骤一、在隧道中部署的监测断面,断面中存在周期性采样的传感器阵列,监测内容包括应力、应变、水压、温度、土压、渗压,利用传感器阵列检测和识别隧道结构的损伤和性态变化;
步骤二、将断面受力特征融入进数据驱动方法;所述数据驱动方法是指将由部署在隧道结构健康监测系统采集到的传感器数据组织成信息,然后将相关信息进行整合和提炼,在数据的基础上经过训练和拟合形成回归模型;所述断面受力特征是指:采用水土分算的方法计算作用在断面上的载荷后分析得到的断面受力分布特征。
步骤三、在隧道结构健康监测系统上实现全断面受力感知,在传感器数据的基础上,使用全断面受力感知方法推演得到整个断面的受力状况,包括那些没有布设传感器的区域。
进一步的,所述步骤二将结构受力特征融入进数据驱动方法具体包括:
步骤1.1:记录一个断面的传感器数值,采用人工判别的方法将不合理的值去除,保留合理的数据。
步骤1.2:将断面进行划分,从内向外划分为m层,每层平均n个区域,则断面一共被划分成了m×n个区域,布设了传感器的区域有对应的监测值;
步骤1.3:将划分后的断面从拱顶顺时针展开,得到一个m×n的数据矩阵x;断面上的区域使用矩阵中的上下标表示;
步骤1.4:使用水土分算的方法,带入断面周边的上覆土压力,地层抗力,侧部土压力,重力以及浮力,分析得到断面的受力特征。
进一步的,所述步骤三全断面受力感知方法实现步骤为:
步骤2.1:将数据矩阵通过非负矩阵分解的方法分解为两个矩阵u、v,两个矩阵的形状分别为m×h和h×n;在传统非负矩阵分解损失函数的基础上加入断面受力特征,体现为加入相邻区域受力相似的约束项,加入对称区域受力相似的约束项,得到构造的损失函数;
步骤2.2:为调节损失函数中的超参数,将数据划分为训练集和验证集;
步骤2.3:模型在训练集上训练,并在验证集上验证模型的预测效果;不断更改模型超参数,使得模型在验证集上有最好的表现;选取此时的模型参数作为最终的模型参数;
步骤2.4:使用最优的模型参数训练出两个分解的矩阵,两个矩阵相乘后可得到一个没有缺失值的矩阵,此矩阵即为全断面受力矩阵。
进一步的,所述步骤1.2中,将断面结构从内向外划分为m层,每层平均n个区域,则断面一共被划分成了m×n个区域,从拱顶的位置将划分好的断面顺时针展开得到一个m×n的矩阵x,将原有的圆形隧道断面上的区域与矩阵上的位置一一对应,并将传感器的数值填充到传感器所在区域对应的矩阵上的位置,则得到一个稀疏的数据矩阵,矩阵中非空的值对应相应区域的传感器的监测数值,空白的值即代表该位置对应的断面区域没有布设传感器,需要去填补以实现全断面受力感知。
进一步的,所述步骤2中,构造的损失函数,包括在传统非负矩阵分解损失函数的基础上加入两个正则约束项;第一个正则约束项考虑了断面上相邻点受力相似的特征,同时由力学公式指导两者相似的程度;在力学公式中两个区域的值越相近,qm,n变大,与λ1结合后动态增大约束项的参数,使其在矩阵分解的过程中表现地越相似,反之,力学公式中两个区域的值相差越大,则动态减小约束项的参数,使其在矩阵分解的过程中表现的越不相似;第二个约束项考虑了断面上对称点受力相似的特征;将两个正则项加入传统矩阵分解的损失函数中得到一个新的损失函数,通过训练该损失函数,最终得到两个分解的矩阵,连两个分解的矩阵相乘后得到一个没有空白值的矩阵,该矩阵的每个单元值表示对应的断面区域的受力值,以此实现全断面受力感知。
有益效果:
本发明的一种面向隧道结构健康监测系统的全断面受力感知方法,针对现有隧道断面中传感器布设位置依靠经验与半经验的方法、布设数量较少而导致的监测范围受限进行全断面填补,以获取全断面受力状况。
本发明通过断面结构探索与利用首先将断面监测数据中不合理的值排除,然后对断面结构进行划分并将其转为矩阵的形式,有监测数据的位置在矩阵中相应的位置上有非空的值,最后分析断面外荷载分布特性,得到断面受力特征。
本发明基于数据驱动方法的全断面受力感知将断面受力特征融入进机器学习模型中,通过训练模型填补数据矩阵,从而实现全断面受力感知。在隧道结构健康监测系统中,此方法可以能够准确感知整个断面受力状况,从而提供更多受力信息,高效监测隧道断面。
附图说明
图1为本发明断面结构探索与利用的流程图;
图2为本发明全断面受力感知的流程图;
图3为本发明整个系统的整体流程图;
图4为本发明断面划分示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅为本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域的普通技术人员在不付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。
本发明适用于隧道结构健康监测系统的监测断面全局受力感知,在现有监测数据的基础上,将断面受力特征与数据驱动方法结合,该方法可以捕获结构特性,最大限度地利用少量的监测数据对整个断面的受力状况进行合乎规则的推演,实现全断面受力感知。
本方法基于土木工程力学分析、计算机科学和机器学习算法,实施需要一定力学、编程和机器学习基础,本方法基于python编程语言和开源机器学习库tensorflow实现。
在图1的断面结构探索与利用的流程中,第一步使用人工排除与其他传感器相差数十倍的非正常值。组织为数据矩阵的过程中,在实际的编程环境中使用对应的数据结构存储数据矩阵,水土分算分析在断面上的载荷的过程中,带入实际地层结构及力学参数,得到实际地质条件下力学分布特征。
图1所示为断面结构探索与利用的流程:一个断面上均匀分布的传感器会周期性地采集数据,然而由于传感器可能受到自身与周围环境的影响导致采集的数据不符合常理,所以需要人工筛选数据,保留符合常理的数据。同时考虑到隧道断面是一个相干受力体,不仅传感器记录的数据并且全断面受力感知的数据都需要用一个可处理的格式进行存储,所以需要重构隧道断面模型。本发明将断面从内向外划分为m层,每层平均n个区域,则断面一共被划分成了m×n个区域,划分示意图如图4所示。从拱顶的位置将划分好的断面模型顺时针展开得到一个m×n的数据矩阵x。将原有的圆形隧道断面上的区域与矩阵模型上的位置一一对应,并将传感器的数值填充到传感器所在区域对应的矩阵上的位置,则得到一个稀疏的数据矩阵。矩阵中非空的值对应相应区域的传感器的监测数值,空白的值即代表该位置对应的断面区域没有布设传感器,需要去填补以实现全断面受力感知。对于复杂条件下的隧道结构,仅使用数据驱动而不考虑现实边界条件是不合理的,考虑到隧道是一个水下盾构建筑,采用水土分算的方法计算作用在结构上的土压力、地层抗力、重力以及浮力,得到断面受力分布特性代入具体参数可以得到具体的力学计算公式,具体表示为:
断面上半圆:fτ=3.7*(50-r*sinθ)*sinθ-924.528*cosθ
断面下半圆:fτ=3.7*(50-r*sinθ)*sinθ 626.088*cosθ
其中fτ表示一个点的切向应力,与实际监测指标相对应,r表示该点的圆心距,θ表示该点在竖直方向与切向的夹角。
图2所示为基于数据驱动模型的全断面受力感知的流程:传统的非负矩阵分解通过最小化原矩阵与分解后两个矩阵相乘的差来最大限度地利用原矩阵中的信息。加入结构受力特征的非负矩阵分解能够让结果符合断面结构特点。传统非负矩阵可表示为:
其中e(u,v)表示损失函数,a表示矩阵中非空单元的下标集合,(i,j)是a的子集,x∈rm×n表示原数据矩阵,m、n为矩阵行列数目;u∈rm×h,v∈rh×n分别表示分解得到的两个矩阵,并且h<<min(m,n),ui,:表示矩阵u的第i行,
其中qm,n的计算带入了力学公式,max表示最大的一个数,min表示最小的一个数,qm,n用来表示相邻两点之间受力的相似程度,它的取值范围被限制在了(0,1)。当相邻两个点在力学公式上的值越相近时,qm,n的值就会相应变大,说明两者受力情况越相似;反之,相邻两个点在力学公式上的值相差较远时,说明两个点的受力情况不相似,qm,n的值就会相应变小。λ1与λ2是两个超参数,用来控制两个约束项的权重。
本发明构造的损失函数是在传统非负矩阵分解损失函数的基础上加入两个正则约束项。第一个正则约束项考虑了断面上相邻点受力相似的特征,同时由力学公式指导两者相似的程度。在力学公式中两个区域的值越相近,qm,n变大,与λ1结合后动态增大约束项的参数,使其在矩阵分解的过程中表现地越相似,反之,力学公式中两个区域的值相差越大,则动态减小约束项的参数,使其在矩阵分解的过程中表现的越不相似。第二个约束项考虑了断面上对称点受力相似的特征。将两个正则项加入传统矩阵分解的损失函数中得到一个新的损失函数。通过训练该损失函数,最终得到两个分解的矩阵。将两个矩阵相乘后得到一个没有空白值的矩阵,该矩阵的每个单元值表示对应的断面区域的受力值,以此实现全断面受力感知。
在图2所示的基于数据驱动模型的全断面受力感知流程中,构建了两个约束项,在这两个约束项中带入了力学分布特征,使得最终的结果更加符合隧道结构特点。为了验证本方法在全断面受力感知的准确度,我们在现实工程背景中选取了一个监测断面,经过筛选,选取了其中15个应力传感器的数据用作实验,传感器布设时分为了内侧传感器和外侧传感器,为了进一步利用有限的监测数据,使用内外侧传感器数值的平均值来表示中间侧传感器的数值,与之对应的将该断面划分为了3层,每层50个区域,再将现有传感器的数据填入得到一个3*50的数据矩阵。代入结构实际载荷得到结构现实条件下的应力分布特征。在数据矩阵的基础上训练构造的损失函数,可以得到两个分解的矩阵。分解的两个矩阵相乘后就可得到没有空白值的矩阵,实现整个断面的受力感知。在数据集构造方面,每次选取一个点的监测数据作为测试集,三个点的监测数据作为验证集,其他剩余点的监测数据作为训练集,选取在验证集上有最好一组表现的超参数作为模型最终的参数,再在测试集上对效果进行评估。经过多次独立实验,该方法可以以极高的准确率对未知区域受力状况进行推演,在全断面受力感知中取得良好效果。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,且应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
1.一种隧道结构健康监测系统的全断面受力感知方法,其特征在于,包括如下步骤:
步骤一、在隧道中部署的监测断面,断面中存在周期性采样的传感器阵列,监测内容包括应力、应变、水压、温度、土压、渗压,利用传感器阵列检测和识别隧道结构的损伤和性态变化;
步骤二、将断面受力特征融入进数据驱动方法;所述数据驱动方法是指将由部署在隧道结构健康监测系统采集到的传感器数据组织成信息,然后将相关信息进行整合和提炼,在数据的基础上经过训练和拟合形成回归模型;所述断面受力特征是指:采用水土分算的方法计算作用在断面上的载荷后分析得到的断面受力分布特征;
步骤三、在隧道结构健康监测系统上实现全断面受力感知,在传感器数据的基础上,使用全断面受力感知方法推演得到整个断面的受力状况,包括那些没有布设传感器的区域。
2.根据权利要求1所述的一种隧道结构健康监测系统的全断面受力感知方法,其特征在于:所述步骤二将断面受力特征融入进数据驱动方法具体包括:
步骤1.1:记录一个断面的传感器数值,采用人工判别的方法将不合理的值去除,保留合理的数据;
步骤1.2:将断面进行划分,从内向外划分为m层,每层平均n个区域,则断面一共被划分成了m×n个区域,布设了传感器的区域有对应的监测值;
步骤1.3:将划分后的断面从拱顶顺时针展开,得到一个m×n的数据矩阵x;断面上的区域使用矩阵中的上下标表示;
步骤1.4:使用水土分算的方法,带入断面周边的上覆土压力,地层抗力,侧部土压力,重力以及浮力,分析得到断面的受力特征。
3.根据权利要求1所述的一种隧道结构健康监测系统的全断面受力感知方法,其特征在于:所述步骤三全断面受力感知方法实现步骤为:
步骤2.1:将数据矩阵通过非负矩阵分解的方法分解为两个矩阵u、v,两个矩阵的形状分别为m×h和h×n;在传统非负矩阵分解损失函数的基础上加入断面受力特征,体现为加入相邻区域受力相似的约束项,加入对称区域受力相似的约束项,得到构造的损失函数;
步骤2.2:为调节损失函数中的超参数,将数据划分为训练集和验证集;
步骤2.3:模型在训练集上训练,并在验证集上验证模型的预测效果;不断更改模型超参数,使得模型在验证集上有最好的表现;选取此时的模型参数作为最终的模型参数;
步骤2.4:使用最优的模型参数训练出两个分解的矩阵,两个矩阵相乘后可得到一个没有缺失值的矩阵,此矩阵即为全断面受力矩阵。
4.根据权利要求1所述的一种隧道结构健康监测系统的全断面受力感知方法,其特征在于:所述步骤1.2中,将断面从内向外划分为m层,每层平均n个区域,则断面一共被划分成了m×n个区域,从拱顶的位置将划分好的断面顺时针展开得到一个m×n的矩阵x,将原有的圆形隧道断面上的区域与矩阵上的位置一一对应,并将传感器的数值填充到传感器所在区域对应的矩阵上的位置,则得到一个稀疏的数据矩阵,矩阵中非空的值对应相应区域的传感器的监测数值,空白的值即代表该位置对应的断面区域没有布设传感器,需要去填补以实现全断面受力感知。
5.根据权利要求3所述的一种隧道结构健康监测系统的全断面受力感知方法,其特征在于:所述步骤2中,构造的损失函数,包括在传统非负矩阵分解损失函数的基础上加入两个正则约束项;第一个正则约束项考虑了断面上相邻点受力相似的特征,同时由力学公式指导两者相似的程度;在力学公式中两个区域的值越相近,qm,n变大,与λ1结合后动态增大约束项的参数,使其在矩阵分解的过程中表现地越相似,反之,力学公式中两个区域的值相差越大,则动态减小约束项的参数,使其在矩阵分解的过程中表现的越不相似;第二个约束项考虑了断面上对称点受力相似的特征;将两个正则项加入传统非负矩阵分解的损失函数中得到一个新的损失函数,通过训练该损失函数,最终得到两个分解的矩阵,连两个分解的矩阵相乘后得到一个没有空白值的矩阵,该矩阵的每个单元值表示对应的断面区域的受力值,以此实现全断面受力感知。
技术总结