[board, core, position] A simple static evaluation method for scoring positions
Implement a new Evaluator struct that evaluates a Board and returns a score. This evaluation mechanism uses only a material balance function. It doesn't account for anything else. Supporting this, add a Counts struct to the internal piece set structure of a Board. This struct is responsible for keeping counts of how many pieces of each shape are on the board for each color. Export a count_piece() method on Board that returns a count of the number of pieces of a particular color and shape. Implement a newtype wrapper around i32 called Score that represents the score of a position in centipawns, i.e. hundredths of a pawn. Add piece values to the Shape enum.
This commit is contained in:
parent
481ae70698
commit
7f25548335
10 changed files with 249 additions and 10 deletions
|
@ -1,11 +1,12 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
mod evaluation;
|
||||
mod position;
|
||||
|
||||
#[macro_use]
|
||||
mod macros;
|
||||
|
||||
pub use chessfriend_board::{fen, PlacePieceError, PlacePieceStrategy};
|
||||
pub use chessfriend_board::{PlacePieceError, PlacePieceStrategy, fen};
|
||||
pub use chessfriend_moves::{GeneratedMove, ValidateMove};
|
||||
pub use position::Position;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue