注册后就可以查看哦!
您需要 登录 才可以下载或查看,没有账号?立即注册
x
韩亚鹏 弓旭峰 高有山 鲍东杰 行瑞凯 太原科技大学机械工程学院 太原 030024 摘 要:为了实现节能减排以及减轻桥式起重机结构自重的目的,对粒子群算法与遗传算法进行结合,提出了一种对粒子群算法的改进算法——PSO-GA优化算法。算法以粒子群算法为基本框架并融合遗传算法的交叉算子,遗传算法交叉算子的引入可以对寻优过程中种群的进化进行智能调节,提高了寻优精度以及增加了算法的鲁棒性。将该算法应用于对桥式起重机的中轨箱形桥架结构轻量化设计,优化后桥架结构自重比原模型减小了13.025%。将轻量化设计后的桥架结构模型利用Solidworks软件建模,并导入Ansys Workbench软件中进行有限元分析,仿真结果验证了PSO-GA算法应用于桥式起重机桥架结构优化设计中的可行性。 关键词:桥式起重机;粒子群算法;遗传算法;PSO-GA混行算法;优化设计 0 引言起重机在国家现代工业发展过程中占有举足轻重的地位[1],桥架结构是桥式起重机的主要承重部件,在满足设计要求的前提下,研究对其结构轻量化设计的方法,最大程度减轻结构的自重[2],不但有利于节能减排,且对于起重机械的发展也具有十分重要的意义,具有很大的研究价值。 国内外众多学者通过不断的观察和专研自然生态现象,逐渐开发了一些智能仿生优化算法,并将其应用于起重机结构轻量化设计中,如引力搜索算法(GSA)[2]、萤火虫算法(FA)[3]、果蝇算法(ACO)[4]等。粒子群算法[5-6]与遗传算法[7-9]是近年来发展迅速,应用最广的两种优化算法,但在用于工程优化问题时,粒子群算法经常存在因收敛过早而陷入局部最优解的问题;而遗传算法存在局部搜索能力差的问题。 为此本文在研究了粒子群算法与遗传算法基本原理的基础上,通过对比其性能以及优缺点,对两种算法进行结合,优势互补,提出了一种对粒子群算法的改进算法——PSO-GA优化算法。 1 PSO-GA优化算法针对提出的PSO-GA优化算法,其操作是以粒子群算法作为基本框架,首先需要进行初始种群操作,计算适应度函数值,并以此更新粒子的速度以及位置。然后将种群随机分为两个子种群,一个子种群保留,不对其操作,对另一个子种群进行遗传操作,而交叉操作有利于搜索均匀的向最优解方向进行,产生新的子代个体代替父代个体,增加种群的多样性以及丰富搜索范围,有利于提升算法的全局搜索能力。完成遗传操作后,子种群与保留的种群重新组合,算法开始对新种群进行适应度评估,然后结合粒子群算法的更新公式,进行进一步的迭代更新操作,通过不断的更新使种群进化。交叉算子的引入提升了算法的全局搜索性能,有效避免单一粒子群算法搜索陷入局部最优值的缺陷。因此组合后的PSO-GA算法的优化性能可以得到很大的提升。粒子群算法的种群中第i个粒子的位置状态方程:
通过对式(1)分析可知,自我认知惯性权重系数ω、自我认知学习因子c1和社会认知学习因子c2是影响粒子速度更新的关键因素,这些参数的调整很大程度上控制粒子的运动,决定了算法的性能优劣。 自我认知惯性权重系数是一个最重要的参数,ω的取值越大,表示粒子运动惯性越大,体现出粒子维持原来速度的欲望越强烈,导致粒子的位置Xi的变化就越大,这样不断循环扩展了粒子的搜索空间,所以较大的ω有利于算法进行全局寻优,但求解精度难以保证。反之ω取值越小,有利于算法进行局部寻优,同时也容易导致算法陷入局部最优。所以,合理地设计自我认知惯性权重系数是保证算法寻优性能的关键,为了平衡PSO-GA算法的全局与局部寻优能力,本文采用动态自我认知惯性权重系数,其表达式为:
式中: 为自我认知惯性权重系数ω的最大值, 为自我认知惯性权重系数ω的最小值,t为算法的当前迭代次数,T为算法的最大迭代次数。 分析式(2)可知:当程序刚开始运行t为1时,自我认知惯性权重系数ω取值为ωmax;随着程序运行,迭代次数的不断增加,ω呈减小的趋势。通过ω的动态变化,使算法在运行初期粒子能够不断扩展搜索空间,有助于算法进行全局寻优,而在算法运行后期,大部分粒子都集中在最优解附近,更加注重的是算法的局部开发能力以发现精确解。因此,通过自我认知惯性权重的自适应调节,算法能够根据当前迭代次数动态地给出粒子不同的自我认知惯性权重,全局性地改进算法的寻优性能。 自我认知学习因子c1是PSO-GA混行算法速度状态方程中用于调节粒子向个体极值运动的重要参数,社会认知学习因子c2是用于调节粒子向种群历史极值运动的重要参数。 当c1取较大值时,粒子倾向于往个体极值的方向运动,这样可以减缓粒子的趋同性,种群样本可以得到保留,有助于算法全局寻优;当c2取较大值时,粒子倾向于往历史极值的方向运动,这样个体的趋同性更加强烈,有助于算法局部寻优。通过对速度状态方程的分析,容易得出PSO-GA算法在运行初期,设置较大的c1和较小的c2可以有效避免算法早熟收敛于局部极值;而在算法运行后期,设置较小的c1和较大的c2,有助于算法进行全局寻优,于是在文中设计了线性递减的自我认知学习因子和线性增加的社会认知学习因子,其计算公式为:
式中:c1s为自我认知学习因子c1的初始值;c1e为自我认知学习因子c1的最终值;c2s为社会认知学习因子c2的初始值;c2e为社会认知学习因子c2的最终值。 改进后的PSO-GA混行优化算法流程与改进前基本一致,两者之间的不同,主要表现在改进前PSO-GA算法的惯性权重系数ω、自我认知学习因子c1和社会认知学习因子c2都是给定的值,而此处改进后的PSO-GA混行优化算法给出的则是惯性权重系数的ω最大与最小值,自我认知学习因子c1和社会认知学习因子c2的初始值与最终值,它们随着迭代代数的增加而线性递增或递减。相应地,在算法程序中做出改变。 2 测试函数仿真通过设置不同的种群规模,分别用基本粒子群算法和PSO-GA优化算法对Rastrigrin测试函数进行求解测试,分析改进后的混行算法的寻优性能。Rastrigrin函数表达式为:
Rastrigrin函数三维网格图如图1所示,自变量x和y的取值范围都是(-5, 5),从网格图中可以清楚地看出Rastrigrin函数是一个复杂多峰、谷函数,在其定义域内函数存在多个局部极值,该函数的全局最优解为0。选择最大迭代次数为300次,种群规模N取20,自我认知学习因子c1s、c1e分别取值为0.7和0.3,社会认知学习因子c2s、c2e分别取值为0.3和0.7,惯性权重系数的最大、最小值分别取值为0.9和0.4,杂交概率 cP取值为0.5,分别用PSO算法和PSO-GA算法对测试函数进行迭代计算30次,随机选取8组测试结果整理如表1所示,种群规模N=20。  图 1 Rastrigrin函数三维网格图
从表1中计算结果可以看出,当种群数量N设置为20时,PSO算法有2次求解到Rastrigrin函数的全局最优解;而PSO-GA算法有7次求解到Rastrigrin函数的全局最优解。 表 1 仿真实验数据 
从中随机选取1组测试结果的迭代曲线如图2和图3所示。通过图2和图3,可以看出PSO算法和PSOGA算法都是收敛的,在算法运行的初期,迭代次数小于80次时,个体的适应度函数值的平均值出现波动,但总体呈减小趋势,波动反映出粒子在进化运动过程中函数峰值的影响。将种群规模N=20时,PSO算法和PSO-GA算法的迭代曲线综合起来作仿真结果对比分析,如图4所示。  图 2 PSO算法迭代曲线
 图 3 PSO-GA算法迭代曲线
 图 4 仿真结果对比
图4能够直观地表现出两种算法此次迭代过程的不同,PSO算法收敛速度较快,迭代到10次左右得到最优值,而PSO-GA算法收敛速度较慢,迭代到30次左右得到最优值;随着迭代次数的增加,PSO算法陷入了局部最优解中,种群未能继续进化,PSO-GA算法能够使种群继续进化,得到全局最优解。 继续用Rastrigrin函数继续进行仿真测试,选择迭代300次,增大种群规模N,取N=100,自我认知学习因子c1s、c1e分别取值为0.7和0.3,社会认知学习因子 、c2e分别取值为0.3和0.7,惯性权重系数ω的最大、最小值分别取值为0.9和0.4,杂交概率取值为0.5,分别用PSO算法和PSO-GA算法对测试函数进行迭代计算,随机选取6组测试的结果整理如表2所示,种群规模N=100。 表 2 仿真实验数据 
从表2中计算结果可知,当种群规模N设置为100个时,PSO算法和PSO-GA算法6次全部求解到Rastrigrin函数的全局最优解。 从中随机选取1组测试结果的迭代曲线如图5和图6所示。  图 5 PSO算法迭代曲线
从图5和图6中可以直观地看到PSO算法迭代到10次左右得到函数最小值,随着迭代次数的增加,在迭代到50次左右时,个体适应度函数的平均值基本接近最优值,表明个体全部到达最优位置附近,种群停止进化;PSO-GA算法迭代到25次左右得到函数最小值,迭代到90次左右时,个体适应度的平均值基本接近最优值,表明种群停止进化。将种群规模N=100时,PSO算法和PSO-GA算法的迭代曲线综合起来作仿真结果对比分析,如图7所示。  图 6 PSO-GA算法迭代曲线
 图 7 仿真结果对比
