Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Question for Hyatt about Alpha/Beta

Author: Vasik Rajlich

Date: 05:13:44 02/06/04

Go up one level in this thread


On February 06, 2004 at 07:47:54, Uri Blass wrote:

>On February 06, 2004 at 07:22:19, Tord Romstad wrote:
>
>>On February 06, 2004 at 06:06:07, Vasik Rajlich wrote:
>>
>>>Interesting discussion. One other thing to throw in: it seems to me that a
>>>rook's mobility being hindered by a pawn is more serious than a bishop's
>>>mobility being hindered by a pawn, because it's easier to move a pawn off of a
>>>diagonal (ie just push the pawn) than to move it away from a file. So, it makes
>>>some sense to emphasize rooks on open files (rather than rook mobility), and to
>>>give this a higher value than a bishop on an open diagonal. Ideally, a bishop's
>>>diagonal would be evaluated to see how easy it is for any blocking pawns to
>>>move, because sometimes a bishop can be totally without prospects because of one
>>>pawn.
>>
>>Yes, it is essential to consider which pawns are blocked and unblocked when
>>doing mobility evaluation, especially for bishops.
>>
>>>Also, it doesn't seem super-cheap cheap to get bishop mobility, you need to do a
>>>CountBitboardBits (), while open file is just an "&" operation and a boolean
>>>test.
>>
>>It is much more expensive than that.  Remember that all squares are not
>>equally important, and that the bishop cannot safely move to all the squares
>>you attack.  For each square the bishop attacks, you must see if it can
>>move there without getting captured, and consider how useful it is to be
>>able to move to this square.  For each friendly pawn which obstructs the
>>bishop, you must consider how easy it is to advance this pawn.  Most of
>>this is quite expensive to compute, and I have been forced to do some
>>dubious shortcuts and approximations in order not to slow my engine down
>>too much.  Some day I should probably have a look at how Bob does this,
>>and see if there are some ideas there which I could use.
>>
>>Tord
>
>Bob does not do what you do in the evaluation and I doubt if what you do is
>needed.
>
>The fact that the bishop cannot move to some square does not prove that the fact
>that it looks at this square is not important because the opponent need
>something to prevent the bishop to go to that square so I think that simply
>counting the number of squares is a good approximation.
>
>Maybe if you replace your complicated mobility evaluation by simply counting the
>number of squares you may get better results because your program may be faster.
>
>Did you test simple mobility evaluation in games against your complex stuff to
>see that your complex stuff is better?
>
>Uri

In principle I agree with Tord. There's no doubt that when your bishop has
access to a square which is defended by the opponent's pawn, this is on average
less valuable than having access to a square which is not defended by an
opponent's pawn. The better the factors you take into account, the better your
program will play.

However, it's very tough though to do this well. A few weeks ago I tried to
design a very simple blockade evaluator (ie can a blockade of a pawn be
maintained), and it's a really tough task. Practically speaking you can make
some guesses, based on some features, but then the risk is that you start
bloating your evaluation function with stuff that doesn't even work.

Vas



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.