APP下载

基于粗粒度并行遗传算法的隔震层参数优化

2023-12-15刘全明贺一哲

地震工程学报 2023年6期
关键词:粗粒度支座遗传算法

党 育, 刘全明, 贺一哲

(兰州理工大学 土木工程学院, 甘肃 兰州 730050)

0 引言

如何选择合理的隔震层参数和布置隔震支座是隔震结构设计中的关键问题。目前工程师通常采用试算法,该方法可保证设计满足要求,但无法保证设计为最优。针对此问题,国内外学者提出了各种优化方法进行隔震结构设计。Fallah等[1]采用非支配排序多目标遗传算法NSGA-II算法,将隔震结构简化为剪切型,优化得到滑移隔震结构的隔震层质量、摩擦系数和阻尼比;Fan等[2]将铅芯橡胶支座系统等效为线性,采用二次规划法得到隔震层的最优屈服后刚度和屈服力;Nigdeli等[3]采用和声搜索算法,在近场和远场地震下优化得到隔震层的刚度和阻尼比;叶昆等[4]将隔震结构简化为等效线性的两自由度结构,以水平向减震系数和隔震层最大位移的线性组合为目标函数,得到隔震层的最优屈服强度比;洪绍文等[5]以隔震结构的投入成本比最小作为目标函数,采用无导数信赖域算法优化得到隔震支座的铅芯和橡胶直径。以上研究均将隔震结构简化为剪切型模型,隔震层简化为用2~3个参数表达的线性或非线性模型。但由于对隔震结构的力学模型进行了较多简化,影响了隔震结构动力分析结果的准确性,且得到的结果也只是隔震层最优参数,与设计最终要求的具体隔震支座布置尚有差距。由此,Dang等[6]针对隔震结构建立了三维有限元模型,采用经典遗传算法结合整数规划法,分两阶段完成隔震层参数优化和隔震支座布置,既保证了隔震结构动力分析的准确性,也可直接优化得到隔震支座布置。但由于用经典遗传算法进行优化时,种群个体要依次进行时程分析,时程分析由单一CPU串行平台的结构动力分析软件(SAP2000、ETABS)完成,整个优化过程所需时间大致为每次时程分析时间的累加,导致优化的耗时较长,限制了该方法的使用。

目前,提高计算效率的方法大致分为3种:采用更高性能的CPU;采用图像处理器GPU[7];采用多个CPU的并行计算[8]。针对文献[6]的问题,经典遗传算法中的各种群个体需要分别进行时程分析,但实际上,各种群个体的时程分析计算具有天然的并行性,同时,随着微处理技术的迅速发展,多核CPU的计算机已普及,若在多核CPU上实现并行遗传算法,就无需提高计算机硬件(采用高性能计算机)或修改计算平台(采用基于GPU的有限元分析软件)来提高隔震结构的优化效率。基于此,本文提出了基于粗粒度并行遗传算法的隔震层参数优化方法,即采用Python-ETABS交互使用的编程技术,用Python编写粗粒度并行遗传算法,多进程调用ETABS程序并进行遗传操作,实现基于粗粒度并行遗传算法的隔震层参数优化分析。最后,通过一个隔震工程的实例进行验证,证明本文提出的方法既可保证优化结果的准确性,又可提高计算效率。

1 隔震层参数优化的并行模型

对于隔震层参数优化问题,种群中的每个个体都要进行动力分析和遗传操作。由于动力分析需要调用ETABS完成,并行调用的ETABS数量越多,占用的计算资源就越大。为平衡计算效率和计算资源,研究选用了粗粒度并行模型,即将种群划分为多个子种群,各子种群独立并发,执行时程分析和遗传操作。

隔震层参数优化的粗粒度并行模型如图1所示。其中,多进程并行操作采用Python的Multiprocessing库[9]来实现,各进程之间无交互,充分利用CPU的多核计算资源,提高计算效率。由于整个优化过程需要遗传算法和结构动力分析相结合,遗传算法用Python编程完成,而动力时程分析由ETABS实现,故采用ETABS应用程序接口ETABS API[10]完成Python与ETABS的相互调用。整个过程为:Python编程生成各子种群,各子种群独立地用 ETABS API中的函数来打开对应的隔震结构模型,定义质量源,设置荷载工况,设定节点约束,定义隔震支座参数,进行动力分析和输出结果;再将结果传递至Python,完成子种群的遗传操作,生成新的子种群;再次进行子种群并行计算,从所有种群中挑选出最优个体并记录下来;重复以上过程,当最优个体达到迭代终止条件后,优化程序结束。