图7表明,当种群规模N=100时,种群规模足够大,PSO算法和PSO-GA算法都求解得到全局最优值,并表现出较好的收敛趋势,但PSO-GA算法收敛速度明显较慢。 通过设置不同的种群规模N,从两次仿真结果对比,不难看出在引入遗传算法的交叉算子以后,丰富了种群个体的多样性,能够有效避免粒子群算法因种群样本数量不足而陷入局部最优的现象,使PSO算法的性能得到进一步改善,表明PSO-GA算法在寻优方面具有更好的鲁棒性。综上所述,PSO-GA算法比PSO算法在寻优过程的稳定性和搜索精度方面得到明显的改善,本文提出的PSO-GA优化算法能够稳定的求解到函数的最优解。 3 桥式起重机桥架结构轻量化设计构造轻量化设计的数学模型,有n个设计变量:
使目标函数:
满足约束条件:
式中:P为不等式的约束个数,q为等式的约束个数。 轻量化设计数学模型是实际问题抽象的表达,也是进行优化设计的基础。为了得到满意的设计结果,应分析工程实际问题的简繁程度,建立精确数学模型的同时,构造模型应尽量简单,提高计算机求解速度和精度。 本文选取基本粒子群算法与引进遗传算子改进的PSO-GA优化算法对桥式起重机箱型桥架结构进行轻量化设计,并对两种算法结果分析。 对主梁轻量化设计,设置PSO算法和PSO-GA算法的种群规模皆为300,最大迭代次数为300次,其他参数保持不变。用Matlab软件分别运行程序20次,随机抽取一次实验结果,绘制收敛过程图进行对比分析,如图8所示。  图8 收敛过程对比
图8两种不同算法的迭代对比图中表明:与粒子群算法相比,改进的PSO-GA算法迭代结果良好,优化效果明显。基本粒子群算法在迭代次数为40代附近寻找到全局最优解,PSO-GA算法在迭代次数为140代附近寻找到全局最优解,获得的最优迭代解比PSO算法的最优解小,从图中可以直观的看出PSO算法寻优精度较低。充分验证了PSO-GA算法的有效性和优越性。 该起重机的设计参数如表3所示,主梁轻量化设计变量取值范围如表4所示,端量梁轻量化设计变量取值范围如表5所示。随机选取PSO算法和PSO-GA算法在种群规模为300时,程序迭代结果的10组数据进行整理,观察算法迭代寻优数据的变化,优化结果如表6所示。 表 3 起重机设计参数表 
表 4 主梁设计变量取值范围 
表 5 端梁设计变量取值范围 
表 6 两种算法优化结果 
表 7 优化后截面参数 
4 结论SO算法轻量化设计结果与原始模型端截面尺寸相比,除了腹板高度略有增加,其他参数都有不同程度的减小,其优化率为47.98%;PSO-GA算法轻量化设计结果与原始模型端截面尺寸相比,除了翼缘板宽度保持不变,其他截面参数参数都有不同程度的减小,其优化率为48.17%。综合对比结果看,PSO-GA算法对端梁的优化效果较好,其优化率比粒子群算法增加了0.19%。两种算法分别对桥架结构主梁和端梁轻量化设计后圆整的数据整理进行整理,合并归纳如表7所示。
|