Author: Steven Edwards
Date: 18:14:07 04/27/05
Symbolic: Status report 2005.04.27 An ICC ratings snapshot for Symbolic's toolkit: Statistics for Symbolic(C) On for:27:50 Idle: 0 rating [need] win loss draw total best Bullet 2221 295 76 13 384 2392 (03-Nov-2004) Blitz 2326 1188 342 141 1671 2443 (27-Oct-2004) Standard 2393 387 241 51 679 2393 (27-Apr-2005) -------- Some work in the ChessLisp interpreter: I found and fixed some minor bugs in the stream I/O byte and character input that unsurprisingly eluded earlier detection as the routines had not been tested. They were originally implemented as I wanted to be able to access PGN and binary book files from Lisp; later, I decided to let the toolkit do the work instead. Q: Why was I working in the interpreter stream code? A: Because I was implementing a new primitive: read-line-from-stream. This was desired because it's a lot faster going through a text file a line at a time than a character at a time using the read-char-from-stream function. Q: Why did I implement read-line-from-stream just now? A: Because I want to be able to efficiently read EPD test suite files. The toolkit already has several test suites built in, but I wanted a more general ability. Q: Why do I need to read general test suite files? A: Because I need an automated procedure to handle prior EPD analysis from Lisp. To assist with this, I'm working on the new primitive DecodeEPD. There is already a DecodeFEN function, but I need more than just a position value from a test suite record. Decoding the EPD operation fields (done in the toolkit and leveraging existing code) will give a Lisp program easy access to an EPD record as an association list. Q: Why do I need an EPD association list originating form a test suite record? A: Because I need Lisp to be able to quickly and in an automated fashion access the position value (from a "fen" association binding), the "bm" best move list (solution keys), and the "pv" move sequence (predicted variation). Q: Why is this needed? After all, it's not useful during a search. A: It's not going to be used during a search. It's going to be used for a genetic algorithm approach for training Symbolic's production sets. Specifically, a large test suite composed of positions all with known forced mating sequences will be used to train the MateAttack theme move suggestion productions. This is required to give Symbolic's planner material for elaborating MateAttack goals. I'm still working on the DecodeEPD primitive. -------- More to come.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.