cost 366 ms
蒙特卡洛樹搜索在玩的時候一直陷入無限循環(與訓練相反)

[英]Monte carlo tree search keeps getting stuck in an infinite loop when playing (as opposed to training)

我已經嘗試為一個簡單的棋盤游戲制作自己的蒙特卡洛樹搜索算法的實現,並且它在學習時似乎工作合理。 但是,當我從播放模式切換到競技場模式進行評估時,mcts 陷入無限循環。 這樣做的原因是,在學習它時,它會根據概率偽隨機選擇動作,但在競技場模式下,這會切換為選擇最有可能獲勝的動作。 不幸的是,在其中一 ...

什么時候應該重置蒙托卡羅樹搜索?

[英]When should a monto carlo tree search be reset?

我正在嘗試構建/理解蒙特卡洛樹搜索算法 (mcts) 如何與神經網絡結合使用以學習如何玩游戲(如國際象棋)。 但是我無法理解何時重置樹。 我以https://github.com/suragnair/alpha-zero-general為例。 但是對我來說,關於這個實現的一件事是它在每個單獨的游戲 ...

訪問存儲在 NumPy 數組中的樹節點的最有效方法是什么

[英]What is most efficient way to access nodes of a tree stored in a NumPy array

想象一下,我們有一棵存儲在 NumPy 數組中的值樹。 例如 - 樹中的每個節點都是數組中的行。 第一行tree[0]是根節點[0, 6] 。 第一列tree[:,0]包含節點父節點的行號,第二列tree[:,1]包含節點的值屬性。 通過其祖先訪問給定節點直到根的值屬性的最有效方法是什么? 例如,對 ...

巨大的 memory 在 C++ MCTS 算法中的使用

[英]Huge memory usage in C++ MCTS algorithm

我正在 C++ 中實現蒙特卡洛樹搜索算法。 我在 for 循環中一次創建一棵大樹,每次迭代都創建一棵不同的樹。 我的問題是每棵樹都很大,如果我創建 12000 棵樹,我的程序會崩潰,因為 PC 中所有可用的 memory 都已分配。 問題是,例如,我在迭代 5 中創建的樹在下一次迭代中是無用的,所以 ...

Mone Carlo 樹搜索和終端節點處理

[英]Mone Carlo Tree Search and terminal Nodes handling

我正在嘗試使用此存儲庫在新游戲上實現 AlphaZero。 我不確定他們是否正確處理了 MCTS 搜索樹。 他們的 MCTS 實現邏輯如下: 獲取當前游戲 state 的“規范形式”。 基本上,切換播放器 colors 因為神經網絡總是需要從 ID = 1 的播放器的角度輸入。所以如果當前播放器是 ...

為什么蒙特卡洛樹搜索的 UCB 公式中有對數(和平方根)?

[英]Why is there logarithm (and the square root) in the UCB formula of Monte Carlo Tree Search?

我從幾個來源研究了蒙特卡洛樹搜索 (UCT),例如: http://www.incompleteideas.net/609%20dropbox/other%20readings%20and%20resources/MCTS-survey.pdf 但是,我不明白為什么蒙特卡洛樹搜索的 UCB 公式中 ...

優化戰斗機器人

[英]Optimizing fighting bots

想象一下,您應該為一個機器人編寫一個算法,該算法將與其他類似准備的機器人戰斗。 你的機器人整場戰斗有 200 點生命值,每輪獲得 12 個能量點的設定值(最多 100 輪)。 您的機器人必須每一輪都進行攻擊,並且可以但不必保護自己。 有4種攻擊類型和4種相應的防御。 當一個機器人失去所有生命值或您超 ...

單元測試的問題

[英]Issues with unit testing

我想測試一個 function,但我肯定在這方面苦苦掙扎。 如果 NO_PLayer 是有效位置,則 function 將遍歷板的最后一行。 我研究了它,並嘗試了它,但是: 誰能幫我? 提前謝謝了! ...

MCTS 代理在井字游戲上做出錯誤決定

[英]MCTS Agent making bad decisions on Tic-Tac-Toe

