There are many forms of notation with most being divided into the two main classes of algebraic or descriptive notation [16]. Each of these classes can be split up into long hand or short hand notation. The long hand notation is where the current position and the subsequent finishing position of a move are recorded. The short hand notation is where only the finishing point and the piece to be moved are recorded. Added information is necessary when more than one chess piece, of the same type, can move to a certain finishing square. Graphical notations for the type of piece also exist. The notation used in the game format for this chess program is short algebraic for reading .pgn files and long algebraic for human use (this is disabled in the version submitted).
The program displays P, R, N, B Q, and K for the white pieces of pawn, rook, knight, bishop, queen and king respectively. The black pieces are represented by [] around the piece name and the blank squares are represented by a dot.
The chess program uses the minimax algorithm but assigns a probabilistic value as well as the value obtained by the attributes. The program will then chose randomly between the moves according to these probabilities. At every ply, the values are calculated and then for each move a probability of it being played is found. The probabilities of every move in that ply are then multiplied by their corresponding evaluation value and then this is backed up to the previous ply. The fifth appendix holds the code for the chess game that uses multiple strategies. This includes the inference that is used for that research. The inference and chess programs vary slightly between the different parts of the research that was done in this thesis.