POLL: What is more important?

General discussion about computer chess...

What is more important?

Determining and defining which engines are clones, derivatives, or completely original
10
22%
Working towards creating stronger engines
36
78%
 
Total votes: 46

User avatar
Uly
Posts: 838
Joined: Thu Jun 10, 2010 5:33 am

Re: POLL: What is more important?

Post by Uly » Thu Aug 12, 2010 6:22 am

xshat wrote:What I say is that in the end when chess is solved there will be no need for different chess engines because the best will be programmed to always win or always force a draw
Why would you want to force a draw if you're the stronger opponent?

I'm going to give up, since Marek and me have already tried to explain the point, this is my last attempt.

Assume the perfect engine with 32men tablebases is going to play me, how is it going to beat me? It can't win by playing perfect moves randomly (that's what current 6men tablebases do), as I could easily force a 3fold repetition (since the opposing engine doesn't see a better alternative, the alternatives also have a draw result).

32men tablebases aren't enough to defeat ME (some random 1600 patzer) so it's obvious the engine has to do something else to win, by then nobody would play engines against each other, as all games would end in draw, but humans playing engines will still be a possibility, so the engines will have to focus on finding winning plans even though they know the game is drawn. So they will definitively play different moves from each others.

It's like the Roshambo engines (for the game Rock Paper Scissors), that was solved from the start, the "optimal" strategy (equivalent to 32men tablebases) is to pick Rock, Paper and Scissors randomly, that ensures that no matter what is the strategy of the opponent, the opponent can't perform better than 50% against you.

But picking randomly is silly, as can be shown by putting several intelligent strategies on a tournament and having them play each other, it will be shown that strategy that picks randomly ends at the middle of the pack, and the best strategy, at the top, is there because it managed to play the best moves against the other strategies.

It's the same with chess, playing 32men tablebase moves is silly if it only leads to drawn games, strategies to beat suboptimal opposition are going to be very different, and that will cause engines to not be "clones of each other".

User avatar
xshat
Posts: 98
Joined: Sat Jun 19, 2010 10:44 am

Re: POLL: What is more important?

Post by xshat » Thu Aug 12, 2010 6:40 am

Ovyron wrote:
xshat wrote:What I say is that in the end when chess is solved there will be no need for different chess engines because the best will be programmed to always win or always force a draw
Why would you want to force a draw if you're the stronger opponent?

I'm going to give up, since Marek and me have already tried to explain the point, this is my last attempt.

Assume the perfect engine with 32men tablebases is going to play me, how is it going to beat me? It can't win by playing perfect moves randomly (that's what current 6men tablebases do), as I could easily force a 3fold repetition (since the opposing engine doesn't see a better alternative, the alternatives also have a draw result).

32men tablebases aren't enough to defeat ME (some random 1600 patzer) so it's obvious the engine has to do something else to win, by then nobody would play engines against each other, as all games would end in draw, but humans playing engines will still be a possibility, so the engines will have to focus on finding winning plans even though they know the game is drawn. So they will definitively play different moves from each others.

It's like the Roshambo engines (for the game Rock Paper Scissors), that was solved from the start, the "optimal" strategy (equivalent to 32men tablebases) is to pick Rock, Paper and Scissors randomly, that ensures that no matter what is the strategy of the opponent, the opponent can't perform better than 50% against you.

But picking randomly is silly, as can be shown by putting several intelligent strategies on a tournament and having them play each other, it will be shown that strategy that picks randomly ends at the middle of the pack, and the best strategy, at the top, is there because it managed to play the best moves against the other strategies.

It's the same with chess, playing 32men tablebase moves is silly if it only leads to drawn games, strategies to beat suboptimal opposition are going to be very different, and that will cause engines to not be "clones of each other".
What does "Why would you want to force a draw if you're the stronger opponent?" have to do with the fact that when chess is solved to be either a forced draw or a win all engines are going to be the same?

There are no random perfect moves but with tablebases then the moves are outlined.

There aren't any 32bases out yet, if there were they would certainly beat you considering they would have the game solved.

I don't understand how you are taking everything I have said out of context, then changing the subject.

The engine that solved checkers doesn't make random moves, it is outlined to always win and in that situation I don't see how your claim that it can't beat you could possibly be true.

Are you asserting that when chess is solved, and that if it always leads to drawn games, it will become silly? If chess is solved then engines which have the programming will always play the same, as it currently is with the strongest checkers engines that have solved the game.

User avatar
Uly
Posts: 838
Joined: Thu Jun 10, 2010 5:33 am

Re: POLL: What is more important?

Post by Uly » Thu Aug 12, 2010 9:02 am

xshat wrote:What does "Why would you want to force a draw if you're the stronger opponent?" have to do with the fact that when chess is solved to be either a forced draw or a win all engines are going to be the same?
That they won't be the same against say, me. Engine A may play some moves to try to beat me, and engine B will play different moves to try to beat me, and one of them is going to be more successful at avoiding the drawing path and making me fall into a losing path. But I already said the last one was my last attempt, I hope someone else is more lucky at explaining it to you.

Marek
Posts: 35
Joined: Thu Jun 10, 2010 10:16 am
Real Name: Marek Soszynski

Re: POLL: What is more important?

Post by Marek » Thu Aug 12, 2010 9:19 am

xshat wrote:
Ovyron wrote:
xshat wrote:What I say is that in the end when chess is solved there will be no need for different chess engines because the best will be programmed to always win or always force a draw
Why would you want to force a draw if you're the stronger opponent?

I'm going to give up, since Marek and me have already tried to explain the point, this is my last attempt.

Assume the perfect engine with 32men tablebases is going to play me, how is it going to beat me? It can't win by playing perfect moves randomly (that's what current 6men tablebases do), as I could easily force a 3fold repetition (since the opposing engine doesn't see a better alternative, the alternatives also have a draw result).

32men tablebases aren't enough to defeat ME (some random 1600 patzer) so it's obvious the engine has to do something else to win, by then nobody would play engines against each other, as all games would end in draw, but humans playing engines will still be a possibility, so the engines will have to focus on finding winning plans even though they know the game is drawn. So they will definitively play different moves from each others.

It's like the Roshambo engines (for the game Rock Paper Scissors), that was solved from the start, the "optimal" strategy (equivalent to 32men tablebases) is to pick Rock, Paper and Scissors randomly, that ensures that no matter what is the strategy of the opponent, the opponent can't perform better than 50% against you.

But picking randomly is silly, as can be shown by putting several intelligent strategies on a tournament and having them play each other, it will be shown that strategy that picks randomly ends at the middle of the pack, and the best strategy, at the top, is there because it managed to play the best moves against the other strategies.

It's the same with chess, playing 32men tablebase moves is silly if it only leads to drawn games, strategies to beat suboptimal opposition are going to be very different, and that will cause engines to not be "clones of each other".
What does "Why would you want to force a draw if you're the stronger opponent?" have to do with the fact that when chess is solved to be either a forced draw or a win all engines are going to be the same?

There are no random perfect moves but with tablebases then the moves are outlined.

There aren't any 32bases out yet, if there were they would certainly beat you considering they would have the game solved.

I don't understand how you are taking everything I have said out of context, then changing the subject.

The engine that solved checkers doesn't make random moves, it is outlined to always win and in that situation I don't see how your claim that it can't beat you could possibly be true.

Are you asserting that when chess is solved, and that if it always leads to drawn games, it will become silly? If chess is solved then engines which have the programming will always play the same, as it currently is with the strongest checkers engines that have solved the game.
32-men tablebases don't solve chess. They tell you whether a position is won, lost or drawn, and whether any particular move will change or maintain that assessment. Arguably, the starting position is dead drawn. Probably, 1.e4 and 1.d4 maintain the draw; other moves too, but let's stick with those two. Now, why should an engine play 1.e4 rather than 1.d4 - ? The 32-man tablebases (32TBs) say they both draw. Already there is scope for "perfect" engines (i.e. engines with 32TBs) to differ. Probably, 1.d4 d5 2.c4 c6 is drawn. So there's no reason given by 32TBs for a perfect engine to avoid it, is there? But then there's no reason given by 32TBs for a perfect engine to avoid going into the Exchange Slav. However, the Exchange Slav is notoriously drawish. What 32TBs can't do is to turn a draw into a win, though of course they will punish poor play. It won't be necessary for an engine to be perfect to sometimes successfully defend either side of an Exchange Slav against perfect opposition. Since a perfect engine won't know the quality of its opponent, it would be a mistake for it to play the Exchange Slav even though the 32TBs say it is okay (i.e drawn like the starting position itself). Therefore, the most effective perfect engine will need to be programmed to avoid the Exchange Slav. Unfortunately, it can't stop there. This is an illustration of one line from one opening, but the same principle applies to every move at every phase of the game. A (strongish) engine without 32TBs won't necessarily lose a drawn position against an engine with them; there will be occasions when it manages to hold the draw.

The task facing aspiring programmers would now be to make their perfect engines avoid positions that are likely to be drawn by imperfect opposition. (In fact, the programmers could go one step further and make their perfect engines seek the quickest wins against imperfect opposition even if it means taking risks by playing theoretically losing moves such as an unbalancing sacrifice.) Even with 32TBs (which seem an impossibility to us now) there would still be plenty of work for chess programmers to do, and we would still be running engine matches and tourneys. Perfect Fritz will score 73% against Rybka 4, while Perfect Fire will score 79% - for example - so obviously Perfect Fritz could still be improved. You think these made up percentages are too low? Remember three things: 1) There is no check on Rybka's hardware. After all, somehow we've found the space to store the 32TBs for its opponents. 2) The tablebases that we currently have add surprisingly little to contemporary engine performance, merely a few Elo. 32TBs should add a great deal more than that, but how much exactly? 3) For chess to be completely solved, and the programmers work to be effectively over, the percentages would have to be 100%. But that is impossible because of the drawing possibilities, including the drawing possibilities by (strongish) engines that don't have 32TBs.

