|
1 | 1 | # Pleco
|
2 | 2 |
|
3 |
| -Pleco is a chess Engine & Library inspired by Stockfish, written entirely in Rust. |
| 3 | +Pleco is a chess Engine & Library derived from Stockfish, written entirely in Rust. |
4 | 4 |
|
5 | 5 | [](https://crates.io/crates/pleco)
|
6 | 6 | [](https://crates.io/crates/pleco_engine)
|
7 | 7 | [](https://travis-ci.org/sfleischman105/Pleco)
|
8 | 8 |
|
9 | 9 |
|
10 | 10 | This project is split into two crates, `pleco`, which contains the library functionality, and `pleco_engine`, which contains the
|
11 |
| -UCI (Universal Chess Interface) compatible Engine & AI. |
| 11 | +UCI (Universal Chess Interface) compatible engine. |
12 | 12 |
|
13 | 13 | 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.
|
| 14 | +For the engine, the majority of the code is a direct port of Stockfish's C++ code. See [their website](https://stockfishchess.org/) for |
| 15 | +more information about the engine. As such, the credit for all of the advanced algorithms used for searching, evaluation, |
| 16 | +and many others, go directly to the maintainers and authors of Stockfish. This project is simply for speed comparisons |
| 17 | +between the two languages, as well as for educational purposes. |
14 | 18 |
|
15 | 19 | - [Documentation](https://docs.rs/pleco), [crates.io](https://crates.io/crates/pleco) for library functionality
|
16 |
| -- [Documentation](https://docs.rs/pleco_engine), [crates.io](https://crates.io/crates/pleco_engine) for UCI Engine and Advanced Searching functionality. |
17 |
| - |
18 |
| -Planned & Implemented features |
19 |
| -------- |
20 |
| - |
21 |
| - |
22 |
| -The Library aims to have the following features upon completion |
23 |
| -- [x] Bitboard Representation of Piece Locations: |
24 |
| -- [x] Ability for concurrent Board State access, for use by parallel searchers |
25 |
| -- [x] Full Move-generation Capabilities, including generation of pseudo-legal moves |
26 |
| -- [x] Statically computed lookup-tables (including Magic Bitboards) |
27 |
| -- [x] Zobrist Hashing |
28 |
| -- [ ] PGN Parsing |
29 |
| - |
30 |
| -The AI Bot aims to have the following features: |
31 |
| -- [x] Multi-threaded search using a shared hash-table |
32 |
| -- [x] Queiscience-search |
33 |
| -- [x] Iterative Deepening |
34 |
| -- [x] Aspiration Windows |
35 |
| -- [x] Futility Pruning |
36 |
| -- [x] Transposition Tables |
37 |
| -- [x] Killer Moves |
38 |
| -- [ ] Null Move Heuristic |
| 20 | +- [Documentation](https://docs.rs/pleco_engine), [crates.io](https://crates.io/crates/pleco_engine) for the Engine. |
39 | 21 |
|
40 | 22 | Standalone Installation and Use
|
41 | 23 | -------
|
|
0 commit comments