图1 隔震层参数优化的粗粒度并行模型Fig.1 Coarse-grained parallel model for parameter optimization of isolation layer

2 基于粗粒度并行遗传算法的隔震层参数优化

2.1 种群编码

隔震层参数优化时,隔震层的力学模型可简化为双线性模型,如图2所示。图中,Keq为隔震层的水平等效刚度,Xo为隔震层的屈服位移,Xm为隔震层的极限位移。

图2 隔震层的力学模型Fig.2 Mechanical model of isolation layer

隔震层的设计变量如式(1)所示:

(1)

粗粒度并行遗传算法是将种群划分为多个子种群,因此,染色体种群表示如式(2)所示:

Λ=[X1,X2,…,Xn]=[(Keq1,Xo1,Xm1),
(Keq2,Xo2,Xm2),…,(Keqn,Xon,Xmn)]

(2)

种群编码采用浮点数编码,原因是隔震层优化参数为连续实数域且范围较大,采用浮点式编码可降低编码长度,提高搜索速度。

2.2 适应度评估

适应度函数是根据目标函数确定的用于区分种群中个体优良程度的标准,是遗传算法进行自然选择的唯一依据。

在隔震层参数优化设计中,采用的目标函数如式(3)所示:

(3)

式中:β为设防地震下隔震结构的水平向减震系数;u为罕遇地震作用下隔震支座的最大水平位移;θ为罕遇地震作用下上部结构的最大层间位移角;βmax为水平向减震系数限值,与非隔震结构相比,隔震工程上部结构的水平地震作用减少量不宜超过1/4,再考虑到支座性能偏差调整系数ψ=0.8[12],因此取βmax=0.25×0.8=0.2;umax为隔震支座的水平位移限值,依据《建筑抗震设计规范》[12]的要求,umax=min(0.55D,3tr),其中,D为支座的有效直径,tr为支座内部橡胶总厚度;θmax为上部结构的层间位移角限值,依据《建筑隔震设计标准》[13],取θmax=1/150。y越小,则该染色体对应的隔震层参数就越接近最优值。

在遗传算法中,越是优良的个体适应度越大,这恰恰与目标函数相反,因此,必须将目标函数进行一定的转换,将其变为适应度函数的形式,本文采用的变换如式(4)所示:

fitness=-y

(4)

另外,在隔震层设计时,还需要满足以下约束条件[6]:

(5)

在遗传算法中,以上约束条件是通过惩罚策略对个体的适应度进行修正来完成的,即个体不满足任意一个约束条件时,就将该个体对应的目标函数值扩大数倍,意味着该个体的适应度函数值将减小数倍,这样,该个体将在进化过程中被淘汰。

2.3 种群迁移

种群迁移使各子种群之间可传递优良个体,避免优化结果陷入局部最优。种群迁移主要解决种群的迁移规模、迁移策略和迁移拓扑三个问题[11]。本文采用单向环型迁移拓扑作为各子种群间传递优良个体的拓扑,迁移策略采用第i子种群的最优个体来代替第i+1子种群的最差个体,实现种群间的信息交流。迁移规模由迁移周期和迁移率来决定,考虑到隔震层参数优化问题的优化参数较少,为平衡优化解的质量和优化效率,取迁移周期为2代,迁移率为0.1。

2.4 遗传操作

遗传操作的多进程并行模型如图3所示。各种群被分配到不同的进程,遗传选择采用精英保留策略,每个进程根据适应度函数选择出种群中适应度最大的个体保留下来。为保证种群子代与父代个体数相等,从父代种群中随机选择出剩余个体,按照设定的交叉率和变异率确定是否进行交叉和变异操作:如果不交叉和变异,则子代与父代相同,否则产生新的子代,这样反复进行,直至达到终止条件。为保证种群个体的多样性,本文取交叉率为[0.7,0.9]的随机数,变异率为[0.01,0.05]的随机数。

图3 遗传操作并行模型Fig.3 Parallel model of genetic operation

2.5 隔震层参数优化设计流程

