Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Thinker 4.6b third after 1st round!

Author: Vasik Rajlich

Date: 03:29:23 06/03/04

Go up one level in this thread


On June 02, 2004 at 22:16:20, Robert Hyatt wrote:

>On June 02, 2004 at 18:18:30, Vasik Rajlich wrote:
>
>>On June 02, 2004 at 16:24:19, Dan Honeycutt wrote:
>>
>>>On June 02, 2004 at 14:59:34, Robert Hyatt wrote:
>>>
>>>>On June 02, 2004 at 14:08:44, Dan Honeycutt wrote:
>>>>
>>>>>On June 02, 2004 at 12:23:29, Robert Hyatt wrote:
>>>>>
>>>>>>On June 02, 2004 at 06:48:03, Vasik Rajlich wrote:
>>>>>>
>>>>>[snip]
>>>>>
>>>>>>>frosting on the cake.
>>>>>>>
>>>>>>>For an amateur engine though, it's just a distraction. We have enough of those
>>>>>>>as it is. The various zero-cost solutions are totally sufficient.
>>>>>>
>>>>>>
>>>>>>What is a "zero cost solution" to the book problem?  I've been working on a
>>>>>>chess program since 1968.  I have _never_ found a "zero cost solution" to the
>>>>>>book problem.  My current effort is the closest there can be, because once I
>>>>>>wrote the code (which did not take months of effort by the way) it began to
>>>>>>manage its own book, freeing me from that responsibility.  Net gain in
>>>>>>productivity was very large.  If you don't learn, you either hand-tune or get
>>>>>>killed.  The former is a huge time drain, the latter is unpleasant. :)
>>>>>>
>>>>>>I have published a paper in the JICCA explaining _exactly_ how I did learning.
>>>>>>So you don't have to start from scratch, which I did.  And even from scratch it
>>>>>>was hardly a huge effort.  The complete learning code in crafty, book and
>>>>>>position, importing, exporting, everything is 1200 lines of C with plenty of
>>>>>>comments.  It isn't _that_ hard to do...
>>>>>>
>>>>>>I'm sure that if I could do it, anyone could do it...
>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>Just my 2 cents of course ...
>>>>>>>
>>>>>>>Vas
>>>>>
>>>>>I think Vas was talking to me, not you.  A (near) zero-cost solution is to get a
>>>>>collection of high quality games, grind those into a book and let the engine
>>>>>play move so-and-so the same percent of the time as played in the games
>>>>>collection.  Your engine prefers 1 d4 over 1 e4.  Mine has too little experience
>>>>>to know what it prefers.
>>>>>
>>>>>Dan H.
>>>>
>>
>>The simplest solution is to let the GUI handle the opening. This provides an
>>easy graphical environment for manual tuning, control over compilation criteria,
>>controllable learning heuristics, etc.
>
>That would not be a bad idea, but it is _way_ too late.  IE the "crafty" text
>engine does _everything_ by itself.  Because in real tournaments (like the WCCC
>and so forth) I prefer to operate in a console window and type in commands and
>moves.  IE Xboard/Winboard don't have an easy way to adjust the time, or specify
>tournament-type (non increment but with a secondary time control, sudden death,
>etc) while crafty supports those just fine.
>

I suppose crafty is a sort of special case, you already have all of this stuff,
maybe back from days when GUIs weren't very good. The big benefit you get from
your work is platform independence. An additional benefit is that you're not
stuck if the GUI won't do something that you would like.

I see letting the GUI handle this stuff as a zero-cost, 95% effective, solution.

>
>>
>>Bob, IIRC the crafty .exe has a built in interface, which can be used to play
>>games, etc. Without this, a built-in opening book would be really tough to
>>maintain & inspect. You should really include the code for this when talking
>>about the size of your book & learning algs.
>>
>>Vas
>
>I'm not sure what you mean.  The source file "book.c" contains all the chess
>book stuff, accessing it, building it, etc.  The source file "learn.c" contains
>all the learning stuff.  The text GUI is really main.c + option.c...
>

If you did arrange for a human to tune your book, could he do it from inside
crafty while having some sort of semi-useful tools (ie looking at the position,
getting Crafty's eval, etc)? You get this in the Chessbas GUI, and also to some
extent in Arena and Chess Assistant.

>I rarely talk about "sizes" other than when I mentioned the 1200 lines of code
>necessary to implement all the learning stuff I currently do...
>
>
>
>
>
>>
>>>>
>>>>trust me, that will _not_ work.  All of us using automatically-generated books
>>>>have tried that, and found it _severely_ wanting.  What happens when move X is
>>>>played in thousands of games, until someone busts the line with new analysis.
>>>>You lose that game every time you play it.  That's a killer.
>>>
>>>For Crafty, playing in basement tournaments and around the internet, hundreds of
>>>games a day - yes.  For me, playing maybe a dozen tournament games a day, it's
>>>an extra loss or two a week.
>>>
>>>>
>>>>Learning solves it cleanly.  The better your initial book, the better your
>>>>program will perform, but learning _still_ cleans up all the things that the
>>>>book screws up for one reason or another.
>>>
>>>I don't disagree.  My book is popularity based but it's structured so I can
>>>alter weights - by learning, hand tuning or whatever.  It's just that I have
>>>other things I feel need work worse.  One day I'll get around to worrying about
>>>my bad book lines.
>>>
>>>Dan H.



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.