Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Anyone disagree with this?

Author: Richard Pijl

Date: 03:07:30 10/11/05

Go up one level in this thread


>>>Well, you know that is not true.
>>>Rather than have a long thread and dialog with him, I was hoping that other
>>>Programmers would agree about the Tree ..search function analysis mode etc.
>>>I think that is a given, so we'll start from here.
>>>It should be obvious that he who runs the fastest wins the race.
>>>The Program/Engine that searches  the deepest & faster in the alloted time,
>>>finds the 'best' moves.
>>>Would you agree?
>>
>>No
>>
>>A program may search deeper but still lose because of inferior evaluation.
>
>No, We disagree 100% The Program truly does evaluate 'every' possible move in
>any position! It ranks them in order of the highest return from the Alpha Beta
>& Mini/Max algorithim. The centipawn eval is based only on the static positional
>factors programmed in. The program that searches the deepest in the
>alloted time will find the better moves.
>I don't understand why you don't understand this!

A number of remarks on this puristic view:
- You don't always need to generate all moves in a position to get a beta-cutoff
(i.e. a move that is so good, that the opponent would not let you get there by
choosing another move earlier in the game), e.g. by generating only capture
moves.
- Move scoring for move ordering is in principle not the same as evaluation of a
move, although for some programs it might be. Many programs have a quite
arbitrary ordering (e.g. history-heuristic) for non-capture moves.
- In quiescense search usually only a subset of the possible moves are
considered. The selection of those moves depend on the program but usually
consists of the capture moves and some checking moves.

>>
>>Searching deeper is a clear advantage but computer chess is not only about
>>searching deeper.
>
>It's exactly about searching deeper!

It helps, but it is not the only thing, so again, I agree with Uri. It depends
on what sacrifices you make in the correctness of your search to get deeper. You
may search deeper for one line, settling for a shallower depth in another. The
quality of the algorithms in a program to choose which lines to extend, and
which lines to prune or reduce is influencing this in a big way.
Additionally, many things can be seen in evaluation that would require a 10ply
search or more. So knowledge in chess programs matter too.

Saying that chess programming is only about searching deeper is like saying that
F1-racing is only about engine power. It helps of course, but the rest of the
car design is perhaps even more important.
Richard.



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.