This paper proposes a new search algorithm, denoted PN*, for AND/OR tree starch. The algorithm is based on proof-number (PN) search, a best-first search algorithm, proposed by Allis et al. [Artificial Intelligence 66 (1) (1994) 91-124], and on Korf's RBFS algorithm [Artificial Intelligence 62 (1) (1993) 41-78]. PN* combines several existing ideas. It transforms a best-first PN-search algorithm into an iterative-deepening depth-first approach. Moreover, it is enhanced by methods such as recursive iterative deepening, dynamic evaluation, efficient successor ordering, and pruning by dependency relations. The resulting algorithm turns out to be highly efficient as witnessed by the experimental results. The PN* algorithm is implemented in a tsume-shogi (Japanese-chess mating-problem) program, and evaluated by testing it on 295 notoriously difficult tsume-shogi problems tone problem has a depth of search of over 1500 plies). The experimental results are compared with those of other programs. The PN* program shows by far the best results, solving all problems but one. Needless to say, it outperforms the best human tsume-shogi problem solvers by far.
- PN* search
- recursive iterative deepening
- depth-first search
- proof-number search
- shogi mating problems