APP下载

多学习教与学优化算法

2016-03-17李志南南新元史德生

计算机应用与软件 2016年2期
关键词:高维教与学全局

李志南 南新元 李 娜 史德生

1(新疆大学电气工程学院 新疆 乌鲁木齐 830047)

2(国网山东利津县供电公司 山东 东营 257400)



多学习教与学优化算法

李志南1南新元1李娜1史德生2

1(新疆大学电气工程学院新疆 乌鲁木齐 830047)

2(国网山东利津县供电公司山东 东营 257400)

摘要针对教与学优化算法(TLBO)局部开发能力差,易陷入局部最优的缺点,提出一种基于反向学习的多学习教与学优化算法(MTLBO)。通过反向学习技术拓展搜索空间,增加解的多样性,进一步增强算法的全局搜索能力。引入多学习机制,使其更有效地进行局部搜索,加快收敛速度。同时提出一种小概率变异策略,增加跳出局部最优的可能性。在基准测试函数上进行验证实验,结果表明,与TLBO算法、ITLBO算法以及其他优化算法相比,该算法在低维和高维函数上都取得了较好的优化效果。

关键词教与学优化算法反向学习技术多学习机制变异策略

TEACHING-LEARNING-BASED OPTIMISATION ALGORITHM WITH MULTI-LEARNING STRATEGY

Li Zhinan1Nan Xinyuan1Li Na1Shi Desheng2

1(School of Electrical Engineering,Xinjiang University,Urumqi 830047,Xinjiang,China)2(Lijinxian Power Supply Company,State Grid,Dongying 257400,Shandong,China)

AbstractWe proposed a teaching-learning-based optimisation algorithm (TLBO) with multi-learning mechanism (MTLBO), which is based on the opposition-based learning, aimed at the drawbacks of basic TLBO in poor local development ability and solutions being prone to falling into local optima. It broadens the search space through opposition-based learning technology to increase the diversity of solutions and further improve the global search ability of the algorithm. The introduction of multi-learning mechanism makes the local search more effective and speeds up the convergence rate. Meanwhile we presented a small probability mutation strategy to increase the likelihood of solutions jumping out of local optima. Verification experiments were carried out on benchmark test functions, results indicated that compared with basic TLBO, ITLBO and other optimised algorithms, the proposed MTLBO algorithm achieved better optimisation effect on both low and high dimensional functions.

KeywordsTeaching-learning-based optimisation algorithmOpposition-based learning technologyMulti-learning mechanismMutation strategy

0引言

教与学优化算法TLBO是一种新的元启发式优化算法,由印度学者Rao R V等人[1]在2011年提出,它主要模拟教师的教学过程和学生之间的相互学习和交流过程。TLBO算法包括两个重要阶段,第一是教学阶段,教师将自己的知识传授给学生,提高班级的整体水平;第二是学习阶段,学生通过课下的交流来提高自己的学习成绩。TLBO算法结构简单,易于理解,参数少,有极强的收敛能力和较好的全局搜索能力,已成功应用于很多工程问题,如非线性连续大规模优化[2],平面钢框架优化设计[3],电力经济调度[4]和热交换器优化[5,6]等问题。

TLBO算法全局搜索能力强,收敛速度快,但局部收索能力差,易陷入局部最优。学者们针对该缺陷先后提出了一系列改进算法,如Rao R V等人提出了一种基于多个老师的教与学优化算法[7](ITLBO)和带有精英策略的教与学优化算法[8](MO-ITLBO),前者应用于无约束优化问题,后者应用于多目标优化问题。这些改进算法虽然在一定程度上提高了TLBO算法的优化性能,但还是存在易陷入局部最优的问题。

针对TLBO算法局部搜索能力较弱的缺陷,本文提出了一种多学习教与学优化(MTLBO)算法。采用多种学习方式来增强算法的局部搜索能力;利用反向学习技术[9]扩展解空间,增加种群的多样性,进一步增强算法的全局探索能力;同时引入小概率的扰动策略,提高跳出局部最优的可能性。最后,通过对比实验验证了该算法的有效性。

1基本TLBO算法

基本TLBO算法[1]是受老师的教学过程和学生的互相学习过程的启发而提出来的,包括教学和学习两个阶段。在教学阶段,学生通过老师与学生的平均水平值之间的差异来提高自己的成绩;学习阶段学生根据自身情况,与优秀学生进行交流学习,提高自己的成绩。

1.1教学阶段

教学阶段是模拟老师的教学过程,选择种群中的最优个体作为老师,老师尽最大努力使得学生的平均水平向自己靠近,提高班级的整体水平。教学过程的数学表达式如式(1)所示:

