【笔记】人工智能 一种现代方法 人工智能 一种现代方法 第5章 对抗搜索
【筆記】人工智能 一種現代方法 人工智能 一種現代方法 第5章 對抗搜索
5.1博弈
對抗搜索:競爭環境中每個Agent的目標之間是有沖突的,也成為博弈。
博弈:有完整信息的、確定性的、輪流行動的、兩個游戲者的零和游戲。
剪枝:在搜索樹中忽略那些不影響最后決定的部分。
啟發式評估函數:在不進行完全搜索的情況下估計某些狀態的真實效用值。
5.2博弈中的優化決策
最優解:到達目標狀態的一系列行動
中止狀態:一方取勝
極小極大值:可以理解為有兩個人MAX和MIN,MAX喜歡移動到有極大值的地方,MIN喜歡移動到有極小值的地方,終端狀態由效用函數進行評價。MAX指向有最高極小極大值的中止狀態。假設對手的決策均為最優。
5.2.1極小極大算法
遞歸算法自上而下一直前進到樹的葉子節點,遞歸回溯通過搜索樹把極小極大值回傳。
理解:每一步都是最小化敵方的最大收益。
5.2.2多人博弈時的最優決策
超過兩個人的博弈利用MINIMAX算法,由于之前研究的兩人博弈一方得分可以反應另一方得分,故僅用一個數值表示狀態得分,對于多人游戲,應該使用向量值替換單一效用值。每個節點的回傳至是該選手在節點的后繼者效用值向量中選擇的結果。
多人博弈通常會涉及在游戲選手之間出現正式或非正式聯盟的情況。
5.3α-β剪枝
極大極小值搜索時間復雜度呈指數級增加,α-β剪枝可以將復雜度減半,很多情況下可以剪裁掉整個子樹。
在某節點的父節點有更好的選擇,則不會探索到該節點。
α:到目前為止路徑上發現的MAX的最佳選擇
β:到目前為止路徑上MIN的最佳選擇
比α小則停止探索,比β大則停止探索
5.3.1行棋排序
α-β剪枝的效率很大程度上依賴于檢查后繼的順序,對于隨機順序而言可以降低復雜度,引入一些簡單的排序函數可以更大程度降低復雜度。
存儲以前見過的棋局的哈希表稱為換位表。
5.4不完美的實時決策
由于實時決策允許的模擬時間很短,故需要盡早截斷搜索、將啟發式評估函數用于搜索。
啟發式評估函數EVAL(可以評估中間狀態)--替代效用函數
用省么時候調用EVAL的階段測試--替代終止測試
5.4.1評估函數
①對終止狀態的排序應該和真正的效用函數的排序結果一樣
②評估函數的計算成本不能花費太長時間
③對于非終止狀態,評估函數應該和取勝幾率密切相關
5.4.2截斷搜索
最簡單的節點搜索:設置固定的搜索深度
地平線效應:當好棋出現在固定搜索深度之后時,無法探索到好棋
5.4.3向前剪枝
向前剪枝:在某節點上無需進一步考慮而直接剪枝一些節點
柱搜索:只考慮最好的n步行棋,但無法保證最好的行棋不被剪枝掉
總結
以上是生活随笔為你收集整理的【笔记】人工智能 一种现代方法 人工智能 一种现代方法 第5章 对抗搜索的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: aac,ogg等音频测试文件下载地址
- 下一篇: Kindeditor在线HTML富文本编