2016-04-28 31 views
0

我看不到我可以如何設置: 我必須爲2名玩家編寫一個小型IA,用於非對稱棋盤遊戲。每轉動一圈,每個玩家都有多個動作點用於將棋子移動到棋盤上(10x10)。 現在我知道如何根據給定動作點的數量爲每個棋子生成可能的移動列表,但我會阻止下一步,選擇最佳移動。我怎麼能編碼的事實,例如5行動指出,最好移動一個兵3細胞和另一個移動一個兵5細胞的2個細胞。我必須使用特定算法還是應用編程概念...?那麼,我迷路了。定義了最好的舉動(AI-遊戲)

希望你能幫助我:)

回答

0

您需要將評分每個動作都基於遊戲規則當你選擇適當的評分方法時,你可以評估5種可能動作中哪一種最好,

作爲一個例子,我們假設一個簡單的遊戲,你必須通過放置所有的對手棋子當你將棋子移動到下一個空閒單元而沒有將你的棋子暴露在危險中時,你可以分配得分+1,當你拿到對手的棋子時+3。如果對手拿走你的棋子在下一步移動你減去你的sc礦-3。您可以定義其他評分規則。當您對所有可能的移動應用得分後,您可以選擇最佳移動方法,使用MinMax算法進行2人遊戲或某些貪婪搜索算法,這樣可以最大限度地提高分數選擇動作的得分,而不會預測對手的移動。