上海理工大学学报  2022, Vol. 44 Issue (5): 508-518   PDF    
基于非线性收敛因子和标杆管理的改进教与学优化算法
陈雪芬, 叶春明     
上海理工大学 管理学院,上海 200093
摘要: 针对教与学优化算法寻优精度低、收敛速度慢以及局部最优避免性弱的问题,提出了一种改进教与学优化算法(MTLBO)。在算法的教学和学习阶段,分别引入了非线性收敛因子调整策略和标杆管理策略。基于2种策略的随机组合形成了3种不同的MTLBOs,与标准教与学优化算法(TLBO)的对比实验结果表明,3种MTLBO均优于TLBO,其中,引入2种策略的MTLBO3取得了最佳的数值实验结果,其远优于原始TLBO。为进一步验证提出算法的有效性,与其他著名的群智能优化算法进行了数值实验对比。数值结果和收敛曲线表明,MTLBO3的寻优性能明显优于其他对比方法,具有更高的求解精度、更快的收敛速度以及更佳的局部最优避免能力。最后,使用有约束的工程优化问题进一步验证了提出算法的有效性。
关键词: 群智能优化算法     教与学优化算法     收敛因子     标杆管理    
Modified teaching-learning-based optimization algorithm based on the nonlinear convergence factor and benchmarking management
CHEN Xuefen, YE Chunming     
Business School, University of Shanghai for Science and Technology, Shanghai 200093, China
Abstract: A modified teaching-learning-based optimization algorithm (MTLBO) was proposed to solve the shortcomings of standard teaching-learning-based optimization algorithm (TLBO), such as low optimization accuracy, slow convergence speed and weak avoidance of local optimization. In the teaching and learning stages of the TLBO, the nonlinear convergence factor adjustment and benchmarking management strategies were introduced respectively. Based on the random combination of the two strategies, three different MTLBOs were constructed. Subsequently, the experimental results show that the three MTLBOs are better than the TLBO. Among them, the MTLBO3 with the two modified strategies achieves the best numerical results, which is much better than the original TLBO. In order to further verify the effectiveness of the proposed algorithm, numerical experiments are carried out with other well-known swarm intelligence optimization algorithms. Numerical results and convergence curves show that the optimization performance of MTLBO3 is significantly better than other comparison methods, with higher solution accuracy, faster convergence speed and better local optimization avoidance ability. Finally, the effectiveness of the proposed algorithm is further verified using constrained engineering optimization problems.
Key words: swarm intelligence optimization algorithm     teaching-learning-based optimization algorithm     convergence factor     benchmarking management    

群智能优化算法是一类基于种群的全局优化技术,同传统的精确算法不同,它们更擅长于求解具有大规模、非线性、多极值、不可导及不可微等特征的非常规问题。随着人工智能、大数据以及云计算等技术的快速发展,复杂优化问题的数量和规模与日俱增,这些问题往往难以用常规数学方法求解,而群智能算法则成为相对可行的解决方案。自1992年遗传算法(genetic algorithm, GA) [1]提出以来,众多模拟自然规模或者物种动态演化的群智能算法相继被提出。在群智能算法“家族”中,具有很多知名的成员,它们深受研究者的青睐,如粒子群算法(particle swarm optimization, PSO) [2]、和声搜索算法(harmony search algorithm, HS) [3]、人工蜂群算法(artificial bee colony algorithm, ABC) [4]、引力搜索算法(gravity search algorithm, GSA) [5]、蛾焰优化算法(moth-flame optimization algorithm, MFO) [6]、哈里斯鹰算法(Harris hawks optimization, HHO) [7]和灰狼算法(grey wolf optimization algorithm) [8]等。这些算法各有利弊,适合解决不同的工程优化问题。然而,随着新问题的不断产生,它们有可能都不再适用。面对不断产生的复杂问题,群智能算法的主要发展方向可分为两个,其一是设计新的算法去更好地解决问题,其二是对现有群智能技术进行改进以使其在求解问题时性能更佳。