基于粗粒度并行遗传算法的隔震层参数优化流程如图4所示,具体步骤为:

图4 基于粗粒度并行遗传算法的隔震层参数优化计算流程Fig.4 Optimization calculation process of isolation layer parameters based on coarse-grained parallel genetic algorithm

(1) 预估隔震支座,给出设计变量Keq、Xo、Xm的取值范围;

(2) 给定粗粒度并行遗传算法的相关参数,包括子种群数量、染色体个数、交叉率、变异率、迁移周期、迁移率和最大迭代次数;

(3) 确定种群编码,生成初始种群;

(4) 并行计算出各种群个体的目标函数,评估个体的适应度;

(5) 判断迭代代数N是否为迁移周期的K倍,如果是,则执行迁移操作;

(6) 各子种群并行执行遗传操作,形成新的种群,计算新种群个体的目标函数值;

(7) 判断是否满足迭代终止条件:如果是,输出隔震层最优参数及对应的目标函数值;如果否,令N=N+1,并转到步骤(5)。

3 工程实例及优化分析

3.1 隔震工程概况

以某实际隔震工程为例进行分析,该工程为乙类建筑,地下1层,地上4层,建筑总高度为19.0 m;设防烈度为8度(0.3g),场地类别为Ⅱ类,设计地震分组为第三组。隔震层设置在地下室与上部结构之间,隔震结构的有限元模型如图5所示,隔震支座的原平面布置图如图6所示。

图5 隔震结构的有限元模型Fig.5 Finite element model of the isolation structure

图6 隔震支座原平面布置图(单位:mm)Fig.6 Original plan layout of the isolation bearings (Unit:mm)

考虑到设计结果要与优化结果进行对比,因此优化时采用标准人工波[6]进行计算,得到上部结构的水平向减震系数为0.32,且罕遇地震下各隔震支座的最大位移不超过248 mm,小于支座容许位移275 mm[12];同时,罕遇地震下各隔震支座均受压。由此可见,原设计的隔震支座布置方案满足设计要求。

3.2 优化过程及结果

对该工程采用粗粒度并行遗传算法进行隔震层参数设计。

首先,根据隔震支座在重力荷载代表值下的竖向压应力限制要求,预估隔震支座直径范围为400~700 mm,各直径的支座可以采用天然橡胶支座(LNR)和铅芯橡胶支座(LRB)两种类型。各隔震支座的力学性能如表1所列。

表1 隔震支座的力学性能参数Table 1 Mechanical performance parameters of isolation bearings

由表1可知,若所有支座均为LNR400,隔震层参数最小,若所有支座均为LRB700,隔震层参数最大,由此得到隔震层参数范围为:Keq∈[19.8,58.49]kN/mm,Xo∈[0,11.32]mm,Xm∈[68,140]mm。

目标函数如式(6)所示:

(6)

约束条件如式(7)所示:

(7)

其中,由于初步选定的最小隔震支座直径为400 mm,根据表1可知,直径为400 mm的隔震支座橡胶总厚度为68.6 mm,则umax= min(400×0.55,3×68.6) mm=205.8 mm。

将以上模型采用粗粒度遗传算法进行优化,选定子种群数为7,每个子种群的染色体个数为10,总迭代次数为30代。计算机处理器为Intel Xeon Gold 5115,共有10核,内存为32 GB。时程分析时仍选用标准人工波,最终得到隔震层的最优参数为:Keq=50.49 kN/mm,Xo=9.34 mm,Xm=122.75 mm。

(1) 优化方案与原设计方案比较

根据已得到的隔震层最优参数,按照文献[6]中的第二阶段优化方法,确定出隔震支座的最优布置(图7)。该方案由26个LRB600和4个LRB400组成,优化方案与原设计方案的对比如表2~3所列。

表2 原设计方案与优化方案对比Table 2 Comparison between the original design scheme and the optimization scheme

图7 优化后的隔震支座布置图(单位:mm)Fig.7 Plan layout of the isolation bearings after optimization (Unit:mm)

从表2可看出,与原设计方案相比,采用优化方案后,上部结构的水平向减震系数由0.32减小至0.30,减小幅度为6.3%;罕遇地震下各隔震支座的最大位移由248 mm减小至210 mm,减小幅度为14.7%。优化方案除满足设计要求外,还可同时减小上部结构的层剪力和隔震支座位移,减震效果优于原设计方案。

