63 Commits

Author SHA1 Message Date
d413b757d4 Accommodate changes to search-graph. 2025-01-21 23:12:54 -05:00
844120f0b4 Update README for publication on SDF Gitea instance. 2025-01-10 10:11:01 -05:00
4855a2b9b2 Change name to dag-mcts to avoid conflicts on crates.io. 2025-01-09 13:05:03 -05:00
212d7690f1 Lint fix. 2025-01-09 13:04:54 -05:00
93d4049c37 Drop dependency on syncbox now that AtomicU64 is in std. 2025-01-09 13:04:42 -05:00
971656b03c Neaten up game types. 2025-01-09 13:04:24 -05:00
851be86a2e Small bump to docs. 2025-01-09 13:03:57 -05:00
7828171e0d Replace manually defined iterator struct with an opaque type. 2025-01-07 22:26:20 -05:00
a8e646b010 Clarify that UcbValue is really a general rollout result. 2025-01-07 22:09:43 -05:00
09d2b4a52d Clarify docs on FirstParentSelector. 2025-01-07 22:09:23 -05:00
5a1c2236e1 Rename SearchSettings to SearchParameters. 2025-01-07 22:09:10 -05:00
abc83fcfb1 Restore .gitignore 2025-01-07 21:21:01 -05:00
b0bf43a28f Copy root files into mcts subdir before moving it into its own repo. 2025-01-07 20:55:14 -05:00
688f867f9f Make random MCTS simulation multi-threaded. 2019-08-15 16:07:38 -04:00
1a3a42fa3f Rustfmt fixes. 2019-08-15 13:24:44 -04:00
2803d348b4 Fix compilation warnings. 2019-08-15 13:23:50 -04:00
7eb8ba6a4b Use a boxed dyn Iterator instead of internal iteration over actions. 2019-08-15 13:22:58 -04:00
a96116db40 Tiny bump to docs. 2019-08-15 00:39:49 -04:00
4b8421527a Delete docs for function parameter that doesn't exist anymore. 2019-08-15 00:38:24 -04:00
496dda2a07 Use net score instead of absolute score so that MCTS agent doesn't resign immediately. 2019-08-14 17:05:53 -04:00
e0d6a5e2f5 Now you can sort of play a game again with console_play. 2019-08-14 02:22:22 -04:00
8490dd5e0d Add method to move components back out of rollout phase of MCTS. 2019-08-13 00:57:37 -04:00
6137770413 Tighten up little things in MCTS impl. 2019-08-13 00:48:23 -04:00
676e0d7796 Clone cycle information into RolloutError to remove borrow of graph. 2019-08-13 00:48:04 -04:00
37d00357c1 Working-ish MCTS, with change detection integration tests.
Best-child backprop is in.
2019-07-30 18:54:12 -04:00
b9383f373f Reworking MCTS lib to support incoming tests. 2019-07-28 23:05:38 -04:00
bd16b52f17 Get rid of unnecessary "terminated" method on game::State. 2019-07-26 13:11:43 -04:00
05f8b37b96 Reorganize prefab payoff/statistics types. 2019-07-26 13:09:35 -04:00
aab7e92660 Massaging MCTS interface traits as test utils develop. 2019-07-26 12:24:10 -04:00
e2b03d3ec4 Saturate statistics counters silently.
Not super-happy with this, but it'll do.
2019-07-26 02:54:14 -04:00
ac49577713 Start defining utilities to support tests. 2019-07-25 23:42:11 -04:00
82cd15836d Account for changes in search-graph HEAD. 2019-07-25 22:32:58 -04:00
9e8bad65e3 Hit it with cargo fmt. 2019-07-23 02:17:24 -04:00
d3287f8654 Clean up unnecessary lifetimes a tiny bit. 2019-07-23 02:17:05 -04:00
4398fe02db MCTS rewritten to use search_graph::view. 2019-07-23 02:13:42 -04:00
4366380521 Trying to resurrect this project. Bump Cargo.toml and partial cleanup of MCTS. 2019-07-17 20:29:29 -04:00
b6756abf6a Fix use of newer rand crate, and now thud_game tests finally run... and fail. 2018-12-16 12:59:04 -05:00
b743f4bf3d Update MCTS crate to Rust 2018. 2018-12-16 12:19:39 -05:00
802e41acb3 Rustfmt for the masses. 2018-12-16 11:51:16 -05:00
c53ac743e8 Trying to finish rebasing/pulling from Github to get development back on track again 2018-12-16 02:53:34 -05:00
a2b01f5d91 Bump MCTS crate so it builds with newer deps. 2018-12-15 22:11:27 -05:00
c3d2cfb8f7 MCTS crate builds again. 2018-12-09 16:36:24 -05:00
4c53076519 Don't use Reflect marker because it's been gotten rid of. 2017-12-13 20:42:14 -05:00
7637ea6dab Remove unused module code from mcts crate. 2016-05-21 16:39:53 -04:00
6586547439 Documentation for modules in mcts crate. 2016-05-21 16:39:43 -04:00
3a14678f9f MCTS rework type-checks and compiles. 2016-05-21 13:44:36 -04:00
84af678cab Starting to rework mcts package.
It's in pieces at the moment, but things are converging.

Search algorithm modified to have only one epoch running on a graph at a
time.

Data model for search graph should now support up to (number of bits in
a usize) threads.

Still need to work out how this all comes together, particularly the
control of execution over multiple threads.
2016-05-04 17:54:09 -04:00
a4f1aaf1ab MCTS AI computation in its own thread. 2016-04-28 01:10:36 -04:00
cd9ee5c321 You can play a single-player game, but transposition errors persist. 2016-04-27 15:26:45 -04:00
45ce694b8b Reorganize UI libs into separate subpackages. 2016-04-26 13:15:34 -04:00