Skip to content

Luunynliny/ReversAi

Repository files navigation

javascript License: MIT Total alerts Language grade: JavaScript Linting Testing


Logo

ReversAi

Algorithm-powered Othello program
View

About

Othello is a board game involving abstract strategy and played by two players on a board with 8 rows and 8 columns and a set of distinct pieces for each side. Pieces typically are disks with a light and a dark face, each side belonging to one player. The player's goal is to have a majority of their colored pieces showing at the end of the game, turning over as many of their opponent's pieces as possible.

— World Othello Federation

This project is the first step for me in the Data Science and AI field, where I would like to work in the future.

The par excellence choice for this kind of project is to recreate Chess or Connect-4, but I have two problems with the latter. I found the first one difficult ot realize (it is necessary to recognize its weaknesses). Furthermore, the Internet provides a lot of complete implementations and full tutorial walkthroughs for both of them (and it is tempting to look at an already built solution).

So I decided to choose one of my childhood games: Othello (anciently called Reversi). The rules are simple to understand (if you never try, give it a go), but it has this reputation of "easy to learn, hard to master", which seemed to be a good idea to create an intelligence playing to it.

back to top

Roadmap

  • Game mechanisms
  • Game graphics
  • Minimax algorithm
    • Basic
    • αβ-pruning
    • Genetic-weighted evaluation
  • Convolutional Neural Network
  • Temporal Difference Learning
  • Website with all intelligence modes

back to top

License

Distributed under the MIT License. See LICENSE.txt for more information.

back to top

Acknowledgments

Causse, B., Nicolet, S., & Delorme, R. (2015). Algorithmes (ou comment pensent Les ordinateurs). Fédération Française d'Othello. Retrieved March 2, 2022, from https://www.ffothello.org/informatique/algorithmes/.

Oliviera, A. (2021, October). Othello Games. Retrieved March 2, 2022, from https://www.kaggle.com/andrefpoliveira/othello-games.

Sannidhanam, V., & Annamalai, M. (2004, November 11). An Analysis of Heuristics in Othello. Retrieved March 2, 2022, from https://courses.cs.washington.edu/courses/cse573/04au/Project/mini1/RUSSIA/Final_Paper.pdf.

back to top