表3为优化方案与原设计方案上部结构在罕遇地震下的最大层间位移角比较。从表3可看出,无论优化方案还是原设计方案,顶层的层间位移角明显小于其他层,这是由于该结构的顶层质量较小,使得顶层剪力小于其他层,但该层与其余层的抗侧刚度差别不大。因此,结构顶层的层间位移角远小于其他层,但与原设计方案相比,优化方案的顶层层间位移角与第3层差别更小,说明优化方案的结构侧向变形更为均匀。此外,除3层Y向两方案相同外,优化方案各层的最大层间位移角均比原设计方案小,说明优化设计方案在罕遇地震下对上部结构的保护要优于原设计方案。

表3 原设计方案与优化方案在罕遇地震下上部结构的层间位移角对比Table 3 Comparison between story drift ratios of superstructure from the original and optimization schemes under rare earthquakes

(2) 与文献[6]方法的计算效率对比

用粗粒度并行遗传算法和文献[6]采用的经典遗传算法方法分别对以上隔震结构进行优化,设定两种方法的进化终止条件均为:连续7代中本代与上代的目标函数值之差的绝对值都小于0.01,且最大迭代次数不超过30次。记录两种方法达到优化终止条件时的目标函数最优值、进化代数和所需时间,并列于表4。由于遗传算法是一种随机算法,对于不同初始种群、不同变异率和交叉率,其计算过程各异,因此,为使文献[6]和粗粒度并行遗传算法的计算过程具有可比性,对同一优化问题分别计算了5次。

表4 两种方法的计算耗时和最优解对比Table 4 Comparison between calculation time and optimal solution of the two methods

由表4可看出,5次优化分析中,采用经典遗传算法求得的最优目标函数值,有3次与全局最优解相同,有2次未求得全局最优解,并且每次优化需要迭代25代左右才终止;采用粗粒度并行遗传算法,5次均达到全局最优解,且每次优化仅需迭代18代左右就可终止。这说明采用粗粒度并行遗传算法比经典最优算法更易促进最优解的出现,并提高全局收敛速度。同时,采用粗粒度并行遗传算法,每次优化所需时间都明显少于经典遗传算法,平均耗时分别为3.46 h和21.39 h,加速比大致为6,说明粗粒度并行遗传算法不仅能准确求解隔震层最优参数,还可大大提高优化计算效率。

在5次计算中,分别选取两方法中目标函数最优值最小且计算耗时最少的结果进行比较,即取经典遗传算法第1次的计算结果和粗粒度并行遗传算法第2次的结果,绘制出进化次数和目标函数的关系曲线如图8所示。

图8 两种算法的进化曲线Fig.8 Evolution curves of the two algorithms

从图8可看出,经典遗传算法直至第15代后才基本趋于稳定,整个进化曲线呈阶梯状下降,而粗粒度并行遗传算法运行至第7代后已基本趋于稳定,整个进化曲线呈断崖式下降,说明粗粒度遗传算法可快速收敛至最优解,优化效率更高。

4 结论

针对基于经典遗传算法的隔震层参数优化方法效率不高的问题,利用Python的多进程机制和Python与ETABS的交互,将粗粒度并行遗传算法应用于隔震层参数优化,并得到如下结论:

(1) 采用粗粒度并行遗传算法优化后的方案,除满足设计要求外,还可同时减小上部结构的层剪力和隔震支座位移,减震效果优于原设计方案,说明该方法可有效进行隔震层参数优化。

(2) 用10核CPU计算,与经典遗传算法相比,基于粗粒度并行遗传算法的隔震层参数优化方法既能准确求解出全局最优解,又可显著提高优化效率,加速比约为6,可基本满足隔震工程设计的及时性需求,具有较好的工程应用价值。

猜你喜欢

粗粒度支座遗传算法
一种端到端的加密流量多分类粗粒度融合算法*
改性橡胶隔震支座抗拉性能试验研究*
基于卷积神经网络的粗粒度数据分布式算法
基于ANSYS-UM联合仿真的减振支座减隔振性能研究
在线评论情感分析研究综述
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
基于公共池自适应迁移策略的并行遗传算法
基于改进的遗传算法的模糊聚类算法