This action might not be possible to undo. Are you sure you want to continue?

Welcome to Scribd! Start your free trial and access books, documents and more.Find out more

Studied by Ayumu Nagai Surveryed by Akihiro Kishimoto

Outline of Presentation

• • • • • Motivations Proof Number Search Seo’s Algorithm Df-pn Conclusions

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*

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

**Proof-Number Search(1/3): Proof Numbers
**

• Pn- search [Allis et.al.:94]

●

**• Example of proof numbers
**

1 3 1

Proof numbers

●

Minimum number of leaf nodes to be expanded to prove

●

Better to select the child with small proof number for proving trees

1

1

1 pn

1

Leaf nodes

pn OR node

AND node

**Proof Number Search(2/3): Disproof Numbers
**

• Pn- search [Allis et.al.:94]

●

**• Example of disproof numbers
**

1

Disproof numbers

●

Minimum number of leaf nodes to be expanded to disprove

3

1

●

Better to select the child with small disproof number for disproving trees

1

1

1 dn

1 AND node

dn OR node

**Proof-Number Search (3/3) Algorithm
**

1. Traverse from the root to a leaf by choosing

– Node with smallest (dis)proof number at (AND)OR node

2,2 3,1 2,1

2. 3. 4.

Expand a leaf node Update (Backup) pn & dn to the root Continue 1-3 until proven or disproven

1,1

1,1

1,1

1,1

1,2

pn,dn OR node pn,dn AND node

Seo’s algorithm(1/4)

• Proof number as a threshold • Transposition table • Multiple Iterative Deepening

**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

**Seo’s algorithm(3/4): Transposition table
**

• Iterative deepening

●

Re-expansion of the nodes

Save proof numbers of the nodes previously expanded in TT

**Seo’s algorithm(4/4): Multiple iterative deepening
**

• Overestimation of proof numbers at AND nodes

●

When an OR node is proved

**Behavior of Multiple Iterative Deepening PN=13 12
**

5 Proved PN=8 PN=9 PN=10 7

**Iterative deepening at all OR nodes
**

AND node OR node

**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

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

•

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)

Sketch of df-pn

●

• 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

Conclusions

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

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. 163-170, 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

- A Relational Model of Data for Large Shared Data Banks
- Comparing Performance of Solid State Devices and Mechanical Disks
- User’s Guide to Securing External Devices for Telework and Remote Access
- Guide to Enterprise Telework and Remote Access Security (Draft)
- Unraveling A Well Woven Solo
- Reconsidering Physical Key Secrecy
- Attacking and defending the McEliece cryptosystem
- Television's Performance on Election Night 2000
- The MD6 Hash Function
- The Skein Hash Function Family
- When Good Instructions Go Bad
- The Geometry of Innocent Flesh on the Bone
- Designing and implementing malicious hardware
- Catalan's Conjecture
- Experiences Threat Modeling at Microsoft
- Cross-Cultural Analysis of Students with Exceptional Talent in Mathematical Problem Solving
- Cross-Site Request Forgeries
- On the potential for extinction by Muller's Ratchet in Caenorhabditis elegans
- The ABC-conjecture
- Digital Computational Imaging
- Review of the Safety of LHC Collisions
- Multi-hop whistler-mode ELF/VLF signals and triggered emissions excited by the HAARP HF heater
- google ogb article29 response
- Opinie%20WP29%20zoekmachines
- Google response Working Party 06 2007

- A syllabus
- Test1 Uncut
- More Gamemaker Code
- Apps_Ch15.pdf
- Big-O Algorithm Complexity Cheat Sheet
- A2
- Benjamin2008 English
- Tree
- renungan 2
- Lecture 04
- Software Testing
- Microsoft Excel as a 3D Game Engine
- Design And Analysis of Algorithm
- First Do While Loop
- Www Elitmuszone Com Elitmus Functions[2]
- Www Elitmuszone Com Elitmus Functions[1]
- A New Offset Algorithm for Closed 2D Lines With Islands
- Solution2012-08-15-V3M
- Solution2012-09-10-V3M
- Mock Exam
- T5-4up
- W01L01 - Numerical Computing
- Datamine Studio 3 Commands Process Reference
- ZBLL Algorithms v2.57
- Layouts in Java
- DP
- Angielski NP-Complete Problems
- DataStructure using c++.doc
- GE 120 - Machine Exercise No.2 (1)
- Introduction to SAS

Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

We've moved you to where you read on your other device.

Get the full title to continue

Get the full title to continue listening from where you left off, or restart the preview.

scribd