Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Mobility in Chess Evaluation Function at terminal-nodes

Author: Uri Blass

Date: 22:58:38 12/28/05

Go up one level in this thread


On December 28, 2005 at 17:23:42, Roman Hartmann wrote:

>On December 28, 2005 at 15:22:56, Roman Hartmann wrote:
>
>>I just added mobility to my eval and while it kills my kN/s (brought them from
>>1000kN/s down to around 100kN/s) it doesn't seem to hurt the play. But I guess I
>>have to let it play some games first before I make a conclusion. If it's
>>improving the positional play without causing too much tactical dammage I will
>>add a stripped down movegenerator for mobility as I have now quite some overhead
>>having a legal-move-generator with incremental eval (means the eval is in the
>>movegenerator).
>>
>>Thanks for your experiment.
>>
>>Roman
>
>Sometimes it would help a great deal to think about a problem first carefully
>before actually writing any code. In the meantime I found a cheap workaround to
>avoid to call my movegenerator at all from my eval. As I'm counting the moves
>anyway I just save the number of moves in the actual position and the number of
>moves in the previous position to get a mobility-factor. Doesn't cost me a thing
>that way.
>
>Roman

This was exactly the old way that I used for movei for years(all public versions
of movei use it) but I changed it because today I do not generate all moves in
every nodes so I cannot do it.

Note that mobility cost you nothing in that way but there are other problems

1)Your evaluation is dependent on the history because the number of moves of the
opponent in the previous ply may be different if different move leaded to the
same position

2)You spend time that you do not need on generating all moves in every
node(there is no reason to generate all moves when you know that you only need
captures and you are not going to search non captures).

Originally I had no function to generate only captures and simply generated all
moves and looked only for captures but it was changed.

One thing that I still did not do and I need to do is a function that generates
only checks and captures and today I simply generate all moves and look for
checks and captures in the first part of the qsearch.

Uri



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.