文章来源 《计算机学报》 第34卷 第1期 2011年1月
《基于空间缩放和吸引子的粒子群优化算法》
具体问题是这样的。
我按照文章的算法用matlab编程语言实现了SzAPSO算法,但是在使用CEC2005的测试函数的时候算法的性能很低,收敛速度过快无法有效地进行全局搜索,在2维以上算法可以说是已经很难找到最优解了。
然后我自己实现了CEC2005的第一个sphere和第二个schwefel函数,实现的算法马上就体现出来比经典粒子群算法高效很多的性能。
所以我想问CEC2005提供的测试函数的实现代码是不是有什么特别,因为我之前实现的经典PSO算法在调用benchmark_func函数的时候并没有这样的问题,但是在我自己写的测试函数上测试的时候SzAPSO明显比经典的PSO算法有优越很多的性能。
SzAPSO_FR.m文件是算法的主程序
SzAPSO.m是算法的实现函数,在这个函数里面再再调用benchmark_func测试函数和我自己写的函数
schwefel_PSO.m是我自己写的函数,直接替换SzAPSO.m调用的测试函数名就可以使用了。
matlab-files.zip是CEC2005附的测试函数matlab实现代码
![期刊文章《基于空间缩放和吸引子的粒子群优化算法》的算法实现问题]()
算法主程序
SzAPSO_FR.m 算法实现函数
SzAPSO.m 我自己另外写的测试函数,就是matlab里面的schwefel函数,功能一样(把算法实现函数里的benchmark_func替换成schwefel_PSO就可以调用)
schwefel_PSO.m |