Author: Bob Durrett
Date: 19:52:32 01/04/04
Go up one level in this thread
On January 04, 2004 at 22:19:22, Robert Hyatt wrote: >On January 04, 2004 at 13:39:37, Bob Durrett wrote: > >>On January 03, 2004 at 23:46:10, Robert Hyatt wrote: >> >>>On January 03, 2004 at 21:22:51, K. Burcham wrote: >>> >>>> >>>> >>>>I am not sure how this book learning works for each book move. >>>>The value that is changed, is this only because of the loss? >>>>Is the program using positional values once out of book to change the learned >>>>value? >>> >>>Here is a thumbnail of what I do. >>> >>>1. Crafty remembers the evaluations for the first 10 moves out of book, >>>after each search has been completed. It uses these evaluations to detect >>>a "trend". IE is the evaluation good and getting better? Is it bad and >>>getting worse? Is it good but dropping (ie it grabbed a gambit pawn and >>>is beginning to see that it was bad) or is it bad but getting better (IE it >>>offered a gambit, the opponent took it, and the score is going up). >>> >>>It factors all of that together and marks the book line as good or bad. >>> >>>2. Crafty takes the result of a game when it loses, and updates the book >>>line so that moves tried near the end of the line simply don't get played, >>>and alternatives near the front of the book line get tried next. >>> >>>There is more to it than that, and you can look at the crafty.doc file to >>>at least see what I am doing in more detail. It is _very_ effective. >>> >>> >>> >>>>Lets say e4 is the most solid, dependable first move. >>>>Lets say we lose 25 games with e4. >>>>now we have a learned value for something. >>>>Is this learned value only for e4? >>>>Is this learned value only for the first move, regardlesss of the line played? >>> >>>For me, the entire line gets some "learning adjustment". The closer to the >>>first move, the "smaller" the adjustment. >>> >>> >>>> >>>>If program A plays d4 against program B and wins 25 games. >>>>If program A plays d4 against program C and loses 25 games. >>>>If program C plays d4 against program B and loses 25 games. >>>>I am not sure how this helps the high level book. >>> >>>The danger is that you are not learning about the "book", but about >>>the "engines". That is a problem. Fortunately, it is not that common. >>> >>> >>> >>> >>>> >>>>Is all this learning for only the first book move? >>> >>>No. Crafty learns for _all_ moves along a line that was played. >>> >>>In fact, if you beat it with a line, you can expect to play against that >>>line when you change colors and play it again. :) >>> >>> >>> >>>> >>>>kburcham >> >>Bob H: >> >>I get the impression that the communication with the book, and it's modification >>is done by a GUI [or UI]. Does this imply that you have modified somebody's GUI >>[or UI]? >> >>Bob D. > >Nope. I have specific code in Crafty. IE LearnBook() which is called by >the Crafty UI after each non-book move is played... And at the end of the >game when the "result" is known. The crafty UI????? That means you are more than just a mere engine designer. : ) [you also do UIs] Are you talking about a highly specialized UI you designed for automated games at ICC? Just curious. My main interest is in getting a better handle on the division of labor between engines and software external to the engine, such as a GUI, tablebases, and maybe an opening book. [may depend on programmer?] Partly, this is an attempt to find a more precise definition of an "engine." I thought engine developers HATED programming GUIs and UIs. : ) Where does the engine stop and the rest begin? Bob D.
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.