https://github.com/saagnik-mondal/chessengine
This is a simple and efficient chess engine implemented entirely in Python. It allows users to play chess against the computer, using an AI based on a Minimax algorithm with Alpha-Beta pruning for decision-making. The engine is designed to be easy to understand, extend, and play against the computer.
https://github.com/saagnik-mondal/chessengine
numpy pygame python3
Last synced: about 1 month ago
JSON representation
This is a simple and efficient chess engine implemented entirely in Python. It allows users to play chess against the computer, using an AI based on a Minimax algorithm with Alpha-Beta pruning for decision-making. The engine is designed to be easy to understand, extend, and play against the computer.
- Host: GitHub
- URL: https://github.com/saagnik-mondal/chessengine
- Owner: Saagnik-Mondal
- Created: 2024-12-29T09:02:21.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-29T09:16:32.000Z (over 1 year ago)
- Last Synced: 2025-05-30T02:45:15.142Z (about 1 year ago)
- Topics: numpy, pygame, python3
- Language: Python
- Homepage:
- Size: 47.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Chess Engine in Python
This is a simple and efficient chess engine implemented entirely in Python. It allows users to play chess against the computer, using an AI based on a Minimax algorithm with Alpha-Beta pruning for decision-making. The engine is designed to be easy to understand, extend, and play against the computer.
## Features
- **Minimax Algorithm**: Uses Minimax search with Alpha-Beta pruning to decide on optimal moves.
- **Piece Evaluation**: A basic evaluation function based on material balance, piece positions, and basic board control.
- **Move Generation**: Generates legal moves for all chess pieces, including special moves like castling and en passant.
- **Endgame Detection**: Detects checkmate, stalemate, and draw conditions.
- **Game History**: Keeps track of moves made during the game.
## Prerequisites
Make sure you have Python 3.6 or later installed on your system. You can download it from [python.org](https://www.python.org/downloads/).
### Install Dependencies
If your project uses any third-party libraries, you can list them in a `requirements.txt` file. If you don't have one, you can manually install the required packages using `pip`. For example:
```bash
pip install numpy
pip install pygame