爬山演算法
1.概念
爬山演算法是一種區域性擇優的方法,是一種區域性貪心的最優演算法。
採用啟發式方法,是對深度優先搜尋的一種改進,它利用反饋資訊幫助生成解的決策。 該演算法每次從當前解的臨近解空間中選擇一個最優解作為當前解,
直到達到一個區域性最優解,屬於人工智慧演算法的一種。
2.主要思想
- 隨機選擇一個登山的起點;
- 每次拿相鄰點與當前點進行比對,取兩者中較優者,作為爬坡的下一步;
- 重複第2步,直至該點的鄰近點中不再有比其大的點;
- 選擇該點作為本次爬山的頂點,即為該演算法獲得的最優解。
3.特點
實現簡單,其主要缺點是會陷入區域性最優解,不一定能搜尋到全域性最優解。
如下圖所示:假設C點為當前解,爬山演算法搜尋到A點這個區域性最優解就會停止搜尋,
因為在A點無論向那個方向小幅度移動都不能得到更優的解。
