google-deepmind / mctx

Monte Carlo tree search in JAX
Apache License 2.0
2.31k stars 188 forks source link

Request for Documentation and Assistance with mctx Library for AI Integration in 2048 Game #53

Closed ghost closed 1 year ago

ghost commented 1 year ago

I only have started learning Python this year and now I have used the tkinter library to create a window version of the 2048 game (here https://github.com/TWJizhanHuang/Novice_Lab_of_2048_in_Python). However, I haven't implemented any animation effects yet.

Currently, I am trying to integrate AI into my 2048 game to enable the "auto-run" option, similar to the web version example available at https://jupiter.xtrp.io/.

I searched and noticed the mctx library that you have released (including https://www.deepmind.com/open-source/monte-carlo-tree-search-in-jax) and I would like to use and apply it. However, I have been struggling to find documentation that explains how to use your mctx library.

Could you please provide me with some documentation or guidance on how to use the mctx library? Alternatively, if you have any advice or suggestions, I would greatly appreciate your input. Thank you in advance for any assistance you can provide.

fidlej commented 1 year ago

The full implementation of (stochastic) AlphaZero is a long process. It would require knowledge of machine learning to train the value network and policy network.

Instead of using mctx, you can implement a simpler search algorithm. For example, Jupiter uses Monte-Carlo search (with no tree). https://github.com/xtrp/jupiter#algorithm

If you want to know more about reinforcement learning for 2048, there is a dissertation (I have not read it): https://arxiv.org/abs/2212.11087