User avatar
xshat
Posts: 98
Joined: Sat Jun 19, 2010 10:44 am

Re: POLL: What is more important?

Post by xshat » Thu Aug 12, 2010 9:29 am

Ovyron wrote:
xshat wrote:What does "Why would you want to force a draw if you're the stronger opponent?" have to do with the fact that when chess is solved to be either a forced draw or a win all engines are going to be the same?
That they won't be the same against say, me. Engine A may play some moves to try to beat me, and engine B will play different moves to try to beat me, and one of them is going to be more successful at avoiding the drawing path and making me fall into a losing path. But I already said the last one was my last attempt, I hope someone else is more lucky at explaining it to you.
If chess was solved then engines A and B would make the same moves.

User avatar
xshat
Posts: 98
Joined: Sat Jun 19, 2010 10:44 am

Re: POLL: What is more important?

Post by xshat » Thu Aug 12, 2010 9:33 am

Marek wrote:
xshat wrote:
Ovyron wrote:
xshat wrote:What I say is that in the end when chess is solved there will be no need for different chess engines because the best will be programmed to always win or always force a draw
Why would you want to force a draw if you're the stronger opponent?

I'm going to give up, since Marek and me have already tried to explain the point, this is my last attempt.

Assume the perfect engine with 32men tablebases is going to play me, how is it going to beat me? It can't win by playing perfect moves randomly (that's what current 6men tablebases do), as I could easily force a 3fold repetition (since the opposing engine doesn't see a better alternative, the alternatives also have a draw result).

32men tablebases aren't enough to defeat ME (some random 1600 patzer) so it's obvious the engine has to do something else to win, by then nobody would play engines against each other, as all games would end in draw, but humans playing engines will still be a possibility, so the engines will have to focus on finding winning plans even though they know the game is drawn. So they will definitively play different moves from each others.

It's like the Roshambo engines (for the game Rock Paper Scissors), that was solved from the start, the "optimal" strategy (equivalent to 32men tablebases) is to pick Rock, Paper and Scissors randomly, that ensures that no matter what is the strategy of the opponent, the opponent can't perform better than 50% against you.

But picking randomly is silly, as can be shown by putting several intelligent strategies on a tournament and having them play each other, it will be shown that strategy that picks randomly ends at the middle of the pack, and the best strategy, at the top, is there because it managed to play the best moves against the other strategies.

It's the same with chess, playing 32men tablebase moves is silly if it only leads to drawn games, strategies to beat suboptimal opposition are going to be very different, and that will cause engines to not be "clones of each other".
What does "Why would you want to force a draw if you're the stronger opponent?" have to do with the fact that when chess is solved to be either a forced draw or a win all engines are going to be the same?

There are no random perfect moves but with tablebases then the moves are outlined.

There aren't any 32bases out yet, if there were they would certainly beat you considering they would have the game solved.

I don't understand how you are taking everything I have said out of context, then changing the subject.

The engine that solved checkers doesn't make random moves, it is outlined to always win and in that situation I don't see how your claim that it can't beat you could possibly be true.

Are you asserting that when chess is solved, and that if it always leads to drawn games, it will become silly? If chess is solved then engines which have the programming will always play the same, as it currently is with the strongest checkers engines that have solved the game.
32-men tablebases don't solve chess. They tell you whether a position is won, lost or drawn, and whether any particular move will change or maintain that assessment. Arguably, the starting position is dead drawn. Probably, 1.e4 and 1.d4 maintain the draw; other moves too, but let's stick with those two. Now, why should an engine play 1.e4 rather than 1.d4 - ? The 32-man tablebases (32TBs) say they both draw. Already there is scope for "perfect" engines (i.e. engines with 32TBs) to differ. Probably, 1.d4 d5 2.c4 c6 is drawn. So there's no reason given by 32TBs for a perfect engine to avoid it, is there? But then there's no reason given by 32TBs for a perfect engine to avoid going into the Exchange Slav. However, the Exchange Slav is notoriously drawish. What 32TBs can't do is to turn a draw into a win, though of course they will punish poor play. It won't be necessary for an engine to be perfect to sometimes successfully defend either side of an Exchange Slav against perfect opposition. Since a perfect engine won't know the quality of its opponent, it would be a mistake for it to play the Exchange Slav even though the 32TBs say it is okay (i.e drawn like the starting position itself). Therefore, the most effective perfect engine will need to be programmed to avoid the Exchange Slav. Unfortunately, it can't stop there. This is an illustration of one line from one opening, but the same principle applies to every move at every phase of the game. A (strongish) engine without 32TBs won't necessarily lose a drawn position against an engine with them; there will be occasions when it manages to hold the draw.

The task facing aspiring programmers would now be to make their perfect engines avoid positions that are likely to be drawn by imperfect opposition. (In fact, the programmers could go one step further and make their perfect engines seek the quickest wins against imperfect opposition even if it means taking risks by playing theoretically losing moves such as an unbalancing sacrifice.) Even with 32TBs (which seem an impossibility to us now) there would still be plenty of work for chess programmers to do, and we would still be running engine matches and tourneys. Perfect Fritz will score 73% against Rybka 4, while Perfect Fire will score 79% - for example - so obviously Perfect Fritz could still be improved. You think these made up percentages are too low? Remember three things: 1) There is no check on Rybka's hardware. After all, somehow we've found the space to store the 32TBs for its opponents. 2) The tablebases that we currently have add surprisingly little to contemporary engine performance, merely a few Elo. 32TBs should add a great deal more than that, but how much exactly? 3) For chess to be completely solved, and the programmers work to be effectively over, the percentages would have to be 100%. But that is impossible because of the drawing possibilities, including the drawing possibilities by (strongish) engines that don't have 32TBs.
Now, why should an engine play 1.e4 rather than 1.d4 - ? The 32-man tablebases (32TBs) say they both draw.



This is not confirmed because 32 men tablebases do not yet exist and cannot therefore determine whether chess is drawn or always win for white/black.

The engine which has been programmed to solve chess can never lose because it forces draw or win (we will know which when it is). When chess is solved, all engines that are programmed with that information will be making the same moves.

I never mentioned anything about percentages being made up or too low. 32TBs are a long way off and I think currently we are at 7 or 8.

Marek
Posts: 35
Joined: Thu Jun 10, 2010 10:16 am
Real Name: Marek Soszynski

Re: POLL: What is more important?

Post by Marek » Thu Aug 12, 2010 10:06 am

xshat wrote:The engine which has been programmed to solve chess can never lose because it forces draw or win (we will know which when it is). When chess is solved, all engines that are programmed with that information will be making the same moves.
No. This is false for at least two reasons. 1) A perfect engine should not want to force a draw. This is because imperfect opposition may make a mistake. A perfect engine that unnecessarily forces draws will be a relatively ineffective engine. 2) Perfect engines will not make the same moves if there is more than one path to a win (or to a draw if the position a dead draw).

xshat wrote:[We] cannot therefore determine whether chess is drawn or always win for white/black.
Yes, but the consensus is that it is probably a dead draw. If it is a dead draw with best play (32TBs), then that has important theoretical implications for engine development. I have already outlined why. If a position is a dead draw according to 32TBs, and there is a choice of moves that maintain the assessment, which is the best practical, the most effective, move to make? Is it better to make a move that a human would see as a simplifying move or a randomising move? Or would it be better to play a simplifying move on this turn, but play a randomising move next? According to the 32TBs it's a draw anyhow. But the perfect engine doesn't want a draw, especially not against unknown opposition that could be without 32TBs.

User avatar
xshat
Posts: 98
Joined: Sat Jun 19, 2010 10:44 am

Re: POLL: What is more important?

Post by xshat » Thu Aug 12, 2010 10:19 am

Marek wrote:
xshat wrote:The engine which has been programmed to solve chess can never lose because it forces draw or win (we will know which when it is). When chess is solved, all engines that are programmed with that information will be making the same moves.
No. This is false for at least two reasons. 1) A perfect engine should not want to force a draw. This is because imperfect opposition may make a mistake. A perfect engine that unnecessarily forces draws will be a relatively ineffective engine. 2) Perfect engines will not make the same moves if there is more than one path to a win (or to a draw if the position a dead draw).

xshat wrote:[We] cannot therefore determine whether chess is drawn or always win for white/black.
Yes, but the consensus is that it is probably a dead draw. If it is a dead draw with best play (32TBs), then that has important theoretical implications for engine development. I have already outlined why. If a position is a dead draw according to 32TBs, and there is a choice of moves that maintain the assessment, which is the best practical, the most effective, move to make? Is it better to make a move that a human would see as a simplifying move or a randomising move? Or would it be better to play a simplifying move on this turn, but play a randomising move next? According to the 32TBs it's a draw anyhow. But the perfect engine doesn't want a draw, especially not against unknown opposition that could be without 32TBs.
Your first reason is not valid because it has not yet been determined whether perfect play results in win for white or draw. Perfect engine makes perfect move for chess being solved. It forces draws by neccesity if chess is a drawn game when solved and black doesn't make any mistakes.

