該演算法的搜尋策略是考慮雙方若干步之後,從可能的步中選擇相對較好的走發來走。
以max表示程式方,min表示對手方,p表示局勢,f§是根據當前局勢做出的估計函式。
則f§>0表示對max有利的局勢
f§<0表示對min有利的局勢
f§=0表示局勢均衡
該演算法的基本思想是:
(1) 輪到min走時,max應考慮最壞的情況,也即f(p)取極小的情況
(2) 輪到max走時,max應考慮最好的情況,也即f(p)取極大的情況
(3) 當評價往回倒推,相應於兩位棋手的對抗策略,不同層交替的使用(1)(2)兩種方法向上傳遞倒推值。
演算法優化
α-β剪枝演算法
在上述的極大極小演算法中,min和max過程將所有的可能性省搜尋樹,然後再從端點的估計值倒推計算,這樣的效率非常低下。而α-β演算法的引入可以提高運算效率,對一些非必要的估計值進行捨棄。其策略是進行深度優先搜尋,當生成結點到達規定深度時,立即進行靜態估計,一旦某乙個非端點的節點可以確定倒推值的時候立即賦值,節省下其他分支拓展到節點的開銷。
剪枝規則:
(1) α剪枝,任一極小層節點的β值不大於他任一前驅極大值層節點的α值,即α(前驅層)≥β(後繼層),則可以終止該極小層中這個min節點以下的搜尋過程。這個min節點的倒推值確定為這個β值。
(2)β剪枝,任一極大層節點的α值不小於它任一前驅極小值層節點的β值,即β(前驅層)≤α(後繼層),則可以終止該極大值層中這個max節點以下的搜尋過程。這個max節點的倒推值確定為這個α值。
極大極小搜尋
極大極小搜尋演算法 用於圍棋,五子棋,象棋等棋類,結果有三種可能 勝利 失敗和平局。理論上可以窮舉所有的走法,這就需要生成整棵博弈樹。實際上不可行。因此搜尋時可以限 定博弈樹的深度,到達該深度則不再往下搜,相當於只往前看 n 步。如果題意是求出必勝,必敗,必和等,那麼肯定是全部搜完整一棵搜尋樹,此題...
極大極小定理
首先,本定理針對的是 hermitian 矩陣,即共軛對稱矩陣。因為只有共軛對稱矩陣的特徵值是確定為實數值的,其他矩陣很可能是復數值,而復數值,也就不存在大小關係了。courant fisher min max 定理 對於 n times n 的矩陣 mathbf 有 其中,lambda 是第 k ...
極大極小博弈樹 轉)
2008年11月15日 星期六 11 03 這篇文章將介紹一種對於所有的gameai 遊戲智慧型 開發來說都非常重要的資料結構。對於幾乎每乙個棋類博弈遊戲程式來說,極大極小樹 the minimax tree 都是其中的核心。極大極小博弈樹 minimax game tree,簡寫為mgt,譯者注 ...