Implemented in Python, using the
dataclasses
library, along with the__future__
library as well. Using thetyping
library as well to ensure well-defined types when beginning implementation of this algorithm. All credit for those libraries can be found in the publicly-accessible documentation of them, if links need to be supplied, let me know. This is a side project solely to pique my curiosity of graph algorithms, and this happened to be the first one I stumbled upon!
I will be using the alpha-beta pruning algorithm, along with a minimax algorithm to generate the potential moves for each piece selected, this will require some time undoubtedly, as I am implementing this in chess, which has a far more vast move set, then say a simple game of checkers or connect-4. The algorithm may not be perfect, but working on this project will satisfy my curiosity for the time being. If anyone has any suggestions for algorithms to consider to enhance the experience, please let me know.
- The overall goal of the project is to, since I am primarily a front-end developer, have something like this: An website with a chess game able to be played against a computer, or another player. Whenever the user selects a piece, it displays all optimal places to move on the board, to which the user can make the informed decision as to which piece to move.
- Technical Specifications
- Backend (Move generation): I feel like introducing myself to flask, so I am opting to use a python backend.
- Frontend (Game display): React, since I am already very skilled in this language, and I seek to learn how to combine these two different languages together into one application, which I have not done before.
- Technical Specifications