禁忌算法(Tabu Search)和模拟退火算法(Simulated annealing)的区别

模拟退火与禁忌搜索对比

禁忌搜索采用的方法是朝最陡的方向爬上当前高峰,直到登上山顶(局部最优解),之后开始缓慢下山,同时寻找另一座山峰攀登(将局部最优的移动放入禁忌表,尝试将其他不在禁忌表中的移动进行相互替换);该方法的不足是花费大量时间攀爬(迭代)上遇得到的每一座山,而不是搜寻最高峰。


模拟退火采用的是将注意力主要放在最高山峰的寻找上,由于最高峰可能位于可行域任何地方,故前期重点是随机朝不同方向移动,以便尽可能探索更多可行域;由于大部分接受的移动都是向上的,所以搜索会逐渐朝可行域内最高山峰所在的部分倾斜,因此,搜索过程逐步否定越来越多向下的移动,从而逐渐将主要注意力放在向上攀爬上,只要时间足够,搜索过程通常会达到最高峰


简言之,模拟退火搜索每次迭代都会从当前试解向该解邻域内的一个近邻移动,这点和禁忌搜索相似,不同在于如何选择近邻作为下一个试解;禁忌搜索会利用禁忌表确认哪些移动在迭代中不会被替换,而模拟退火则在迭代过程中利用随机数生成随机概率来确认从哪个邻域内开始搜索最优解


————————————————
版权声明:本文为CSDN博主「tomwang0322」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41636030/article/details/122350948

posted @ 2022-11-04 14:23  Yohoc  阅读(335)  评论(0编辑  收藏  举报