Xnew=Xold+rand·(Xteacher-TF·Mean)

(1)

1.2学习阶段

在相互学习的过程中,从种群中随机选择两个不同的个体Xr1和Xr2,比较两个个体的优劣,然后选择较优个体进行学习。假设所要解决的问题为最小值问题,学习过程的表达式如(2)所示:

(2)

2多学习TLBO算法

由于基本TLBO算法在解决低维简单问题时,有较好的全局搜索能力,但局部搜索能力差;在解决高维复杂问题时,全局搜索能力弱,易陷入局部最优。为了克服基本TLBO 算法的上述不足,本文提出了一种多学习策略的教与学优化(MTLBO)算法。首先提出一种新的多学习策略,增强其局部开发能力;继而采用反向学习技术,拓宽搜索空间,增加种群多样性,提高其全局勘探能力;同时为了避免陷入局部最优,引入小概率的变异策略,更好地均衡算法的勘探和开发能力,增加其跳出局部最优的可能性。

2.1反向学习技术

针对TLBO算法在解决高维复杂问题时,全局搜索能力较弱,无法找到较优解,易陷入局部最优的缺点,引入反向学习技术[10,11]。反向学习的概念是在2005年由Tizhoosh[9]提出,随后应用于差分进化算法[12],其基本思想是比较当前解和反向解,若反向解优于当前解,则反向解取代当前解。反向学习技术可以快速扩大搜索空间,丰富种群多样性,增加寻找到全局最优解和跳出局部最优的可能性。

定义1全局反向数:设x∈(a,b)是一个实数,与其对应的全局反向数的表达式如式(3)所示:

xo=a+b-x

(3)

定义2全局反向点:设xi∈(x1,x2,…,xD)为D维空间内的一个点,那么其全局反向点的表达式如下所示:

(4)

为提高TLBO算法的收敛速度和寻优精度,在种群初始化时,应用反向学习技术即式(4)对初始种群行反向学习,并各取一半较优的个体来组成初始种群。在每一次迭代后,运用反向学习技术对种群进行反向学习,并取各种群中的一半较优个体来组成一个新的种群,进入下一次循环。种群在当前解空间和反向解空间内同时进行搜索,保留各种群的较优个体,使得种群始终在较优个体附近进行搜索,避免了在较差解邻近区域的无效迭代,提高算法的全局收敛速度和寻优精度。

2.2随机多学习策略

基本TLBO算法采用向邻近较优个体进行学习的方式,该学习方式比较单一,局部开发能力弱,容易陷入局部最优。为此,本文提出了一种新的多学习策略;即个体在向邻近较优个体学习的同时,通过差异学习过程,弥补自身的不足,从而提高自己。两种学习策略的引入,大大增强了算法的局部搜索能力,降低了算法易陷入局部最优的可能。改进的多学习方式表示如式(5)和式(6)所示:

if rand<0.5

(5)

else

(6)

end

其中,Xr1和Xr2为种群中不同于Xold的两个随机个体。

2.3小概率的变异策略

在多学习教与学优化算法中,种群在当前解空间和反向解空间内同时进行搜索,并各保留一半较优个体组成新的种群,因此算法始终在种群相对较好解的邻近区域进行搜索。虽然反向学习技术能有效地扩大搜索空间,增加种群多样性,加快算法的收敛速度,但搜索后期过度集中在一个相对较好的区域内,种群容易陷入局部最优,不能搜索到全局最优值。针对该问题,本文引入小概率的扰动策略,具体表达式如下:

if rand

xi,j=xj,min+rand·(xmax-xmin)

end

其中:Mr为随机变异概率,由于这种操作是小概率事件,本文取Mr的值为0.005。

当算法进入迭代后期,算法搜索到一个相对较优值时,由于邻近区域搜索不到比其更优的值时,就会陷入局部最优,这时算法迫切需要跳出局部最优。小概率发生的变异策略即随机扰动,可以增强算法跳出局部最优的能力,有效地防止算法在搜索后期陷入局部最优。

3多学习教与学优化算法的基本步骤

本文提出的多学习教与学优化算法的实现步骤如下:

步骤1种群初始化

根据式(7)进行种群初始化,得到一个初始种群。按式(4)对初始种群进行反向学习,得到一个反向群体。计算两个种群中个体的适应值,取各自种群一半的较优个体组成新的初始种群。

xi,j=xj,min+rand·(xmax-xmin)

(7)

步骤2老师教学过程

找出种群中的最优个体作为老师,每个学生根据式(2)向种群中最好的个体即老师进行学习,提高自己的知识水平,从而提高全体学生的整体水平。

