Not logged inRybka Chess Community Forum
Up Topic Rybka Support & Discussion / Rybka Discussion / Knight Odds Match with FM
1 2 3 Previous Next  
Poll What will the match score be (remember draws are wins for Rybka)? (Closed)
Meyer by 4-0 8 10%
Meyer by 3-1 24 29%
Tie Match 2-2 28 33%
Rybka by 3-1 17 20%
Rybka by 4-0 7 8%
Parent - - By lkaufman (*****) Date 2008-06-06 23:37
I assume you refer to my octal machine. I don't have the Fritz GUI on that one, so I don't know fritz benchmark, but in the opening position I got 559KNs after 20 ply, so your machine is about 15% faster than mine.
Parent - By NATIONAL12 (Gold) [gb] Date 2008-06-06 23:40
thats very fast and not far behind my Skulltrail,you had a good buy there Larry
Parent - - By sharpnova (***) [us] Date 2008-06-06 23:39
Would I be correct in guessing that if Rybka had had draw odds in your match with it, it would have won the match?

And is Rybka enough stronger to compensate for how much stronger you are than this FM?
Parent - By lkaufman (*****) Date 2008-06-07 00:08
Yes to the first question, probably no to the second. Actually John Meyer is the opponent I've faced the most often in tournament games over the last 15 years, 17 times (my record is ten wins, five draws, two losses). But the big factor in favor of the human in this match is the much longer time limit than in my games, roughly triple.
Parent - - By Eduard (***) [de] Date 2008-06-07 11:40
Poor conditions, sorry.

Why you do not play 2h/40 Moves? And: The winner takes all! I am sure that Meyer would win it.
Parent - By lkaufman (*****) Date 2008-06-07 14:14
Well, two reasons. First of all, I agree that Meyer would probably win, but both he and I feel that you shouldn't need perfect conditions to win with an extra piece. Long time limits are for subtleties and complications that are generally avoided by the human when up a piece. Also, we only have one day available for this match, and anything less than four games is just too dependent on luck (whether or not he makes a blunder).
Parent - - By miguel angel (*) Date 2008-06-07 20:39
at what time the match begins tomorrow?
Where transmitting the match?
Parent - By lkaufman (*****) Date 2008-06-07 21:37
Noon Eastern Daylight Time (6 p.m. Central European time), broadcast on "chess planet" (Convekta site).
Parent - - By tralala (*) [de] Date 2008-06-08 11:49
This match was ridiculed in a german computerchess board as too easy for the human. Someone who said it was laughable to expect Rybka to win took up the challenge and played three games against Rybka 2.3.2a on a Q6600 with the time limit 30+30. He won all three of the games. Here they are:

