🍁🥬🕒摘要🕒🥬🍁
2008 年 Yang 根据自然界中萤火虫的发光行为提出了萤 火虫算法(Firefly Algorithm, FA),FA 作为一种新的元启发式算法被大范围地应用于多个领域。萤火虫利用自身发出的 光作为信号吸引其他萤火虫,而萤火虫的吸引力由发光的节奏、频率和被观察到的时间决定,当一个萤火虫光亮较高时 就有可能吸引另一个光亮较弱的萤火虫向其移动,最亮的萤火虫则做随机移动,在此过程中萤火虫自身位置随之改变。 若将萤火虫所在位置表示问题空间的可行解,以萤火虫发光的亮度为目标函数,通过萤火虫群体的移动实现对目标函数寻优。
✨🔎⚡运行结果⚡🔎✨
💂♨️👨🎓Matlab代码👨🎓♨️💂
clear; clf; problem = @(x) problemfunc(x); nvar = 2; bound.xmin = -5; bound.xmax = 5; param.itermax = 75; param.npop = 50; param.gamma = 1; param.beta0 = 1; param.alpha = 0.2; param.damp = 0.9; param.scale = (bound.xmax-bound.xmin); FA(problem, nvar, bound, param) % [X,Y] = meshgrid(bound.xmin:0.01:bound.xmax, bound.xmin:0.01:bound.xmax); % surf(X,Y,-20*exp(-0.2*sqrt(0.5*(X.^2+Y.^2)))-exp(0.5*(cos(2*pi*X)+cos(2*pi*Y)))+exp(1)+20, 'EdgeColor','none'); % view(-33,72); saveas(gcf, 'Ackley2.png');
📜📢🌈参考文献🌈📢📜
[1]兰回归,李英海,李清清,孟虹池,杨苑.基于改进萤火虫算法的水库多目标调度决策研究[J].人民长江,2022,53(09):195-201.DOI:10.16232/j.cnki.1001-4179.2022.09.030.