步骤3学生互相学习过程

经过老师教学之后,同学之间进行随机的交流和学习,并进行小概率的随机扰动,其具体流程如下所示:

if rand<0.5

if f(Xr2)

else

end

else

if f(Xold)

else

end

end

if rand

xi,j=xj,min+rand·(xmax-xmin)

end

步骤4种群更新

相互学习完成以后,利用式(4)对新产生的种群进行反向学习,得到反向种群。计算两个种群中个体的适应值,取各自种群一半的较优个体组成新的种群,进入下一次迭代循环。

步骤5终止判断

判断是否满足终止条件,若不满足,继续循环执行步骤2到步骤4,若满足,则终止迭代过程。

4数值实验及分析

4.1实验方法

本文选取文献[7]和文献[15]中的13个测试函数对本文提出的改进算法进行函数优化测试,并选择基本TLBO算法[1]、I-TLBO算法[7]、ABC算法[13]、I-ABC算法[14]进行对比实验。测试的硬件环境为联想笔记本电脑,主板CPU为i5-3230M-2.6 GHz,内存为4 GB,采用Matlab2009b软件平台编程实现。实验中对比算法的参数设置按原文献进行设置,仿真结果亦直接取自各文献。本文算法参数设置如下:NP=20,D=30、50、100,Mr=0.005,每组实验独立运行30次。

13个测试函数的具体表达式如下所示:

F1.Sphere function:

F2.Schwefel 2.22 function:

F3.Schwefel1.2 function:

F4.Schwefel 2.21 function:

F5.Step function:

F6.Quaritic function:

F7.Rastrigin function:

F8.Ackley function:

F9.Griewank function:

F10.Penalized function:

F11.带有噪音的 shifted Schwefel’s problem 1.2:

F12.Rotated hyper-ellipsoid function:

F13.Zakharov function:

4.2仿真结果与分析

表1所示为函数F1-F10在维数为30和50时的比较结果,其中最优结果进行了加粗处理。从表1可以看出,对于所测函数,除函数F6和F10外,MTLBO均能找到其最优值,而ABC算法无法找到其中的任何一个,其他算法仅能找到其中的少数几个。对于函数F1、F2和F9,除ABC外,其余4种算法均能找到其最优值。虽然MTLBO在函数F6和F10上略差于I-TLBO,但I-TLBO无法找到函数的最优值,而MTLBO也能搜索到最优解附近的较优解。对于函数F4-F5,MTLBO能搜索到其全局最优值,性能优于其他几种算法。MTLBO算法能找到函数F7-F9的全局最优值,具有较好的寻优能力和较快的收敛速度。从整体上看,MTLBO优于其他对比算法。

表1 F1-F10维数为30和50时的比较结果

针对上述10个测试函数,MTLBO能够搜索到其中8个函数的全局最优值,也搜索到其他2个函数最优解附近较好的解,这充分说明了算法的有效性。综上分析,本文算法具有较强的局部搜索能力,能够有效地跳出局部最优。

由于教与学优化算法在解决高维复杂问题时,其全局搜索能力差,易陷入局部最优,本文引入反向学习技术,增加了种群的多样性,提高其全局收索能力,还增加了一种相互学习方法,提高了局部搜索能力,避免陷入局部最优。接下来在6个高维复杂测试函数上对MTLBO算法进行测试,并与最近文献中较优的NGHS[15]算法和OLHS[16]算法进行比较。所选的6个测试函数中,F7-F9多峰函数,F11为带噪声和偏移的函数,F12是旋转函数,F13函数是测试高维复杂函数的经典函数。

从表2可以看出,本文提出的MTLBO算法每次均能够准确地找到相对应的全局最优解。这说明本文算法无论在优化高维多峰函数,还是带噪音和偏移的函数,都有较好的寻优能力。对于函数F13,本文算法能找到其全局最优值,进一步说明本文算法在优化高维复杂问题具有较好的寻优能力。而NGHS算法仅能找到函数F11的全局最优解,对于其他4个函数无法找到比较靠近全局最优解的解,易陷入维数灾难。对于OLHS算法,不仅无法找到函数F8和F13的全局最优解,同时多次运行的方差较大,搜索到最优解的成功率低,算法稳定性差。

从寻优效率看,NGHS、OLHS在寻优过程中最大迭代次数均超过50 000次,而本文算法仅需40 000次,这说明本文算法收敛速度快、搜索效率高,具有较好的全局搜索和局部邻域搜索能力。

