1. 引言
近年来,国内外建筑结构愈发趋于大跨度、超高层和异形,而复杂的结构形式以及地质特点不仅对结构设计提出了更高的要求,还必须严格把控结构在施工过程中产生的内力和变形,所以施工阶段结构的力学性能分析成为研究的热点和难点。结构吊装中出现的吊点优化问题便是施工力学研究涉及的优化控制范畴 [1]。为得到最佳的吊装方案,学者们提出了许多行之有效的方法:重庆大学张小明 [2] 应用有限元法引入函数满意法和能量法对钢桁架起吊高度和吊点布置进行了优化;大连理工大学陈博文 [3] 结合粒子群算法和有限单元法将最小应变能作为优化目标对海洋平台甲板吊点进行优化;大连理工大学李瑞等人 [4] 通过吊点适应度评估和粒子群算法优化了船体分段吊装中的吊点位置;江苏科技大学李二虎等人 [5] 将改进后的遗传算法融入到了船台分段吊装顺序优化的分析模型中等。可以明晰,智能优化算法应用于工程实际优化问题正在成为目前优化设计分析的一个发展趋势。智能优化算法受启发于自然界中的各种自然现象和生物的群体行为,通过群体寻优和逼近来得到最优解,对目标函数和约束条件的要求宽松,具有很高的优化效率,非常适合处理较为复杂的优化问题。但是使用其优化吊点布置多采用单一标准作为优化目标,多目标优化涉及较少。而大多数实际工程采用单目标优化往往并不能很好地实现方案优化,最终都会归结于多目标优化,智能进化算法的提出和发展完善为多目标优化问题提供了新的求解思路,相较于传统方法更具优势,本文在确定吊点高度时,就引入了多目标粒子群算法。
2. 多目标粒子群算法
2.1. 粒子群算法
粒子群优化算法(Particle Swarm Optimization, PSO)同遗传算法、模拟退火算法、神经网络算法和蚁群算法一样,是一种进化计算技术(evolutionary computation),由Eberhart博士和Kebbedy博士于1995年发明 [6] [7]。PSO算法启发自鸟群捕食行为,其概念简明、实现方便、具有较强的全局搜索能力且收敛速度快,因而很快被成功应用于各个工程领域。但是PSO算法本身存在一定的局限性,在处理多峰值优化的情况时,可能会陷入局部最优,无法判断求解结果是否实际最优,使用中需要采取各种措施来加以避免。
PSO算法的基础是信息的社会共享,通过种群迭代搜寻全局最优解。种群中的一个粒子相当于鸟群中的一只鸟,拥有位置(position)和飞行速度(velocity)两个自身特征,在D维空间内追随最优的粒子进行搜索。所有的粒子都由优化目标函数(objective function)来决定的其适应度(fitness)。粒子们知道自己目前为止发现的最好位置(pbest),也就是粒子自己的飞行经验;还知道目前为止整个群体发现的最好位置(gbest),即同伴的飞行经验。粒子的飞行速度和当前位置便是根据自身经验以及种群交流进行动态调整:
gen为当前迭代次数,最大迭代次数设为maxgen;w为惯性权重;c1、c2为学习因子,一般取c1 = c2 = 2;r1、r2为0到1之间均匀分布的随机数;
。
由于较大的惯性权重便于全局搜索,较小的惯性权重有利于局部精确搜索,所以采用线性递减权重法,让惯性权重从最大值wmax线性递减到wmin:
2.2. 多目标优化问题
2.2.1. 多目标优化的数学模型
设有
个目标函数:
,在给定n维决策变量
,
,满足不等式约束条件
,
和等式约束条件
,
时,同时达到最小,即为多目标优化 [8] [9] [10]。对于目标函数极大化的问题亦可以转化为极小化求解。数学模型表示如下:
(k,l为正整数)
单目标优化与多目标优化有着本质的区别。单目标优化的最终结果是唯一确定的最优解,而多目标优化中的各个目标函数之间往往相互制约,存在冲突和无法比较的现象,一个目标达到最优可能是以牺牲其他目标的最优为代价的,这种情况是无法折衷和避免的。所以多目标优化一般得到的不是唯一确定的解,而是一组最优解的结合,称为Pareto最优解集。求解多目标优化问题的过程实质上便是寻求Pareto最优解集的过程。
2.2.2. Pareto最优解
Pareto最优解集是Pareto最优解(Pareto optimal solutions)的集合,构成了Pareto前沿(Pareto front)。Pareto最优解又可称为非支配解(non-dominated solutions)或非劣解,是决策向量空间内不受任何其它决策变量支配的决策变量 [8] [11]。支配关系即Pareto占优(Pareto dominate),定义如下:
设决策空间内的两个决策变量a和b,当且仅当
,
,且
,fj(a) < fj(b),称a支配b。
2.3. 多目标粒子群算法
多目标粒子群算法使用粒子群算法来实现多目标优化,同PSO算法一样,多目标粒子群算法中的粒子也共享信息,向全局最优和自身最佳记忆的方向发展,自1999年 [11] 首次应用以来,已经研发了多个版本。本文采用Coello等人 [12] 提出的基于Pareto支配思想的多目标粒子群算法(Multi-Objective Particle Swarm Optimization, MOPSO)。该算法用外部存储库来保存每次迭代后寻得的非劣解,执行时将存储空间划分为超立方体,并使用这些超立方体作为一个坐标系统定位粒子,其中每个粒子的坐标是根据其适应度定义的。在确定每个超立方体的适应度后,通过轮盘赌方法选择超立方体,全局极值从选出的超立方体中随机确定。
多目标粒子群算法程序中,第
个粒子的速度更新公式如下:
w为线性递减的惯性权重,递减公式同标准粒子群算法;c1、c2为学习因子;r1、r2为0到1之间均匀分布的随机矩阵;pbest(i)为第i个粒子的历史最佳位置,pos(i)为第i个粒子当前的位置,REP(h)为从外部存储库中选择出的全局极值。
多目标粒子群优化算法的编码程序相较于其他多目标进化算法而言更为简单,涉及的参数较少,易于控制,运行过程中可以同时处理多个目标函数,实现并行求解,具有较快的收敛速度,广泛适用于多种实际工程优化问题。
3. 屋面桁架吊点优化
吊点优化包括吊点位置和数量的双重优化,本文主要对吊点的位置进行优化模拟,共分两个步骤来完成:对绑扎点的位置的选取;在确定绑扎点位置的基础上对吊点高度进行优化。
3.1. 工程背景
太原水上运动中心终点塔屋面顶部的钢结构桁架采用整体吊装法进行吊装。屋面桁架外形呈异形,悬挑长度达16 m,吊装总重量150 t,就位高度21.8 m。实际工程中选用一台500 T汽车吊和一台400 T汽车吊同时抬吊,吊装过程设置4个绑扎点,动力系数考虑1.1倍。经实际放样得出西侧吊装最大半径11.830 m,臂长26.7 m;东侧吊装最大半径10.935 m,臂长29 m。桁架重心靠近东侧,故西侧选用400 T汽车吊,东侧选用500 T汽车吊。屋面桁架钢梁采用H型钢和箱型截面,最大板厚为40 mm,使用的钢材材质均为Q345B。模拟中考虑钢桁架杆件的弯曲效应,使用梁单元构建钢桁架模型,吊绳采用只拉不压的杆单元来模拟,选用的具体构件类型列于表1。
为了简化分析模型,本文假设屋面桁架节点均为刚性节点,且钢丝绳足够安全。模拟过程中考虑的荷载主要为重力荷载,取9.8 m·s−2。钢结构和钢丝绳吊索的材料等级均取Q345,相关力学参数为:弹性模量E = 206000 MPa,泊松比ν = 0.3,密度ρ = 7850 kg·m−3。
3.2. 目标函数的确定
吊点位置的优化不仅要考虑结构自身的强度,还应综合考虑起重设备的性能和索具的安全,以得到经济合理的吊装方案。由于钢桁架截面的多变性和不连续性,在结构受力分析中容易出现应力集中,单纯以最大内力作为判别标准往往并不能很好地反映方案的优劣性,所以引入最小应变能原理 [2] [3] 来作为方案优化的目标。
以位移(或应变)为基本变量所表达的变形能叫做应变能(Strain energy)。应变能包括两个部分:正应力(s)与正应变(e)产生的应变能和切应力(t)与切应变(g)产生的应变能。对于线弹性范围内工作的等截面杆件,只考虑轴向应力作用,忽略加载和卸载中的能量损耗,其应变能U在数值上等于外力F所做的功:
dW为微小体元,Du为其位移,Ni为杆件轴力,Li为杆件长,EAi为杆件轴向刚度,n为正整数。
应变能综合考虑结构的应力与应变状态,随着外部受力系统的不同而发生相应改变,并且与结构内力具有相同的单调性,故将最小应变能作为目标函数是可行的。但是在绑扎点位置确定的情况下,桁架结构吊装系统的总体应变能受吊绳应变能主导随吊点高度的增高成递增状态,采用单一的应变能最小已经无法满足吊点高度优化的目标,所以本文将绳索内力也作为目标进行优化。
3.3. 应变能遍历法确定绑扎点位置
绑扎点位置会直接影响结构体系的受力状态,若绑扎点距离过近,结构容易发生失衡倾覆;若距离过远,又会使结构体系产生较大的弯曲应力,于结构安全不利。桁架吊装不同于单根结构梁的吊装,为保证桁架受力安全,一般将绑扎点设置在桁架节点之上,这就决定了桁架绑扎点位置的离散性 [3]。可以在ANSYS经典界面Mechanical APDL中使用表参数来表征离散的绑扎点位置,通过循环命令对所有可能的情况进行模拟,从而确定最合理的方案。本工程屋面桁架为异形结构,重心偏向一侧,在两吊点四绑扎点系统下,绑扎点的布置考虑15种可行方案,都位于屋面桁架的上弦,位置如图1所示。
![](//html.hanspub.org/file/8-2750915x28_hanspub.png)
Figure 1. The arrangement schemes of binding points
图1. 绑扎点布置方案
此环节中,吊点高度设为9.270 m (吊点位置离屋面桁架上弦的距离),为实际工程方案设计时选用的吊点高度。通过模拟得到绑扎点布置的最佳方案为(E2, W3),绑扎点布置如图2所示。对应的桁架应变能为4164.646 J,使用ANSYS单元表提取得到的应变能为4223.726 J,考虑了切应力与切应变产生的应变能。输出的结果参数列于表2中,图3为排序后的应变能变化。
![](//html.hanspub.org/file/8-2750915x29_hanspub.png)
Figure 2. The optimal arrangement of binding points
图2. 最佳绑扎点布置
![](Images/Table_Tmp.jpg)
Table 2. The calculation result parameters of 15 binding point combinations
表2. 15个绑扎点组合的计算结果参数
注:表2中的应变能为根据目标函数计算得出的应变能,自动应变能是ANSYS单元表提取出的应变能。
![](//html.hanspub.org/file/8-2750915x30_hanspub.png)
Figure 3. Strain energy change of hoisting system
图3. 吊装系统应变能变化
从图表中可以看出,当桁架应变能最小时,桁架的轴力和轴向应力也相应的处于较小的范围内,再次证明以应变能作为优化目标是合理的。15个方案得出的最大合位移14.545 mm小于设计容许的挠度值40 mm,最大轴向应力值11.853 MPa小于Q345B钢材的设计许用应力为210 MPa,满足要求。
3.4. 基于多目标粒子群算法的吊点高度优化
吊点高度的选择不仅会造成桁架结构本身力学状态的改变,还会影响起吊设备的受力。吊装过程中绳索内力会随着吊点高度的降低而增大,并且吊点高度过低,绳索的水平分力会过大,桁架容易发生平面外屈曲;而吊点高度过高,绳索长度过长,桁架在吊装过程中受风力等外界因素的影响就会较大,给吊装带来安全隐患 [2]。本文选择合理的吊点高度时用到了两个优化控制标准:吊装系统整体应变能和吊索索力,所以需要使用多目标粒子群算法来实施优化,多目标粒子群的编码在MATLAB编译环境中完成,通过MATLAB命令后台调用ANSYS程序和编写好的参数化命令流文件进行结构计算。
模拟中选用的粒子种群数为50,外部存储库大小为50,共迭代50次。吊点高度变化的下限根据吊装仰角确定,一般取45˚,所以变量下限定为6 m;上限根据实测的吊装最大半径和起重机的臂长限制确定,取为12 m。为验证结果的正确性,对算法进行10次运行,得出10组对照数据,运行结果列于表3中,统计十组非劣解均值的方差为0.0249,可以认为优化算法是可行的。
![](Images/Table_Tmp.jpg)
Table 3. The non-inferior solutions statistics of ten sets
表3. 十组非劣解统计
注:表3中的运行用时是在Windows 7 (4096 MB RAM/1.80 G HZ CPU)系统上运行得出的。
由于篇幅限制,只给出与10组非劣解均值8.608 m最接近的第四次运行后得到的非劣解的Pareto曲线,如图4。图中红色星号代表非劣解的适应度,黑色圆圈代表当前迭代次数的种群适应度。
![](//html.hanspub.org/file/8-2750915x31_hanspub.png)
Figure 4. Pareto chart of non-inferior solutions of fourth group
图4. 第四组非劣解的Pareto曲线
多目标优化算法在选取最后的全局极值时方法并不统一,而本文取10次运行后所有非劣解的平均值8.608 m为最终确定的吊点高度。屋面桁架在选定方案下的合位移和轴向应力云图如图5和图6所示。可以得到桁架吊装系统应变能为3896.656 J (自动应变能3956.258 J),桁架合位移最大值为5.997 mm,轴向应力最大值为9.547 MPa,满足设计要求,且相对较小,可以使整体系统处于平稳状态,有利于施工过程中结构的安全。
![](//html.hanspub.org/file/8-2750915x32_hanspub.png)
Figure 5. Combined displacement cloud map of the final lifting plan
图5. 最终吊装方案合位移云图
![](//html.hanspub.org/file/8-2750915x33_hanspub.png)
Figure 6. Axial stress cloud map of the final lifting plan
图6. 最终吊装方案轴向应力云图
4. 结语
1) 本文对ANSYS参数化建模、多目标粒子群算法和MATLAB算法编程等进行了深入研究,以系统总能量最小和绳索内力最小为优化目标,首先通过应变能遍历法确定了绑扎点的位置,然后基于多目标粒子群算法确定了起吊时吊点的高度,最终得到屋面桁架的吊点布置优化方案。结果满足设计要求,并使结构内力和变形都处于较小的状态,达到了方案优化的目的。
2) 离散的绑扎点位置可以通过ANSYS表参数很好地表征,避免方案择优中的重复建模,减轻工作负担,提升优化效率。但是当可行方案数目过多时,ANSYS做循环计算所用的时间会随之拉长,且极耗内存,这对电脑硬件设备的性能提出了较高的要求。
3) 基于Pareto占优的MOPSO算法将多目标优化融入粒子群算法中,解决了标准粒子群算法只能处理单目标优化问题的局限,使得粒子群算法的应用范围更加广泛。但是多目标粒子群算法只能得到一组尽可能靠近Pareto前沿的解的集合,每次的求解结果也不尽相同,如何控制多目标粒子群算法求解的精度仍是一个亟待解决的难题。
致谢
本文的完成离不开老师和同学们的帮助和鼓励,在此,我要向李立军老师以及我的师兄师姐、同门们致以真诚的感谢。同时,感谢各位专家学者的研究成果,让我得以参考学习,我已在文中一一列出。最后,向百忙中抽出时间参与我论文评审的专家学者表达我最诚挚的谢意,谢谢各位!