智能优化算法:JAYA优化算法 -附代码

智能优化算法:JAYA优化算法

摘要:JAYA算法是于2016年提出的一种简单高效的新型优化算法,具有收敛快寻优强的特点。

1.算法原理

传统 Jaya 算法是 Rao 等提出的一种元启发式算法,它基于持续改进的原理,将个体不断向优秀个体靠拢,同时不断远离差的个体,进而不断提高解的质量。传统 Jaya 算法主要基于迭代公式(1),每次通过该方程迭代进化获取新的解,因此 Jaya 算法不像其他进化算法需要许多的参数,它只需要针对特定问题调整迭代过程的参数,减少了因为调整过多参数而带来的测试上的麻烦。与其它元启发式算法相比,Jaya 算法更容易理解和实现。该算法的迭代公式如下所示:
X i , j , t ′ = X i , j , t + r b e s t , i , j , t ∗ ( X b e s t , j , t − ∣ X i , j , t ∣ ) − r w o r s t , i , j ( X w o r s t , i , j , t − ∣ X i , j , t ∣ ) (1) X_{i,j,t}' = X_{i,j,t}+r_{best,i,j,t}*(X_{best,j,t} - |X_{i,j,t}|) - r_{worst,i,j}(X_{worst,i,j,t} - |X_{i,j,t}|) \tag{1} Xi,j,t=Xi,j,t+rbest,i,j,t(Xbest,j,tXi,j,t)rworst,i,j(Xworst,i,j,tXi,j,t)(1)
式(1)中, i i i代表种群中第 i i i个个体, i = 1 , . . . , n i=1,...,n i=1,...,n j j j代表个体的第j维变量, j = 1 , 2 , . . . , d i m j=1,2,...,dim j=1,2,...,dim, t t t表示当前迭代的次数。 X , X ′ X,X' X,X表示第t代的第 i i i个个体在第 j j j维上更新前和经过Jaya公式迭代计算后的值。 r b e s t , r w o r s t r_{best},r_{worst} rbest,rworst是[0,1]之间的随机数,通过调整这两个参数大小,调整逼近最优解的能力。 X b e s t , j , t , X w o r s t , j , t X_{best,j,t},X_{worst,j,t} Xbest,j,t,Xworst,j,t分别表示第 t t t代的最优差个体在第 j j j维上的值。 r b e s t , i , j , t ∗ ( X b e s t , j , t − ∣ X i , j , t ∣ ) r_{best,i,j,t}*(X_{best,j,t} - |X_{i,j,t}|) rbest,i,j,t(Xbest,j,tXi,j,t)将当前个体朝当代最优解的方向进化, − r w o r s t , i , j ( X w o r s t , i , j , t − ∣ X i , j , t ∣ ) - r_{worst,i,j}(X_{worst,i,j,t} - |X_{i,j,t}|) rworst,i,j(Xworst,i,j,tXi,j,t)将当前个体朝远离当代最差解方向进行进化。如果生成的新个体的适应度比原始个体优秀,则用新个体代替原始个体,否则不替换,然后对下一个个体进行 Jaya 迭代。当遍历完所有个体之后,进行下一轮迭代。

Jaya优化算法流程图如下:
智能优化算法:JAYA优化算法 -附代码_第1张图片

2.实验结果

智能优化算法:JAYA优化算法 -附代码_第2张图片

3.参考文献

[1]李洪辉,伍宏科.基于JAYA算法的高层建筑粘滞阻尼器优化布置[J].四川建筑,2020,40(06):153-154+159.

[1]连裕翔,张超勇,孟磊磊,薛燕社,詹欣隆,吕畅.基于改进Jaya算法的柔性作业车间调度问题[J/OL].计算机集成制造系统:1-19[2021-04-10].http://kns.cnki.net/kcms/detail/11.5946.tp.20201009.0942.004.html.

4.Matlab代码

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

你可能感兴趣的:(智能优化算法,算法,人工智能,机器学习,python)