综上,本文所提算法具有较强的鲁棒性和较好的稳定性,同时具有较快的收敛速度和较高的搜索效率,该算法为优化问题的求解提供了一种新的选择,具有广阔的发展前景。

表2 高维复杂测试函数对比结果(d=100)

5结语

本文针对基本教与学优化算法中学习方式单一的问题,提

出多学习策略,有效地增强了算法局部开发能力;引入反向学习技术,充分挖掘反向种群中个体包含的信息;提出小概率的扰动策略,有效降低了迭代后期陷入局部最优的可能性。实验结果表明,本文算法不仅对低维简单问题有较好的寻优能力,而且在解决高维复杂优化问题时展现出了更明显的优势,有效地解决了基本TLBO算法在解决高维问题易陷入局部最优的问题,为解决高维复杂问题提供了一个良好的选择。在今后的研究工作中,继续对算法的学习阶段作进一步的探索和改进,同时对算法的参数自适应问题进行探究,进一步提高算法的性和应用领域。

参考文献

[1] 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.

[2] Rao R V,Savsani V J,Vakharia D P.Teaching-learning-based optimization:An optimization method for continuous non-linear large scale problems [J].Information Sciences,2012,183(1):1-15.

[3] Togan V.Design of planar steel frames using teaching-learning based optimization[J].Engineering Structures,2012,34(1):225-232.

[4] Wu Wei,Hu Jingtao,Zhang Jilong.Prognostics of machine health condition using an improved ARIMA-based prediction method[C].Proc of the 2nd IEEE Conference on Industrial Electronics and Applications,2007:1062-1067.

[5] Rao R V,Patel V.Multi-objective optimization of heat exchangers using a modified Teaching-learning-based optimization algorithm[J].Applied Mathematical Modeling,2013,37(3):1147-1162.

[6] Rao R V,Patel V.Multi-objective optimization of two stage thermoelectric coolers using a modified teaching-learning-based optimization algorithm [J].Engineering Applications of Artificial Intelligence,2013,26(1):430-445.

[7] Rao R V,Patel V.An improved teaching-learning-based optimization algorithm for solving unconstrained optimization problems[J].Scientia Iranica,2013,20(3):710-720.

[8] Rao R V,Patel V.An elitist teaching-learning-based optimization algorithm for solving complex constrained optimization problems[J].International Journal of Industrial Engineering Computations,2012,3(4):535-560.

[9] Tizhoosh R.Opposition-based learning:a new scheme for machine intelligence[C]//Proceeding of International Conference on Computational Intelligence Modeling Control and Automation,Vienna,2005:695-701.

[10] Rahnamayan S,Tizhoosh H R,Salama M M A.Quasi-oppositional differential evolution[C]//Proceeding of the IEEE congress on evolutionary computation,2007:29-36.

[11] Roy P K,Mandal D.Quasi-oppositional biogeography-based optimization for multi-objective optimal power flow[J].Electric Power Components and Systems,2011,40(2):236-56.

[12] Rahaamayan S,Tizhoosh H R,Salama M M A.Opposition-Based differential evolution[J].IEEE Transations on Evolutionary Computation,2008,12(1):64-79.

[13] Li G,Niu P,Xiao X.Development and investigation of efficient Artificial Bee Colony algorithm for numerical function optimization[J].Applied Soft Computing,2012,12(1):320-332.

[14] Yang J G,Zhuang Y B.An improved ant colony optimization algorithm for solving a complex combinatorial optimization problem[J].Applied Soft Computing,2010,10(2):653-660.

[15] Zou Dexuan,Gao Liqun,Wu jianhua,et al.Novel global harmony search algorithm for unconstrained problems[J].Neurocomputing,2010,73(16-18):3308-3318.

[16] 欧阳海滨,高立群,邹德旋,等.反向学习和声搜索算法优化高维函数问题[J].小型微型计算机系统,2014,35(3):571-578.

中图分类号TP3

文献标识码A

DOI:10.3969/j.issn.1000-386x.2016.02.057

收稿日期:2014-06-29。新疆“十二五”制造业信息化科技示范工程项目(201130110)。李志南,硕士生,主研领域:智能优化算法。南新元,副教授。李娜,硕士生。史德生,本科生。

猜你喜欢

高维教与学全局
有向图上高维时间序列模型及其在交通网络中的应用
Cahn-Hilliard-Brinkman系统的全局吸引子
楷书的教与学
量子Navier-Stokes方程弱解的全局存在性
教与学
让“预习单”成为撬动教与学的支点
一种改进的GP-CLIQUE自适应高维子空间聚类算法
落子山东,意在全局
奇异值分解的教与学
新思路:牵一发动全局