Redundant knight

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

arjuntemurnikar
Posts: 204
Joined: Tue Oct 15, 2013 10:22 pm
Location: Singapore

Re: Redundant knight

Post by arjuntemurnikar »

Yes.
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Redundant knight

Post by Lyudmil Tsvetkov »

[d]2bq2k1/pppppppp/8/8/8/8/PPPPPPPP/1N1Q2K1 w - - 0 1
Anyone doubting in the redundancy theory should look at the above position. The bishop is a stronger piece than the knight, especially with pawns on 2 sides, but Q+N usually at least equal Q+B, and sometimes are even better. So there is some redundancy/complementarity effect here.

Of course, the answer is easy. Queen and knight lack absolutely any redundancy, while in queen and bishop you have the partial redundancy of the Q and B in their diagonal capacities. So not giving that partial redundancy penalty for Q+B would be wrong. But how many actually do it?

[d]8/5n2/3nk3/8/8/2R1B3/4K3/8 w - - 0 1
Another proof for the redundancy of knights. Did you know that this is won ... in 222 moves for white? Take a look at the interesting Pawnless endgames wikipedia article.

There is no pawn span there involved, nothing, so most of the burden for the loss with only 150cps less material is due to the badly coordinating knights. You can not say that the knights are slow above, because they do not need to be fast. But they coordinate badly.

So really, believe me or not, I would introduce a very simple redundancy system, and then try to perfect it. Nothing succeeds without tuning, but some people tune only mobility and salient pawn features.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Thanks

Post by bob »

Lyudmil Tsvetkov wrote:
zullil wrote:I really appreciate your many posts concerning evaluation. Although I haven't read each one---there are quite a few, after all :D ---I've thought about many of them.

Now please don't take this the wrong way, but the main effect of your posts has been to convince me that this is not the way to go. Too many terms, too much hidden overlap (non-orthogonality), too many artifacts of the human approach to chess, motivated by our very limited search abilities.

At a fundamental level, it seems to me that evaluation comes down to mobility and attack. Even the material value of pieces is simply more or less an encapsulation of their mobilities. Admittedly this is overly simplistic (and focused on the opening and midgame), but a position is good for us if we can move to lots of squares and if we attack a lot of enemy material. After all, the goal of the game is to reduce the opponent's mobility to zero while simultaneously attacking his most valuable piece!

You've almost inspired me to revisit my primitive engine and, after improving the basic move generation and search, to focus on an evaluation based on mobility + attacking. Mostly as an academic exercise, since any engine I create would be just for fun (and also pretty weak).
Thanks Louis.

And I thought I posted just a few messages...

It depends on how you look upon it, I understand that very well. Different persons see different things. Nothing bad about that. But we are talking here how to perfect things. You are completely right, mobility is the most important thing (I would say immediately after space advantage :D), but mobility comes in different ways: it comes with attacking, it comes with space, it comes with pawn features and it comes with imbalance evaluation. As mobility is reflected and substantiated in different ways, you can have a whole grasp of it only if you consider those different ways. And the more ways you consider, the closer you are to understanding mobility in-depth.

Now, I started hating that word - orthogonal. Lucas talks about orthogonality, Arjun talks about orthogonality, and now you also started doing this. You do not know what is orthogonal and what not until you test it. However, I completely agree that you do not need too many features in eval; but you need the most important ones. You can certainly get rid of unimportant terms.

I tell you again: the more terms you have in eval in a resonable way, the better, as they omit less possibilities of game development. This has been proven in engine history to be true, but people are always suspicious and unaccepting of new suggestions.

So you have an engine, hope to play a game against it one day. :D

Your messages and especially output also always inspire me.
There is a key point you miss here. These programs literally search millions (or even tens of millions) of nodes per second. Basically an exhaustive search although to a variable depth. Every evaluation term you add has to be 100% correct, because otherwise your huge search space is guaranteed to walk over those positions where it doesn't work.

As you add more terms, there are more and more unexpected interactions that will cause things to add (or subtract) in a completely unexpected way and produce a score that makes you drop a pawn (or worse) in the blink of an eye.

