Piece value

Each player will play with the usual 16 chess pieces + 2 new pieces, the new pieces are identical for both players. The choice of the new pieces is an agreement: white chooses the first piece and then black chooses the second piece.
There are 10 musketeer pieces: Leopard, Hawk, Chancellor, Archbishop, Elephant, Unicorn, Cannon, Dragon, Fortress and Spider.
Post Reply
sam
Posts: 57
Joined: Tue May 01, 2018 6:58 pm

Piece value

Post by sam » Wed Nov 14, 2018 5:38 pm

A simple piece value calculation applied to FIDE chess and Musketeer chess variant pieces.

Piece Value Calculation ms doc format

H.G.Muller
Posts: 25
Joined: Fri Oct 05, 2018 6:24 pm

Re: Piece value

Post by H.G.Muller » Sun Nov 18, 2018 3:39 pm

Note that numerological approaches to piece-value prediction like this are infamous for their unreliability. The underlying 'theories' contain so many free parameters that it is always very easy to tune it such that you get it exactly right for the 4 orthodox pieces. But then it usually utterly fails for any unorthodox piece. Which goes of course unnoticed, because the values of these are not commonly known, so that the calculated values take on a life of their own, and spread as a dis-info wildfire over the web.

So my all-important caveat is: never believe anything you read about piece values unless they were derived from a huge body of empirical game results.

That being said, the method being presented here has some specific problems:
1) You only judge the pieces by their mobility in the center. This ignores that not all pieces suffer equally when being closer to an edge. This is the opposite problem from the calculations one usually sees, which tend to average the mobility over the entire board. This then ignores that in actual game play one would usually avoid to put pieces on squares where they have low mobility. The truth must ly somewhere in between, through some weighted average.
2) Apart from color binding the proposed method is purely additive; So the value of (say) a Chancellor will always be predicted as the sum of the value of Knight and Rook. While the empirical values are R=5, N=3.25 and C=9. The cooperative effect of 75 centi-Pawn is completely missed.
3) You mask this on the Queen by using color binding as a fudge factor to get the Bishop right after hugely overestimating its mobility contribution to get the Queen right. In practice color binding only hurts if you do not have the pair, and the magnitude of this is well known: a Bishop pair is worth 50cP more than two lone Bishops. So the penalty on a single Bishop is only 25cP compared to half the pair, about 6 times less than what you speculate here. A pair of non-color-bound enhanced Bishops, which have an extra backward non-capture move that allow them to switch color, is hardly worth more than a pair of normal Bishops, and the value increase is almost purely due to the extra move increasing its tactical abilities, as the value of a pair of Knights increases similarly when they get such an extra move (while there is no color binding to break in that case).

Good points of your theory are that the value of distant slider moves decreases in importance. (Although I am not sure that Knight jumps deserve to be similarly discounted, as unlike the slider moves, they cannot be blocked. But you solved that by making the d=1 and d=2 weights nearly the same, which probably leads to an overestimate of their contribution for sliders.) And that the number of directions in which you move is also important. For instance, the empirical value of a Nightrider is 5.25 (measured compared to Rook=5), while its mobility isn't all that high.

MarkZH
Posts: 1
Joined: Sat Mar 27, 2021 9:30 pm

Re: Piece value

Post by MarkZH » Thu Jun 03, 2021 7:30 am

A long while ago, I was asked to use my genetic chess software to try to work out semi-empirical values for the fairy pieces of musketeer chess. My program (GitHub repository) improves itself through evolution: randomly mutated players play a game, after which the winners mate and produce mutated copies. This way, various parameters of a chess engine's evaluation function and time control strategy slowly improve. One set of parameters are the piece values.

After a long delay (programming the rules of Musketeer chess, getting a new job, moving to a new city, etc. etc.), I was able to get some results.

The issue where the discussion took place is here.

The post with the results, detailed discussion, and pretty graphs of piece value evolution is here.


I performed several runs in which only two fairy pieces were used for all games. This was done to save time since it would take far too many games to successfully evolve all of the fairy piece values at the same time. If every piece could be chosen for the games, piece value mutations would often have no effect on the survival of the player since there would only be a 1/5 chance of that piece being chosen for a game. The pieces' gated positions were chosen randomly.

Here's a summary of the data.
musketeer results.PNG
Table of runs of evolving piece values.
musketeer results.PNG (32.89 KiB) Viewed 458 times
The first two columns in the table are the name of the piece and its symbol. The next 6 columns are 6 runs of the program. The two-letter labels indicate which fairy pieces that were used during that run. The numbers in that column indicate the values that resulted after a long run of the program (the numbers in the bottom row are how many games were played during each run). So, in the first column, every game was played with the Cannon and Dragon. The last run column, labeled "DS (check)" was a run with the Dragon and Spider pieces to check whether similar values would be obtained as previous runs when the Dragon and Spider were paired with other pieces (the Dragon was close, the Spider not as close). The next column, "Mean," is the mean value of the piece through all the runs. The "MusketeerChess.net" column lists the piece values from this site. The last column is the difference in piece values between these genetic results and this site.

A note about the king value: Since the king is never removed from the board, its piece value is only under weak evolutionary pressure. Its value changes wildly from run to run.

Interesting results

The piece value results for the Archbishop, Cannon, Fortress, and Chancellor were within half a pawn of the values given on this site.

The piece values for the Dragon (+1.42), Elephant (+2.20), Hawk (+2.02), Leopard (+1.95), Spider (+1.98), and Unicorn (+1.66) were more valued by about two pawns as compared with this site's values.

H.G.Muller
Posts: 25
Joined: Fri Oct 05, 2018 6:24 pm

