pleco_engine 0.0.5

A blazingly-fast Chess AI.
docs.rs failed to build pleco_engine-0.0.5
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: pleco_engine-0.1.6

Pleco Engine

Pleco Engine is a chess Engine inspired by Stockfish, written entirely in Rust.

This project aims to utilize the efficiency of Rust to create a Chess Bot with the speed of modern chess engines.

Pleco crate Build Status Build Status Coverage Status

This project is split into two crates, pleco_engine (the current folder), which contains the UCI (Universal Chess Interface) compatible Engine & AI, and pleco, which contains the library functionality.

The overall goal for this project is to utilize the efficiency of Rust to create a Chess AI matching the speed of modern chess engines.

Planned & Implemented features

The AI aims to have the following features:

  • Alpha-Beta pruning
  • Multi-threaded search with rayon.rs
  • Queiscience-search
  • MVV-LVA sorting
  • Iterative Deepening
  • Aspiration Windows
  • Futility Pruning
  • Transposition Tables
  • Null Move Heuristic
  • Killer Moves

Standalone Installation and Use

Currently, Pleco's use as a standalone program is limited in functionality. A UCI client is needed to properly interact with the program. As a recommendation, check out Arena.

Firstly, clone the repo and navigate into the created folder with the following commands:

$ git clone https://github.com/sfleischman105/Pleco --branch master
$ cd Pleco/

Once inside the pleco directory, build the binaries using cargo:

$ cargo build --release

The compiled program will appear in ./target/release/.

Pleco can now be run with a ./Pleco on Linux or a ./Pleco.exe on Windows.

Contributing

Any and all contributions are welcome! Open up a PR to contribute some improvements. Look at the Issues tab to see what needs some help.

License

Pleco is distributed under the terms of the MIT license. See LICENSE-MIT for details. Opening a pull requests is assumed to signal agreement with these licensing terms.