我已經在 MCTS AI 上工作了幾天了。 我試圖在井字游戲上實現它,這是我能想到的最簡單的游戲,但出於某種原因,我的人工智能總是做出錯誤的決定。 我已經嘗試更改 UCB1 的探索常數的值、每次搜索的迭代次數,甚至是獲勝、失敗和平局所獲得的分數(試圖讓平局更有回報,因為這個 AI 只打第二,並嘗試平 ...

MCTS:RecursionError:調用 Python object 時超出最大遞歸深度

[英]MCTS : RecursionError: maximum recursion depth exceeded while calling a Python object

對於這個蒙特卡洛樹搜索 python 編碼,為什么我有RecursionError: maximum recursion depth exceeded while calling a Python object ? 這對於需要不斷擴展的 MCTS 是否正常? 還是我錯過了目前仍在追蹤的任何其他錯誤? ...

在基於模型的強化學習任務中加速蒙特卡羅樹搜索的方法

[英]Ways to speed up Monte Carlo Tree Search in a model-based RL task

這個領域對我來說還是很新的,所以如果我問愚蠢的問題,請原諒我。 我正在利用 MCTS 運行基於模型的強化學習任務。 基本上,我有一個代理在離散環境中覓食,代理可以看到它周圍的一些空間(為了簡單起見,我假設對其觀察空間有完美的了解,因此觀察與狀態相同)。 代理有一個由 MLP 表示的世界內部轉換模型( ...

對 ProcessPoolExecutor 上下文的重復調用變慢 (Python)

[英]Repeated Calls to ProcessPoolExecutor context get slower (Python)

我正在開發一個 MCTS 算法,我試圖通過並行展開多個葉子來並行化一些工作。 在完成一批展開之后,我想返回 go 並將我的結果添加到樹中(撤消我的虛擬損失),然后再選擇另一批葉子展開。 除了速度之外,這工作正常 - 我發現圍繞 ProcessPoolExecutor 上下文的連續循環變慢了。 代碼 ...

是否可以“中斷”遞歸 function 並在以后繼續?

[英]Is it possible to “interrupt” a recursive function and continue it later?

我有一個遞歸搜索大樹的 function some_result = treesearch(node) (蒙特卡洛樹搜索的變體)。 它通過next_node = expensive_heuristic(node)決定遍歷樹的順序,然后將結果在葉子上傳播到樹上。 我必須執行許多這樣的搜索,並且可以高 ...

如何將之前的 state 恢復到健身房環境

[英]How to restore previous state to gym environment

我正在嘗試在 Openai 的 atari 健身房環境中實施 MCTS,這需要計划能力:在環境中行動並將其恢復到以前的 state。 我讀到這可以通過游戲的 ram 版本來完成: 在快照中記錄當前的 state: snapshot = env.ale.cloneState() 將環境恢復到快照中記錄 ...

返回的指針屬性中 class 實例上的矢量屬性消失

[英]Vector attributes on class instance in returned pointer attribute disappearing

我正在實現一種樹搜索,它需要能夠從樹中獲取“最有希望的節點”,然后對該節點執行某些操作,以便為下一次迭代更新樹的其余部分。 問題:object 指針Board*的向量屬性似乎在 function 的return值和在調用環境中保存它們的Board*值之間發生變化。 我的 output:>&gt ...

蒙特卡洛樹搜索:從部署中獲取價值

[英]Monte Carlo Tree Search: Getting a value from the rollout

我目前正在為策略游戲 AI 編寫 Monte Carlo Tree Search 的實現,並且對 Rollout(模擬階段)有疑問。 該算法的描述建議您應該運行模擬,直到達到終端 state,但是當您的搜索空間很大且時間有限時,這是不切實際的。 就我而言,我將模擬步驟的數量限制為某個值(如果終止,則 ...

AlphaZero:自對弈期間訪問了哪些節點?

[英]AlphaZero: which nodes visited during self-play?

閱讀這篇文章非常有助於更好地理解 AlphaZero 背后的原理。 不過,有些事情我並不完全確定。 下面是作者的UCT_search方法,可以參考他在Github上的代碼: https : //github.com/plkmo/AlphaZero_Connect4/tree/master/src ...

蒙特卡羅樹搜索擴展

[英]Monte Carlo Tree Search Expansion

我希望你做得很好。 我目前正在做一個項目,我們需要使用 Mcts(蒙特卡洛樹搜索)來實現 connect4-agent。 據我所知,mcts 基本上分為四個階段: 1) 造樹 2) 通過 Ucb1 值進行選擇,直到我們到達葉節點 3) 如果葉節點已被訪問,則展開 4) Rollout = ...

如何在 GPU 上有效地並行化 AlphaZero?

[英]How do I effectively parallelize AlphaZero on the GPU?

我正在實現一個 AlphaZero 版本(AlphaGo 的最新版本),以應用於其他領域。 該算法的關鍵是 state 空間 (CPU) 的蒙特卡洛樹搜索與來自 eval 模式 (GPU) 神經網絡的“直覺”(概率)交錯。 然后使用 MCTS 結果來訓練神經網絡。 我已經通過啟動多個進程來並行化 ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM