爬山算法是一種局部擇優的方法,採用啟發式方法,是對深度優先搜索的一種改進,它利用反饋信息幫助生成解的決策。

爬山算法一般存在以下問題:

  1. 局部最大
  2. 高地:也稱為平頂,搜索一旦到達高地,就無法確定搜索最佳方向,會產生隨機走動,使得搜索效率降低。
  3. 山脊:搜索可能會在山脊的兩面來回震盪,前進步伐很小。

解決方法:隨機重啟爬山算法