World Conquest Chronicles

World Conquest Chronicles

go-chess-minimax, v1.7

The library that implements a chess engine based on the minimax algorithm.

Improve the replacing strategy for same transpositions on storing in a transposition table.

Change Log

  • calculate a move quality via searching terminators: move quality is directly proportional to a time of its evaluation;
  • in a transposition table:
    • store moves qualities together with corresponding transpositions;
    • replacing same transpositions on storing only if new one has a greater move quality.

Features

  • move searcher used the negamax algorithm;
  • optimizations:
  • searching termination:
    • by a deep;
    • by a time;
    • by calling a special method (it's safe for concurrent use);
  • position evaluation only by a material (based on an evaluation function of Claude Shannon);
  • architecture features:
    • easily extensible and composable architecture of searching;
    • composable searching terminators.

Repository

Link: https://github.com/thewizardplusplus/go-chess-minimax/tree/v1.7.

Content: code.

License: MIT.