教与学优化算法(teaching-learning-based optimization algorithm, TLBO) [9]是2011年Rao等基于一个自然班级中老师与学生间的教学行为而提出的一种群智能优化算法。人类是自然界最聪明的生物,因为,他们可以通过不断地学习获得丰富的知识和技能,课堂教育是学生获取知识的重要途经。在课堂上,教师通过设计课程、设计教学计划、实施教学活动和反思等一系列教学活动,努力提高班级平均成绩。同时,学生也通过努力学习和与其他人交流来提高自己的表现,实现整个团队的动态优化。TLBO很好地表征了人类的教学行为,而且具有不需要其他特殊参数、计算量小、一致性高等优势。但是,它依然存在着收敛速度不够快、解的质量不够高、在某些问题上局部最优避免性差等问题。因此,许多学者对其进行了改性研究。例如,为提高TLBO的求解质量以及加快TLBO的收敛速度和运行时间,Li 等[10]于2013年提出了一种改良的教与学优化算法A-TLBO,并利用A-TLBO对最小二乘支持向量机的超参数进行了优化调整及验证;为提升算法性能,于坤杰等[11]于2014年提出一种基于线性衰减收敛因子和信任权重的改进TLBO;为解决TLBO寻优精度低、稳定性差的问题,闫苗苗等[12]于2019年设计了一种多班级交互式教学优化算法(multi-classes interaction TLBO, MCITLBO)。然而,这些改性算法的设计要么使得计算成本增高,要么添加了一些需要调整的特殊参数。因此,本研究基于新的优化策略提出一种改进教与学优化算法。

2种改进策略分别是非线性收敛因子调整策略以及标杆管理策略。对于收敛因子,在标准TLBO中,收敛因子是随机取值为1或2,这种策略显然不符合实际,因为,随着教学经验的累积,教师的教学水平也应该得以提升。从算法角度来看,为加快收敛,算法的收敛因子应该随种群所获得的信息量进行动态调整,而不是笼统地设为1或2。此外,标杆管理是一种先进的管理学思想,针对学习阶段随机学习所导致的“无效学习”等问题,在班级中推选精英组,进而建立班级学习标杆,可以更好地帮助班级成员学习到更多“有用”的知识。从算法角度来看,标杆管理策略进一步主导了种群朝着正确的方向进化,从而加快了算法的收敛速度,使得算法有更多的精力致力于全局最优解的局部开发。为验证改进策略的有效性,基于2种策略的部署组合提出了3种改进教与学优化算法(modified teaching-learning-based optimization algorithm,MTLBO)的变体,并通过11个基准测试函数进行了实验对比。随后,为进一步验证提出算法的性能,使用性能最优的MTLBO与其他著名的优化算法进行了实验验证与分析。

1 教与学优化算法

TLBO的灵感来源主要是课堂上师生之间的教与学行为,其设计思想主要是基于一个典型的优化系统(即教学活动)的构建。在该系统中,TLBO将一个自然班级视为动态演化的种群,老师和学生都可作为种群中的搜索代理,他们的知识水平或考试成绩作为群智能优化算法的适应值。

在TLBO中,以正态分布来表示班级学生的成绩分布情况,如式(1)所示。

$ f\left(x\right)=\frac{1}{\sigma \sqrt{2\text{π} }}{{\rm{e}}}^{-\frac{{(x-\mu )}^{2}}{2{\sigma }^{2}}} $ (1)

式中: $\sigma^{2} $ 表示标准差, $\;\mu $ 表示均值。

假设某学校有2位属于不同的2个班级的教师 $ {{{\boldsymbol{T}}}}_{1} $ $ {{{\boldsymbol{T}}}}_{2} $ ,他们教授的学生水平完全相同。图1描述了 ${{{\boldsymbol{T}}}}_{1} $ ${{{\boldsymbol{T}}}}_{2} $ 各自所教授班级学生成绩在经过一段教学活动后的分布情况。在图1中,曲线1,2表示 ${{{\boldsymbol{T}}}}_{1} $ ${{{\boldsymbol{T}}}}_{2} $ 授课班级成绩分布, ${{{\boldsymbol{M}}}}_{1} $ ${{{\boldsymbol{M}}}}_{2} $ 分别表示该科目的全班平均成绩。可以看出, ${{{\boldsymbol{M}}}}_{2} $ 明显高于 ${{{\boldsymbol{M}}}}_{1} $ ,这说明 ${{{\boldsymbol{T}}}}_{2} $ 的教学水平更高。


图 1 不同教师的教学效果分布图 Fig. 1 Distribution of grades obtained by students taught by two different teachers

图2展示了教学活动前、后的班级成绩的变化情况。其中,曲线A和曲线B分别表示在教学活动之前和之后的全班成绩分布, $ {{{\boldsymbol{M}}}}_{{{\rm{A}}}} $ $ {{{\boldsymbol{M}}}}_{{{\rm{B}}}} $ 分别表示教学前后的全班平均成绩, $ {{{\boldsymbol{T}}}}_{{{\rm{A}}}} $ $ {{{\boldsymbol{T}}}}_{{{\rm{B}}}} $ 分别表示教学前后的最佳个体,即班级教师。


图 2 教学活动前后班级学生成绩分布图 Fig. 2 Distribution of grades obtained by students taught by a teacher

假设班级人数为N,则其基本种群的数学表示如式(2)所示。

$ {\boldsymbol{P}}=\left[\begin{array}{c}{{\boldsymbol{X}}}_{1}\\ {{\boldsymbol{X}}}_{2}\\ {{\boldsymbol{X}}}_{3}\\ \vdots \\ {{\boldsymbol{X}}}_{N}\end{array}\right]=\left[\begin{array}{c}{x}_{\mathrm{1,1}}\quad{x}_{\mathrm{1,2}}\quad\dots \quad{x}_{1,n}\\ {x}_{\mathrm{2,1}}\quad{x}_{\mathrm{2,2}}\quad\dots \quad{x}_{2,n}\\ {x}_{\mathrm{3,1}}\quad{x}_{\mathrm{3,2}}\quad\dots\quad {x}_{3,n}\\ \vdots\;\qquad\vdots\quad\quad\quad\;\; \quad\vdots \\ {x}_{N,1}\quad{x}_{N,2}\quad\dots\quad {x}_{N,n}\end{array}\right] $ (2)

式中: $ {\boldsymbol{P}}=[{{\boldsymbol{X}}}_{1},{{\boldsymbol{X}}}_{2},{{\boldsymbol{X}}}_{3},\cdots ,{{\boldsymbol{X}}}_{N}] $ 表示班级中的所有学生; $x_{i, j}(i=1,2,3, \cdots, N, \;j=1,2,3, \cdots, n)$ 表示第 $\;{i} $ 个学生在第 ${j} $ 个科目上所取得的成绩或者所拥有的知识水平。

简单来讲,教与学优化算法可划分为2个阶段:教学阶段与学习阶段。

1.1 教学阶段

在教学阶段,班上最优秀的个体被指定为老师。教师的目标是向所有学生传授知识,并尝试将班级的平均成绩提高到自身水平。假设当前的迭代次数为 $ {k} $ ,并且令 $ {{{\boldsymbol{M}}}}_{{k}} $ 为所有个体的平均成绩,而 $ {{{\boldsymbol{T}}}}_{{k}} $ 为迭代次数为 $ {k} $ 时的教师。当前班级平均成绩与教师水平之间的差异

