日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【智能算法】迭代局部搜索(Iterated Local Search, ILS)详解

發布時間:2024/10/12 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【智能算法】迭代局部搜索(Iterated Local Search, ILS)详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

更多精彩盡在微信公眾號【程序猿聲】

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

00 目錄

  • 局部搜索算法
  • 簡單局部搜索
  • 迭代局部搜索

01 局部搜索算法

1.1 什么是局部搜索算法?

局部搜索是解決最優化問題的一種啟發式算法。因為對于很多復雜的問題,求解最優解的時間可能是極其長的。因此誕生了各種啟發式算法來退而求其次尋找次優解,局部搜索就是其中一種。它是一種近似算法(Approximate algorithms)。

局部搜索算法是從爬山法改進而來的。簡單來說,局部搜索算法是一種簡單的貪心搜索算法,該算法每次從當前解的臨近解空間中選擇一個最優解作為當前解,直到達到一個局部最優解。局部搜索從一個初始解出發,然后搜索解的鄰域,如有更優的解則移動至該解并繼續執行搜索,否則返回當前解。

1.2 算法思想過程

局部搜索會先從一個初始解開始,通過鄰域動作。產生初始解的鄰居解,然后根據某種策略選擇鄰居解。一直重復以上過程,直到達到終止條件。

不同局部搜索算法的區別就在于:鄰域動作的定義以及選擇鄰居解的策略。這也是決定算法好壞的關鍵之處。

1.3 什么又是鄰域動作?

其實鄰域動作就是一個函數。那么,通過這個函數,對當前的最優解s,產生s對應的鄰居解的一個集合。比如:

對于一個bool型問題,其當前解為:s = 1001,當將鄰域動作定義為翻轉其中一個bit時,得到的鄰居解的集合N(s)={0001,1101,1011,1000},其中N(s) ∈ S。同理,當將鄰域動作定義為互換相鄰bit時,得到的鄰居解的集合N(s)={0101,1001,1010}.

02 簡單局部搜索

在開始我們的迭代局部搜索之前,還是先來給大家科普幾個簡單局部搜索算法。他們也是基于個體的啟發式算法(Single solution)。

2.1 爬山法(HILL-CLIMBING)

干貨 | 用模擬退火(SA, Simulated Annealing)算法解決旅行商問題

2.2 模擬退火(SIMULATED ANNEALING)

干貨 | 用模擬退火(SA, Simulated Annealing)算法解決旅行商問題

2.3 模擬退火(SIMULATED ANNEALING)

干貨|十分鐘快速復習禁忌搜索(c++版)

干貨 | 十分鐘掌握禁忌搜索算法求解帶時間窗的車輛路徑問題(附C++代碼和詳細代碼注釋)

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

3.1 介紹

迭代局部搜索屬于探索性局部搜索方法(EXPLORATIVE LOCAL SEARCH METHODS)的一種。它在局部搜索得到的局部最優解上,加入了擾動,然后再重新進行局部搜索。

3.2 過程描述

注:下文的局部搜索(或者LocalSearch)指定都是簡單局部搜索。指上文介紹的三種中的任意一種。

  • 從初始解s中進行局部搜索,找到一個局部最優解s1。
  • 擾動s1,獲得新的解s2。
  • 從新解s2中進行局部搜索,再次找到一個局部最優解s3。
  • 基于判斷策略,對s3好壞進行判斷。選擇接受s3作為新解或者回退s2。
  • 直到找到滿足條件的最優解,不然跳回第二步。
  • 其圖解如下:

    image

    偽代碼如下:

    image

    關于其中的接受判斷準則,這里采用了模擬退火中的概率函數:

    image

    04 代碼時間

    以下C++代碼還是用于求解TSP旅行商問題。至于什么是旅行商問題,讀者可以從爬山算法那篇文章了解。

    欲獲取代碼,請關注我們的微信公眾號【程序猿聲】,在后臺回復:ILS代碼。即可獲取。

    微信公眾號

    轉載于:https://www.cnblogs.com/dengfaheng/p/9245559.html

    總結

    以上是生活随笔為你收集整理的【智能算法】迭代局部搜索(Iterated Local Search, ILS)详解的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。