Author: Robert Hyatt
Date: 15:28:54 05/15/00
Go up one level in this thread
On May 15, 2000 at 10:11:27, pavel wrote:
>On May 15, 2000 at 10:00:06, Robert Hyatt wrote:
>
>>On May 15, 2000 at 03:35:07, pavel wrote:
>>
>>>Hi guys,
>>> Can anyone tell me how the positional.lrn of crafty works? I know that
>>>its probably explained in the crafty.doc, but i couldnt find answers to some of
>>>my questions (or i missed them). Anyways I wanted to know how the positional.lrn
>>>works....as in, how does it chose its move to save it in the positional.lrn
>>>file. Ofcourse it doesnt save all its move from a single game, but which moves
>>>does it consider to save it to the file? and how does it avoid them if
>>>encountered in the future? Thus it save the "good" moves or the "bad" moves?? or
>>>both?
>>>---------------------------------------------------------------------------
>>
>>
>>
>>This is a pretty well-known approach to simple learning. Documented by Dave
>>Slate in an oldish JICCA issue. Basically whenever the eval drops
>>significantly, the score and position are stored in position.bin... and when
>>a new game is started, everything in position.bin is copied into the hash table
>>and marked 'permanent'. If you try the same game again, it will see the threat
>>several moves earlier and play different.
>>
>>It only stores 'bad' things, not 'good' things.
>>
>>position.lrn is an ascii version of position.bin that can be shared with others
>>running crafty.
>>In the following, the three values in {} are the score in 1/100ths of a pawn
>>(-300 is - 3 pawns), the best move displayed as an integer, and the depth in
>>units of 1/60th of a ply.
>>
>>
>>-----
>>>What does these logs mean? I understood it giving a fen position for each 'logs"
>>>but what is the numbers below them? eg, {-1582 22964 540}. the best part is it
>>>also gives the dates ;)
>>>
>>>
>>>[White "Crafty 17.9"]
>>>[Black "unknown"]
>>>[Date "2000.05.15"]
>>>setboard /4B2p/6p/2bk/p/6PK/1r// w
>>>{-1582 22964 540}
>>>[White "Crafty 17.9"]
>>>[Black "unknown"]
>>>[Date "2000.05.15"]
>>>setboard /7p/6p/2bk2B//p5PK/1r// w
>>>{-1613 20646 480}
>>>[White "Crafty 17.9"]
>>>[Black "unknown"]
>>>[Date "2000.05.15"]
>>>setboard /7p/6p/2b/4k/p5PK/1r/2B/ w
>>>{-1638 6038 480}
>>>[White "Crafty 17.9"]
>>>[Black "unknown"]
>>>[Date "2000.05.15"]
>>>setboard 3r1r1k/p3bPpp/2bp1n/5R/1q1BP/1Bp/PPP1Q1PP/1K1R/ w
>>>{-88 54427 480}
>>>[White "Crafty 17.9"]
>>>[Black "unknown"]
>>>[Date "2000.05.15"]
>>>setboard 3r1r1k/p3bPpp/2bp/5R/1q1Bn/1Bp/PPP3PP/1K1R1Q/ w
>>>{-243 38025 480}
>>>-------------------------------------------------------------------------------
>>> Now about CBD database program, I find it very "kool" freeware product
>>>;). an excellent thing to analyze your favourite games with crafty. But there is
>>>something differant about analyzing with crafty through or without CBD or any
>>>other programs. It is so because if you analyze your games with crafty through
>>>CDB it tends to save its "bad" or "good" moves in the positional.lrn file. Also
>>>another thing is that it logs more in the positinal.lrn file if analyzed under
>>>CDB. Let say for example, yesterday i played a game between "crafty vs TCB" and
>>>crafty saved 2 logs to its positional.lrn file. The game was 15 min per side,
>>>later that day i made crafty analyze that "whole same game" under CDB for an
>>>hour, but this time it did 7 logs to positional.lrn file !!.
>>> Another question, If i make crafty analyze Most of its game under CDB (i have
>>>more than 200 games save in PGN), and as a result make it learn from its
>>>"mistakes" made in its previous games. Wont it make "my crafty" "sharper"? and
>>>thus avoid those positional mistake made earlier?
>>>thanks
>>>Pavel
>>>
>>>ps, i guess i ask too many questions, and also i hope "Bob" answers to my
>>>questions ;)
>
>
>Hi Bob,
> thanks for your explanations. but what about my second part of the post?
>about constantly making it analyze games in CDB and make it "learn its own
>mistakes". Will it have any positive effect on the playing strength? I am not
>talking about analyzing one or two games its about 100s of games played by
>crafty with differant "positions" and differant "oppenings".
>thanks again :)
>Pavel
I couldn't (and can't) answer that. The 'position learning' is done in my
main.c code. I am not sure that is used in analyzing games with some other
front-end. IE if crafty is not really "playing" then it won't learn anyway.
For example, in annotating a game, or when analyzing an active game.
I know that it learns when it is really playing. But since I don't know how
CDB, chessbase, and others, call the thing to search, I have no idea whether
position learning is active or not.
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.