Skip to content

Chess Engine written using Python Chess, uses iterative deepening to search the minimax tree upto maximal depth with a robust evaluation function. UCI Compatible.

Notifications You must be signed in to change notification settings

supergi0/Python_Chess_AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Python Chess Engine

Description

  • This is a simple chess engine written in Python, created for my CS F407 AI course project.

  • It uses minimax algorithm with alpha-beta pruning to search the game tree. Since the maximal time limit per move was set to 20 sec, this agent uses iterative deepening to search the game tree upto the maximal depth possible in the given of time.

  • The scores for each minimax level are decided by a robust evaluation function that takes into account the piece numbers, piece positions, piece mobility, pawn structure, centralization, castling bonus, king safety, etc.

  • The engine is UCI compatible and can be played against another UCI compliant engine using arena.py

How to run

  • Run python3 arena.py to play engine 1 with engine 2. (both the engines are configured to Chess_Agent.py intially).

  • To use your engine, import the necessary engine in arena.py and replace either white or black with your engine.

References

About

Chess Engine written using Python Chess, uses iterative deepening to search the minimax tree upto maximal depth with a robust evaluation function. UCI Compatible.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages