This is a improved Chess Engine that utilizes various algorithms and techniques to improve its gameplay. Some of the key features of this Chess Engine include:
- Alpha-Beta Pruning
- Parallelization
- Move Ordering
- Null Move Pruning
- Late Move Reduction (LMR)
- Opening Book
- Quiescence
- Transposition Tables
- Advanced Evaluation Function
The engine can be run either in the console or as a GUI. The console provides commands to reset the board, load positions, evaluate positions, and flip the board. The engine supports both human and AI players for both black and white pieces.
Running the Engine
To run the engine, simply clone the repository and run the Main class.
Using the Console
When running the engine in the console, the following commands are available:
- ‘reset’ – Resets the board to the starting position
- ‘load ‘ – Loads a board position in FEN format
- ‘eval’ – Evaluates the current board position
- ‘flip’ – Flips the board so that the opponent’s perspective is shown
- ‘move ‘ – Makes a move on the board (for human players). (You can also drag and drop)
Acknowledgements
This Chess Engine was implemented by jaceg18. It is based on the chess programming wiki and is inspired by many other open source Chess Engines.
Contributing
Contributions to this project are welcome. If you find any bugs or have any suggestions, feel free to create an issue or submit a pull request.