Most of us that have done this for a while agree that one can't get very far on a minimalistic evaluation, but also one can't get very far with an overly complex evaluation either, because it is so difficult to debug an evaluation where some times the terms work in a coordinated way, while at other times they diametrically oppose each other and lead you to think things are equal when they are anything bug.

The search space has gotten so big, your "more terms is better" can quickly and easily backfire and generate something so complex it is difficult for a human to make heads or tails as to what is going on inside the tree.
BBauer
Posts: 658
Joined: Wed Mar 08, 2006 8:58 pm

Re: Redundant knight

Post by BBauer »

[D]6k1/1n6/3n2p1/7p/1P5P/6P1/8/R5K1 w - - 0 1 [D]
You say "white has excellent winning chances".
Why?
Isn't the position a draw?

Code: Select all

35/58	33:40	 5.446.024k	2.695k	+0,18	Ra1-a8+ Kg8-f7 Ra8-h8 Kf7-e6
So you come up with a statement and make conclusions.
What if your statement is wrong?
Please refrain from giving other people a D.
Kind regards
Bernhard
BBauer
Posts: 658
Joined: Wed Mar 08, 2006 8:58 pm

Re: Redundant knight

Post by BBauer »

[D]8/5n2/3nk3/8/8/2R1B3/4K3/8 w - - 0 1 [D]
Did you know that the above position is a draw?
The 50 move rule kicks in.
Kind regards
Bernhard
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Thanks

Post by Lyudmil Tsvetkov »

bob wrote:
Lyudmil Tsvetkov wrote:
zullil wrote:I really appreciate your many posts concerning evaluation. Although I haven't read each one---there are quite a few, after all :D ---I've thought about many of them.

Now please don't take this the wrong way, but the main effect of your posts has been to convince me that this is not the way to go. Too many terms, too much hidden overlap (non-orthogonality), too many artifacts of the human approach to chess, motivated by our very limited search abilities.

At a fundamental level, it seems to me that evaluation comes down to mobility and attack. Even the material value of pieces is simply more or less an encapsulation of their mobilities. Admittedly this is overly simplistic (and focused on the opening and midgame), but a position is good for us if we can move to lots of squares and if we attack a lot of enemy material. After all, the goal of the game is to reduce the opponent's mobility to zero while simultaneously attacking his most valuable piece!

You've almost inspired me to revisit my primitive engine and, after improving the basic move generation and search, to focus on an evaluation based on mobility + attacking. Mostly as an academic exercise, since any engine I create would be just for fun (and also pretty weak).
Thanks Louis.

And I thought I posted just a few messages...

It depends on how you look upon it, I understand that very well. Different persons see different things. Nothing bad about that. But we are talking here how to perfect things. You are completely right, mobility is the most important thing (I would say immediately after space advantage :D), but mobility comes in different ways: it comes with attacking, it comes with space, it comes with pawn features and it comes with imbalance evaluation. As mobility is reflected and substantiated in different ways, you can have a whole grasp of it only if you consider those different ways. And the more ways you consider, the closer you are to understanding mobility in-depth.

Now, I started hating that word - orthogonal. Lucas talks about orthogonality, Arjun talks about orthogonality, and now you also started doing this. You do not know what is orthogonal and what not until you test it. However, I completely agree that you do not need too many features in eval; but you need the most important ones. You can certainly get rid of unimportant terms.

I tell you again: the more terms you have in eval in a resonable way, the better, as they omit less possibilities of game development. This has been proven in engine history to be true, but people are always suspicious and unaccepting of new suggestions.

So you have an engine, hope to play a game against it one day. :D

Your messages and especially output also always inspire me.
There is a key point you miss here. These programs literally search millions (or even tens of millions) of nodes per second. Basically an exhaustive search although to a variable depth. Every evaluation term you add has to be 100% correct, because otherwise your huge search space is guaranteed to walk over those positions where it doesn't work.

As you add more terms, there are more and more unexpected interactions that will cause things to add (or subtract) in a completely unexpected way and produce a score that makes you drop a pawn (or worse) in the blink of an eye.

Most of us that have done this for a while agree that one can't get very far on a minimalistic evaluation, but also one can't get very far with an overly complex evaluation either, because it is so difficult to debug an evaluation where some times the terms work in a coordinated way, while at other times they diametrically oppose each other and lead you to think things are equal when they are anything bug.

