Author: Bruce Moreland
Date: 10:59:36 12/01/00
Go up one level in this thread
On December 01, 2000 at 12:46:47, Scott Gasch wrote: >Hi all, > >I've been reading an ICCA article about Interior Node Recognizers and thinking >about adding them to my search. There are examples for KBBvK and KBNvK in this >article. The "score" that the recognizers return for a position are based on >the material balance, a bonus for having a recognized win, the distance between >the kings and the distance between the lone king and the (correct) corner of the >board. The bonus for winning is only 2.5 pawns, if I understand this article >correctly? Why is this so low -- if it's a recognized winning position >shouldn't the bonus be enough to make it stand out among other configurations >that could occur in the search tree? Probably the idea is to avoid dumb looking transitions. If you have KQBN vs K, you don't want to sacrifice the queen. >Say I wanted to implement a KBvKB, KNvKN or KBvKN recognizer... these are draws >unless side to move can mate with one move or unless a bad opponent moves into a >losing configuration. So would the way to do this be to recognize the >configurations where side to move has mate in 1 and return MATE-1 score for >these otherwise return draw? I read the article about recognizers but it's been a while so I don't remember what it said. In my opinion there are two basic ways you can deal with special case endings. 1) You can return an exact score immediately, regardless of where the position is found. 2) You can return an exact score, but only at the tips. With KB vs K, I would do the first way, since that's a draw. With KB vs KB, I would do the second way, because that's close enough to a draw that you can score it a draw at the tips. If I had an endgame database for it, of course I would use the first case on this one, too. If I didn't have an endgame database for it, and it was a more common case, I might be more concerned about dealing with the impractical case where one side has mate on the move. That would be easy enough to do. > >[D]KB6/8/k7/1b6/8/8/8/8 b - - 0 1 Your diagram didn't show up, so I tried to fix the FEN. I don't know if it is going to show up. >Is it worth implementing these types of things when there are endgame databases >available? Does anyone else do these and, if so, what positions do you >recognize? A good recognizer for won KP*vKP* endgames would be invaluable but >difficult to implement. I see some of this type of code in crafty's eval -- was >the overhead of recognizing at every search node too high? Why is this in the >eval as opposed to in search? Once you get an efficient dispatcher that lets you recognize special cases at low or zero cost, you can do anything, it's just a matter of what's practical. The reason things are in eval instead of search is that search tends to be unable to resolve them. Otherwise everything would be in search and writing a chess program would be trivial. I haven't seen the case in Crafty though. >If a dumb opponent bumbles into the mate-in-1 KBvKB position from a series of >drawn positions, how can search see and react to this given that, as described >in the article I read, there is no move associated with the score returned by >the recognizer. If this happens at an interior search node won't the last move >be missing from the PV? How will it ever see checkmate if we return MATE-1 and >cut off the search at the position above? Does it just wait until this is the >current board position and let the search find the one winning move then? If you return 0 at the tips in this case, you don't have this problem as long as you do a search of more than a ply or two. If you return 0 in the tree, you could mess up. But I hope you are agonizing over this in a metaphorical sense, rather than a specific practical sense. Because this doesn't come up very often (it can't come up on ICC at all, even if there is a mate in one, KB vs KB is immediately adjudicated drawn), and endgame databases will cover it if it does. And if it does come up, and you get mated, you'll have a story you can tell for ten years, so it's probably worth it anyway. bruce
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.