Giter Site home page Giter Site logo

patrician's People

Contributors

tompko avatar waffle-iron avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

patrician's Issues

Search/Evaluation

When given the command line option "-s " Patrician should run an analysis on each position in the file. If not provided the analysis count seconds should default to 60. Patrician should log summary stats for each position including depth searched, best move, and score.

Negascout

Patrician should use negascout as its search function as an improvement to alpha-beta search.

Parallel Search

Patrician should use a parallel search algorithm to explore the game tree.

Magic bitboards

Patrician should use magic bitboards for sliding piece move generation.

Remove filter moves

Filtering should be done during the search rather than at move generation time.

Quiescence

Patrician should quiesce positions before evaluation.

Command line option perft

Patrician should parse the command line options, and if a "-p " is found should run any perft tests in the given file.
A perft test is an epd with one or more D operations, giving the perft result at depth n.
If all tests pass Patrician should exit with EXIT_SUCCESS, if any fail it should exit with EXIT_FAILURE.

Move as Integer

Moves should be represented by an integer, so that when sorted the move most likely to generate the best score is first. The move order should be:

  • Hash move - from transposition table
  • Killer moves - once implemented
  • Captures - in order from highest captured, lowest capturer to lowest captured, highest capturer
  • Quiet moves

Logging

Logging should be done on a low priority thread so we can log in release builds. Different levels of logging should be supported, with a command line switch to control how much is logged.

XBoard Error Bug

On an unknown command from xboard Patrician should respond with the "Error (ERRORTYPE): COMMAND" message instead of logging and exiting.

XBoard integration

Patrician should be capable of playing a game of chess through the xboard interface.

Move ordering

After each iteration of searching the moves should be sorted by score.

Time Control

Patrician should decide how much of the remaining clock to use when searching, rather than using a fixed depth.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.