The search space has gotten so big, your "more terms is better" can quickly and easily backfire and generate something so complex it is difficult for a human to make heads or tails as to what is going on inside the tree.
That is the challenge: to be able to keep track of and update more terms.

That is why it is more difficult to write a top-notch engine nowadays than it used to be in the past.

And probably that is why many people like to çopy, or, what would you call it alternatively, make use of the already available knowledge. (legality and morality not discussed here)
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Redundant knight

Post by Lyudmil Tsvetkov »

BBauer wrote:[D]8/5n2/3nk3/8/8/2R1B3/4K3/8 w - - 0 1 [D]
Did you know that the above position is a draw?
The 50 move rule kicks in.
Kind regards
Bernhard
Who cares about the 50 move rule?

FIDE should just change it.

Very simple, when specific positions requite more moves, you simply play further.
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: Redundant knight

Post by Lyudmil Tsvetkov »

BBauer wrote:[D]6k1/1n6/3n2p1/7p/1P5P/6P1/8/R5K1 w - - 0 1 [D]
You say "white has excellent winning chances".
Why?
Isn't the position a draw?

Code: Select all

35/58	33:40	 5.446.024k	2.695k	+0,18	Ra1-a8+ Kg8-f7 Ra8-h8 Kf7-e6
So you come up with a statement and make conclusions.
What if your statement is wrong?
Please refrain from giving other people a D.
Kind regards
Bernhard
Man, I do not know if the position is possibly a draw in one of its endless ramifications. I said that white has good winning chances, although lagging behind in material. This illustrates the point that a pair of knights are due a redundancy penalty, what was my primary intention. It was intended as an illustration, so that people say, well, there might be something true about it.

I wonder which engine you have used (you did not mention it), but, in case you have used SF, you should know that this is one of the engines you should not use here, as as of late SF underestimates rooks in endgames and generally overestimates knights.

You might want to look at Houdini, Gull, etc., for this specific ending.

But, even if the true score is only 18cps white edge, this also supports my point, as in terms of material black leads by some 50cps, so you should explain where those 70cps difference in performance come from.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Redundant knight

Post by hgm »

Lyudmil Tsvetkov wrote:[d]2bq2k1/pppppppp/8/8/8/8/PPPPPPPP/1N1Q2K1 w - - 0 1
Anyone doubting in the redundancy theory should look at the above position.
Indeed, they should look at the above position, play it some 10,000 times between equally strong opponents, (possibly permuting the back-rank pieces to force game diversity), and then compare the result with that for the same position(s) without Queens. Then they would know if the extra Queen is worth more to white than to black.

Point is that you have not done that at all, and that anything you say about it is just a fabrication of your imagination.
[d]8/5n2/3nk3/8/8/2R1B3/4K3/8 w - - 0 1
Another proof for the redundancy of knights. Did you know that this is won ... in 222 moves for white?
How is this proof for Knight redundancy? The hypothesis that Bishops are stronger than Knights when not hindered by Pawns (as is already extensively discussed in Larry Kaufman's paper on empirical piece values), plus the obvious fact that Rooks are stronger than Knights, is by itself perfectly capable of explaining this 'cursed win'. This position gives exactly zero evidence for Knight redundancy. It only tells us that Knights are pretty weak pieces.

Redundancy can never be demonstrated from single positions. It only can be demonstrated from comparing positions that have an extra pair of pieces to an equivalent position that has not. You would have (the beginning of) a case if BRNKNN was won, and KRKN (deleting a Knight on each side) was draw. Only the beginning of a case, because piece values are in general not determined by how well the pieces perform in Pawnless endings, but by how well they combat and support Pawns. To make a real case you would not only have to see what extra Knights do to KRKN, but what they do to a representative mix of material combinations where one side already has a Knight (so that the second Knight is 'redundant'), and the other has not. With KRBKNN there aren't even equal pieces on each side that you could delete...
ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: Redundant knight

Post by ZirconiumX »

Lyudmil,

I feel you are missing something quite obvious. Every engine that implements a bishop pair bonus has an implicit knight redundancy term, as two knights are penalised by not being given a bonus.

There is no need to make this implicit bonus any larger than it already is, in my view.

Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.