Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Please stop the bickering

Author: Robert Hyatt

Date: 18:57:52 10/29/99

Go up one level in this thread


On October 29, 1999 at 18:55:03, Ed Schröder wrote:

>>Posted by Robert Hyatt on October 29, 1999 at 16:59:20:
>
>>>The first program who had null-move (in the it is used now!) was the one
>>>of Don Beal during the WCC Cologne 1986, I remember it very well. And that
>>>moment Don had null-move only in Q-search. After Cologne his article
>>>"Selective Search without tears" came.
>>>
>>>Frans Morsch immediately fell in love with null-move after Cologne 1986
>>>because of this talks with Don. In that time Frans and I almost daily phoned
>>>each other to discuss computer chess programming and exchanged many ideas. I
>>>decided not to use null-move, Frans did, you can see the result in Fritz.
>>>
>>>Then after some years the Donninger null-move article came in the ICCA, I
>>>forgot about the year, maybe someone can have a look, and the ball got
>>>rolling. I clearly remember the heated discussions in RGCC in 1995. From
>>>that moment on null-move (using it as selective search) became kind of
>>>standard in chess programs.
>>>
>>>Frans Morsch and Chrilly Donninger gave you null-move in the way it is used
>>>now in chess programs. There is no single doubt on that.
>>
>>There is a _lot_ of doubt.  I was using null move _before_ there was a program
>>known as "fritz".  I used it right after Beal's article.  I wasn't sure about
>>the year, you stated 1986, which could be right, since I don't have it handy.
>>Campbell wrote a very good paper well before donninger, somewhere in the late
>>1980 era although I will have to look it up when I can return to the office).
>
>I have read "Computer Chess and Cognition" (not sure if that is the right cq
>complete title) but there was an article of you describing null-move, is that
>right?
>
>But what you described was the OLD (original) way of using null-move which
>was limited to ply-1 situations as it is a relative safe thing to do. By head
>I remember you claimed a speed gain of 25%. But in no way I saw a description
>of null-move as it is used today. That definitely came after the Donninger
>article in the ICCA journal.
>


No...  First, in Cray Blitz, as I have mentioned many times...  I used R=1.
I tried R=2 back then but thought it unsafe.  I also used non-recursive null-
move, but I tried recursive null-move and again simply didn't like the
results and I didn't have enough cray time to test it (unfortunately).  All
my testing was done at maybe 100 nodes per second on a vax, and R=2 or
recursive null-move looks _awful_ at depths of 4-5-6 max.  On the cray we
were doing 9-10 plies, but I simply didn't have enough machine time to test
it (a shame of course.)

Murray Campbell also wrote a paper that was published in the late 80's, and
he came to the same conclusion, that R=1 non-recursive was safe, but anything
more was risky.  He mentioned R=2, but only said that brief tests had found
it too risky.  He was running on sun workstations also at the 100-500 node
per second speed.

But he definitely mentioned the whole ball of wax.  When I did it in Crafty,
I promptly pulled out his paper to look over his notes on R=1/R=2 and recursive
vs non-recursive as I was going way faster than 100 nodes per second when I
started
Crafty.

>
>>So I certainly don't understand your last statement above.  Also, at the time,
>>was Donninger a commercial author?  Or was he an amateur like the rest of us?
>
>Alexander Kure offered you to ask Chrilly and what did you reply?
>
>I think you should do it and maybe your view on commercials might change.
>
>
>>Besides null-move, which was a non-commercial invention, here are some things
>>you _do_ use in Rebel, that came from 'amateurs':
>
>>1.  hash table.  first written up by Richard Greenblatt in roughly 1967.
>>Later defined more clearly in papers I (and others) wrote, but we always pointed to
>>Greenblatt as the inventor.
>>
>>2.  iterative deepening.  Chess 4.0  1974.
>
>Got it from another commercial :)

Very possible.  But _they_ got it from 4.0, as I don't recall any commercial
chess programs in 1974.  do you?

>
>>3.  killer moves.  Chess 4.0
>
>Found out by myself.
>
>>4.  History moves.  Schaeffer (you may not use this, I don't know).
>
>Don't use it.
>
>>5.  'panic time on fail low' first written up by yours truly in an early JICCA
>>volume.
>
>Found out by myself.
>
>>6.  Book learning.  Used by more than one commercial program, then an approach
>>defined and written up by yours truly again.  No commercial programmer would
>>even _think_ about explaining how they were 'learning'.  And I mean _none_.
>
>I did once here on CCC, guessed you missed it. My own code BTW.
>
>>7.  board representations.  I copied 0x88 from Coko written in 1970.  An
>>amateur program written by Ed Kozdrowicki and Dennis Cooper.  Many use it
>>today.
>
>
>I have my own, nothing special BTW.
>
>>8.  Bitmaps (you may use these in places, I don't know).  They are generally
>>credited to Slate/Atkin, and/or Donskoy/et. al (Kaissa).
>
>I don't use them.
>
>>9.  Singular extensions (I don't know what you do, but genius, wchess, and
>>others have/do use these) came from deep thought developers Hsu and Campbell.
>
>Don't use it.
>
>You forgot about the most important one of all, alpha-beta.
>
>

Of course that particular paper was written by university researchers, and
then published, rather than sitting on it with the idea that "you know, we
might could write a working chess program and make a good bit of money selling
it..."

>>the list goes on and on...
>
>Sure... but what is your point?
>
>Things are published and if good are used. Isn't that the goal of the author?

Your statement isn't quite correct.  "Things are published by _some", and if
good
they are used by _everybody_, even the ones that are not telling what they do."

>
>But you can't say commercials never publish things. I somewhere still have
>the SARGON book with the complete source code. You know Internet connects
>people. I often talk with other programmers by email. You will be surprised
>how open we are to each other. You have no idea.
>
>[ snip ]

The Sargon program was an exception.  But then again, so were the Spracklens.
We
had many interesting tournaments where they, myself, slate, thompson, newborn,
marsland, schwartz, truscott, etc would sit around a table and talk about this
year's additions to our programs.

I used to talk to Dan/Kathe at least twice a year by phone, where we would trade
ideas.  They were commercial, but they were "different".

>
>>>>and the 'commercial engine' authors doing a fine job of emulating a
>>>>black hole.
>>>
>>>And here we go again.......
>>>
>>>There is nothing special I have seen in the Crafty source code. Just the
>>>basic things, well tuned and documented, but nothing special.
>>
>>No "special parallel search?"  Non-trivial to do.  Non-trivial to get right.
>>etc.  no unusual evaluation terms?  Seems that _everybody_ suddenly decided
>>that it was 'right' to probe in the search, not just at the root.  I've been
>>doing it about as long as Bruce (he wrote his own tablebase code, while I used
>>the Edwards stuff that was public.  Edwards was doing it before I was,
>>obviously, as he wrote the probe code for Crafty.  Whether he probed
>>exactly as
>>I do today is another question.  But I notice that more and more commercial
>>programs are doing that.  Where'd it come from?
>
>You don't get the point. You imply in public that every commercial chess
>programmer uses the Crafty source code to improve their own chess program.
>This is not true, at least not for me. Do you have evidence concerning all the
>others? You do talk (in the) plural all the time you know.
>
>


I didn't imply that myself, I think someone else did.  I implied that most
commercial chess programmers 'lurk' and take what they can.  And return nothing.
You are more open than most.  But for one example where even you benefitted from
me was the discussion about 'best move at fail-low nodes'.  I don't think every-
thing I do in Crafty is optimal.  I don't even think that the majority of what I
do is optimal.  But _some_ of it is.  And many of the discussions here help
everybody.  I only want to see the commercial guys join in a bit more.  Sure,
keeping _this year's_ secrets secret is ok, I have always done that in the past,
but keeping last year's stuff secret?  2 years ago?  All that means is that
everybody gets to learn the same thing, much more slowly, and much more
painfully.
Computer chess progress would be much faster, and we might catch Hsu in 10 years
rather than 30 years, if we were all working toward a common goal.  Right now
most have a unique goal, getting to the top of the SSDF and the top of the sales
chart...




>>>And what do you expect people to do with your source code anyway then
>>>to have a look at it? Isn't that the purpose?
>>
>>Sure...  but you guys don't get it.  Intel spends a year of secrecy to
>>develop a new processor.  They spring it on the world, _and_ they publish
>>papers describing _exactly_ what they did.  IE they get the lead-time to take
>>advantage, but then the publish details that takes the entire industry
>>forward.
>
>You guys?
>
>Where do you have this information from?
>
>Where is your evidence commercials using your code?


Ed, please re-read the above.  I explained how Intel, which obviously has a
_lot_
of money invested in R&D for their hardware has lots of reasons to keep it all
secret.  But they don't.  Once they get it to market, then their designers
publish
the details for everyone to see.

The above had _nothing_ to do with 'using my code' and I don't see how you even
think that it did.  It had to do with publishing what you do, _after_ you get it
to market and enjoy the benefits.  IE after you release Rebel X this year, and
everyone else releases NimzoX, Fritx X, etc...  they can't change their
programs,
so what is the justification for not explaining the new ideas you had?  That was
the point of the "but you guys don't get it"... _nothing_ to do with using my
code.  I know of one specific group that took code from Crafty.  They were
honest
about it, they asked if I objected, and when I said "no problem" they used it.
That isn't what this is about.

>
>I don't use your code and I like to make it clear since you have made it a
>topic here and keep on saying it.
>

You are mis-reading.  My code is not the topic of this.  You are somehow
misinterpreting something to think it is.  This is about open discussions
vs 1-way discussions.  The former promote progress.  The latter promote progress
for some more than others.

>
>>Does that sound like commercial computer chess?  When was the last serious
>>technical publication by _any_ commercial chess programmer that revealed any
>>new or novel ideas?  Can you name even one?
>
>I have given you the best example possible: NULL-MOVE. It was a breakthrough
>as suddenly lots of programs became super-strong and became a serious
>threat for commercial programs as from that moment on a commercial could
>lose a game or even games in important tournaments against the so-called
>amateur programs.
>

And I have pointed out that this was _not_ a commercial developement.  Others
pointed out the same thing.  We all refered to papers written 6-7-8-9 years
_prior_ to Chrilly's paper.  The Campbell paper in particular was used by
several to implement null-move.

Someone else pointed out that Chrilly wasn't "commercial" when he wrote that
paper, and in that regard, it doesn't count for two reasons.  (1) it was at
least 7 years after Campbell's paper and (2) he was not a commercial programmer
when he published it.  Frans wasn't the first to use it.  He wasn't even the
first to try R=2.  He might have been the first commercial programmer to try it
and like it, I don't know, since we get no details from him.  But others were
definitely using it in the middle 80's including hitech and Cray Blitz, plus
some others.  And if we go back to the middle 70's we have Kaissa.

It is not so important _when_ an idea as used, as _when_ the idea is published.
In this case, the "when" was a _long_ time ago.  Way prior to 1995.


>
>>>What do you have against commercial programmers anyway? They give a lot of
>>>people the joy of a good program and interface to enjoy their hobby named
>>>chess. Because some are commercial they can afford to spend all their time
>>>improving their product. Without being commercial the interface and engine
>>>would be on a level of years back.
>>>
>>>Ed
>>
>>
>>That is totally ridiculous.  (1) I don't have anything against 'commercial
>>programmers' other than their hatred of bright lights and their love of
>>secrecy to try to remain on top of the SSDF and get those extra few sales.
>
>Hatred????
>
>Where is your proof?

Easy.  Cite some published sources that disclose details about commercial
programs.  That would totally disprove everything I have said.  Just tell me
what journal, what magazine, which issue, etc...  I don't mind saying "Oops,
they were open, I just failed to look in the right places..."

>
>Is this mud-throwing real?

What 'mud-throwing'???  I am not throwing _anything_.  I am pointing out that
I don't like what I see.  Not that it is inherently 'evil'.  I can point to
many groups even more secretive than chess programmers.  Just visit a drug
manufacturer...  retail drugs are such a fantastic market, secrets are
incredible,
because (for example) a new drug could produce 500 billion dollars in profit
over
its life.  Big incentive.

I'm only saying that I don't _like_ what has happened.  Because I was around to
see how it was in the 60's, and 70's, and early 80's, and what it has turned
into
by the middle 90's.  I liked the old days of 'sharing' much more.

I said nothing more, nothing less.

>
>I like to stop here if you don't mind. I don't like to discuss in this way.
>
>Ed
>

Not a problem...  There is little left to say anyway...




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.