Play tic tac toe with Emio. The pawns are cubes with a photo of a cat or a dog on top. We trained Emio to recognize the cats and dogs. Choose a pawn and start playing with Emio.
To run the demo, you need to install:
- Emio Labs (binaries)
- Before going further, for computation time performance of the training you can install CUDA and cuDNN to make the AI run on the GPU (work only if there is a GPU). This is highly recommended (and must be done first) but not required. For the inference of the model you don't need GPU.
- Darknet: Darknet is an open source neural network framework written in C, C++, and CUDA. No binaries are provided, you need to clone the GitHub project and compile from source. You can follow the instructions on the GitHub repository.
- DarkHelp: The DarkHelp C++ API is a wrapper to make it easier to use the Darknet neural network framework within a C++ application. No binaries are provided, you need to clone the github project and compile from source. You can follow the instructions on the GitHub repository.
- In
DarkHelp.pyline 86 :Predict.argtypes = [c_void_p, c_int, c_int, POINTER(c_uint8), c_int]
- Add the lab/demo to the Emio Labs application: Emio Labs>Labs>Configure Labs>Add (from URL)
- Follow the Requirements section
- In the Gameplay Sequence section, replace the
PATH_TO_darkhelpby the actual path on your computer - Finally click the python button to launch the demo
- Open a terminal and find the Python distributed with Emio Labs (
path_to_emio_labs_install/resources/sofa/bin/python) - With this Python, install the required packages:
python -m pip install -r requirements.txt - Follow these instructions to setup your environment variables
cd ~/emio-labs/assets/labs/demo_tictactoepython play.py
- In
PATH/TO/src/DarkHelp/src-python/Darkhelp.py, replace line 17 withlibpath = "C:/Program Files/darkhelp/bin/darkhelp.dll"
- Follow the instructions on the terminal
- Choose a difficulty between, "e" (easy), "r" (random), "h" (hard), and "i" (impossible)

- Emio will start by putting the pawns into the storage zone if the board is not clear.
- Once the board is clear, Emio will wait for you to start. If you don't do anything after 10 seconds it will choose a pawn and start the game.
- At each round, after Emio plays, wait for the instruction to make your move.

- During the game, Emio will check the board at the end of each round and will try to correct it if there is any mismatch. It will try two times, then ask you to correct the board if it didn'd succeed.
- At the end of the game, Emio will ask you to play again.
