Piece weights with regression analysis (in Russian)

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Piece weights with regression analysis (in Russian).

Post by Dann Corbit »

I am running CCRL + CEGT 40/4 right now, with 2900+ Elo opponents.

If my theory is correct, then the piece values will be elevated from the slower time control.

If infinite time were given, all the piece values would be zero (according to my theory).

Why do we even need piece values? After all, we can see the damage that the pieces can do as the game is played, and the stronger pieces do more damage. But when the searches are shallow, this is hard to see. So the piece value is a sort of "potential energy" measurement.
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Piece weights with regression analysis (in Russian).

Post by Dann Corbit »

Dann Corbit wrote:I am running CCRL + CEGT 40/4 right now, with 2900+ Elo opponents.

If my theory is correct, then the piece values will be elevated from the slower time control.

If infinite time were given, all the piece values would be zero (according to my theory).

Why do we even need piece values? After all, we can see the damage that the pieces can do as the game is played, and the stronger pieces do more damage. But when the searches are shallow, this is hard to see. So the piece value is a sort of "potential energy" measurement.
My theory is dashed on the rocks. This is 40/4 data (which I expected to give higher piece values):

Games: 171521
Created file: f:\pgn\cegt_ccrl_404.mat
Loading dataset...
[ 1100126 x 5 ]
Solving (gradient method)...
Iter 0: [ 0 0 0 0 0 ] -> 0.693147
Iter 1000: [ 0.770382 1.87814 2.14309 3.11122 6.11117 ] -> 0.533405
Iter 2000: [ 0.803915 2.06008 2.3319 3.39478 6.79835 ] -> 0.53265
Iter 3000: [ 0.810888 2.09789 2.37114 3.45364 6.94144 ] -> 0.532618
Iter 4000: [ 0.812438 2.10629 2.37987 3.46672 6.97326 ] -> 0.532616
Iter 5000: [ 0.812787 2.10819 2.38183 3.46967 6.98043 ] -> 0.532616
Iter 6000: [ 0.812866 2.10861 2.38228 3.47034 6.98205 ] -> 0.532616
Iter 7000: [ 0.812884 2.10871 2.38238 3.47049 6.98242 ] -> 0.532616
Iter 8000: [ 0.812888 2.10873 2.3824 3.47052 6.9825 ] -> 0.532616
Iter 9000: [ 0.812889 2.10874 2.38241 3.47053 6.98252 ] -> 0.532616
Iter 10000: [ 0.812889 2.10874 2.38241 3.47053 6.98252 ] -> 0.532616

PIECE VALUES:

Pawn: 100
Knight: 259.413
Bishop: 293.079
Rook: 426.938
Queen: 858.976
Press ENTER to finish
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Piece weights with regression analysis (in Russian)

Post by Dann Corbit »

Code: Select all

Correspondence chess:
PIECE VALUES:
Pawn: 100
Knight: 162.839  0.79856704296909481448061437664898 times bishop value
Bishop: 203.914  0.66451369019298577210602811687338 times rook value
Rook: 306.862    0.43993984307012526003248703600957 times queen value
Queen: 697.509

TCEC games:
PIECE VALUES:
Pawn: 100
Knight: 305.71   0.85086544964694552913638729393559 times bishop value
Bishop: 359.293  0.7129225433158985022977467002135 times rook value
Rook: 503.972    0.48422529256903476238974615192452 times queen value
Queen: 1040.78 

CEGT 40/20:
PIECE VALUES:
Pawn: 100
Knight: 262.197   0.87261708245693442317420591602545 times bishop value
Bishop: 300.472   0.6868810636332879179963606770238 times rook value
Rook: 437.444     0.49379990134025983408456968436785 times queen value
Queen: 885.873

40/4 games:
PIECE VALUES:
Pawn: 100
Knight: 259.413   0.88512994789800702199748190760853 times bishop value 
Bishop: 293.079   0.68646735591584726587935484777649 times rook value
Rook: 426.938     0.49703134895503483217226092463585 times queen value
Queen: 858.976 
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Piece weights with regression analysis (in Russian)

Post by Dann Corbit »

To accentuate the patterns:

Code: Select all

.8
.66
.44
---
.85
.71
.48
---
.87
.69
.49
---
.89
.69
.5
---
It looks to me like the value of a pawn is much harder to pin down than the values of the other pieces related to each other.
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Piece weights with regression analysis (in Russian).

Post by Dann Corbit »

Dann Corbit wrote:These weights are derived from correspondence chess:

PIECE VALUES:

Pawn: 100
Knight: 162.839
Bishop: 203.914
Rook: 306.862
Queen: 697.509
Another set of weights derived from TWIC games with both players 2600 or above:

Games: 42652
Created file: f:\pgn\twic2600.mat
Loading dataset...
[ 183737 x 5 ]
Solving (gradient method)...
Iter 0: [ 0 0 0 0 0 ] -> 0.693147
Iter 1000: [ 0.578255 1.22535 1.3651 2.03745 4.07149 ] -> 0.639827
Iter 2000: [ 0.607465 1.39226 1.53846 2.29601 4.72267 ] -> 0.639159
Iter 3000: [ 0.613347 1.42589 1.57338 2.34806 4.85486 ] -> 0.639132
Iter 4000: [ 0.614597 1.43304 1.5808 2.35913 4.88301 ] -> 0.639131
Iter 5000: [ 0.614866 1.43458 1.5824 2.3615 4.88906 ] -> 0.639131
Iter 6000: [ 0.614924 1.43491 1.58274 2.36202 4.89036 ] -> 0.639131
Iter 7000: [ 0.614936 1.43498 1.58282 2.36213 4.89065 ] -> 0.639131
Iter 8000: [ 0.614939 1.435 1.58283 2.36215 4.89071 ] -> 0.639131
Iter 9000: [ 0.61494 1.435 1.58283 2.36216 4.89072 ] -> 0.639131
Iter 10000: [ 0.61494 1.435 1.58284 2.36216 4.89072 ] -> 0.639131

PIECE VALUES:

Pawn: 100
Knight: 233.356 0.90659953301709033127814232489112 of bishop
Bishop: 257.397 0.67008132705764745084971676107964 of rook
Rook: 384.128 0.48298728683028276775172666999448 of queen
Queen: 795.317
rjgibert
Posts: 317
Joined: Mon Jun 26, 2006 9:44 am

Re: Piece weights with regression analysis (in Russian).

Post by rjgibert »

AlvaroBegue wrote:
Dann Corbit wrote:I found that it auto-translates fairly well (though elephant for bishop is a little distracting).
The word in Spanish is "alfil", which I think is a transliteration of the Arabic for "the elephant".
According to google translate:

https://translate.google.com/?ie=UTF-8& ... 9%8A%D9%84

you are correct.
User avatar
hgm
Posts: 27795
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Piece weights with regression analysis (in Russian).

Post by hgm »

Dann Corbit wrote:Why do we even need piece values? After all, we can see the damage that the pieces can do as the game is played, and the stronger pieces do more damage. But when the searches are shallow, this is hard to see. So the piece value is a sort of "potential energy" measurement.
Damage to what? If pieces have no value, they do no damage no matter how much material they capture...
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Piece weights with regression analysis (in Russian).

Post by Evert »

Dann Corbit wrote:I found that it auto-translates fairly well (though elephant for bishop is a little distracting).

Here is the github link for the source:
https://github.com/WinPooh/pgnlearn
Nice!
I wonder how easy it is to expand this for other variants or evaluation parameters. From a first glance, it looks like it shouldn't be too bad.
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Piece weights with regression analysis (in Russian).

Post by Dann Corbit »

hgm wrote:
Dann Corbit wrote:Why do we even need piece values? After all, we can see the damage that the pieces can do as the game is played, and the stronger pieces do more damage. But when the searches are shallow, this is hard to see. So the piece value is a sort of "potential energy" measurement.
Damage to what? If pieces have no value, they do no damage no matter how much material they capture...
1-0 is the damage if you are white
0-1 is the damage if you are black, and 1/2 a bit less so, if the abilities are equal.

Search deep enough, and even evaluation is irrelevant. Only move generation is needed.

OK, that's really deep.
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: Piece weights with regression analysis (in Russian).

Post by wgarvin »

Dann Corbit wrote:I found that it auto-translates fairly well (though elephant for bishop is a little distracting).
Google Translate made me laugh out loud with this one:
The main components of virtually any protein-free chess are searching and assessment of the position.
But still, its extremely readable. Its amazing how good automated translation is these days.