Presentation is loading. Please wait.

Presentation is loading. Please wait.

Df-pn: Depth-first Proof Number Search

Similar presentations


Presentation on theme: "Df-pn: Depth-first Proof Number Search"— Presentation transcript:

1 Df-pn: Depth-first Proof Number Search
Studied by Ayumu Nagai Surveryed by Akihiro Kishimoto

2 Outline of Presentation
Motivations Proof Number Search Seo’s Algorithm Df-pn Conclusions

3 Motivations Why do we use depth-first search?
Dfs uses less memory than bfs in general O(d) v.s. O(b^d) Has low overhead to manage nodes C.f. A* needs priority queue, IDA* just needs stack Can behave like bfs with TT C.f. IDA* and A*, SSS* and MT-SSS*, Seo and AO*

4 Why df-pn? Proof Number Search: best-first search for AND/OR trees
Df-pn: depth-first search Same behavior as pn-search Less expansion of interior nodes Generally better performance than pn-search

5 Proof-Number Search(1/3): Proof Numbers
Pn- search [Allis et.al.:94] Proof numbers Minimum number of leaf nodes to be expanded to prove Better to select the child with small proof number for proving trees Example of proof numbers 1 3 1 Leaf nodes 1 1 1 1 pn OR node pn AND node

6 Proof Number Search(2/3): Disproof Numbers
Pn- search [Allis et.al.:94] Disproof numbers Minimum number of leaf nodes to be expanded to disprove Better to select the child with small disproof number for disproving trees Example of disproof numbers 1 3 1 1 1 1 1 dn OR node dn AND node

7 Proof-Number Search (3/3) Algorithm
Traverse from the root to a leaf by choosing Node with smallest (dis)proof number at (AND)OR node Expand a leaf node Update (Backup) pn & dn to the root Continue 1-3 until proven or disproven 2,2 3,1 2,1 1,1 1,1 1,1 1,1 1,2 pn,dn OR node pn,dn AND node

8 Seo’s algorithm(1/4) Proof number as a threshold Transposition table
Multiple Iterative Deepening

9 Seo’s algorithm(2/4): Depth-first search
Threshold for proof number Iterative deepening Behavior of Seo’s algorithm PN=1 PN=2 PN=3

10 Seo’s algorithm(3/4): Transposition table
Iterative deepening Re-expansion of the nodes Save proof numbers of the nodes previously expanded in TT

11 Seo’s algorithm(4/4): Multiple iterative deepening
Overestimation of proof numbers at AND nodes When an OR node is proved Iterative deepening at all OR nodes Behavior of Multiple Iterative Deepening PN=13 12 5 7 Proved PN=8 PN=9 AND node OR node PN=10

12 Sketch of Seo’s Algorithm
Node Selection: OR node: c1 AND node: as you like Updating Threshold: OR: PN = min(pn(c2) + 1, PN) AND: PN = PN + pn (c1) – (pn(c2) + … + pn(ck)) Returning Condition: PN <= pn(n) Others: Iterative deepening at OR node as far as PN > pn(n) Notations: n: node searching pn(n): proof number at n c1,…,ck: children of n where pn(c1)<=…<=pn(ck) PN: threshold

13 Df-pn If you understand Seo’s algorithm, df-pn is easy to understand!
has two thresholds for proof & disproof numbers C.f. Seo had only one threshold Iterative deepening at both OR and AND nodes Need to avoid overestimations of proof and disproof numbers C.f. Seo avoided only the case of proof numbers

14 Sketch of df-pn Notations: n: node searching Node Selection: Always c1
Updating Threshold: OR: PN’= min(pn(c2) + 1, PN) DN’= DN – (dn(c2) + … + dn(ck)) AND: PN’= PN – (pn(c2) + … + pn(ck)) DN’= min(dn(c2) + 1, DN) Returning Condition : PN <= pn(n) || DN <= dn(n) Others: Iterative deepening as far as PN > pn(n) && DN > dn(n) Notations: n: node searching pn(n): proof number at n dn(n): disproof number at n c1,…,ck: children of n where pn(c1)<=…<=pn(ck) at OR node n, dn(c1)<=…<=dn(ck) at AND node n PN: threshold of pn DN: threshold of dn

15 Conclusions I believe enhanced AND/OR tree search algorithms will improve the ability of tsumego solvers!

16 References Masahiro Seo: The C* Algorithm for AND/OR Tree Search and its Application to a Tsume-Shogi Program, M.Sc. Thesis, Department of Information Science, University of Tokyo, 1995 Ayumu Nagai and Hiroshi Imai: Proof for the Equivalence Between Some Best-First Algorithms and Depth-First Algorithms for AND/OR Trees, KOREA-JAPAN Joint Workshop on Algorithms and Computation,pp , 1999 Ayumu Nagai: Df-pn Algorithm for Searching AND/OR Trees and its Applications, Ph.D. Thesis, Department of Computing Science, University of Tokyo, 2002


Download ppt "Df-pn: Depth-first Proof Number Search"

Similar presentations


Ads by Google