As to your second case; Perfect engines will take the same path for winning if it is guranteed, considering more than one sequence of moves is available.

The consensus may be anything, but your saying its a dead draw. If it's a dead draw then perfect engines cannot win becuse they will alwys make a good enough move to prevent checkmate.

Marek
Posts: 35
Joined: Thu Jun 10, 2010 10:16 am
Real Name: Marek Soszynski

Re: POLL: What is more important?

Post by Marek » Thu Aug 12, 2010 10:45 am

xshat wrote:
Marek wrote:
xshat wrote:The engine which has been programmed to solve chess can never lose because it forces draw or win (we will know which when it is). When chess is solved, all engines that are programmed with that information will be making the same moves.
No. This is false for at least two reasons. 1) A perfect engine should not want to force a draw. This is because imperfect opposition may make a mistake. A perfect engine that unnecessarily forces draws will be a relatively ineffective engine. 2) Perfect engines will not make the same moves if there is more than one path to a win (or to a draw if the position a dead draw).

xshat wrote:[We] cannot therefore determine whether chess is drawn or always win for white/black.
Yes, but the consensus is that it is probably a dead draw. If it is a dead draw with best play (32TBs), then that has important theoretical implications for engine development. I have already outlined why. If a position is a dead draw according to 32TBs, and there is a choice of moves that maintain the assessment, which is the best practical, the most effective, move to make? Is it better to make a move that a human would see as a simplifying move or a randomising move? Or would it be better to play a simplifying move on this turn, but play a randomising move next? According to the 32TBs it's a draw anyhow. But the perfect engine doesn't want a draw, especially not against unknown opposition that could be without 32TBs.
Your first reason is not valid because it has not yet been determined whether perfect play results in win for white or draw. Perfect engine makes perfect move for chess being solved. It forces draws by neccesity if chess is a drawn game when solved and black doesn't make any mistakes.

