Author: Roger D Davis
Date: 15:16:10 04/04/05
Go up one level in this thread
On April 04, 2005 at 03:07:13, Steven Edwards wrote: >Symbolic: Status report 2005.04.04 > >The HTML version of the move selection narrative output is now working. Being >able to have a large position diagram instead of ASCII art is a great assist for >those like me with somewhat impaired eyesight. I really should have done this a >long time ago. I've posted a sample page at: > > http://www.geocities.com/chessnotation/Web.html > >At some point in time, I'd like to add support for figurine move output. Alas, >I suspect that this point is far in the future. > >-------- > >Inside Symbolic's Lisp source there is a Narration list that is constructed >during move selection whenever a post-search narrative is selected by the >program's input options. This was one of the very early features of the code >and its implementation was less than optimal. I have since converted the >Narration list to be a list of Narration Items with each such item being an >association list. This makes the code clearer and it also made it simpler to >expand the narration generation to include optional paragraph alignment. The >first use of the new alignment support is in generating centered text captions >for diagrams in HTML output. > >-------- > >I made another brief expedition into the toolkit and made a few improvements. >One of these was to eliminate the pseudo legal move generators for the bitboard >database equipped positions. Prior to this change, it was possible in some >cases to generate an en passant capture that left the passive side in check >(this was the only time a non legal move was generated with bitboards; all >others were determined legal via pin analysis prior to a trial execution). Now, >all move generation output for a bitboard database equipped position are fully >legal and the separate entry points for pseudo legal generators are gone. There >is a very slight but noticeable speed up; the real payoff is the increased >simplicity in the calling code that can now assume that all input moves are >legal and the "passive in check" test can be avoided in almost all cases. The >exceptions are when a move is synthesized (e.g., copied from a possibly non >legal killer move record) instead of arriving in a freshly generated move list. > >A second improvement is the implementation of a fractional ply delta type that >is used for keeping track of a fractional depth during a toolkit search. This >allows experimentation with fractional extensions. Although the cognitive >search, coded in Lisp, does not use fractional extensions, it does call the >toolkit search at times. > >Note: Eventually, the number of places the traditional A/B toolkit search will >be called from the Lisp program will be reduced to one; i.e., a single three ply >search at the start of the cognitive search to produce a contingency move if not >enough time is available for the full power pattern/plan search. > >Extensive testing of the above changes via movepath enumerations and test suites >has been done and was successful. Steven, Looks like your project is really coming along....big congratulations! Was wondering if you'd speculate on a few things: 1) Once Symbolic is up and running, how might it be possible to "dumb it down" for players of various levels of ability? 2) Also, will it be possible to give the program various styles of play? These are both issues faced by programmers in the Alpha-Beta paradigm, but since you're using another approach, you might have different solutions, and your solutions might be better or more elegant. For example, creating styles now is a matter of changing the weights of various scoring terms to see what happens. How would creating styles proceed with Symbolic? Roger
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.