Enter Your Reply The Comment You're Replying To H. G. Muller wrote on Tue, May 19, 2009 10:55 AM UTC:The techniques you discuss have been tried, but never met with much success in Chess. Part of the reason is hat it woud require a lot of knowledge to com up with positions to strive for, which could be realistically obtained. The only exception is end-game tablebases. There retrograde analysis is used to work back from checkmate positions or winning conversions 9promotions, or the capture of a piece) to create the end-game table. But this is only feasible because the checkmates and conversion are a well-defined goal, so that positions fitting the requirements can easily be exhaustively generated. The search algorithm that currently works best in Chess is recursive nul-move pruning. There you basicaly explore for what one side can do in 1, 2 3, ... moves when you freeze the pieces of the opponent. (Making him do only null moves.) This is a dumb but thourough way to generate 'ideas', i.e. positions that might be reachable from the current position and achieve some favorable objective according to the evaluation function. If this is not possible (to the specified depth) there is no reason to look any further at this branch, but usualy there are som sequences of moves that cannot be ignored by the opponent. Then it wil search for alternatives for the null moves (starting with the last one, in back-tracking version), while at the same time increasing the search depth. Usually a single null move is replaced by 3 normal ply, to make it less likely that any countermeasure the opponent finds to our 'plan' is merely a delaying tactic. (E.g. if on our third ply we could capture his Rook with a Knight that we manouevred in position with our first two ply, we want to be sure that he will not push taking the Rook over the horizon by a counter threat against our Queen that coud be trivially resolved, while his Rook is trapped). Selective search in Chess has always overlooked too many things to be competative. A more sound alternative that does work is reducing the search depth of moves that seem unlikely to be good (so called 'late moves') based on some static creterion, rather than completely pruning their branches. With a fixed reduction the depth to which these branches are searched will continue to improve with deepening at the root, so that if there is a surprise there, you will eventually see it. (While with hard pruning you would be blind to it forever.) Then, if you discover such a reduced move happens to be good after all, you undo the reduction, and search it to full depth. If it is still good at that depth, in becomes the new principal variation. This algorithm can produce significant extra strength if the static criterion for reducing moves is chosen well. (Reducng all non-captures except passer puses seems to be already helpful.) Of course not every game will behave as Chess. But 'late-move reduction' seems a sensible way to reduce the effective branching ratio in games that suffer from a very high branching ration. (Like multiple-move games or games with piece drops.) E.g. in Arimaa moves that move a piece to a position where it could have gone through a shorter path would be good candidates for reduction, or perhaps any move containing backward steps. In drop games you generally reduce drops (as pieces in hand have higher mobility than on the board.) Part of the Arimaa branching factor is of course taken care of by transposition hashing. Edit Form You may not post a new comment, because ItemID AI easy or hard? does not match any item.