alpha-beta-pruning

    0熱度

    2回答

    我使用Expectiminimax這是在我目前的狀況偉大的工作電流: Max -> Min -> Chance -> Max -> Min -> Chance -> (Repeat) 我不能以任何方式 Max/Min -> Chance -> (Repeat) 由於方式的遊戲作品。 我覺得好像alpha將會不準確,如果我繼續轉換我的算法。用我目前的設置來實施修剪(除了視野效果)還有什麼副作

    1熱度

    1回答

    我們爲了找到可以由機器進行最佳的移動使用α+β修剪開發的並行跳棋(英文稿)遊戲。我想知道是否增加了遊戲樹的深度/高度,用α,β剪枝算法必然演變最佳可能的移動搜索呢? 我是一個低級別的機器上運行,我無法加起來深度大於9.I更多使用下面的測試案例已經檢查了我的計劃,但我得到了同樣的舉動可能考慮深度從1到9如下。 case 1 +B+B+B+B B+B+B+B+ +B+B+B+B O+O+O+O

    2熱度

    2回答

    通過基本的Minimax搜索,使用OMP For分割多個線程之間的工作似乎很容易。例如 - #pragma omp parallel for for (each child node) { val = minimax(child, depth - 1, FALSE); bestValue = max(bestValue, val); } 但是,這似乎是不可能的Alph

    0熱度

    1回答

    我正在嘗試用alpha-beta修剪實現tic tac腳趾的minimax算法。現在我的程序正在運行,但它似乎沒有工作。每當我運行它似乎在所有的廣場輸入垃圾。我已經實現了這個功能,這樣我的極大極小功能就進入了一個電路板狀態,並修改了這個狀態,這樣當電路板完成時,電路板狀態就包含了下一個最好的移動。然後,我將「this」設置爲等同於修改過的電路板。這裏是我的功能極大極小算法: void board:

    -1熱度

    1回答

    有什麼情況可以說我們可以說Alpha-Beta修剪效率很低。換句話說,假設我們有一場比賽,你必須達到27勝,而你和你的對手每次只能使用1,2,5加起來。那麼Alpha-Beta修剪在這裏效率如何?以這種方式進行評估是否有點令人困惑,特別是在我們的情況剛剛起步時,我們並不在意有很多可能性。 我覺得我可以解釋這一點,但我不能!幫幫我。

    -2熱度

    1回答

    我想在C++中使用alpha beta修剪實現井字遊戲。我使用這個鏈接來幫助我。 http://www.ntu.edu.sg/home/ehchua/programming/java/JavaGame_TicTacToe_AI.html 我在C++中編寫了這段代碼,但是這並沒有運行。每次計算機輪到它時,它都會返回[-1,-1]的位置,這是在minimax函數中默認設置的。我找不出錯誤在哪裏。請幫忙

    0熱度

    1回答

    我一直在爲一個Tic tac腳趾AI實現一個miniMax算法而掙扎了好幾天。現在,我得到的問題是當我調用minimax()函數時,我在'returnBoard'輸入中得到一塊空板。我知道我的算法正在通過一系列的板子,因爲我已經打印出了孩子,因爲我已經得到了它們,並且我看到計算機正在進行移動並給棋盤上分數。有什麼建議麼? void board::getBestMove() { board re

    0熱度

    1回答

    我正在做一個4x4井字遊戲的小項目。我正在使用Alpha Beta Search來尋找下一個最佳舉措。在α+β搜索,我使用的是被稱爲在下面的算法 我成功地實施一切的「效用」功能的截止評價功能,但問題是效用函數不返回一個負值,我真的不知道爲什麼!以下是功能 private static int utility(GameTreeNode gtn, bool isMin = false) {

    2熱度

    1回答

    我正在實施迭代加深與計算機國際象棋程序的alpha-beta搜索的主要變化,我希望包括搜索的時間限制。我想知道在5的深處進行搜索時所達到的時間限制的後果。如果這種不完全搜索找到了新的主要變化,那麼保證至少與完整搜索在4的深度發現主要變化?否則,似乎我應該拋出深度爲5的不完整搜索找到的任何東西。

    2熱度

    1回答

    我目前正在寫一個極小值算法與國際象棋beta修剪。 從我見過的所有例子中,minimax算法將返回一個int值,該int值代表最佳得分或棋盤狀態,這將導致最佳移動。 我的問題是我們該如何返回與分數返回值相關的最佳舉措? 例如,我的Alpha-Beta()在下面的僞... public int alphabeta(int depth, Board b, int alpha, int beta, bo