[Event "Blitz:30'+30""]
[Site "Switzerland"]
[Date "2008.06.08"]
[Round "3"]
[White "Rybka 2.3.2a mp 32-bit"]
[Black "Utzinger, Kurt"]
[Result "0-1"]
[ECO "A00"]
[Annotator "Utzinger,Kurt"]
[PlyCount "172"]
[TimeControl "1800+30"]

{256MB, Rybka2.ctg, Intel Quad Q6600} 1. Nc3 Nf6 2. Nd5 Nxd5 3. Nf3 Nf6 4. Ng1
Ng8 5. e4 {-1.72/18 112} e5 {28} 6. Nf3 {-1.78/17 98} Nf6 {(d5) 23} 7. Nxe5 {
-1.70/17 77} d6 {(d5) 13} 8. Nf3 {-1.79/17 75} Nxe4 {4} 9. Bb5+ {-1.85/17 81}
c6 {27} 10. Be2 {-1.96/18 64} Be7 {13} 11. c3 {-2.03/18 136} Be6 {(0-0) 39} 12.
Nd4 {-1.85/17 115} O-O {(Ld7) 18} 13. Nxe6 {-1.75/18 100} fxe6 {13} 14. O-O {
-1.87/19 293} Qb6 {134} 15. Bf3 {-1.86/20 113} Ng5 {(Sf6) 156} 16. Bg4 {
-1.66/16 15} e5 {(Sa6) 23} 17. d3 {-1.60/17 95} Na6 {43} 18. Be3 {-1.61/16 13}
Qc7 {(c5) 89} 19. Qd2 {-1.63/15 77} Nf7 {28} 20. Rae1 {-1.71/16 70} d5 {30} 21.
a3 {-1.78/16 45} Bc5 {(Sc5) 48} 22. d4 {-1.72/15 18} exd4 {(Ld6) 11} 23. cxd4 {
-1.65/15 12} Bd6 {12} 24. g3 {-1.70/15 2} Rae8 {(Sb8) 22} 25. Re2 {-1.87/16 211
} Nb8 {27} 26. Rfe1 {-1.89/17 35} Nd7 {30} 27. Bf5 {-2.00/18 139} Nf6 {10} 28.
Qd1 {-2.12/18 39} Re7 {(Se4) 57} 29. Kg2 {-2.10/16 61} Rfe8 {4} 30. Bd3 {
-2.26/17 131} Ng4 {25} 31. Bd2 {-2.28/17 21} Rxe2 {11} 32. Bxe2 {-2.37/18 31}
Nf6 {11} 33. Qc2 {-2.52/17 54} Re4 {(b6) 248} 34. Be3 {-2.38/16 56} Qb6 {
(Dd7) 82} 35. Bd3 {-2.20/16 34} Re7 {(Te8) 56} 36. f3 {-2.28/15 53} Qd8 {
(Lc7) 23} 37. Re2 {-2.26/16 44} Qe8 {6} 38. Qc1 {-2.33/15 17} Bc7 {(Sg5) 12}
39. b3 {-2.44/17 35} Bb6 {(c5) 15} 40. Kf1 {-2.52/16 40} Nd6 {35} 41. Bf2 {
-2.59/18 24} Rxe2 {5} 42. Bxe2 {-2.73/18 6} Nf5 {(Sd7) 49} 43. Qf4 {-2.41/18 53
} Qd7 {(Sh6) 56} 44. Bd3 {-2.39/18 52} Nd6 {(Se7) 46} 45. a4 {-2.46/17 50} Bc7
{41} 46. Qe3 {-2.56/17 17} Qe8 {(g6) 19} 47. Qd2 {-2.47/17 65} Qe6 {(Df8) 14}
48. Kg1 {-2.53/16 65} b5 {(g6) 84} 49. Qc3 {-2.21/16 35} Qd7 {31} 50. Kg2 {
-2.24/17 0} bxa4 {17} 51. bxa4 {-2.30/19 62} Nb7 {(Kf7) 54} 52. Qc2 {
-2.44/17 36} Bb6 {(Sa5) 35} 53. Bf5 {-2.43/17 52} Qe8 {20} 54. Bd3 {-2.52/19 33
} Na5 {29} 55. g4 {-2.66/18 35} h6 {(g6) 46} 56. Bg6 {-2.48/16 32} Qe7 {
(De6) 36} 57. h3 {-2.73/16 35} Nc4 {3} 58. Kg1 {-2.85/15 47} Bc7 {74} 59. Qf5 {
-3.12/18 0} Qd7 {48} 60. Qxd7 {-3.33/20 9} Nxd7 {3} 61. Be8 {-3.55/20 18} Nb8 {
25} 62. Bg6 {-3.78/20 3} Nb2 {108} 63. Bc2 {-4.04/21 0} Nd7 {12} 64. Bf5 {
-4.07/21 46} Nb8 {(Sf8) 40} 65. Bc2 {0.00/30 10} Kf7 {(Sxa4) 17} 66. Be1 {
-3.75/20 33} Nd7 {15} 67. a5 {-3.92/20 16} Nc4 {27} 68. Kf2 {-4.96/20 58} Bxa5
{32} 69. Ba4 {-5.13/20 25} Bxe1+ {13} 70. Kxe1 {-5.14/20 25} Nb8 {(Sa5) 23} 71.
Ke2 {-5.17/19 57} Ke6 {(a5) 34} 72. f4 {-5.12/20 78} Kd6 {(a5) 18} 73. Bb3 {
-5.09/18 67} a5 {(Sd7) 24} 74. Kd3 {-5.41/17 40} Nb6 {66} 75. g5 {-5.40/18 0}
hxg5 {8} 76. fxg5 {-5.60/17 1} N8d7 {(Sa6) 7} 77. h4 {-5.55/19 70} c5 {(a4) 21}
78. Bc2 {-5.41/18 39} c4+ {(cxd4) 36} 79. Kc3 {-5.00/21 59} Ke6 {(Sa8) 32} 80.
Bh7 {-5.63/17 35} Nf8 {6} 81. Bb1 {-5.91/18 43} g6 {10} 82. Bc2 {-6.37/19 22}
Kf7 {(Sc8) 7} 83. Bd1 {-6.51/18 50} Ne6 {8} 84. Bc2 {-6.80/16 22} Nf4 {(Sc8) 13
} 85. Bd1 {-6.97/16 35} Ne6 {(Sc8) 36} 86. Bc2 {0.00/37 7} Ng7 {(Sc8) 4} 0-1

[Event "Blitz:30'+30""]
[Site "Switzerland"]
[Date "2008.06.08"]
[Round "2"]
[White "Rybka 2.3.2a mp 32-bit"]
[Black "Utzinger, Kurt"]
[Result "0-1"]
[ECO "A00"]
[PlyCount "116"]

1. Nc3 Nf6 2. Nd5 Nxd5 3. Nf3 Nf6 4. Ng1 Ng8 5. e4 e5 6. Nf3 Nc6 7. Bb5 a6 8.
Bxc6 dxc6 9. O-O Bg4 10. h3 h5 11. Re1 Qf6 12. Re3 Bc5 13. Rc3 Bd4 14. Ra3
O-O-O 15. Qe2 Bxf3 16. Rxf3 Qe6 17. d3 Ne7 18. c3 Bb6 19. a4 Ng6 20. a5 Ba7 21.
Ra3 c5 22. Ra4 Rd6 23. c4 Rhd8 24. Ra3 Ne7 25. Rg3 g6 26. h4 Nc6 27. Bg5 R8d7
28. Kf1 Nd4 29. Qd2 Bb8 30. Be3 c6 31. Qc1 Bc7 32. Bxd4 Rxd4 33. Qh6 Bd8 34.
Kg1 Bxh4 35. Rf3 Bf6 36. Qe3 Qe7 37. Qe2 Bg5 38. Rh3 Qd8 39. Kh1 Bf4 40. g4 h4
41. Qf3 Bg5 42. Qe2 Qf6 43. Ra1 Qf4 44. Rd1 Bd8 45. b3 f5 46. gxf5 gxf5 47. Rf3
Qg4 48. Rg1 Qh5 49. Rg8 Rf7 50. exf5 Rxf5 51. Re3 Qxe2 52. Rxe2 Rxd3 53. Rh8
Kd7 54. Rh7+ Be7 55. Rb2 Ke6 56. Kg1 Rff3 57. Rh5 h3 58. Re2 Bd6 0-1

[Event "Blitz:30'+30""]
[Site "Switzerland"]
[Date "2008.06.07"]
[Round "1"]
[White "Rybka 2.3.2a mp 32-bit"]
[Black "Utzinger, Kurt"]
[Result "0-1"]
[ECO "A00"]
[PlyCount "139"]

1. Nc3 Nf6 2. Nd5 Nxd5 3. Nf3 Nf6 4. Ng1 Ng8 5. e4 d5 6. e5 Bf5 7. Nf3 Bg4 8.
c3 Bxf3 9. Qxf3 e6 10. Bb5+ Nd7 11. d4 Ne7 12. O-O a6 13. Bd3 c5 14. Be3 Nc6
15. a3 cxd4 16. cxd4 f5 17. Rfc1 Be7 18. Qh5+ g6 19. Qh6 Bf8 20. Qh3 Bg7 21. b4
O-O 22. f4 Rc8 23. Rab1 b5 24. a4 Qb6 25. a5 Qd8 26. Bf2 Qe7 27. Bh4 Qf7 28.
Qe3 Rfe8 29. Be1 Bf8 30. Qf2 Be7 31. Qb2 Qf8 32. Bd2 Na7 33. Rf1 Rc4 34. Bc3
Rb8 35. Qd2 Nc6 36. Bxc4 bxc4 37. Kf2 Bxb4 38. Bxb4 Nxb4 39. Qc3 Nd3+ 40. Kg1
Rxb1 41. Rxb1 Nxf4 42. Qe3 Nd3 43. h4 Qd8 44. Rb7 Qc8 45. Rb1 Qc7 46. g3 Qa7
47. h5 N7xe5 48. hxg6 hxg6 49. Kg2 c3 50. Rf1 c2 51. Rh1 c1=Q 52. Rxc1 Nxc1 53.
Qxe5 Qd7 54. g4 Nd3 55. Qg3 Qb5 56. gxf5 Qb2+ 57. Kf3 Qf2+ 58. Qxf2 Nxf2 59.
fxe6 Kf8 60. Kxf2 Ke7 61. Kf3 Kxe6 62. Kg4 Kf6 63. Kf4 g5+ 64. Kg4 Kg6 65. Kf3
Kf5 66. Ke3 g4 67. Kd3 Kf4 68. Kd2 Ke4 69. Kc2 Kxd4 70. Kd2 0-1

There is no reason to doubt any of these games but Kurt Utzinger is in fact a very experienced and famous anti-computer player. He draws sometimes against Rybka with ease (although he looses as well), so he knows the program and knows hot to play against a computer program in general and with a handicap. I think the difference to octal is negligible, the question is, does the new version better understand how to play with such a handicap?

http://f23.parsimony.net/forum50826/messages/183266.htm
Parent - By sarciness (***) [gb] Date 2008-06-08 12:07
Thanks for that, interesting stuff.

Looking forward to the proper match. Come on the human!
Parent - - By lkaufman (*****) Date 2008-06-08 13:15
Well, aside from the octal use and 64 bit vs. 32 bit, there is the opening book I wrote, which at least allows Rybka to avoid 1e4 and avoid getting bad openings. Rybka 3 is not specifically much better at giving knight odds than Rybka 2.3.2a, just much better in general.
Parent - - By FWCC (***) [us] Date 2008-06-09 01:18
Well I was correct,knight odds is too much at the moment to give an opponent of master level.Rybka never lost this badly before but the odds were stacked against her.
Parent - By lkaufman (*****) Date 2008-06-09 04:32
Yes, I don't think we'll try this again until such time as Monte Carlo or something like that becomes practical for Rybka.
Parent - - By Eduard (***) [de] Date 2008-06-09 01:41
Disaster for Rybka!

Please stop such games in the future.

Thanks!

Game 4:

[Event "30'+30""]
[Site "Maryland"]
[Date "2008.06.08"]
[Round "4"]
[White "Rybka"]
[Black "FM Meyer"]
[Result "0-1"]
[ECO "A00"]
[Annotator "Nemeth,Eduard"]
[PlyCount "116"]
[TimeControl "1800+30"]

1. Nc3 Nf6 2. Nd5 Nxd5 3. Nf3 Nf6 4. Ng1 Ng8 5. d4 d5 6. Nf3 Nf6 7. g3 g6 8.
Bg2 Bg7 9. O-O O-O 10. Bf4 c6 11. h3 Ne4 12. c3 Nd7 13. Qc2 Qb6 14. a4 a5 15.
c4 Re8 16. Rac1 e5 17. dxe5 Nxe5 18. Bxe5 Bxe5 19. Nxe5 Rxe5 20. e3 Re8 21.
Rfd1 Be6 22. Rd4 Nf6 23. c5 Qc7 24. Qd1 Qe5 25. Rc3 Ne4 26. Rc1 h5 27. Bxe4
dxe4 28. h4 Bg4 29. Qe1 Bf3 30. Qc3 Qf5 31. Kh2 Bg4 32. Qd2 Re5 33. Rc2 Rxc5
34. Rxc5 Qxc5 35. Rxe4 Be6 36. Rd4 Qb6 37. e4 Re8 38. f3 c5 39. Rd3 Qb4 40. Qf2
b6 41. Qd2 Qxd2+ 42. Rxd2 Kf8 43. Rd6 Rb8 44. Kg2 Ke7 45. Rd2 Bb3 46. Kf2 Bxa4
47. Ke3 Rd8 48. Rh2 c4 49. g4 Rd3+ 50. Kf4 Bd1 51. gxh5 gxh5 52. Rg2 Rxf3+ 53.
Kg5 b5 54. Rg1 Rd3 55. Kf4 Bg4 56. e5 Rd2 57. Rb1 a4 58. Ke3 Rd3+ 0-1

Endresult "Rybka vs FM Meyer 0-4" !!!!
Parent - - By SR (****) [gb] Date 2008-06-09 10:51
The deeper search did not seem to help Rybka at all. And why should it? Deeper search is no doubt an advantage up to quite some dept in equal positions. But why is there any reason to believe that deeper search in difficult or lost positions necessarily is an advantage against humans?

In the first game Rybka allowed black to open the a file. Even worse was the suicidal move d5 and exchange of queens. Something went wrong in the first game. White seem to have managed to cause some difficulties for black, when white went berserk with d5 and Qxd5 leading to a 100% lost endgame with zero prospects. 
Parent - - By Permanent Brain (*****) Date 2008-06-09 13:08

> But why is there any reason to believe that deeper search in difficult or lost positions necessarily is an advantage against humans?


The answer is simple: Because usually, humans do not play perfect.
Parent - - By SR (****) [gb] Date 2008-06-09 13:21 Edited 2008-06-09 13:34
Why does the fact that humans do not play perfect, ensure that the deeper the search the better the result in handicap games? Sorry, but I do not follow your logic.
Imagine a Queen odds game against a poor playing human who always try play the move that looks best from a 4ply perspective. Clearly the most likely way to beat such a weak player is to chose lines that looks good from 4ply perspective, but in fact are rather poor from a +6ply perspective. Is there any reason to believe that a 24ply program (that disregards all 4ply findings) will be any more successful than a 8ply program at Queen odds against such a hypothetical 4ply player?
Parent - - By Permanent Brain (*****) Date 2008-06-09 13:45
Example:

1. Human makes a (very small) tactical mistake.
2. Engine, calculating up to depth n plies, doesn't spot the mistake.
2a. Engine, calculating to depth n+1 plies, recognises the mistake and wins material with a deep combo.

There is always a depth level up to which something deep is not spotted yet, but at the next ply. But if you want, you can make that n+2 in the example, to create a bigger difference (like between a single and an 8-core).

To put it shorter, the smaller the mistake is and therefore, the longer the calculation required to refute it is, the more calculation depth is required from the engine. - That is why the old chess computers were much less dangerous opponents.
Parent - - By SR (****) [gb] Date 2008-06-09 14:54
I think we just have to disagree. Your argument might work for ordinary games, but if you read my message (again) you will notice I am talking about handicap games.
In such games your argument break down. In your example you assume that the human make a small mistake that the engine fail to spot
at n plies and that the engine spot the mistake at n+1 plies.

But since its a handicap game its much more likely that the engine fail to spot a win for the human at n-plies, but see the win at n+1 plies. So instead of playing a natural and strong move with the best practical chances the engine that realise the loss in n+1 plies might play a highly dubious move, while the engine that can only see n plies ahead, will go for the best practical chance.

The strange behavior where Rybka played d5? followed by Qxd5?? in game 1, was probably caused by making decisions based on to deep search.
Parent - - By Permanent Brain (*****) Date 2008-06-09 15:05 Edited 2008-06-09 15:07
I hope you don't want to tell us that an engine plays better with smaller depths? :-D

My argument applies to ALL man versus machine chess games. Humans can make big or small mistakes, no matter if they are up a piece, have the better position, a balanced position, a worse position, or if they are down a piece.

Why did you ask a question when you already are convinced of a specific answer (and won't accept anything else)?

Thanks for wasting my time. This is one of the days where I wonder what message boards are for.

P.S. bye
Parent - - By SR (****) [gb] Date 2008-06-09 15:31
I did not tell you that engines plays better with smaller depth, though sometimes (though rarely) they certainly do.

My original question was
why is there any reason to believe that deeper search in difficult or lost positions necessarily is an advantage against humans?

Your argument definitely contain some truth, and apply to many cases. Unfortunately, your argument fails in certain lost positions, and I think this main flaw is that the deeper the search the more hopeless the situation for the engine (since its position is objectively lost). With very deep search all lines look completely hopeless and from the engines perspective playing one move or another does not make a big difference.

You wrote Thanks for wasting my time

Not sure why asking a genuine question can waste your time. 
Parent - By Vasik Rajlich (Silver) [hu] Date 2008-06-10 19:47
Yes, I think that these comments are quite correct.

We've already seen it before. For instance, look at game 6 from the first match vs Ehlvest. Rybka with white had a reasonably decent opening and could have posed some serious problems with f2-f4-f5. Instead, she shuffled back and forth and Ehlvest consolidated his extra pawn and nearly won.

This got somewhat overlooked by spectators, since Rybka won that match anyway.

Vas
Parent - - By Banned for Life (Gold) Date 2008-06-09 15:12
Your argument that Rybka should have a "swindle" mode (as RH called it) for play against humans in odds games is a good one. Its not clear though that having a deeper depth search would hurt this ability. In particular, a person's ability to see tactics isn't really directly tied to search depth (although this may be the best approximation currently available).

That said, the simplest attribution for Rybka's mistakes in this game is that Larry still has a ways to go in teaching Rybka how to play when she is behind.

Regards,
Alan
Parent - - By lkaufman (*****) Date 2008-06-09 15:30
That is quite true. My task is to optimize Rybka for rating-list type play, meaning even games with a cross section of openings. Any changes I make that help handicap play must at least not hurt normal play to remain in the program. Also, I don't have any test methods now for play in lost positions. So, for example, Rybka tries to avoid exchanges when behind, but I would probably double the incentive to avoid such trades if it didn't hurt in normal play. Rybka plays much more strongly at handicaps like pawn and X moves, where avoiding trades is not so important. But the biggest problem is not eval but that the search assumes that the opponent is also Rybka.
Parent - - By Banned for Life (Gold) Date 2008-06-09 17:09
I understand teaching Rybka how to play in lost positions is probably not the best use of your time, but...

- It should be pretty easy to kick in a new set of feature weights when the eval gets bad (maybe -1.5 or so),
- You could tune these weights in much the same way you tune the normal weights, by playing thousands of quick handicap games against a weaker engine (maybe Crafty at knight odds).

In a real game, there might be a problem with having to keep two sets of books (normal eval and lost game eval) simultaneously. It might be possible though to make a smooth transition between the two sets of weights.

Regards,
Alan
Parent - - By lkaufman (*****) Date 2008-06-09 21:09
Both Vas and I are believers in "smooth transitions". Yes, it would be possible, but a major project I think.
Parent - - By Vasik Rajlich (Silver) [hu] Date 2008-06-10 19:49
I'd like to see Rybka evaluate very imbalanced positions properly using the same framework she uses to evaluate balanced positions. This would be another way to validate that framework - something is wrong if a completely different approach is needed.

This probably doesn't hold true for the search aspect of this problem, though.

Vas
Parent - - By Banned for Life (Gold) Date 2008-06-10 22:15
I can't follow your reasoning here. The lost position evaluations are ranked by how many moves to additional loss of material or distance to mate, or some other metric not related to the probability of pulling out a draw. Seems like it would be better to be emphasizing features that might lead to a position more likely to result in perpetual check or a fortress.

Alan
Parent - By Vasik Rajlich (Silver) [hu] Date 2008-06-12 13:11
The static evaluator should compare permanent factors like material with dynamic ones like initiative, development, etc, and take into account some sort of evaluation uncertainty.

For example, two pawns up with all pieces on the board is likely to be less certain and get a lower score than two pawns up in a knight endgame.

I suspect that properly tuning this type of behavior on positions encountered during the course of normal games should also lead to correct behavior in positions from knight-odds games, at least in theory. In practice, correctly handling positions from knight-odds games won't have much impact on normal play and this could give rise to some systematic problems.

Vas
Parent - - By lkaufman (*****) Date 2008-06-11 02:24
The basic problem is that when the game is roughly balanced, it is reasonable to assume you are playing yourself, which Rybka does, as do most grandmasters once they get past the opening theory part of the game. When I'm playing an opponent of my own level in a normal game, I don't think about what he might or might not see, I just analyze the position as if I'm playing against myself. But when you are down a lot of material without comp, either due to handicap or just to the course of the game, you should assume that your opponent will not see everything you see, because if he does you will surely lose. I do this automatically when I give handicaps. So perhaps when the score is sufficiently bad, Rybka should alter her search gradually to look more deeply at her own options and less deeply for the opponent (the optimism/ pessimism settings I think). I suppose the opposite applies when we are winning. In other words, those parameters should automatically vary with the score, I think. If I had thought this thru before the match, I would have wanted to set optimism high, although I believe it would not have altered the result. As for the eval, I suppose the tradeoff between static and dynamic features could also vary automatically with the score, but this is probably more complicated as features are not simply dynamic or static, many are in between.
Parent - - By JohnL (***) Date 2008-06-11 20:00
As you mention, when selecting openings opponent modeling is often used but not in the middle- or end- game.

But why it is so important in openings and not in other phases?  
I guess the main reason is not relevance but that its too complicated to do outside prepared openings, and it is often "good enough" to avoid it.
Still, I would say it is a useful skill that is worth developing both for players and chess SW.

In a recent game I successfully applied opponent modeling. I met a 150 ELO weaker player and had two candidate moves:
1. Keeping a small advantage
2. Getting a big/winning advantage if not the opponent saw a tricky defence which would lead to an unclear/equal position

I chose 2 judging he wouldn't see it and the small gamble succeeded. But of course this is no proof, perhaps I only saved time due to a shorter game :-)

Another aspect of this, is meeting a stronger opponent equivalent to having a worse position? This would mean that you should play optimistically in that case.
And for Rybka this would mean it should play a bit "pessimistic", while it always plays weaker opponents.
Parent - - By lkaufman (*****) Date 2008-06-11 21:39
Yes, you make a good point; optimism/pessimism can be based on the relative strength as well as the situation on the board. I'm sure I do the same when I am paired down substantially. Yes, it would probably help Rybka on the rating lists and against humans to be a bit pessimistic, although I'm not sure because draws are a complicating factor.
Parent - By Vasik Rajlich (Silver) [hu] Date 2008-06-12 13:17
Rybka's optimism and pessimism are mild and very simplistic search settings. For a knight-odds match, something far more complicated and extreme would be needed.

Vas
Parent - - By Vasik Rajlich (Silver) [hu] Date 2008-06-12 13:17

>In a recent game I successfully applied opponent modeling. I met a 150 ELO weaker player and had two candidate moves:


1. Keeping a small advantage
2. Getting a big/winning advantage if not the opponent saw a tricky defence which would lead to an unclear/equal position

#1 is always the right way. The way to beat a weaker player is to just let him play.

Vas
Parent - - By lkaufman (*****) Date 2008-06-12 13:29
Due to draws, I am not sure that I would agree with you on this. A small advantage is presumably still within the draw margin, so depending on the nature of the advantages etc. the chance of victory over a weaker opponent may be just as high in the unclear position with the bonus of a win if he makes an error. I usually go with #1 myself, but sometimes that means going to a drawish endgame where the defense is not so difficult.
Parent - - By Vasik Rajlich (Silver) [hu] Date 2008-06-15 10:28
This is probably related to the strength of the two players. If a 2400 player plays a 2200 player, a small advantage is almost always the best way to go. If a 3000 player plays a 2800 player, then maybe a certain amount of complexity starts to become a good thing.

Vas
Parent - - By Akorps (**) [us] Date 2008-06-17 07:32
In theory, the number of unique best moves in different parts of the search tree might be a complexity measure worth considering, but as I understand it this isn't feasible currently, the way chess engines are programmed (except when it is possible to look in the tablebases)
Parent - - By Vasik Rajlich (Silver) [hu] Date 2008-06-18 09:32
Actually sometimes the opponent having choices is exactly what you want. It's not clear at all how this could be handled.

Vas
Parent - - By Akorps (**) [us] Date 2008-06-18 10:03
Yeah, exactly. Once you have the "complexity" measure you can start fooling around with the values to see what happens. Against humans you might want to give it a lot of weight, against other chess engines you might want to minimize that kind of "complexity" (so tactical engines can't use their strongest assets, but have to fight it out positionally, where they are weaker).

The measure based on lots of unique best moves basically finds positions that require a lot of exact calculation of variations, where a human is more likely to make a mistake, but a computer can probably find the way easily.

I remember even Mikhail Tal made a mistake when calculating a 26 move variation (bishop on the wrong square or something)

In "positional" positions there tend to be a lot of moves close together in value, in tactical positions there is often one clearly best move.
Parent - - By Vasik Rajlich (Silver) [hu] Date 2008-06-22 08:48
Mostly I agree with this. A few comments:

1) Sometimes, the best way to beat humans is (also) with quiet moves. Those forced moves often turn out to not be so hard to find.
2) Whatever the best way to play against humans is, there won't be any good way to test it.
3) The top priority for Rybka is just to play good objective chess. She is intended more an analysis tool than a playing tool, and besides, good objective play also works fairly well in real games (at least, when there are no huge odds).

Vas
Parent - By Uly (Gold) [mx] Date 2008-06-22 09:42

> 2) Whatever the best way to play against humans is, there won't be any good way to test it.


And what works perfectly against one human may not work at all for another.
Parent - By JohnL (***) Date 2008-06-22 16:46
2) Whatever the best way to play against humans is, there won't be any good way to test it.

Well, there are databases with millions of human games. In principle you need a number of parameters like for example "depth of tactical mistake" and then scan the database and fit the parameters with ELO-levels.
Personally I think this is the most interesting aspect and use of chess comps; simulating human play at different levels and styles as training/analysis partner or even assessing your games and weaknesses.
And sometime we want to see you refining the study of the former world champions games that was done with Crafty :-)

