Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: How long does it take your program to find this simple mate in 4?

Author: Heiner Marxen

Date: 15:13:15 02/09/00

Go up one level in this thread


On February 09, 2000 at 17:29:51, leonid wrote:

[snip]
>
>I think that my finding about 70% was mainly done while making search 8 and 10
>plies deep, brute force. I tried this around June last year when I bought Rebel
>10 for finding the speed of my "positional logic". I never found exactly the
>speed of "positional logic", but the is the next story. By the way, Rebel is the
>best game to find so many useful data about the speed that hash tables usage
>give, positions/second rate and so on. At least the rate to compare I found
>there for sure.
>
>Heiner, I expect to speed the "mate solving logic" (beside hash) mainly by
>alining the moves in the way that I did in "positional logic". Taking from the

Yes, I would expect that to be a good move ordering, except where the
remaining depth is small.  There checking and capturing is best, since
it directly reduces the branching factor.

>"past" move that are the most succesful and put them at the head of the line.
>Until now all alignement was done after the logic - checking moves goes first.

That is the single most important factor.  Even in the simple case
(within mate in 2) I already factor in captured material, and differentiate
a bit between different ways to say check (double check is better,
check from square adjacent to king is better).

If depth is greater (mate in 3 or more), I use a really non-trivial function
to estimate the size of the tree that will be spanned/searched, and try
to minimize it.  Details are found in "answer.c" of Chest, but I´m afraid
it is no easy reading.  Sometimes I don´t understand it myself :-)
But it works rather well :-)

>Do you use the moves from (the past) the hash for alignement or not? If so, how
>effective it can be expected?

No, my hash table entries do not contain any move ordering information.
My hash entries are with the attacker to move, who nearly always must do
all legal moves, anyhow.

And if I had hash entries with the defender to move, what would be the
information in it?  We did try that single move, and it worked.  So what?
We have nothing to compare it with, so we have no idea, whether that
choice was good or bad, right?  At least, I have no idea.

Something like a killer heuristic or a history heuristic may work well,
but I have never tried those, except for a single remembered move, which
last time did kill a 2-mate candidate by checking the attacker in a fatal
way.  I did not even try to remember more such moves.

How effective that could be?  I´ve no data, sorry.
But it may work great... you´ll have to try it to find out.

>Leonid.

Heiner



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.