$ {\boldsymbol{D}}={r}_{k} ({{\boldsymbol{T}}}_{{{k}}}-{{{T}}}_{{\rm{F}}}{{\boldsymbol{M}}}_{k}) $ (3)
$ {T}_{{\rm{F}}}=\left\{\begin{array}{l}1,\quad r\leqslant 0.5\\ 2,\quad r > 0.5\end{array}\right. $ (4)

式中: $ {{{{T}}}}_{\mathrm{F}} $ 称为教学因子,值为1或2; $ {{r}}_{{k}} $ $ {r} $ 表示0~1之间的随机数。

在学习阶段,个体进行位置更新的计算式为

$ {{\boldsymbol{X}}}_{{\rm{new}},i}^{k}={{\boldsymbol{X}}}_{i}^{k}+{\boldsymbol{D}} $ (5)

式中: ${\boldsymbol{X}}_{i}^{k}(i=1,2, \cdots, N)$ ${\boldsymbol{X}}_{{\rm{new}}, i}^{k}$ 分别表示学生位置更新前、后的坐标。

1.2 学习阶段

在学习阶段,学生之间通过两两交流学习来增长知识,交流的方法主要包括小组讨论以及个人经验介绍等。这一阶段具体的算法实施步骤如下:

对个体 ${\boldsymbol{X}}_{i}^{k^{\prime}} $ ,随机挑选另一个体 ${{\boldsymbol{X}}}_{j}^{{k}^{\prime}}(i \neq j)$ ,如果 $f\left({\boldsymbol{X}}_{i}^{k^{\prime}}\right)<f\left({\boldsymbol{X}}_{j}^{k^{\prime}}\right) $ ,则 ${\boldsymbol{X}}_{i}^{k^{\prime}} $ 的位置更新公式可表示为式(6),否则表示为式(7)。

$ {{\boldsymbol{X}}}_{i}^{k+1}={{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}}+{r}_{i}({{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}}-{{{{\boldsymbol{X}}}_{j}}^{k}}^{\mathrm{{'}}}) $ (6)
$ {{\boldsymbol{X}}}_{i}^{k+1}={{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}}+{r}_{i}({{{\boldsymbol{X}}}_{j}^{k}}^{\mathrm{{'}}}-{{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}}) $ (7)

如果计算得到的 ${\boldsymbol{X}}_{i}^{k+1} $ 更优,则接受位置更新,否则保持 ${\boldsymbol{X}}_{i}^{k^{\prime}} $ 不变。

2 改进的教与学优化算法 2.1 非线性收敛因子

在教学阶段,教师的教学因子 $ {{{{T}}}}_{\mathrm{F}} $ 是一个关键参数,它可以决定学生个体在多大程度上依据均值 $ {{{\boldsymbol{M}}}}_{{k}} $ 进行位置更新。在基础TLBO中, $ {{{{T}}}}_{\mathrm{F}} $ 在每一次迭代中等概率地取值为1或者2。然而,这种随机改变并不能科学地表征群体行为。在设想中,学生随着学习进程的推进其自主性更强,随着知识和学习方法的积累其学习能力也会得到相应的强化。在经过大量数值实验之后,发现 $ {{{{T}}}}_{\mathrm{F}} $ 大于2更有利于群体收敛,算法能够更快地逼近全局最优解。从现实角度来讲, $ {{{{T}}}}_{\mathrm{F}} $ 大于2意味着这个班级的教师教学水平和学生学习能力都很强,这是一个高效的班级,可以类比学校中的“重点实验班”或“尖子班”。同时,随着教学活动的不断深化与推进,教师的教学水平也会相应地得以提升,而不是一贯地随意分配为1或者2。为更好地表征上述现象,本文设计了一种随着迭代进行非线性变化的收敛因子,如式(8)所示。

$ {{{T}}}_{{\rm{F}}}=2+{(k/T)}^{1/2} $ (8)

式中:k表示当前迭代次数;T表示最大迭代次数。

2.2 标杆管理策略

在传统TLBO的学习者阶段,班级成员通过相互交流和学习来增加他们的知识。然而,这种学习方法有一定的缺点。最重要的一点是,班级成员缺乏优秀个人的指导。这种相互交流和学习是杂乱无章的,没有一定的基准和标准,因此,可能会导致很多无用的“学习”。从种群进化的角度来看,这种无效学习策略的存在会使种群在一定程度上朝着错误的方向进化。

为解决上述问题,引入了标杆管理的概念。标杆管理又称为基准管理,是管理学中的一种重要思想,一般用于企业管理当中。具体地,标杆管理是指企业将自身情况与行业内龙头企业进行比较,从而得以借鉴他人先进经验,改善自身缺陷[13-15]。这一理念同样适用于群智能优化算法的种群进化,对于TLBO,场景类似度极高。因此,将之引入到TLBO的学习阶段,即对学习阶段进行“标杆管理”。

首先,需要在当前种群中选择合适的标杆个体,该个体代表着班级中的精英组[16]所具有的知识,具体算法设计与建模过程如下:每次迭代中,对通过教学阶段的新班级按照个体的成绩(即适应值)进行排序,选择成绩最好Xs和第二的Xc个体组成精英组。标杆个体由精英组内推选产生,其为当前班级中成绩最佳的个体。现介绍标杆个体推选的具体实施步骤。

推选精英组,如式(9)所示。对组内个体求均值得到备选标杆Xb,在备选标杆和最佳个体之间依适应值最佳原则选出最终标杆。如果 $f\left({\boldsymbol{X}}_{\text {b}}\right) < f\left({\boldsymbol{X}}\right)$ ,则选定Xb为最终标杆Xe;否则,选定Xs作为最终标杆Xe

$ {{\boldsymbol{G}}}_{l}=[{{\boldsymbol{X}}}_{{\rm{s}}},{{\boldsymbol{X}}}_{{\rm{c}}}] $ (9)

式中:Gl为精英组。

然后,班级个体依据推选出的标杆进行学习。算法实施中,其他个体依据标杆进行位置更新的公式如式(10)所示。

$ {{\boldsymbol{X}}}_{i}^{k+1}={{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}}+{r}_{i}({{\boldsymbol{X}}}_{{\rm{e}}}-{{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}}) $ (10)

式中:ri表示介于[0,1]之间的随机数, ${\boldsymbol{X}}_{i}^{k^{\prime}} $ 表示第i个体在教学阶段后的位置向量, ${\boldsymbol{X}}_{i}^{k+1} $ 表示第i个体在学习阶段经过向标杆学习后的位置向量。

如果计算得到的 ${\boldsymbol{X}}_{i}^{k+1} $ 更优,则接受位置更新,否则保持 $ {{{\boldsymbol{X}}}_{i}^{k}}^{\mathrm{{'}}} $ 不变。

2.3 MTLBO算法

综合使用改进策略的改进教与学优化算法 (MTLBO)步骤如下:

a. 参数初始化。设定种群规模N,总迭代次数T

b. 待解问题参数空间范围内进行班级种群初始化,并计算每个个体的适应值。

c. $ t = 1 $ ,迭代开始。

d. 教学阶段开始,计算 $ {{{\boldsymbol{M}}}}_{{k}} $ ,依据式(8)计算 ${{{{T}}}}_{{{\rm{F}}}}$

e. 计算D,班级个体依据D更新位置。

f. 更新班级所有个体适应值,教学阶段结束。

g. 学习阶段开始,推选标杆个体Xe

h. 班级个体以Xe为榜样根据式(10)更新位置。

i. 更新班级所有个体适应值,学习阶段结束。

j. 判断是否满足循环终止条件,若是,返回全局最佳解;否则,令 $ t = t + 1 $ ,返回步骤d。

3 实验与分析

为验证非线性收敛因子和标杆管理策略的引入对算法性能的影响,选择11个著名的基准测试函数进行2组对比实验。在第1组对比实验中,依据对2种改进策略的不同部署情况,构建了3种MTLBO的变体,新设计的MTLBOs与标准TLBO进行了实验对比与分析。在第2组对比实验中,为进一步验证设计策略的有效性,选择了其他几种应用广泛的群智能优化技术进行对比实验与分析。所有实验涉及代码均是使用Python 3.7编程实现,且所有实验均在Window操作系统下实施。为全面衡量算法性能,使用了多个维度的基准测试函数进行实验。同时,为保证测试结果的鲁棒性,每个测试实验均以30次独立运行得到的均值和标准差作为最终的衡量依据。

测试中的11个基准测试函数包含6个单峰测试函数以及5个多峰测试函数,如表1所示。单峰测试函数为F1~F7,它们在搜索空间中只有一个严格局部最优值,因而可以用于测量算法的收敛性;多峰测试函数为F8~F12,它们在搜索空间中往往具有多个局部最优解,因而可以用于度量算法的局部最优避免能力。


表 1 基准测试函数 Table 1 Benchmark function
3.1 MTLBOs与标准TLBO的比较

对比算法为TLBO和MTLBOs,这2种算法本身不需要其他参数,但在实验前,首先要对2个群智能优化算法的超级参数进行设定。对于种群尺寸和最大迭代次数,分别设定为20,1000。表2列出了待比较的TLBO和3种MTLBO的变体MTLBO1,MTLBO2,以及MTLBO3,表3表4分别展示了4种对比算法在11个10维和30维基准测试函数上的实验结果,表5展示了各算法30次独立运行中的运行总时间(单位:s)。在表35中,粗体表示获得的最佳结果。



表 2 对比算法及描述 Table 2 Comparison algorithms and description


表 3 TLBO和MTLBOs在10维基准函数上的实验结果 Table 3 Experimental results of TLBO and MTLBOs on 10-dimensional benchmark functions


表 4 TLBO和MTLBOs在30维基准函数上的实验结果 Table 4 Experimental results of TLBO and MTLBOs on 30-dimensional benchmark functions

表 5 对比算法运行时间 Table 5 Comparison of running time for algorithms s

表3表4可以看出,对于函数F1和F3,MTLBO2和MTLBO3在2个维度上均获得理论最优解,同时,标准差为0说明算法在解决问题F1和F3时的鲁棒性非常高。对于函数F1和F3,MTLBO3效果最佳,MTLBO2次之,标准TLBO最差。对于函数F5,MTLBO1的结果优于其对比者。对于函数F6,MTLBO3和MTLBO2的结果排在前两位,其中,当维度为10时,MTLBO3略胜一筹;当维度为30时,MTLBO2的结果要更好。对于函数F9和F11,所有算法均取得其理论最佳解,后文将从收敛速度方面进行进一步比较分析。对于函数F8,MTLBO3和MTLBO2求得更好的数值结果。对于函数F10,当维度为10时,MTLBO2结果最优,MTLBO3次之;当维度为30时,MTLBO3结果最优,MTLBO2次之。对于函数F11,标准TLBO的结果胜过其他对比算法。

表5可知,在不同维度下各算法的计算效果差异明显。当函数维度为10时,MTLBO1在函数F1,F2,F3,F7上运算效果更快,MTLBO2在函数F4,F6上计算时间最短,MTLBO3在函数F4,F5,F10和F11上优于其他算法,TLBO则在函数F8和F9取得最短的运算时间。当函数维度为30时,MTLBO1在函数F7,F8,F9上效果最佳,MTLBO3在函数F10,F11上具有最高的计算效果,TLBO在单峰测试函数F1—F6上的运行时间优于其余算法。

根据以上分析,综合使用前面2种改进策略的MTLBO3表现最优,它在大多数问题上获得最佳数值结果。同时,仅使用标杆管理策略的MTLBO2表现颇佳,仅在少数问题上稍弱于MTLBO3。综合来看,MTLBO3和MTLBO2明显改进了标准TLBO的求解性能。此外,仅使用非线性收敛因子策略的MTLBO1也在大多数问题上胜过标准TLBO,尽管从数值上来看提升的幅度不大。从计算效率的角度来看,TLBO和3种MTLBOs在不同维度的不同问题上存在一定差异,当函数维度较低时,MTLBO1和MTLBO3具有更高的运算效率;当维度较高时,TLBO在单峰测试函数上的运行时间优于其余算法,MTLBO1和MTLBO3在多峰测试函数上表现颇佳。综上所述,改进算法在不增加时间成本的前提下改进了TLBO的性能,本文所提出的2种策略都是有效的,尤其是标杆管理策略。

3.2 与其他群智能优化算法的比较

第一组实验主要对MTLBOs和TLBO进行了实验比较与分析,基于分析结果,选择表现最佳的MTLBO3进行后续实验。选择一些其他著名的优化器,如HS,PSO,MFO和GA实施对比实验。表6列出了对比算法和相应的参数设定值。依据表6所列,PSO,MFO和GA的种群规模设为40,TLBO和MTLBOs的种群规模设为20,这是因为TLBO和STLBO在一次迭代中共有2N(种群规模)次函数评估,而在PSO,MFO和GA的运行过程中每次迭代仅有N(种群规模)次函数评估。在这类算法中,算法的函数评估环节是其时间复杂度的主要部分,因为,为保证各对比算法时间复杂度一致,必须要保证各对比算法的函数评估次数一致。另外,除HS外其余算法的种群总迭代次数均为1000。对于HS,最佳种群规模为5~7,且在一次迭代中仅有一次函数评估,因此,HS的种群规模和迭代次数分别设为40000和6。总而言之,为保证无偏性,经过种群规模和总迭代次数的设定,各算法的总函数评估次数均设定为40000次,这保证了各对比算法的时间复杂度大致相同。


表 6 对比算法及参数集 Table 6 Comparison algorithms and parameter sets

表6所示,HS,PSO以及GA这3种算法还存在一些特殊参数。对于HS,HMCRPARBW分别表示和声记忆库取值概率、音调调整概率和调音带宽,取值分别为0.9,0.3和0.1;对于PSO,vmax代表粒子移动的最大速度,w1w2表示初始权重和最终权重,c1c2分别表示认知参数和社会参数,5种参数的取值依次为20,0.9,0.4,1.2和1.2;对于GA,选择轮盘赌染色体复制策略、均匀交叉策略以及随机选择变异策略,其中,pcpm分别表示染色体交叉概率、变异概率,取值分别为0.7和0.3。以上算法中各个特殊参数的取值均是在原始论文基础上多次实验的经验值。

表7列出了对比算法在40维测试函数上的实验结果,粗体显示最佳结果。由表7可知,MTLBO3在函数F1—F4上远胜过其他对比方法,其次是TLBO,其中,对于函数F1以及F4,MTLBO3获得的均值和标准差均为0,这说明该方法每次实验均可以得到理论最优解,其鲁棒性较强。对于函数F5和F11,TLBO略胜于MTLBO3,获得最好的数值结果。对于函数F6和F10,MTLBO3的数值结果胜过其他对比方法。最后,对于F7和F9,TLBO和MTLBO3均得到理论最优解,优劣无法从数值结果得出,下面将进一步利用收敛曲线进行对比。可以看出,MTLBO3的数值结果在大多数问题上优于其他对比算法,且在4个函数优化问题(F1,F3,F7以及F9)上1000次迭代内均收敛到理论最佳解。此外,MTLBO3在大多数问题上具有最小的方差,这说明算法性能稳定,鲁棒性较好。


表 7 6种对比算法在基准函数上的实验结果 Table 7 Experimental results of six algorithms on the benchmark functions

HS,PSO,GA,MFO,TLBO以及MTLBO3这6种算法在11个测试函数上30次独立运行的总时间列于表8。由表8可知,TLBO和MTLBO的运行时间明显优于其他算法。具体地,TLBO在函数F1,F2,F3,F6以及F8上取得最短的运行时间,而MTLBO3则在函数F4,F5,F7,F9,F10以及F11具有最高的计算效率。总体上讲,MTLBO3和TLBO计算效率差异不大,MTLBO3略胜一筹,同时前者在计算精度上优于后者。


表 8 6种对比算法在11个测试函数上的运行时间 Table 8 Running time of 6 comparison algorithms on 11 test functions s

为进一步对比算法性能,画出了6种对比算法在部分基准测试函数上的收敛曲线,如图3所示。可以看出,MTLBO3在所有问题上均具有最高的收敛速度。综合表7中的数值结果,尽管在函数F5上TLBO数值结果更优,但是,MTLBO3的收敛速度更快。此外,在函数F7和F9上,MTLBO3的收敛速度都快于TLBO。综上所述,MTLBO明显改进了标准TLBO的搜寻性能。


图 3 6种比较算法在部分测试函数上的收敛曲线 Fig. 3 Convergence curves of 6 comparison algorithms on some test functions
3.3 约束优化问题

由于函数F1—F11均为无约束优化问题,为进一步验证本文所设计策略的有效性,使用一个约束优化问题−拉伸/压缩弹簧设计优化问题进行实验。该优化问题的目的是弹簧质量的最小值,其中,包含线径d,平均线圈直径D'和有效线圈数N'这3个设计变量,以及与剪应力、弹簧颤动频率和最小挠度相关4个约束条件。拉伸/压缩弹簧设计优化问题的物理模型如图4所示,数学模型如下:


图 4 拉伸/压缩弹簧设计优化问题 Fig. 4 Tension/compression spring design problem

设计变量

$ x = [{x_1},{x_2},{x_3}] = [d,D',N'] $

优化函数

$ f(x) = ({x_3} + 2){x_2}x_1^2 $

约束条件

$ {g_1}(x) = 1 - \dfrac{{x_2^3{x_3}}}{{71\;785x_1^4}} \leqslant 0 $
$ {g_2}(x) = \frac{{4x_2^2 - {x_1}{x_2}}}{{12\;566({x_2}x_1^3 - x_1^4)}} + \frac{1}{{5\;108x_1^2}} - 1 \leqslant 0 $
$ {g_{\text{3}}}(x) = {\text{1}} - \frac{{140.45{x_1}}}{{x_2^2{x_3}}} \leqslant 0 $
$ {g_{\text{4}}}(x) = \frac{{{x_1} + {x_2}}}{{1.5}} - 1 \leqslant 0 $

设计变量范围

$ 0.05 \leqslant {x_1} \leqslant 2.00,\;\;0.25 \leqslant {x_2} \leqslant 1.30,\;\;2.00 \leqslant {x_3} \leqslant 15.0 $

所有算法在30次独立运行中所得到的最佳实验结果如表9所示。其中,算法HS,PSO,GA,MFO以及MHHO的实验结果直接来源于文献[17]。由表9可知,基于非线性收敛因子策略的MTLBO1的结果优于其他对比算法,MTLBO2和MTLBO3的实验结果却要差于原始TLBO。因此,在使用教与学优化算法解决拉伸/压缩弹簧设计优化问题时,非线性收敛因子策略依然是一种有效的策略,而标杆管理策略不再适用。综上可知,在使用教与学优化算法求解无约束优化问题时,设计的2种策略均是有效的,特别是标杆管理策略效果显著,而在求解无约束优化问题时,仅有非线性收敛因子策略有效。


表 9 拉伸/压缩弹簧问题结果对比 Table 9 Comparison of results for tension/compression spring problem
4 结束语

针对标准TLBO寻优精度不高、局部最优避免性差以及收敛速度较慢的问题,本文在TLBO的基础上引入2种改进策略:非线性收敛因子调整策略以及标杆管理策略。随后,基于2种策略的数学组合设计了3种MTLBO的变体,为验证改进算法的性能,通过一组函数优化问题与标准TLBO进行了实验对比与分析。结果显示,3种MTLBO都胜过标准TLBO,其中,引入2种改进策略的MTLBO3表现最优,其很好地平衡了算法的全局搜索性和局部开发性,数值结果远胜于标准TLBO。为增强说服力,使用著名的群智能优化算法与MTLBO3进行了实验对比与分析。数值结果、计算效率和收敛曲线表明,MTLBO3在寻优精度、局部最优避免性以及收敛速度等性能上优于其他对比算法。最后,基于工程设计约束优化问题进一步验证2种策略的有效性。结果表明,在无约束优化问题中,非线性收敛因子调整策略依然能改进TLBO的性能,而标杆管理策略可能不再适用。

参考文献
[1]
MÜHLENBEIN H, SCHLIERKAMP-VOOSEN D. Predictive models for the breeder genetic algorithm I. continuous parameter optimization[J]. Evolutionary Computation, 1993, 1(1): 25-49. DOI:10.1162/evco.1993.1.1.25
[2]
EBERHART R C, SHI Y H. Guest editorial special issue on particle swarm optimization[J]. IEEE Transactions on Evolutionary Computation, 2004, 8(3): 201-203. DOI:10.1109/TEVC.2004.830335
[3]
LEE K S, GEEM Z W. A new meta-heuristic algorithm for continuous engineering optimization: harmony search theory and practice[J]. Computer Methods in Applied Mechanics and Engineering, 2005, 194(36/38): 3902-3933.
[4]
KARABOGA D, BASTURK B. A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm[J]. Journal of Global Optimization, 2007, 39(3): 459-471. DOI:10.1007/s10898-007-9149-x
[5]
RASHEDI E, NEZAMABADI-POUR H, SARYAZDI S. GSA: a gravitational search algorithm[J]. Information Sciences, 2009, 179(13): 2232-2248. DOI:10.1016/j.ins.2009.03.004
[6]
MIRJALILI S. Moth-flame optimization algorithm: a novel nature-inspired heuristic paradigm[J]. Knowledge-Based Systems, 2015, 89: 228-249. DOI:10.1016/j.knosys.2015.07.006
[7]
HEIDARI A A, MIRJALILI S, FARIS H, et al. Harris hawks optimization: algorithm and applications[J]. Future Generation Computer Systems, 2019, 97: 849-872. DOI:10.1016/j.future.2019.02.028
[8]
MIRJALILI S, MIRJALILI S M, LEWIS A. Grey wolf optimizer[J]. Advances in Engineering Software, 2014, 69: 46-61. DOI:10.1016/j.advengsoft.2013.12.007
[9]
RAO R V, SAVSANI V J, VAKHARIA D P. Teaching–learning-based optimization: a novel method for constrained mechanical design optimization problems[J]. Computer-Aided Design, 2011, 43(3): 303-315. DOI:10.1016/j.cad.2010.12.015
[10]
LI G Q, NIU P F, ZHANG W P, et al. Model NOx emissions by least squares support vector machine with tuning based on ameliorated teaching-learning-based optimization [J]. Chemometrics and Intelligent Laboratory Systems, 2013, 126: 11-20. DOI:10.1016/j.chemolab.2013.04.012
[11]
于坤杰, 王昕, 王振雷. 改进的教学优化算法及其应用[J]. 化工进展, 2014, 33(4): 850-854.
[12]
闫苗苗, 刘三阳. 多班级交互式教学优化算法[J]. 计算机工程与应用, 2019, 55(9): 10-16,64. DOI:10.3778/j.issn.1002-8331.1901-0205
[13]
孔杰, 程寨华. 标杆管理理论述评[J]. 东北财经大学学报, 2004(2): 3-7. DOI:10.3969/j.issn.1008-4096.2004.02.001
[14]
谢安世, 于永达, 黄思明. 一种基于标杆管理的优化算法[J]. 软件学报, 2014, 25(5): 953-969. DOI:10.13328/j.cnki.jos.004428
[15]
王楚君, 许治, 陈丽玉. 基于标杆管理的中国研究型大学科技成果转化效率评价——网络排序方法的运用[J]. 科研管理, 2020, 41(3): 183-193.
[16]
于坤杰, 王昕, 王振雷. 基于反馈的精英教学优化算法[J]. 自动化学报, 2014, 40(9): 1976-1983.
[17]
ZHANG Y, ZHOU X Z, SHIH P C. Modified Harris hawks optimization algorithm for global optimization problems[J]. Arabian Journal for Science and Engineering, 2020, 45(12): 10949-10974. DOI:10.1007/s13369-020-04896-7