tompko / patrician Goto Github PK
View Code? Open in Web Editor NEWA chess engine experiment in C
License: MIT License
A chess engine experiment in C
License: MIT License
Pawn moves should be calculated per target move rather than per pawn.
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.
Patrician should use negascout as its search function as an improvement to alpha-beta search.
Patrician should use a parallel search algorithm to explore the game tree.
Patrician should use magic bitboards for sliding piece move generation.
Filtering should be done during the search rather than at move generation time.
Patrician should quiesce positions before evaluation.
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.
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:
Create unit tests.
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.
On an unknown command from xboard Patrician should respond with the "Error (ERRORTYPE): COMMAND" message instead of logging and exiting.
Patrician should be capable of playing a game of chess through the xboard interface.
Patrician should be capable of parsing an epd file conforming to the specs provided here:
http://chessprogramming.wikispaces.com/Extended+Position+Description
After each iteration of searching the moves should be sorted by score.
Patrician should decide how much of the remaining clock to use when searching, rather than using a fixed depth.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.