Author: Robert Hyatt
Date: 10:27:05 11/03/98
Go up one level in this thread
On November 02, 1998 at 13:56:35, Ian Osgood wrote: >On October 31, 1998 at 20:49:27, Robert Hyatt wrote: > >>On October 31, 1998 at 19:53:46, Andrew Dados wrote: >> >>> >>>On October 31, 1998 at 16:45:01, Inmann Werner wrote: >>> >>>>I have problems with "nearly mate" positions, where the opponent can do some >>>>checks, so the mate gets beyond the horizon. >>>> >>>>One Example (really interesting!) >>>> >>>> >>>>Position (LCTII CMB 01) >>>> xrxxxxkx >>>> xqxxbpxx >>>> xxxpxxpx >>>> xxpPxxxx >>>> PxNxxxxR >>>> xxPxxQPx >>>> xPxxxPKx >>>> xxxxxxxx >>>> >>>>Best: c4d6/e7d6/f3f6 white wins >>>> >>>>In depth 7 , my program should find the solution, but it does not! The problem >>>>is, that black can make checks to bring the mate beyond the horizon. At each >>>>check, I extend the search for 1 ply, but it is not enough. >>>> >>>>The computer thinks: >>>>C4d6/e7d6/f3f6/b7d5+/g2h2/d6g3+!!/h2g3/d5d3+/g3h2/g8f8/ no h4h8 and black >>>>"stands good" >>>>7 plys plus 3 plys the checks end up at 10!! >>>> >>>>This things really often happen, and I am reall unhappy with it. When I tried to >>>>extend at a check with 2 plys, this problem was solved very early. But the >>>>overall searchdepth goes dramatically down, so the program plays worse. >>>>On an attack, it is nearly always possible for the opponent to slow down the >>>>attack with "senseless", but forced moves. >>>>I thought about something like: >>>>This is a mate in 1, therefore don“t let you disturb with "senseless " moves. >>>>But I have no thought, how to implement such a thing. >>>>Suggestions? >>>> >>>>Werner >>> >>> One solution I find acceptable is whenever you make null move generate all >>>checks at next ply even if null throws you to quiescence... that way null >>>returns 'being mated' score - and based on that you can extend your search >>>deeper...hopefully going beyond all delaying moves. >>> >>>Andrew >> >> >>this is *very* difficult... here is a cute horizon effect game played by >>a crafty "clone" on icc: >> >>[Event "ICC 5 0"] >>[Site "Internet Chess Club"] >>[Date "1998.10.24"] >>[Round "-"] >>[White "Box"] >>[Black "Warp9"] >>[Result "1/2-1/2"] >>[WhiteElo "2923"] >>[BlackElo "2694"] >>[Opening "Sicilian: Nimzovich-Rossolimo attack (without ...d6)"] >>[ECO "B30"] >>[NIC "SI.31"] >>[Time "14:40:09"] >>[TimeControl "300+0"] >> >>1. e4 c5 2. Nf3 Nc6 3. Bb5 d6 4. O-O Bd7 5. c3 Nf6 6. Re1 a6 7. Bf1 Bg4 8. d3 e6 >>9. Nbd2 Be7 10. a3 O-O 11. b4 Nd7 12. Bb2 f5 13. Qb3 fxe4 14. dxe4 Kh8 15. h3 >>Bxf3 16. Nxf3 Rf6 17. Rad1 Qf8 18. Be2 Rg6 19. Bc1 cxb4 20. cxb4 Qf7 21. Be3 Rf8 >>22. b5 axb5 23. Qxb5 Rb8 24. Nd4 Nxd4 25. Bxd4 Ne5 26. Kh1 Qf8 27. Ba7 Rd8 28. >>Qxb7 Rd7 29. Qa6 Rd8 30. Qb5 Bh4 31. Rf1 Bg5 32. a4 Ra8 33. Bb6 Rc8 34. a5 Bf4 >>35. g3 Rh6 36. Qb1 Rxh3+ 37. Kg2 Rh6 38. a6 Nd7 39. a7 Nxb6 40. Ba6 Rc3 41. Qxb6 >>Bxg3 42. Qb8 Rf3 43. a8=Q Kg8 44. fxg3 Rxg3+ 45. Kxg3 Rg6+ 46. Kh2 Rh6+ 47. Kg2 >>Rg6+ 48. Kh3 Rh6+ 49. Kg4 Rg6+ 50. Kh5 Rh6+ 51. Kg5 Rg6+ 52. Kh5 Rh6+ 53. Kg4 >>Rg6+ 54. Kh3 Rh6+ 55. Kg3 Rg6+ 56. Kh2 Rh6+ 57. Kg3 {Game drawn by repetition} >>1/2-1/2 >> >> >>back up to before white plays 44. fxg3... here is the position: >> >> >> +---+---+---+---+---+---+---+---+ >> 8 | Q | Q | | | | *Q| *K| | >> +---+---+---+---+---+---+---+---+ >> 7 | | | | | | | *P| *P| >> +---+---+---+---+---+---+---+---+ >> 6 | B | | | *P| *P| | | *R| >> +---+---+---+---+---+---+---+---+ >> 5 | | | | | | | | | >> +---+---+---+---+---+---+---+---+ >> 4 | | | | | P | | | | >> +---+---+---+---+---+---+---+---+ >> 3 | | | | | | *R| *B| | >> +---+---+---+---+---+---+---+---+ >> 2 | | | | | | P | K | | >> +---+---+---+---+---+---+---+---+ >> 1 | | | | R | | R | | | >> +---+---+---+---+---+---+---+---+ >> a b c d e f g h >> >>The move crafty played was fxg3... and when you look at it, the white king >>is going to have nowhere to go... the f-file is totally sealed off by the >>black queen (after fxg3 rxg3 Kxg3) and the king has to live on the g/h file. >>I first thought crafty should see this as Rg6 Kh4 Rh6 Kg4 Rg6 Kh5 Rh6 Kg6 and >>now we get a repetition. But crafty found something better (horizon-wise) >>by diagonally running the king up the board to h4-g5-h5-g4-h3-g2-h1-g1-h2 and >>notice we have not repeated *yet*. yet we have searched a full 16 plies deep >>counting the checks, plus the original 4 plies starting with fxg3... this is >>a difficult problem to solve. I solved it because I said "f file is closed >>by the king, and I can't advance and capture the rook since it is protected >>at g6/h6 by a pawn, and I have nothing to interpose... It takes crafty >>something like 10 plies, which won't happen in a 5 minute game... Btw Qxf8 >>is a much easier win, but it doesn't win the bishop (and get repetitioned >>either of course)... >> >>So horizon effect is here to stay... just pushed off to extreme depths... > >Greetings, > >Has anyone tried using different search algorithms at root nodes to gain >quiescence? I ask because algorithms such as proof-number search have been >found to be quite efficient at resolving long sequences of forced moves which >occur in games such as Go and suicide chess. > >In positions having long series of checks, as seen in this PV, you would be >proving that the checks are perpetual (and searching for the counter-proof >that you can escape the checks). > >Ian Such search methods can look brilliant *when* there is a forced tactical sequence. But they can look idiotic when there is not... because there are many positions where there are 10 consecutive checks that lead to *nothing* and trying to follow them causes problems by wasting huge amounts of time... Best solution is either better extensions or faster hardware. The hardware I *know* I will get...
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.