sophesticated Pawn evaluation without hash table ?

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

MahmoudUthman
Posts: 234
Joined: Sat Jan 17, 2015 11:54 pm

sophesticated Pawn evaluation without hash table ?

Post by MahmoudUthman »

Is it normal to loss elo when adding heavy pawn evaluation without a hash table compared to a version that only score passer and isolated pawns ? or does this indicate a bug ?
AndrewGrant
Posts: 1754
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: sophesticated Pawn evaluation without hash table ?

Post by AndrewGrant »

Depends on how much slower the search is, and how strong the pawn eval is.

As a general rule of thumb, if you double the engines speed you gain about 70 elo. Look at the increase in time for a couple test positions. If the elo loss exceeds this rule, then you may have some problems.

It's also very possible that you just need to spend some time tuning the evaluation terms you created. Only thing worse than not scoring a board feature is scoring it poorly.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

Re: sophesticated Pawn evaluation without hash table ?

Post by jwes »

I would strongly suggest implementing a pawn hash table. It makes pawn evaluation almost free (typical hit rates are above 99%).
AndrewGrant
Posts: 1754
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: sophesticated Pawn evaluation without hash table ?

Post by AndrewGrant »

Be careful though, pawn hash if used as 100 percent of the eval, can be limiting.

IE, you can determine whether a passed pawn may advance since the pawn structure may be the same, but the rest is not.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
Karlo Bala
Posts: 373
Joined: Wed Mar 22, 2006 10:17 am
Location: Novi Sad, Serbia
Full name: Karlo Balla

Re: sophesticated Pawn evaluation without hash table ?

Post by Karlo Bala »

MahmoudUthman wrote:Is it normal to loss elo when adding heavy pawn evaluation without a hash table compared to a version that only score passer and isolated pawns ? or does this indicate a bug ?
I suggest to test the engine with fixed depth first. This will eliminate possible speed issues.
Best Regards,
Karlo Balla Jr.
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: sophesticated Pawn evaluation without hash table ?

Post by Ras »

jwes wrote:I would strongly suggest implementing a pawn hash table. It makes pawn evaluation almost free (typical hit rates are above 99%).
Agree. Plus that having a good pawn eval avoids creating weak spots.

Another point: the pawn eval is useful for rook handling, too, so I store some rook related bitmasks along with the pawn eval in the pawn hash table.

Open files are obvious, as well as supporting passed pawns from behind. And if a backward pawn on a semi-open file is detected, that can be fed to the rook eval as target markup. Or on the other hand, having a pawn on a semi-open file that is covered by its neighbour lowers the value of an enemy rook on that file.

That's some aspects I added during the NG-Play port, and I could see that the rook handling was more reasonable afterwards.