3) The top priority for Rybka is just to play good objective chess. She is intended more an analysis tool than a playing tool, and besides, good objective play also works fairly well in real games (at least, when there are no huge odds).

I understand what you mean, but I don't like the terms "objective" and "truth" in chess, because then you pretend there are no subjects which is the basic point of the game :-). I would prefer saying that Rybka has a very high ELO and is optimized for self-play.
Parent - By JohnL (***) Date 2008-06-22 11:35
Regardless of playing strength, it could be generalized to weighted winning percentages of opponent choices.

In my example above, assume following winning percentages
- The small advantage 75%
- The big/winning advantage 90%
- The unclear/equal position 65% (due to stronger player(+) and a bit into the game (-) )

Further assume that the opponent had 20% chance to see the defense.
This gives winning percentage 75% for the "minimax" alternative and 0.2*0.65 + 0.8*0.9 = 85% for the active opponent modeling alternative.

Of course it all depends on the correct estimations of probabilities. The practical player hardly uses mathematical calculations but rather some general intuition of how to create problems for his opponent.

Even as an analysis tool, I would think it is interesting to have the comp suggesting "difficult" moves, because this is very relevant in human games.
Parent - - By Akorps (**) [us] Date 2008-06-10 05:54
One thing that might help Rybka when playing lost positions is a "most difficult move" parameter (generally when there is a *unique* winning
move that the opponent has to find. This comes from John Nunn's work with the tablebases). When playing a human, Rybka might prefer
lines where the opponent has to find a lot of unique winning moves in order to score the point.

I suspect that when playing another engine, the opposite might be true, Rybka might prefer positions where the engine has a lot of
moves of roughly equal value to choose from :-)

So you would set the parameter high for play against humans, the opposite for play against other engines, to make them think longer.
Parent - - By lkaufman (*****) Date 2008-06-10 16:48
If you aim for lines where there is only one winning move, in a handicap game this will mean making lots of trades (where only the recapture still wins), so it would backfire. Maybe with a careful definition the idea might have merit; I'm not sure how difficult it is to identify which moves are truly difficult!
Parent - By Akorps (**) [us] Date 2008-06-11 03:52
That's a good point. Its quite easy to "see" many interesting and unique "most difficult" winning moves when using the tablebases, but quite difficult to program such knowledge into a chess engine. Captures by equal or lower valued pieces ought to be excluded, that seems to be condition #1. But I don't know how to find such most difficult moves without using the tablebases. Often I find a strange-looking passive sacrifice is the only move to win: after some contemplation I can "see" the reason why, but it might be quite easy for a human opponent to overlook such moves during a game. I collected several thousand such moves into a Bookup file for tactical training after I became interested in the topic (all 6 pieces or less, since I used the 6-piece Nalimov tablebases).

Possibly checks should be excluded also, as condition #2. I don't think any of the positions I collected start with check, or capture by an equal or lower valued piece. Sacrifices should probably be included though, as sacrifices are both harder to "see", and harder for a human to calculate correctly. Quiet moves that lead to forced mate are an example of a type of move that probably should be included (I made a large collection of that type of move once). Intermediate moves are another good example.

