宋苏萌,刘才玮,*,苗吉军,肖建庄,顾振健
(1.青岛理工大学 土木工程学院,青岛 266033;2.同济大学 建筑工程系,上海 200092)
相关数据显示,火灾的发生频率和带来的危害是巨大的[1].人们高度重视建筑火灾,不仅因为其诱发因素多种多样,更是因为其造成的损失不可估量.为了最大程度减少建筑火灾带来的危害,对受火结构的现状进行检测、识别损伤和合理的修复损伤是非常重要的.
大量学者对常温下钢筋混凝土结构的损伤识别进行了分析和研究,对于高温下结构损伤识别研究较少.高立堂等[2]为得到火灾后钢筋混凝土简支梁动力特性用于损伤识别,提出以频率为识别指纹对梁损伤后的位置及程度进行识别的方法.SEYEDPOOR等[3]在检测框架节点损伤时,采用固有频率作为支持向量机(SVM)的输入数据,将梁柱节点的损伤特征作为SVM的输出数据.诸多识别方法都没有将局部损伤更为敏感的振型考虑在内.
在智能化盛行的今天,智能算法成为热潮,国内外大量学者将智能算法应用于结构损伤识别, 取得了较为满意的结果[4-5],支持向量机(SVM)较好地解决了非线性、高维数、局部极小点等问题,凭借其自身优势得以广泛应用[6-7],但是参数选取问题制约其进一步发展.而布谷鸟搜索(CS)算法在寻优速度和寻优效果方面优势明显,因此被广泛应用.刘勤等[8]将改进的布谷鸟搜索算法用于混凝土耐久性优化模型,求解结构耐久性全局最优解,结果表明,全局最优解得以稳健求解,并有较好的收敛效果和计算效率.QIN等[9]将改进的布谷鸟搜索算法连接到训练有素的结构可靠性分析的人工神经网络模型,验证了该算法的计算能力,结果表明,该算法具有较高的效率和准确性.
基于上述,本文提出了用布谷鸟搜索算法优化支持向量机的钢筋混凝土梁火灾损伤识别方法.通过T型简支梁数值模拟验证了其有效性.在此基础上进一步提出了适用于连续梁的逐级递减识别方法,并通过5跨连续梁的数值模拟进行验证,结果表明该方法识别结果准确,满足要求,可应用于实际工程.
2009年英国剑桥大学学者YANG Xin-she和DEB Suash发表论文,提出一种新的启发式智能优化算法——Cuckoo Search(CS)算法.相比其他智能算法而言,布谷鸟搜索算法在解决寻优问题时优势明显,因此被广泛应用于各个领域.
该算法基于布谷鸟寻找巢穴放置自己鸟蛋的行为,并结合了一些鸟类的Lévy飞行行为,从而获得最优解.该算法将局部随机过程和全局搜索过程很好地结合起来,由转换参数pα来控制,并不需要选取过多的参数,在处理复杂的优化问题时无需重新匹配大量参数,简单易行.
局部随机过程可以描述为
(1)
全局随机过程按照Lévy飞行过程进行:
(2)
支持向量机具有高效性、通用性和鲁棒性的优点,在高维数和非线性等问题上有较大的优势,但是核函数g和惩罚参数c的选择一直是难以解决的问题.比较常用的方法有交叉验证法(Cross Validation,CV)和根据测试经验给定的方法.交叉验证法寻优区间要足够大而且步距要小,导致迭代次数多、耗时长,不利于在实际工作中的运用.根据测试经验给定的方法局限性比较大,也不利于支持向量机在各个领域的推广和发展.而布谷鸟搜索算法简单易于实现,参数少,搜索能力强,收敛速度快,因此,本文提出布谷鸟搜索算法优化支持向量机参数.步骤如下:
1) 初设SVM惩罚参数c和核函数参数g,确定参数c和参数g的取值范围.
2) 初始化一个具有n个鸟窝的种群,其中包括鸟巢数量n、被鸟巢主人发现的概率pα、步长比例因子,迭代次数K,随机生成鸟巢的位置,每个鸟巢位置代表一对参数(c,g).
3) 用均方根误差(EM,S)作为适应值,计算每个鸟巢对应的适应值,得到的最优鸟巢位置保留到下一代.对均方根误差的定义:
(3)
4) 通过式(2)进行鸟巢的更新.
5) 对更新后的鸟巢的适应度进行计算,与上代鸟巢的适应度进行比较并更新最优鸟巢的位置,判断是否满足条件,如果满足则停止迭代,否则返回第3步.
6) 根据最后得到的最优鸟巢位置输出对应的核函数参数g和惩罚参数c,并赋予SVM,将预测值和实际值进行比较,判断是否满足条件,若满足则输出结果,否则返回第3步.
具体流程如图1所示.
图1 CS-SVM流程
1) T型简支梁初始化有限元模型建立.采用分离式建模方法建立T型简支梁的三维空间模型,混凝土采用Solid65实体单元,钢筋采用Link8线单元,钢筋与混凝土之间的黏结滑移不考虑.支座处添加的刚性垫块采用Solid45实体单元模拟.
为准确识别火灾后T型简支梁的损伤程度,综合考虑火灾前混凝土T型梁的振动特性、边界条件、物理参数等情况,构建T型简支梁的有限元精细化分析模型,简支梁具体尺寸及配筋见图2.
图2 T型简支梁模型示意(单位:mm)
2) T型简支梁的初始有限元模型修正.选取T型梁的混凝土弹性模量E,两端支座竖向刚度K1,K2,两端支座偏移D1,D2作为模型修正物理参数,选取T型梁的前3阶频率、振型作为评价结构动力性能的指标,采用文献[10]提出的基于灵敏度分析的参数分类-分步修正方法进行T型梁有限元模型修正.
用布谷鸟搜索算法优化支持向量机,用于钢筋混凝土梁的火灾损伤识别,具体流程如下.
Step 1 基于建立的热力耦合作用下的精细化有限元模型,用Block Lanczos法获取相应模态,测点位置为图2中传感器布置处,即梁跨范围的4等分点处.前3阶频率与振型的组合参数作为输入参数,与之对应的受火时间T作为输出参数.表达式如下:
A={F1,F2,…,Fm;M1,M2,…,Mn}
(4)
式中:m为损伤识别所用频率阶数,1≤m≤3;n为损伤识别所用振型阶数,1≤n≤3;Fm为损伤识别所用第m阶频率;Mn=(φn1,φn2,…,φnq)为第n阶模态参数对应q个测试自由度归一化振型向量,即φnj=φnj/(φnj)max,j=1,2,…,q;φnj为第n阶模态对应j个测试自由度分量.
T={t1,t2,…,tk}
(5)
式中:k为梁结构跨数;tk为梁结构第k跨受火时间.
Step 2 设置各参数,训练CS-SVM识别网络.
Step 3 构造测试样本,输入CS-SVM识别网络,输出相应的受火时间.
Step 4 用评价指标衡量模型识别效果,若满足要求,则输出结果,否则返回Step1,进一步完善模型.
(6)
(7)
受火时间为0~120 min,以5 min为间隔采集数据作为样本,其中70%为训练样本,30%为测试样本.为与现实情况更为吻合,本文的测试样本采用施加5%和10%的白噪声进行预测.白噪声公式如下:
(8)
核函数g和惩罚函数c通过布谷鸟搜索算法进行优化,设置巢穴数量n=100,被宿主发现的概pα=0.25,需要优化的参数dim是2个,为了防止出现过拟合现象,设置参数的上界是100,下界是0.01.识别结果如表1、图3所示,并与SVM识别结果进行了比较.
表1 c,g寻优结果
图3 受火时间识别结果
采用ANSYS软件建立5跨钢筋混凝土连续梁模型,建模过程及每跨传感器布置同简支梁,梁的尺寸及配筋如图4所示.
图4 5跨T型连续梁配筋示意(单位:mm)
上文提出的基于CS-SVM简支梁火灾损伤识别方法针对结构简单,样本数量较少的简支梁识别效果较好,但若是结构复杂的连续梁(图4),若以5 min为间隔构建训练样本,工况复杂,而SVM针对大规模训练样本难以实现.为缩小训练样本数量,在简支梁损伤识别方法的基础上,提出适用于连续梁火灾损伤识别的逐级递减法.该方法每一步训练样本的选取与简支梁有所不同,以5跨T型连续梁为例对逐级递减法进行说明,具体步骤如图5所示,其余各参数选取参照简支梁CS-SVM损伤识别方法.
图5 5跨梁逐级递减火灾损伤识别方法
在测试样本中分别加入5%,10%噪声,用训练好的CS-SVM预测受火时间Ti,并与SVM预测结果对比.选取工况1如下:1跨tf1=20 min;2跨tf2=35 min;3跨tf3=50 min;4跨tf4=85 min;5跨tf5=115 min.选取工况2如下:1跨tf1=15 min;2跨tf2=45 min;3跨tf3=80 min;4跨tf4=105 min;5跨tf5=110 min.参数寻优结果见表2.识别结果见图6.施加10%白噪声得到的结论与5%白噪声结论一致,由于篇幅有限,这里只列出施加5%白噪声的结果.
表2 施加5%白噪声c,g寻优结果
经数值模拟计算得出,CS-SVM算法损伤识别结果优于SVM识别结果,CS-SVM算法能得出更为准确的受火时间,为后续进行结构加固和评估提供了更好的保障.逐级递减法很好地解决了连续梁受火时间不均匀的问题,更加贴近实际情况.
图6 连续梁受火时间识别结果
本文提出了一种适用于钢筋混凝土梁火灾损伤识别的方法,结合有限元模型和布谷鸟搜索算法,提出了基于改进支持向量机的钢筋混凝土简支梁受火时间预测方法,针对钢筋混凝土连续梁受火时间差异性问题,提出了适用于钢筋混凝土连续梁逐级递减火灾损伤识别方法,通过数值模拟计算分析,可得出:
1) 提出的CS-SVM的简支梁受火时间预测效果良好,识别误差在允许范围内,为后续的结构加固提供有力保障.
2) 针对连续梁受火时间差异性问题,在简支梁受火时间预测方法的基础上,提出了5跨连续梁的逐级递减火灾损伤识别方法,并进行了2种工况样本的计算分析,结果表明该方法优势明显,有效地避免了因样本数量过多导致的数据爆炸,为复杂结构的损伤识别和灾后修复提供可靠依据.
3) 本文主要研究了在数值模拟基础上该方法的应用,相关试验研究工作尚需下一步进行.