As to your second case; Perfect engines will take the same path for winning if it is guranteed, considering more than one sequence of moves is available.

The consensus may be anything, but your saying its a dead draw. If it's a dead draw then perfect engines cannot win becuse they will alwys make a good enough move to prevent checkmate.
"Perfect engine [...] forces draws by neccesity if chess is a drawn game when solved and black doesn't make any mistakes."

There is no necessity to force a draw; for how do they know their opponent won't make any mistakes?

"If it's a dead draw then perfect engines cannot win becuse they will alwys make a good enough move to prevent checkmate."

Yes they can win. To repeat, they don't know that their opponent won't make a mistake.

User avatar
xshat
Posts: 98
Joined: Sat Jun 19, 2010 10:44 am

Re: POLL: What is more important?

Post by xshat » Thu Aug 12, 2010 11:04 am

Marek wrote:
xshat wrote:
Marek wrote:
xshat wrote:The engine which has been programmed to solve chess can never lose because it forces draw or win (we will know which when it is). When chess is solved, all engines that are programmed with that information will be making the same moves.
No. This is false for at least two reasons. 1) A perfect engine should not want to force a draw. This is because imperfect opposition may make a mistake. A perfect engine that unnecessarily forces draws will be a relatively ineffective engine. 2) Perfect engines will not make the same moves if there is more than one path to a win (or to a draw if the position a dead draw).

xshat wrote:[We] cannot therefore determine whether chess is drawn or always win for white/black.
Yes, but the consensus is that it is probably a dead draw. If it is a dead draw with best play (32TBs), then that has important theoretical implications for engine development. I have already outlined why. If a position is a dead draw according to 32TBs, and there is a choice of moves that maintain the assessment, which is the best practical, the most effective, move to make? Is it better to make a move that a human would see as a simplifying move or a randomising move? Or would it be better to play a simplifying move on this turn, but play a randomising move next? According to the 32TBs it's a draw anyhow. But the perfect engine doesn't want a draw, especially not against unknown opposition that could be without 32TBs.
Your first reason is not valid because it has not yet been determined whether perfect play results in win for white or draw. Perfect engine makes perfect move for chess being solved. It forces draws by neccesity if chess is a drawn game when solved and black doesn't make any mistakes.

As to your second case; Perfect engines will take the same path for winning if it is guranteed, considering more than one sequence of moves is available.

The consensus may be anything, but your saying its a dead draw. If it's a dead draw then perfect engines cannot win becuse they will alwys make a good enough move to prevent checkmate.
"Perfect engine [...] forces draws by neccesity if chess is a drawn game when solved and black doesn't make any mistakes."

There is no necessity to force a draw; for how do they know their opponent won't make any mistakes?

"If it's a dead draw then perfect engines cannot win becuse they will alwys make a good enough move to prevent checkmate."

Yes they can win. To repeat, they don't know that their opponent won't make a mistake.
The neccesity to force a draw is relevent when both engines are playing perfect, under the premise that the "consensus" is right about chess being drawn under perfect play.

If the engines are programmed not to make mistakes, they probably won't.

Post Reply