全国服务热线:0898-08980898
联系我们 contact us
地址:
海南省海口市
邮箱:
admin@youweb.com
电话:
0898-08980898
传真:
1234-0000-5678
公司动态 当前位置: 首页 > 傲世皇朝新闻 > 公司动态
智能优化算法:教与学优化算法 添加时间:2024-04-22

@[toc]
摘要:教与学优化算法(Teaching-learning-based optimization,TLBO)算法和其他群智能优化算法一样,也是利用群体信息进行启发式搜索[1] 。TLBO 算法通过模拟人类在学习过程中的“教”和“学”2个阶段的学习方法,从而提高每个个体的能力。

TLBO 算法是模拟以班级为单位的学习方式,班级中的学员水平的提高需要教师的“教”来引导,同时,学员之间需要相互“学习”来促进知识的吸收。其中,教师和学员相当于进化算法中的个体,而教师是适应值最好的个体之一。每个学员所学的某一科目相当于一个决策变量。具体定义如下:

1)搜索空间:搜索空间可表示为 S=\{X | x_i^L ≤x_i ≤ x_i^U ,i=1,2…,d\}d 表示维空间的维数(决策变量的个数),x_i^Lx_i^U(i=1,2,…,d)分别为每一维的上界和下界。

2)搜索点:设 X_j=(x_1^j ,x_2^j ,…,x_d^j) ( j=1,2,…,NP )为搜索空间中的一个点,x_i^j (i=1,2,…,d) 为点 X_j 的一个决策变量。NP 为空间搜索点的个数(种群规模)。

3)班级:在 TLBO 算法中,将搜索空间中所有点的集合称为班(Class)。

4)学员:班级中某一个点 X^j={x_1^j,x_2^j,...,x_d^j}称之为一个学员。

5)教师:班级中成绩最好的学员X_{best}称之为教师,用X_{teacher}表示。

在 TLBO 算法的“教”阶段,班级中每个学员X_j (j=1,2,…,NP )根据 X_{teacher} 和学员平均值 Mean之间的差异性进行学习。

图1.教学方法

如图1所示,在开始时,班级平均成绩是MeanA=30,平均成绩较低,并且成绩分布比较广,通过Teacher多次的努力教学,班级平均成绩逐步提高到了MeanB=80,成绩分布也越来越集中。在“教”阶段,每个学员向老师学习,学习的方法是利用老师Xteacher和学员的平均值Mean之间的水平差异性进行学习,具体的教学方法如式(1)和(2)
X_{new}^i=X_{old}^i+Difference	ag{1}

Difference=r_i.(X_teacher-TF_i.Mean)	ag{2}

式中:X_{old}^iX_{new}^i 分别表示第 i 个学员学习前和学习后的值,Mean=\frac{1}{NP}\sum_{i=1}^{NP}X^i是所有学员的平均值,还有2个关键的参数: 教 学因子TF_i=round[1+rand(0,1)],学习步长r_i=rand(0,1)

在“学”阶段,对每一个学员X^i(i=1,2,...,NP),在班级中随机选取一个学习对象X^j(j=1,2,...,NP,j
eq i),X^i通过分析自己和学员X^j的差异进行学习调整,学习改进的方法类似于差分算法中的差分变异算子,不同在于,TLBO算法中的学习步长r对每个学员采用不同的学习因子。采用式(3)实现“学”的过程。
X_{new}^i=\begin{cases}X_{old}^i+r_i.(X^i-X^j),f(X^j)<f(X^i)\\X_{old}^i+r_i.(X^j-X^i),f(X^i)<f(X^j)\end{cases}	ag{3}
式中: r_i=U(0,1) 表示第 i 个学员的学习因子(学习步长)。

学员在经过“教”阶段和“学”阶段都要分别进行更新操作。更新思想类似于差分进化算法,如果学习后的个体 X_{new}^i比学习前的学员 X_{old}^i 更好,则用X_{new}^i替换X_{old}^i 。否则,保持X_{old}^i不变。更新方法如下:

IF\quad X_{new}^i\quad is\quad better\quad than \quad X^i_{old}
X^i_{old}=X_{new}^i
End\quad IF

算法流程图如下图所示:


算法流程图
算法结果

[1]Teaching–Learning-Based Optimization: An optimization method for continuous non-linear large scale problems[J] . R.V. Rao,V.J. Savsani,D.P. Vakharia. Information Sciences . 2011 (1)

[2]拓守恒,雍龙泉.一种用于PID控制的教与学优化算法[J].智能系统学报,2014,9(06):740-746.

https://mianbaoduo.com/o/bread/Z5mYlp4=

https://mianbaoduo.com/o/bread/YZWVlp5x

平台注册入口