Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chess-alpha-zero #719

Open
Vovak1919 opened this issue Feb 25, 2020 · 0 comments
Open

chess-alpha-zero #719

Vovak1919 opened this issue Feb 25, 2020 · 0 comments

Comments

@Vovak1919
Copy link

I am trying to understand the old chess-alpha-zero program in Python. Maybe someone who has done this before will tell me where the moves are implemented in the code, as written in the article "Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm", p.13:

A move in chess may be described in two parts: selecting the piece to move, and then
selecting among the legal moves for that piece. We represent the policy pi(ajs) by a 8 * 8 * 73
stack of planes encoding a probability distribution over 4,672 possible moves. Each of the 8*8
positions identifies the square from which to “pick up” a piece. The first 56 planes encode
possible ‘queen moves’ for any piece: a number of squares [1::7] in which the piece will be
moved, along one of eight relative compass directions fN;NE;E; SE; S; SW;W;NWg. The
next 8 planes encode possible knight moves for that piece. The final 9 planes encode possible underpromotions for pawn moves or captures in two possible diagonals, to knight, bishop or
rook respectively. Other pawn moves or captures from the seventh rank are promoted to a
queen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant