Evaluating piece value

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Pio
Posts: 334
Joined: Sat Feb 25, 2012 10:42 pm
Location: Stockholm

Re: Evaluating piece value

Post by Pio »

hgm wrote: Tue May 25, 2021 3:29 pm I had a very poor experience with that in my Janggi engine, although this might be peculiar to Janggi. The version with a Texel-tuned PST basically scored 0% against the hand-crafted one. PST values tended to get way too large. So that it started to sac material to get other pieces in a good spot.

Problem is that the cooperativity between pieces is very large in Janggi. Attacking piece locations are only good if you occupy sufficiently many of them, and are ahead in material. But because most games that are won satisfy that condition, the occupancy of those squares correlates very stronly with the score. And the Texel tuning sees that.
One way of fixing your problems with Texel tuning would be to iteratively create new test positions from your Texel tuned version and Texel tune the engine again (and then again, again, …).

But of course the missing knowledge is much more important to make the eval better.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Evaluating piece value

Post by hgm »

Pio wrote: Fri May 28, 2021 3:42 pm One way of fixing your problems with Texel tuning would be to iteratively create new test positions from your Texel tuned version and Texel tune the engine again (and then again, again, …).

But of course the missing knowledge is much more important to make the eval better.
I think the problem is more fundamental. The evaluation model of a sum of individual piece-square values is just wrong, and it will not be possible to get good results with it. You must have terms that describe the cooperativity. Perhaps something like exp(SUM pst[piece][square]).
Pio
Posts: 334
Joined: Sat Feb 25, 2012 10:42 pm
Location: Stockholm

Re: Evaluating piece value

Post by Pio »

hgm wrote: Fri May 28, 2021 3:57 pm
Pio wrote: Fri May 28, 2021 3:42 pm One way of fixing your problems with Texel tuning would be to iteratively create new test positions from your Texel tuned version and Texel tune the engine again (and then again, again, …).

But of course the missing knowledge is much more important to make the eval better.
I think the problem is more fundamental. The evaluation model of a sum of individual piece-square values is just wrong, and it will not be possible to get good results with it. You must have terms that describe the cooperativity. Perhaps something like exp(SUM pst[piece][square]).
That is what I meant as well 😀. However, I do believe that if you would follow my suggestion, you would get better values and probably even better than your hand tuned ones.
Jon12345
Posts: 80
Joined: Tue May 11, 2010 6:18 pm

Re: Evaluating piece value

Post by Jon12345 »

Do chess engines like Stockfish modify the values given in PSQT's to take into account these type of factors:

- Isolated pawn?
- Doubled pawns?
- Backward pawn?
Jon