Skip to content

Hetari/ChessAi-master

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChessAi-master

Chess

ChessAi-master is a Python project aimed at developing a chess-playing artificial intelligence using various algorithms and techniques. This project provides a platform for experimenting with different approaches to chess AI and understanding the complexities involved in creating an effective chess-playing program.

This project is created step by step following Eddie Sharick's YouTube tutorial series.

Features

  • Object-Oriented Programming (OOP): Utilizes object-oriented principles to organize code into classes and objects, enhancing modularity, reusability, and maintainability.
  • Better File Structure: Implements a well-structured file organization to enhance code readability and maintainability, separating concerns and functionalities into different modules.
  • Sound Effects: Incorporates sound effects to enhance the user experience, providing auditory feedback for moves, captures, and game events.
  • Threading and Multiprocessing: Implements threading and multiprocessing techniques to improve performance, allowing for concurrent execution of tasks such as move generation, evaluation, and user interface interaction.
  • Chess Engine: Implements a basic chess engine capable of generating legal moves, evaluating positions, and making moves based on different algorithms.
  • Minimax Algorithm: Utilizes the minimax algorithm with alpha-beta pruning to search through the game tree and find the optimal move.
  • Alpha-Beta Pruning: Implements alpha-beta pruning to improve the efficiency of the minimax algorithm by eliminating redundant branches.
  • Evaluation Functions: Includes evaluation functions to assess the strength of a given position, considering factors such as piece values, position control, mobility, and king safety.
  • User Interface: Provides a simple text-based user interface for interacting with the chess engine and playing games against the AI.

Installation

To use ChessAi-master, follow these steps:

  1. Clone the repository to your local machine:

    git clone https://github.com/Hetari/ChessAi-master.git
  2. Navigate to the project directory:

    cd ChessAi-master
  3. Install the required dependencies:

    pip install -r requirements.txt

Usage

After installing the project, you can run the chess engine and play games against the AI using the following command:

python main.py

Follow the on-screen instructions to make moves and interact with the chess engine.

Contributing

Contributions to ChessAi-master are welcome! If you'd like to contribute to the project, feel free to fork the repository and submit a pull request with your changes.

Acknowledgments

ChessAi-master is inspired by various chess AI projects and algorithms available in the open-source community. We extend our gratitude to Eddie Sharick for his excellent tutorial series, which served as a guide for the development of this project.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages