2 算法性能测试
为了验证IPSO算法的性能,将IPSO算法和遗传算法(GA)、粒子群算法(PSO)及烟花算法(FWA)进行比较。选取3个最小值唯一且都为0的标准测试函数对算法性能进行测试。其中,为Rosenbrock函数,它是一个结构特征酷似峡谷的单峰函数,其全局最小值位于绵长且平坦的谷底,该函数可用于测试算法的全局搜索能力。
(17)
F2(X)为Rastrigin函数,是1个局部极小值较多的多峰函数,可以测试算法跳出局部最优的能力:
(18)
F3(X)为Ackleys函数,用来测试算法全局收敛速度:
(19)
为了比较算法的性能优势,IPSO,GA,PSO和FWA算法中均取最大迭代次数T=500,种群规模N=100。Rosenbrock函数对应维度为D=10,其他2种函数对应维度D=35。图3所示为各算法迭代过程中最佳适应度收敛曲线。
从图3可见:在这4种算法中,IPSO算法的搜索能力最强,收敛速度最快。这是因为IPSO算法充分利用了烟花算法的爆炸机制来增强种群多样性,降低了算法限入局部极值的概率;同时,引入的扰动因子避免了IPSO算法在局部极值区域的冗余迭代,加快了算法收敛速度。
为进一步验证算法的鲁棒性,这4种算法分别独立运行50次,得到的最优解、最差解、最优适应度均值、方差如表1所示。
表1 4种算法独立运行50次的测试结果
Table 1 Test results of four algorithms running independently 50 times
表1表明:在用4种算法对3个测试函数分别进行寻优运算的实验中,IPSO算法所得到的500次独立运行结果中的最优解、最差解,以及500次求解结果的均值和方差等均低于GA,PSO和FWA算法相应的求解结果,表明IPSO算法具有更强的全局搜索能力和鲁棒性。
3 IPSO算法在机车二系调簧中的应用
3.1 机车二系支承结构几何模型
本文实验平台为实验室自主研发设计的大功率机车车体称重调簧试验台[4],本实验所有数据均来源于现场采集,试验台为车体提供12个支承点,通过液压系统控制支承点抬升来模拟各二系弹簧处的加垫操作。试验台的位移控制精度达0.1 mm,足以保证试验的可靠性。
轴式为C0-C0的电传动机车二系支承结构的简化模型见图4。此模型只考虑二系弹簧垂向载荷分布,将车体视为一个整体,总重力为P,和分别为车体重心在X和Y方向的偏移量,a和b分别为沿X和Y方向距离车底中心O的距离,S1和S2为同一转向架同侧的二系弹簧横向间距,F1~F12分别为12个二系弹簧对车体的支承力。
图4 C0-C0轴式机车二系支承结构简化模型
Fig. 4 Simplified geometry model of secondary suspension system of C0-C0 locomotive
3.2 目标函数
文献[5-6]针对机车二系弹簧载荷分布建立了基于传统机理模型的优化模型,具体形式为
(20)
式中:目标函数J表示二系弹簧载荷分布均方差,J越小,表示载荷分布越均匀;和分别为加垫调整前后第j个二系弹簧的载荷;为所有二系弹簧的载荷平均值;n为机车二系弹簧数目,从图4可知n=12;为加垫引起载荷变化的增载系数;为第i个弹簧对应的加垫高度;为常数,为试验允许的最大加垫高度。
3.3 仿真试验结果
以大功率HXD1D型机车为试验对象,根据现场实测数据结合IPSO算法开展调簧仿真实验。为避免参数选择的盲目性,利用遗传算法对IPSO算法的参数进行全局优化,综合考虑计算复杂度和参数可靠度,得出一组最优参数组合:种群规模N=60,迭代次数G=200次,惯性权重最大值wmax=0.9,惯性权重最小值,学习因子,最大允许加垫高度=10 mm。4种算法仿真实验过程中的迭代收敛曲线如图5所示。
图5 4种算法的迭代收敛曲线
Fig. 5 Convergence curves of four algorithms
由图5可知:在迭代前期,IPSO算法的收敛速度明显比GA,PSO和FWA这3种算法的快;随着迭代次数增加,PSO和FWA算法趋于早熟收敛,而IPSO算法在迭代超过60次以后载荷方差还有明显下降,表明将粒子群算法与烟花算法相结合的IPSO算法很好地克服了传统算法早熟的问题;同时,在相同种群规模下,IPSO算法的收敛精度最高,具有较强的全局搜索能力。
HXD1D型机车共有12个二系支承点,IPSO算法优化前后,各支承点处二系弹簧的载荷分布情况和相应的加垫高度如表2所示。由表2可知:通过IPSO算法优化后,二系弹簧载荷分布方差由初始的1.300 降低到0.507 ,减小了61%;12个二系弹簧载荷的最大差值也由2.68 kN减小到2.03 kN,减小了24.3%。实验结果验证了IPSO算法优化二系弹簧载荷分布均匀性的有效性。
表2 HXD1D型机车初始二系载荷分布及优化结果
Table 2 Initial distribution and optimization results of secondary spring load of locomotive HXD1D
为了进一步验证IPSO算法在机车二系弹簧载荷分布优化中的有效性和鲁棒性,将其与遗传算法、粒子群算法、烟花算法进行比较,4种算法在种群规模为60,迭代次数为200次的条件下独立运行50次的结果见表3。从表3可以看出:IPSO算法的平均运行时间比GA略短,比PSO和FWA耗时要长;但IPSO算法50次求解得到的二系弹簧载荷分布方差的平均值为0.507 8,较PSO算法的0.744 9减小了31.8%,较FWA算法的0.633 5减小了19.8%,较GA算法的0.644 9减小了21.3%,在求解精度上具有显著优势;IPSO算法50次求解得到的二系弹簧载荷分布方差的标准差仅为3.113 5×10-4,50次求解得到的二系弹簧载荷分布方差的最优解与最差解仅相差0.001 2,显示了良好的鲁棒性;与GA算法相比,IPSO算法在求解精度、求解效率、鲁棒性等方面均具有一定优势。
表3 4种算法独立运行50次的结果对比
Table 3 Results comparison of four algorithms independently running 50 times
PSO,FWA,GA和IPSO算法分别独立运行50次所得结果分布的箱式图见图6。图6中每个箱体的高度在一定程度上反映了50次结果数据的波动程度,箱体上方和下方的线段代表了该组数据的最大值和最小值,箱体内部的线代表该组数据中位数的值,箱子外部的点为数据中位于箱体外面且距离相应边界大于1.5倍箱体高度的“异常值”。从图6可以直观地看出:描述IPSO算法50次运行结果分布的箱体高度最小,表明该算法多次运行结果的波动远比其他3种算法的小,且50次运行结果中没有“异常值”,具有很好的鲁棒性;IPSO算法50次运行结果的中位数值在所有算法中最小,表明该算法求解精度最高。
图6 4种算法50次独立运行结果分布的箱式图
Fig. 6 Box-plot of four algorithms
4 结论
1) 提出了一种采用分层递阶结构的改进粒子群算法IPSO,算法底层为基础层,通过在粒子群算法中加入维变异算子,避免算法早熟收敛;中间层为融合层,融入烟花算法,采用改进的烟花爆炸机制进行粒子更新,充分利用烟花算法的优势平衡IPSO算法的全局和局部搜索能力;顶层为扰动层,在一定条件下对每次迭代过程中得到粒子的个体极值和全局极值进行加入扰动因子,以避免算法在局部极值区域进行冗余迭代,提高算法效率。
2) IPSO算法在全局搜索能力、求解精度、鲁棒性等方面的综合性能明显优于其他几种优化算法。
3) 经过IPSO算法优化后的载荷均方差相较于原始值减小了61%,改进效果明显;在算法独立运行50所得二系弹簧载荷分配方差的平均值与遗传算法、烟花算法和粒子群算法相比,分别减小21.3%,19.8%和31.8%,且50次运行结果的波动幅度远小于这些算法,充分证明了IPSO算法在求解机车二系弹簧载荷分配优化问题的有效性和可靠性。
参考文献:
[1] 潘迪夫, 陈军, 鲍天哲, 等. 多输出支持向量机混合模型在机车调簧中的应用[J]. 华南理工大学学报(自然科学版), 2018, 46(4): 22-28.
PAN Difu, CHEN Jun, BAO Tianzhe, et al. Application of multi-output support vector regression hybrid model in locomotive secondary spring loads adjustment[J]. Journal of South China University of Technology(Natural Science Edition), 2018, 46(4): 22-28.
[2] BAO Tianzhe, HAN Kun, PAN Difu. Method for secondary spring load equalization of railway vehicles with two-stage spring suspension: Modeling and optimal regulation[J]. Journal of Central South University, 2018, 25(4): 936-948.
[3] CURTIS D L, SKRZYPEZYK W G, THOMAS T J. Method of adjusting the distribution of locomotive axle loads: United States, 4793047[P]. 1988-12-27.
[4] 潘迪夫, 韩锟, 曾亚波, 等. 车体称重调簧试验装置及其应用[J]. 电力机车与城轨车辆, 2003, 26(5): 37-39.
PAN Difu, HAN Kun, ZENG Yabo, et al. Locomotive secondary spring load test device and its application[J]. Electric Locomotives & Mass Transit Vehicles, 2003, 26(5): 37-39.
[5] 韩锟, 潘迪夫. 机车二系弹簧载荷均匀性分配调整的混合建模方法[J]. 中南大学学报(自然科学版), 2012, 43(1): 378-383.
HAN Kun, PAN Difu. Hybrid modeling method for adjusting distribution of locomotive secondary spring loads[J]. Journal of Central South University(Science and Technology), 2012, 43(1): 378-383.
[6] 潘迪夫, 黎航, 韩锟. 基于遗传算法的机车二系支承载荷调整优化方法[J]. 中国铁道科学, 2005, 26(3): 83-87.
PAN Difu, LI Hang, HAN Kun. Optimization model of locomotive secondary spring load adjustment based on genetic algorithm[J]. China Railway Science, 2005, 26(3): 83-87.
[7] 杨本磊, 潘迪夫. 基于人工鱼群算法的机车二系支承载荷调整优化方法[J]. 计算机与现代化, 2011(1): 52-54, 120.
YANG Benlei, PAN Difu. Optimization model of locomotive secondary spring load adjustment based on artificial fish-swarm algorithm[J]. Computer and Modernization, 2011(1): 52-54, 120.
[8] 高久淳, 林建辉. 基于模拟退火算法的地铁车辆调簧优化算法设计[J]. 机械, 2014, 41(10): 29-32.
GAO Jiuchun, LIN Jianhui. Optimization method of spring adjustment model based on simulated annealing algorithm for metro vehicles[J]. Machinery, 2014, 41(10): 29-32.
[9] 韩锟, 潘迪夫, 韩洪飞. 机车车辆二系弹簧载荷分配优化的改进遗传算法[J]. 中南大学学报(自然科学版), 2016, 47(7): 2521-2527.
HAN Kun, PAN Difu, HAN Hongfei. An improved genetic algorithm for secondary spring load equalization of railway vehicles[J]. Journal of Central South University(Science and Technology), 2016, 47(7): 2521-2527.
[10] 李家才, 韩锟, 鲍天哲. 基于Bloch球面坐标的改进量子遗传算法及其应用[J]. 铁道科学与工程学报, 2016, 13(11): 2262-2269.
LI Jiacai, HAN Kun, BAO Tianzhe. An improved Bloch spherical quantum genetic algorithm and its application[J]. Journal of Railway Science and Engineering, 2016, 13(11): 2262-2269.
[11] 潘迪夫, 朱亚男. 基于多目标遗传算法的机车二系支承载荷调整优化方法[J]. 铁道科学与工程学报, 2011, 8(2): 76-80.
PAN Difu, ZHU Yanan. Optimization model for locomotive secondary spring load adjustment based on multi-objective genetic algorithm[J]. Journal of Railway Science and Engineering, 2011, 8(2): 76-80.
[12] PAN Difu, WANG Mengge, ZHU Yanan, et al. An optimization algorithm for locomotive secondary spring load adjustment based on artificial immune[J]. Journal of Central South University, 2013, 20(12): 3497-3503.
[13] KENNEDY J. Particle swarm optimization[M]//Encyclopedia of Machine Learning and Data Mining. Boston, MA: Springer, 2017: 967-972.
[14] KENNEDY J, EBERHART R. Particle swarm optimization[C]//Proceedings of ICNN'95-International Conference on Neural Networks. Perth, Australia: IEEE, 1995: 1942-1948.
[15] TAN Ying, ZHU Yuanchun. Fireworks algorithm for optimization[C]//Advances in Swarm Inteligence. Beijing, China: Springer, 2010: 355-364. DOI: 10.1007/978-3-642-13495-1_44.
[16] 谭营, 郑少秋. 烟花算法研究进展[J]. 智能系统学报, 2014, 9(5): 515-528.
TAN Ying, ZHENG Shaoqiu. Recent advances in fireworks algorithm[J]. CAAI Transactions on Intelligent Systems, 2014, 9(5): 515-528.
[17] 付国江, 王少梅, 刘舒燕, 等. 含维变异算子的粒子群算法[J]. 武汉大学学报(工学版), 2005, 38(4): 79-83.
FU Guojiang, WANG Shaomei, LIU Shuyan, et al. A PSO with dimension mutation operator[J]. Journal of Wuhan University of Hydraulic and Electric Engineering, 2005, 38(4): 79-83.
[18] LI Junzhi, ZHENG Shaoqiu, TAN Ying. Adaptive fireworks algorithm[C]//2014 IEEE Congress on Evolutionary Computation (CEC). Beijing, China: IEEE, 2014: 3214-3221.
[19] ZHENG Shaoqiu, JANECEK A, TAN Ying. Enhanced fireworks algorithm[C]//2013 IEEE Congress on Evolutionary Computation. Cancun, Mexico: IEEE, 2013: 2069-2077.
(编辑 陈灿华)
收稿日期: 2019 -03 -05; 修回日期: 2019 -05 -10
基金项目(Foundation item):国家自然科学基金资助项目(51305467)(Project(51305467) supported by the National Natural Science Foundation of China)
通信作者:韩锟,博士,副教授,从事载运工具智能测控技术及性能优化研究;E-mail: hkun@csu.edu.cn