基于模拟退火算法优化Eggholder函数,测试函数的100种求解方法之15

模拟退火算法优化测试函数Eggholder

Eggholder函数是一个难以优化的函数,因为存在大量的局部极小值,并且波峰波谷陡峭,比较容易陷入局部最优,是测试各种算法的一个较好的函数,测试效果好就能说明算法性能优异,参数设置合理,同时能检验一个程序员是否真正掌握算法的精髓。模拟退火算法来源于固体退火原理,是一种基于概率的算法,将固体加温至充分高,再让其徐徐冷却,加温时,固体内部粒子随温升变为无序状,内能增大,而徐徐冷却时粒子渐趋有序,在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。它是基于Monte-Carlo迭代求解策略的一种随机寻优算法,其出发点是基于物理中固体物质的退火过程与一般组合优化问题之间的相似性。模拟退火算法从某一较高初温出发,伴随温度参数的不断下降,结合概率突跳特性在解空间中随机寻找目标函数的全局最优解,即在局部最优解能概率性地跳出并最终趋于全局最优。模拟退火算法是一种通用的优化算法,理论上算法具有概率的全局优化性能,目前已在工程中得到了广泛应用,诸如VLSI、生产调度、控制工程、机器学习、神经网络、信号处理等领域。在近些年的各种竞赛种,获奖论文大多用的是模拟退火算法求解,可谓是获奖算法专业户,安+啊= 模拟退火算法是通过赋予搜索过程一种时变且最终趋于零的概率突跳性,从而可有效避免陷入局部极小并最终趋于全局最优的串行结构的优化算法,本文用麻雀算法ssa对Eggholder进行优化求解,其中,测试函数Eggholder图像如下:

你可能感兴趣的:(#,常用测试函数及100种求解方法,模拟退火算法,matlab,人工智能)