極大極小演算法原理

2021-09-13 15:45:45 字數 746 閱讀 6089

該演算法的搜尋策略是考慮雙方若干步之後,從可能的步中選擇相對較好的走發來走。

以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,譯者注 ...