The paper introduces a new proof-number (pn) search algorithm, called pds-pn. It is a two-level search, which performs at the first level a depth-first proof-number and disproof-number search (pds), and at the second level a best-first pn search. First, we thoroughly investigate four established algorithms in the domain of lines of action endgame positions: pn, pn2, pds and aß search. It turns out that pn2 and pds are best in solving hard problems when measured by the number of solutions and the solution time. However, each of those two has a practical disadvantage: pn2 is restricted by the working memory, and pds is relatively slow in searching. Then we formulate our new algorithm by selectively using the power of each one: the two-level nature and the depth-first traversal, respectively. Experiments reveal that pds-pn is competitive with pds in terms of speed and with pn2 since it is not restricted in working memory.
Winands, M. H. M., Uiterwijk, J. W. H. M., & van den Herik, H. J. (2003). PDS-PN: A New Proof-Number Search Algorithm: Application to Lines of Action. Lecture Notes in Computer Science, 2883, 61-74. https://doi.org/10.1007/978-3-540-40031-8_5