迭代局部搜索(Iterated Local Search, ILS)

干货|迭代局部搜索算法(Iterated local search)探幽(附C++代码及注释)

迭代局部搜索

介绍
迭代局部搜索属于探索性局部搜索方法的一种。它在局部搜索得到的局部最优解上,加入了扰动,然后再重新进行局部搜索
搜索过程

  1. 初始状态:best_solution(最优解)、current_solution(当前解)。
  2. 从初始解(best_solution)中进行局部搜索,找到一个局部最优解s1(best_solution)。
  3. 扰动s1(best_solution),获得新的解s2(current_solution)。
  4. 从新解s2(current_solution)中进行局部搜索,再次找到一个局部最优解s3(best_solution)。
  5. 基于判断策略,对s3(current_solution)好坏进行判断。选择是否接受s3(current_solution)作为新的best_solution。
  6. 直到达到边界条件,不然跳回第二步一直循环搜索。
    伪代码
    ILS伪代码

    示意图
    ILS示意图
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容