A very simple C++11 Templated MCTS (Monte Carlo Tree Search) implementation with examples for openFrameworks.
MCTS Code Based on the Java (Simon Lucas - University of Essex) and Python (Peter Cowling, Ed Powley, Daniel Whitehouse - University of York) impelementations at http://mcts.ai/code/index.html
The code is not tailored for any specific use case. It's very generic (but perhaps not generic enough?)
It's probably not very optimized, my priority was on readability and flexibility (I wrote it to understand MCTS).
It supports variable number of agents, and variable number of actions per step, and is templated. See examples for how to design your 'State' and 'Action' classes.
# Usage
State state; // contains the current state, it must comply with the State interface
Action action; // contains an action that can be applied to a State, and bring it to a new State
UCT<State, Action> uct; // Templated class. Builds a partial decision tree and searches it with UCT MCTS
// OPTIONAL init uct params
uct.uct_k = sqrt(2);
uct.max_millis = 0;
uct.max_iterations = 100;
uct.simulation_depth = 5;
loop {
// run uct mcts on current state and get best action
action = uct.run(state);
// apply the action to the current state
state.apply_action(action);
}
# Dependencies:
## Library itself
None (C++11)
## Examples
openFrameworks 0.9.0
should work on any platform, but project files currently exist only for Windows / VS2015
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。 围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版.zip 代码完整,下载可用。围棋AI,基于蒙特卡洛树搜索(MCTS)算法
资源推荐
资源详情
资源评论
收起资源包目录
围棋AI,基于蒙特卡洛树搜索(MCTS)算法 Java版 (1).zip (89个子文件)
主-master
assets
20140528192717515.png 111KB
543D03BAF29BBB3EE8562F63FC3ED59E.png 182KB
miniAlphaGo-2018_11118.docx 37KB
references
references.zip 31KB
BlackWhiteChessAI.zip 1.65MB
othello-master
makefile 349B
src
othello.cpp 6KB
types.h 776B
capture.cpp 9KB
othello.h 571B
montecarlo.h 326B
montecarlo.cpp 1KB
capture.h 575B
.gitignore 5B
README.md 12B
ofxMSAmcts-master
src
MSALoopTimer.h 4KB
TreeNodeT.h 5KB
IState.h 1KB
ofxMSAmcts.h 7KB
readme.md 2KB
example_oxo
example_oxo.vcxproj.filters 2KB
example_oxo.qbs 2KB
Makefile 394B
src
OXOState.h 6KB
mcts_oxo.cpp 3KB
example_oxo.vcxproj 10KB
config.make 6KB
icon.rc 230B
addons.make 11B
example_oxo.sln 2KB
.gitignore 2KB
example_circle
example_circle.qbs 2KB
Makefile 394B
src
mcts_circle.cpp 3KB
CircleState.h 4KB
example_circle.sln 2KB
example_circle.vcxproj 10KB
config.make 6KB
icon.rc 230B
example_circle.vcxproj.filters 2KB
addons.make 11B
mcts-java-1
ElapsedTimer.java 660B
TreeView.java 3KB
JEasyFrame.java 418B
TreeNodeTest.java 692B
TreeNode.java 2KB
Othello_MCTS
resource.aps 14KB
WinMain.cpp 313B
pic
Board.bmp 339KB
White1.bmp 4KB
app.ico 13KB
Move.bmp 4KB
Blank.bmp 4KB
Black1.bmp 4KB
Black.bmp 4KB
White.bmp 4KB
resource.h 441B
othello.cpp 9KB
State.h 1KB
Thread_guard.h 285B
Release
BlackWhiteChessAI.Build.CppClean.log 1KB
pic
Board.bmp 339KB
White1.bmp 4KB
app.ico 13KB
Blank.bmp 4KB
Black1.bmp 4KB
Black.bmp 4KB
White.bmp 4KB
BlackWhiteChessAI.log 3B
resource.rc 2KB
types.h 600B
Reversi.cpp 9KB
capture.cpp 7KB
UCT.h 4KB
BlackWhiteChessAI.sln 940B
othello.h 864B
EasyX
include
easyx.h 12KB
graphics.h 5KB
lib
x64
EasyXa.lib 265KB
EasyXw.lib 267KB
x86
EasyXa.lib 186KB
EasyXw.lib 188KB
BlackWhiteChessAI.vcxproj.filters 2KB
TreeNode.h 1KB
BlackWhiteChessAI.vcxproj 7KB
capture.h 543B
BlackWhiteChessAI.vcxproj.user 162B
Report.pdf 978KB
README.md 508B
共 89 条
- 1
资源评论
- m0_635612422023-10-31资源很不错,内容和描述一致,值得借鉴,赶紧学起来!
不安分的小女孩
- 粉丝: 9200
- 资源: 1990
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功