“Chess with AI” is chess engine with Alpha-beta purning algorithm as our AI.
2 Major parts of the porject:
- Building the chess engine
- Alph-beta purning
Class GameState
- Current board state
- Checks, Checkmates and stalemates
Class Move
- Mapping of string to a valid piece
- Special cases as Castling and en passant
- Minimax Algorithm:
Minimax is a kind of backtracking algorithm that is used in decision making and game theory to find the optimal move for a player, assuming that your opponent also plays optimally. It is widely used in two player turn-based games such as Tic-Tac-Toe, Backgammon, Mancala, Chess, etc.
- Alpha-Beta Pruning:
Alpha–beta pruning is a search algorithm that seeks to decrease the number of nodes that are evaluated by the minimax algorithm in its search tree. It is an adversarial search algorithm used commonly for machine playing of two-player games (Tic-tac-toe, Chess, Go, etc.).
- Python (Pygame) 🐍
Useful links discribing the algorithms and library used