目录
- 1.背景
- 2.算法原理
- 2.1算法思想
- 2.2算法过程
- 3.结果展示
- 4.参考文献
- 5.代码获取
1.背景
2024年,ST Javed受到社会环境下家庭儿童的早期社会学习行为启发,提出了儿童学习优化算法(Kids Learning Optimizer, KLO)。
2.算法原理
2.1算法思想
KLO灵感来源于孩子们在社会结构中以家庭为单位的早期社会学习行为。在社会中,人们以家庭群体(父母和孩子)的形式组织,他们在家庭内部和外部相互交流,KLO将家庭和他们的互动的分散学习概念映射到新的算法中,其中搜索代理(个体)被组织成家庭,并在生命的不同阶段相互交流以找到最佳解决方案。
2.2算法过程
初始化
KLO算法首先初始化若干个家庭(nFamilies)和每个家庭的成员数量(nMembers),每个家庭包括两位父母和(nMembers-2)个孩子。总人口为nPop = nFamilies × nMembers,总父母数为nParents = nFamilies × 2。跟随父母的概率rp和学习参数Epsilon初始为较大值,并随着迭代线性递减,表示孩子随着成长倾向于跟随其他孩子,学习能力随年龄增长降低。最小和最大学习热情(LEmin和LEmax)分别设置为0.1和1。收敛参数Explore设置为floor(nVar/4),允许个体属性的25%发生变化,并在迭代中线性递减,以控制算法的探索能力。父母的属性在采样区间内随机生成,孩子的属性通过父母的随机交叉过程生成,从父亲随机选择部分属性,其余从母亲获得。这样,家庭成员在搜索空间内进行全面探索。
更新Gamma
BestSol是群体中最优个体,个体X和Y相互作用:
( t + 1 ) = { X ( t ) + γ λ ∥ X ( t ) − Y ( t ) ∥ , if f o b j ( X ( t ) ) < f o b j ( Y ( t ) ) Y ( t ) + γ λ ∥ X ( t ) − Y ( t ) ∥ , otherwise (1) (t+1)=\left\{\begin{array}{ll}X(t)+\gamma\lambda\|X(t)-Y(t)\|,&\text{if}f_{obj}(X(t))<f_{obj}(Y(t))\\Y(t)+\gamma\lambda\|X(t)-Y(t)\|,&\text{otherwise}\end{array}\right.\tag{1} (t+1)={X(t)+γλ∥X(t)−Y(t)∥,Y(t)+γλ∥X(t)−Y(t)∥,iffobj(X(t))<fobj(Y(t))otherwise(1)
参数表述为:
λ = 2 r − 1 (2) \lambda=2r-1\tag{2} λ=2r−1(2)
γ = ∥ 2 − ( t mode T C 1 ) ( T 4 C 1 ) ∥ (3) \gamma=\left\|2-\frac{\left(t\operatorname{mode}\frac T{C_1}\right)}{\left(\frac T{4C_1}\right)}\right\|\tag{3} γ= 2−(4C1T)(tmodeC1T) (3)
探索所有个体
在KLO算法中,对于每个个体,生成一个具有nVar属性的随机个体IR,并随机选择x个属性进行替换,以模拟探索过程。成年人通过自我反省改进自己,孩子在父母的指导下纠正不合适的行为,这些都体现为算法中的行为矫正操作,帮助个体改进而不变得更糟。在更新过程中,如果新生成个体的成本优于原个体,则以Percent%的概率进行更新;即使新个体成本更高,也有10%的几率选择它,以增加探索潜在更优解的机会。
更新儿童与父母
在每次迭代中,整个群体都会被更新,但孩子的更新方式与父母的不同。
学生的热情水平(LE):
L E i = L E min + ( L E max − L E min ) ( n Kids − i ) n Kids (4) LE_i=LE_{\min}+(LE_{\max}-LE_{\min})\frac{(n\text{Kids}-i)}{n\text{Kids}}\tag{4} LEi=LEmin+(LEmax−LEmin)nKids(nKids−i)(4)
每个儿童会生成一个随机数r,如果r小于一个孩子的热情水平,那么他将向老师学习,否则他将需要额外的辅导和努力来提高:
x ( t + 1 ) = { X ( t ) + γ λ ∥ Teacher − T F ∗ M e a n ∥ , if r < X ( t ) . L E BestSol + γ λ ∥ X ( t ) − BestSol ∥ , otherwise (5) \left.x(t+1)=\left\{\begin{matrix}X(t)+\gamma\lambda\|\text{Teacher}-TF*Mean\|,&\text{if }r<X(t).LE\\\text{BestSol}+\gamma\lambda\|X(t)-\text{BestSol}\|,&\text{otherwise}\end{matrix}\right.\right.\tag{5} x(t+1)={X(t)+γλ∥Teacher−TF∗Mean∥,BestSol+γλ∥X(t)−BestSol∥,if r<X(t).LEotherwise(5)
3.结果展示
论文CEC2017对比
4.参考文献
[1] Javed S T, Zafar K, Younas I. Kids Learning Optimizer: social evolution and cognitive learning-based optimization algorithm[J]. Neural Computing and Applications, 2024: 1-49.
5.代码获取
【资源清单】代码资源清单导航~