When I'm using a chess engine, looking at the top 2 lines, and only one line is winning, that gives some examples of apparently unique winning moves, in positions outside the tablebases.
Parent - - By Akorps (**) [us] Date 2008-06-13 22:55
I've been going through my collection of positions from the Nalimov tablebases where the winning side has only one unique move that wins. Moves where an equal or lower value piece makes a capture should not be counted, as you point out, but checks should probably be allowed.

Positions where it is necessary to find such unique winning moves require exact calculation and hence a human is more likely to make an error or not to see some subtlety that may arise when calculating long variations. Positions where lots of such unique winning moves occur in the tree of variations tend to be quite tactical and hence computers should have maximal advantage over humans in such positions, due to the advantages computers have in calculating variations.

While setting such a parameter high against humans might be valuable, setting it low might give the better positional engine like Rybka an advantage over a highly tactical engine which is weaker positionally. So the parameter might be valuable against both humans and engines, but with opposite settings :-)
Parent - - By lkaufman (*****) Date 2008-06-14 03:56
What you observe in 5 or 6 man endgames may not typically apply in middlegames or complex endgames. Maybe when there is only one winning move, it is uaually obvious to a decent chessplayer because most tactics are fairly simple. So I'm not sure that a simple rule like this one would help against humans.
Parent - - By Akorps (**) [us] Date 2008-06-15 13:47
I spent a lot of time playing out maximal length wins against the tablebases when they first came out (Ken Thompson gave a talk in Berkeley that I was lucky enough to attend back in 1985 or so). Its quite difficult for a human to win if the computer keeps playing the "most difficult" move. Delaying exchanges of pieces as long as possible is one of the common themes that runs through the "most difficult" moves, also delaying the advance of passed pawns. Both those types of moves "reduce" the position to a simpler class of positions in some sense, where the winning side might be closer to the goal, so all else being equal the losing side would seem to want to delay such reductions as long as possible. There are more complex themes of course, like seeking fortresses, those 2 themes just seemed to be the most common themes the losing side should look for in order to find the "most difficult" moves. Exchanging pawns but not pieces was of course a theme we all were taught early in our chess careers, another example of a theme everyone knows when playing the losing side.

Morphy kept trying to build up pressure in his later knight odds games, avoiding simplification. Some of those games were quite interesting.

The ratio of the value of material left for each side might help reflect the need for the losing side to avoid exchanges of pieces. Maybe having a variable for material left excluding pawns might be useful, since the losing side wants to avoid exchange of one type of material but seek exchange of the other type (namely pawns).
Parent - - By lkaufman (*****) Date 2008-06-15 21:58
We already have code in Rybka that deters piece exchanges when losing, but it does not go as far as using the ratio would go. It also distinguishes based on which piece type is exchanged. As usual, when I try to make the deterrent as strong as I think it should be, our self-test results get worse. If I routinely tested openings where one side was already ahead in material, the results might be different.
Up Topic Rybka Support & Discussion / Rybka Discussion / Knight Odds Match with FM
1 2 3 Previous Next  

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill