Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TicTacToe Ring

i.e. simple tictactoe game sandbox for crash testing ai-bots designs

tictactoe

 

The purpose of what's above, despite fun, was to facilitate the testing of bots prototypes performance -by benchmarking them with searchable algorithms. The following have been accomplished:

  • playground / tournament modes providing respectively touch'n'feel / at-scale-simulated gameplay;
  • referential bots implementations i.e.: minmax, debuts, random, search (and humanxd);
  • from-scratch AI-based bots prototypes (waiting for a dose of spare time...)
  • transparent API exposed to interfere with: BoardAPI and PlayerAPI;
  • twofold UI, via: shell CLI (see demo.gif) or clickable web GUI (once hosted here ).

streamlit

 

TicTacToe is deterministic zero-sum game with 19683 possible states and 255168 gameplayes. See complete map of game tree depth depiceted by XKCD .

#QUICKTOUR:
# for CLI --script howto:
# (optional) python3.8 -m pip install tqdm==4.51.0
python3.8 -m tictactoe -o human -x minmax
python3.8 -m tictactoe -o search -x minmax -n 10  # tournament

# for GUI --server deploy & run:
python3.8 -m venv .env && source .env/bin/activate && python3.8 -m pip install -r requirements.txt
streamlit run streamgui.py

# for GUI --server deploy & run with docker:
sudo docker build -t streamgui .
sudo docker run -p 8501:8501 streamgui

About

simple tictactoe game sandbox for crash testing ai-bots designs

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages