Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: CCT3 is over

Author: Bruce Moreland

Date: 15:16:29 05/28/01

Go up one level in this thread


On May 28, 2001 at 16:18:06, Frank Phillips wrote:

>On May 28, 2001 at 13:30:44, Bruce Moreland wrote:
>
>>On May 28, 2001 at 08:33:19, Peter Berger wrote:
>>
>>>I think the CCT3 was a great and enjoyable event ! The atmosphere was very
>>>friendly and there were no debates this time .
>>>
>>>A few ideas and suggestions for future events though:
>>>
>>>a.) Every engine participating should be able to and do write logfiles . These
>>>should be sent to some arbiter right after the game has been finished in case of
>>>debates.
>>>
>>>As far as I know every participant would have been able to do so ( for example
>>>for the WinBoard programs the winboard.debug would be sufficient ) .
>>
>>There are some weird people out there who either want to take credit for other
>>people's work.  I think there have been some others who don't realize that their
>>own work is pretty insignificant compared to what was already present in what
>>they started from.
>
>
>This is interesting from the other end so to speak.  I start with Marsland’s 'A
>review of Game Tree Pruning' (said anatomy of chess program elsewhere), that
>too, all the relevant internet basic articles about move generation, various
>type of search, GNU chess source and tscp.  After trying to figure out basic
>alpha-beta, Negamax, Mtdf (heaven forbid), 0x88, mailbox, bitboards, piece
>square tables, and many headaches, I  (and really I mean one, as in
>hypothetically) decide on mailbox, basically follow the reciepe in Marsland
>guided by tscp and end up after some time and effort with a basic engine.  Then
>add hash tables, then killer moves, history moves etc etc.  Later null move.
>Following discussions on CCC add sophisticated tweaks like IID, adaptive null
>moves.  All this gets refined and improved as time goes on and understanding
>increases.  Parallel developments include move ordering using captures first
>sorted by SEE, then over time (again guided by discussion on CCC and articles)
>full blown ordering into hash move, winning and even captures, killer moves,
>non-captures sorted by history and finally losing captures.  And so on and so
>on.  Finally the whole entity is like Marsland described but with modern tweaks
>and hence fundamentally like Crafty, Dark Thought, GNU, etc, but not exactly
>copied as in at a point in time and the source looks entirely different.
>
>Similar story about evaluation.  I hear about outside pawns, the lack of
>knowledge of which has cost me dearly.   Look at Crafty’s source.  Talk on CCC.
>Do not understand Crafty source but implement the well explained algorithm in my
>own way.  So it goes on.   Again, program tends to Crafty but not exactly
>copied.  On the surface it looks entirely different.  Maybe no bitboards at all
>for example. Finally I start to implement independent ideas (tweaks really) and
>it begins to diverge again.
>
>At which stage in this process, if ever, is one allowed to turn up to a
>tournament and say here I am with my program, rather than my version of
>Marsland/tscp/GNU/Crafty/Heinz/Kerrigan/….?  At any time my contribution to the
>fundamental approach is minor.  I did not invented minimax, negamax, alpha beta,
>Zorbrist hashing, bitboards, mailbox, 0x88 or whatever?  Sure I use them.  But I
>might equally well, I suppose, have just taken Crafty (after all it is better)
>and messed around with its code or just the data and weightings.  Heck there is
>even an input file for doing this now (I think?) so I do not even need a
>compiler.
>
>I have no point here.  Nor do I now know where I stand.  Maybe however I now
>understand what Will was really asking :-/
>
>Frank

What I meant is that it is possible to start with Crafty and make "major eval
changes", which really aren't that major, and which aren't major at all in
context of the entire rest of the engine.  If someone, either because they don't
know that they've done very little, or because they realize very well but are
simply plagiarists, doesn't come clean about where they started and what they've
actually created themselves, they can find themselves labelled a hero for
developing a bright new program, sometimes by people who don't particularly like
Crafty.

That's different than starting with an empty ".C" file and filling it up with a
search function and some evaluation stuff and so on, even if you do things more
or less the same way everyone else has.

I don't think I've invented anything new, although there might be a good paper
possible on the contrained singular extension that I developed.  So I certainly
wasn't criticizing you for not inventing new techniques.

The trick here is to create a new thing that plays chess.  It can have its own
personality even if the techniques that go into it are all known.

I often wonder if the commercials really have anything new or unique in theirs.
I believe that a few of them started so early and with so little reference
material that they basically had to invent alpha-beta, but even so I wonder if
they are just doing what the rest of us are doing, with a different eval
function and some different pruning and extensions.

I bet that if we could see inside of, say, Fritz, we'd develop even more respect
for Frans Morsch.  I think there are a few engines that seem like they might be
doing something special, and his is one of them.

bruce



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.