Re: Piece value

Post by H.G.Muller » Sat Jun 05, 2021 5:18 pm

Game results are not very sensitive to the piece values assumed by the playing agents, and as a result it is very hard to tune them from game results. Especially if a piece is much stronger than all others, the assumed values don't matter very much, as long as it is high enough to discourage 1-on-1 trading for a lesser piece (and perhaps 1:2 trading for piece+pawn). Because the complex trades where the assumed value decides whether the trade is good or bad occur only in a quite small fraction of the games. While the games where the opportunity did not arise still contribute to the statistical noise in the result. So an engine that is under the misconception that a Queen is only worth 7 instead of 9.5 will hardly perform any worse for it. In most games it will not get the opportunity to do an erroneous Q for R+B or R+N trade, and just trade Q for Q.

despite your heroic effort, the results you obtained still qualify as pretty poor. The error bars on the values are still enormous, as can be seen by how much the value of the orthodox pieces varies depending on the included musketeer pieces. (E.g. look at the Bishop and Pawn value.) Also note that the values given on the site you refer to are often very much off; e.g. it has been well established that the diference between Queen and Chancellor is approximately half a Pawn; the table reports 1.75. So agreeing with those values cannot be really considered a recommendation.

My guess is that you need about 100 times as many games to get somewhat accurate piece values.

sam
Posts: 57
Joined: Tue May 01, 2018 6:58 pm

Re: Piece value

Post by sam » Thu Jun 10, 2021 4:13 am

MarkZH wrote: Thu Jun 03, 2021 7:30 am A long while ago, I was asked to use my genetic chess software to try to work out semi-empirical values for the fairy pieces of musketeer chess. My program (GitHub repository) improves itself through evolution: randomly mutated players play a game, after which the winners mate and produce mutated copies.
Thanks for sharing. I did genetics before, it is fun. This crossover/mutation is interesting, transferring good genes to other personalities in the population. I hope to create a framework for this when I have more time.

Could you tell us more about of your crossover/mutation methods?

Now we also have lakas parameter optimizer using nevergrad framework that has evolutionary algorithms to optimize hyperparameters.

There is also optuna tuner parameter optimizer based from optuna framework. Under engines/musketeer/musketeer-stockfish there is musketeer-stockfish engine with some piece values and search parameters exposed for tuning experiments. The source is originally from ianfab. I think the default values are already tuned via spsa. This would be a challenge to improve, but for tuning experiments the default can be changed or unoptimized and then try to optimize it with different methods.

musketeerchess
Posts: 139
Joined: Sat Dec 31, 2016 1:28 pm
Location: Paris
Contact:

Re: Piece value

Post by musketeerchess » Tue Jun 15, 2021 9:33 pm

Hi Mark
This is an extremely interesting test. Even if the results are sometimes "unexpected" but they are still useful.

The most striking fact for me was the "value" of the "King". This value was clearly lower when the combination of the pieces is made strictly from long range pieces (Archbishop and Chancellor combo) and for the MA combo the King value was even lower then in the combo involving the Dragon (Queen + Knight).
Your system shows clearly the following: the importance of the combination choice !

In my opinion, this is a very important clue confirming some strong assumptions i got when developing and play-testing Musketeer Chess for a long period of time.

I'm very interested about the following: Is it possible for you to continue your tests and try complimentary runs with the remaining combination of pieces that were not tested?

Probably when averaging the final result after testing all the combinations will be closer to the results we published in our website.


MarkZH wrote: Thu Jun 03, 2021 7:30 am A long while ago, I was asked to use my genetic chess software to try to work out semi-empirical values for the fairy pieces of musketeer chess. My program (GitHub repository) improves itself through evolution: randomly mutated players play a game, after which the winners mate and produce mutated copies. This way, various parameters of a chess engine's evaluation function and time control strategy slowly improve. One set of parameters are the piece values.

After a long delay (programming the rules of Musketeer chess, getting a new job, moving to a new city, etc. etc.), I was able to get some results.

The issue where the discussion took place is here.

The post with the results, detailed discussion, and pretty graphs of piece value evolution is here.


I performed several runs in which only two fairy pieces were used for all games. This was done to save time since it would take far too many games to successfully evolve all of the fairy piece values at the same time. If every piece could be chosen for the games, piece value mutations would often have no effect on the survival of the player since there would only be a 1/5 chance of that piece being chosen for a game. The pieces' gated positions were chosen randomly.

Here's a summary of the data.
musketeer results.PNG

The first two columns in the table are the name of the piece and its symbol. The next 6 columns are 6 runs of the program. The two-letter labels indicate which fairy pieces that were used during that run. The numbers in that column indicate the values that resulted after a long run of the program (the numbers in the bottom row are how many games were played during each run). So, in the first column, every game was played with the Cannon and Dragon. The last run column, labeled "DS (check)" was a run with the Dragon and Spider pieces to check whether similar values would be obtained as previous runs when the Dragon and Spider were paired with other pieces (the Dragon was close, the Spider not as close). The next column, "Mean," is the mean value of the piece through all the runs. The "MusketeerChess.net" column lists the piece values from this site. The last column is the difference in piece values between these genetic results and this site.

A note about the king value: Since the king is never removed from the board, its piece value is only under weak evolutionary pressure. Its value changes wildly from run to run.

Interesting results

The piece value results for the Archbishop, Cannon, Fortress, and Chancellor were within half a pawn of the values given on this site.

The piece values for the Dragon (+1.42), Elephant (+2.20), Hawk (+2.02), Leopard (+1.95), Spider (+1.98), and Unicorn (+1.66) were more valued by about two pawns as compared with this site's values.

Post Reply