
结构损伤诊断的遗传算法研究
易伟建1,刘 霞2
(湖南大学土木工程系,湖南长沙410082)
摘要: 引入遗传算法处理试验得到的动力信息对结构的损伤进行了诊断.针对要处理的问题,提出
了多父体变量级杂交和变量微调等新的改进策略,并运用于固端梁、连续梁和框架等多个结构的损伤
诊断,取得了满足工程要求的结果.
关键词: 损伤诊断;遗传算法;结构
中图分类号: T U312+.3 文献标识码: A a
Damage Identification of Beam
Structures U sing Genetic Alg orithm
YI Wei-jian,LIU Xia
(Civil Eng ineering Depart ment,Hunan U niv ersity,410082,China)
Abstract A m ethod ba sed on t he genetic alg or ithm is dev elo ped fo r t he est imation o f
str uctur al da mage using measur ed dynamic dat a.Some impr oved st rat egies such as
mult i-par ent s cr ossov er and a djustment of v ariables are intr oduced to detect t he damag e
of fix ed-end beams and co nt inuo us bea ms.T he satisfied r esults ar e a chiev ed in t he
paper.
Keywords damag e ident ification;g enetic algo rithm;str uctur es
1 引言
利用振动参数进行结构破损评估的方法是当前十分活跃的研究领域.结构损伤诊断的动力方法是基于以下推断:构成结构物的刚度、质量以及材料的本构特征与结构的动力参数存在着明确的对应关系.因此,通过振动测试方法捕捉结构的动力参数,可推演结构的工作状态.
损伤诊断可归结为参数识别问题,即所谓结构动力学逆问题,通常,可由两条途径获取逆问题的解,一是灵敏度分析方法,通过广义逆矩阵的运算,确定参数向量的改变量.二是采用最优化方法确定与实测数据最优匹配的参数.在优化方法的选择上除常规的数学方法外,近年来兴起的神经网络也被引入这一领域.遗传算法也是优化方法的一种,但由于其提出时间较晚,它在破损评估领域的应用并不很广泛.
遗传算法最初由密执安大学的Jo hn Ho lland[1]提出来的,它是基于自然遗传和自然选择机理的寻优方法,已广泛应用于多个领域.本文采用的遗传算法,是由复制、变异和杂交等运算所组成,由于引入杂交和变异算子,收敛速度明显改善.遗传算法只需要计算各可行解的目标值而不要求目标函数的连续性,不需要梯度信息,并采用多线索的并行搜索方式进行优化,因而不仅不会陷入局部最小,而且使用方便,具有很强的鲁棒性.
在结构破损评估的方法中,有许多方法只能识别结构的损伤位置,而不能对结构的损伤程度进行定量分析.1991年Pandey[2]等人利用结构损伤前后振型曲率的变化对梁类结构进行了破损评估.1994年
a收稿日期:1999-09-09
资助项目:国家教委博士基金(98053207)
Pandey [3]等人又利用柔度法对结构进行了破损评估.在以上的结构破损评估方法中,根据参数的变化程度可以了解结构的损伤程度,两者之间存在一定的对应关系,但这些方法或者要求较多的测试信息,或者要求模型的梯度信息,实际上,动力模型的复杂性和测试条件了这些信息的获取.
结构的破损评估属于模式识别一类问题,模式识别问题实际上是一个模式特征空间的划分问题或视为映射问题.神经网络方法虽然具备很强的非线性映射功能,可以有效地处理模糊信息或模拟专家进行推理,可以作为一切非线性关系的统一模型,但它需要获得大量的训练样本来训练网络,而对于复杂结构,训练样本的获取是十分困难的.
遗传算法以其特有的思维方式寻找最优结果,将其引入破损评估的最优化方法,在测试获取信息不多的情况下,不但能迅速地找到破损部位并能准确地模拟破损的程度.即使模态可能丢失时,遗传算法的寻优能力仍不受丝毫影响.
M.I.F riswell 等人曾用遗传算法处理动力信息,做出了钢平板和悬臂钢梁的损伤诊断[4].但他们的工作最多只限于两个部位发生破损的情况,而本文将利用遗传算法处理梁任意部位发生损伤的情况.
2 遗传算法的改进
实践证明当设计变量的个数超过20时,由于需要处理的设计空间很大,简单遗传算法SGA 的效率可能很低[5,6].本文处理的梁破损评估问题,设计变量的个数通常会大于20,因而必须提出改进方法提高遗传算法自身的效率.另一方面,遗传算法以群体和代的方式工作,每代中的每个个体须先计算适应值方能进行遗传操作产生后代群体,而在土木工程领域,计算适应值所用的结构分析程序本身较复杂,分析过程所用的时间相对较长,从而导致群体规模越大,耗费的机时越多,进化的速度越慢.当群体规模大到一定程度时,遗传算法由于运行速度太慢而失去原有的优越性.所以,除把群体规模缩小,进化代数减少外,提高遗传算法的收敛速度是关键.本文把改进的重点放在提高群体的多样性上,同时兼顾局部搜索.2.1 多父体变量级杂交
遗传算法中随着设计变量的增多,染色体变长,原有的点式杂交或均匀杂交对模式破坏概率减小,近亲繁殖概率增加.只有增大群体规模,增加进化代数才能保证算法的搜索能力;另一方面,设计变量增多,计算每个染色体的适应值花费的时间随之增加,只有减小群体规模,减少进化代数才能保证算法的效率.为协调两方面的矛盾,采用基于变量的多父体杂交策略.每个设计变量由两个不同父体,在设计变量级别上进行单杂交而形成.例如,一个包含20个设计变量的子代染色体是由40个父代染色体共同遗传的产物.它能极大地改变原有模式,在有限的群体规模下尽可能地增加群体的多样性,扩大了算法的搜索范围.另一方面它把杂交引入到设计变量级别,使设计变量增多对算法效率的影响大大减小.2.2 变量微调
在遗传算法的计算中可以发现,算法在搜索过程中,有时为了走一个很小的步距却要花费几代甚至几十代的演化,这种现象即是人们通常所说的二进制的Hamming 悬崖问题;另外,由于本文采用的变量级多父体杂交方式在每代的进化过程当中,对模式的破坏概率较大.这两方面的原因都使算法的微调功能较差,不利于算法的局部搜索能力.为克服这一缺点,人们提出了G r ay 编码、动态编码和实数编码技术,并取得了一定的成效.这里,本文提出了另一种思路,即将实数变异引入二进制运算过程中,达到微调的目的.具体作法是,先将二进制串转化为十进制串,借鉴实数编码变异的思想以一定的概率对串中每个变量微调0-2个步长,然后重将十进制串转化为二进制串放入群体中进行遗传操作.为减少结构分析次数,变量微调并不应用于每个个体,只对每代中的最优个体实施这种操作,如果微调后个体的适应值好于微调前,则以微调后的个体代之.否则,仍保持不变.运算证明,这种方法比简单遗传算法收敛速度高,它保证了算法能在有限的演化代中找到令人满意的近优解.2.3 其它改进
为了提高群体的多样性,本文还采取了一些策略,除复制、杂交、变异三种常用的遗传算子外,引入倒位算子,即以一定的概率将染色体串反序;在进化过程中不允许同一代中有相同的个体存在.另外,将每代
115
第5期结构损伤诊断的遗传算法研究
3 实例
3.1 求解思路
本文利用计算机模拟梁结构发生破损,假设梁为均匀材料,结构的损伤表现为刚度EI的折减.采用有限元法分析梁的固有频率和振型时,事先给定单元刚度的折减系数,然后用求得的频率和振型作为下面式
(2)和式(3)中测试频率和振型(f test,U test ij)输入遗传算法程序进行破损评估.
3.2 优化的数学模型
用动力学方法作损伤诊断时,以结构的固有频率和振型为输入信息,两者具有不同的物理意义.因而,问题转化为优化问题后,频率误差最小与振型误差最小是两个不同的目标函数.不加任何权系数的情况下将两者组合为单目标函数,其作法并不妥当.其原因是,在实际的振动测试中,所测得的振型精度并不高,小于相同条件下测到的频率的精度,频率和振型对于损伤诊断的可用程度不相同.所以,本文通过加权组合将多目标转化为单目标,目标函数可表示如下:
