Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Using a lot of computers against kramnik(is it possible?)

Author: Gordon Rattray

Date: 14:43:38 04/17/01

Go up one level in this thread


On April 17, 2001 at 15:53:36, Dann Corbit wrote:

>On April 17, 2001 at 15:40:58, Uri Blass wrote:
>
>>Suppose program X is playing against kramnik.
>>
>>I think that it may be a good idea to generate a program that generates a tree
>>and sends all the positions in the tree to people who want to help the computer
>>in the match(I will call it the main program).
>>
>>The people give program X to analyze the position and return score and depth to
>>the main program.
>>
>>The main program is using all the information about scores and depthes to decide
>>about the best move.
>>
>>Yace or Gandalf can be used for this task because they are not preprocessors.
>>Most programs need to be changed in order to be used in this way and there
>>should be an option to analyze position A when the root position is known as
>>position B.
>>
>>I think that in this way 1000 pIII800's can be clearly better than an SMP
>>machine.
>>Am I right?
>
>Communication between tasks will be the bottleneck, since we are obviously not
>talking about SMP here.
>
>I have a very similar idea discussed earlier under my "beancounter" threads.  It
>will only work at slow time controls, and it would work very well under postal
>time controls.  The most important piece (that you have not described) is the
>coordination process, which tells the workers where the effort is needed.


I presume I can find that discussion in the archives?  If so, I'll look it up.

I find this interesting since I have recently participated in a postal
tournament where the use of computers was expected by all competitors - so no
immoral cheating was going on.  I wanted to investigate how I could be use my 2
PCs and numerous chess programs to find best moves given a significant length of
time.  I experimented with the following approach.

I had one program running continuously on one PC for the duration of the
analysis period.  The idea being that some moves may require a certain depth to
be reached and it may be unwise to cut all programs short.

My second PC was used more in a swapping fashion with multiple programs being
given a time slot one after another.  I record details such as score, principle
variation, etc. for each one.

If all programs agree, including the one not being swapped out, I play that
move.  My hope is that if the relatively deep search in combination with using a
variety of programs all agree, the chances of missing a better move have been
minimised.

If there is disagreement between the programs, I draw up a list of candidates
based on all the suggestions.  I then for each program show it the candidates
that it didn't agree with and I record how much of a difference there was
compared with the program's initial choice.  At this point some programs "admit"
the candidate is better by showing a better score.  For those who show a big
drop, I play out more of the principle variation in hope that one of the
programs in question will prove itself correct or wrong.

The above still leaves a lot of cases where there remains disagreement.  I
generally find myself making up variation trees with each program getting a
chance to evaluate the leaf positions.  So no great surprises here, as I often
have to use my own judgement, but this approach does give me a lot of
information to guide me.  Deciding on a when to swap programs is naturally
tricky.  I give a preference to the unswapped program unless any of the other
programs find a "better" move that I failed to disprove.

Of course, some best moves will still be missed.  If only a guaranteed approach
existed...  ;-)  This is my "first draft" approach and I'm looking for ways to
improve it, so any suggestions/comments will be appreciated.

Gordon



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.