Author: Robert Hyatt
Date: 17:19:19 01/22/00
Go up one level in this thread
On January 22, 2000 at 00:46:51, Len Eisner wrote: >On January 22, 2000 at 00:22:07, Robert Hyatt wrote: > >>On January 21, 2000 at 08:34:23, Steve Coladonato wrote: >> >><snip> >> >>> >>>Dave, >>> >>>One last question then. Given that the tablebase position is a mate in 15, how >>>do you know that the one ply search is choosing the correct move? >>> >>>Steve >> >> >>Easy. All the TBs have are mate-in-n, mated-in-n, or draw scores, for every >>possible position for all the pieces. ALl you have to do is generate the >>ply-1 move list, make each one, and probe the TB for the exact score after >>that move. Take the move that leads to the best score. Which will be the >>shortest mate if winning, the longest mate if losing, or any move that draws >>if all the moves lead to draw or loss. >> >>Think of it as a "perfect" evaluation function for positions with 5 or fewer >>total pieces on the board.. > >How do you handle situations where all moves draw, but some moves are much >better than others. > >For example, in the following position, how do you differentiate between f5, >which continues the fight, and Rg3 which hangs the pawn. Both moves draw, but >f5 is clearly better against a human who may not know how to play the position >perfectly. > >[D] 4k3/5r2/8/8/5P2/3K1R2/8/8 w - - 0 1 > >Len In crafty, I have what I call "swindle mode". If no move at the root wins, in a 5 piece ending, and at the root, Crafty has a material advantage, then I take the root move list, delete _any_ move that loses, and then search the rest with no tablebase probes enabled. Which means I try to win on eval, and I won't hang that pawn as you suggest. I do this every time I start a search, so that if the opponent blunders, then I will find a root move that wins and play it instantly.
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.