2012-05-28 17 views
3

我正在實施一個小遊戲的minimax,並注意到我稱之爲「拖延」的東西。簡單的例子如下:在minimax中解決「拖延」

在一個捕獲旗幟遊戲中,該旗幟是從玩家A向上一個方塊,而玩家B距離是50個空間。輪到了,他可以搜索前進6步。我所看到的是,所有可能的舉動都具有「勝利」的價值,因爲A知道他可以在B之前到達國旗,即使他沒有立即抓住它。所以如果UP是排序中的最後一步,那麼他只會左轉右轉一段時間,直到B處於驚人的距離內,然後他必須最終拿到旗幟。

起初,行爲看起來像一個錯誤,但通過它,我相信自己,每一個舉動真的是「贏」,但行爲並不好。我可以通過使旗幟從現在獲得的4個動作獲得比現在捕獲的旗幟更低的價值來影響評估,但是我想知道是否有最小極小搜索的一個方面比我失蹤?是否有任何一個高分的概念比之前只有一個同樣高的分數更可取?

+0

哈哈,你做了一個巨魔遊戲......! :P – Amadan

+1

正是我的想法。沒有指望我的15線算法的態度。 – LVB

回答

2

迷你超迷你搜索本身沒有任何東西可以使得贏得更快更好。由於所有終端位置評估得分相同,該算法可以隨機選擇一個移動。讓你的評價函數在樹中被調用的更深的每個級別中稍微降低獲勝分數,並且minimax將選擇更快獲勝。