CMPUT%20651:%20Front%20to%20Front%20Perimeter%20Search%20 - PowerPoint PPT Presentation

About This Presentation
Title:

CMPUT%20651:%20Front%20to%20Front%20Perimeter%20Search%20

Description:

CMPUT 651: Front to Front Perimeter Search & Pattern Databases. Johnny Huynh. Outline ... Find shortest path a perimeter state. Use a heuristic to find a ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 22
Provided by: Huy9
Category:

less

Transcript and Presenter's Notes

Title: CMPUT%20651:%20Front%20to%20Front%20Perimeter%20Search%20


1
CMPUT 651Front to Front Perimeter Search
Pattern Databases
  • Johnny Huynh

2
Outline
  • Introduction to FFPS
  • Problems
  • Improving FFPS itself
  • Perimeters and PDBs
  • Results
  • Conclusion

3
Front-to-Front Perimeter Search (FFPS)
  • Build a perimeter around goal
  • Find shortest path a perimeter state
  • Use a heuristic to find a perimeter state
  • Heuristic can be a pattern database (PDB)

P
S
G
4
Problems with FFPS
  • Taking the MIN of estimates
  • Checking for P Perimeter States
  • Each node expansion requires P estimates
  • Perimeter states and PDBs requires memory

P
S
G
5
Problems with FFPS
  • Taking the MIN of estimates
  • Checking for P Perimeter States
  • Each node expansion requires P estimates
  • Perimeter states and PDBs requires memory

P
S
G
6
Improving FFPSReducing Perimeter Checks
  • given a perimeter state, p,
  • if h(p) 0
  • then state, s, needs to be checked only when
  • h(s) 0.
  • In the 9-puzzle (2x5), reduced number of goal
    comparisons by 92.5

7
Problems with FFPS
  • Taking the MIN of estimates
  • Checking for P Perimeter States
  • Each node expansion requires P estimates
  • Perimeter states and PDBs requires memory

P
S
G
8
Improving FFPSReducing Heuristic Evaluations
  • Fraction of Node expansion time required to
    evaluate heuristic determines speedup.
  • Dillenburg 93

fraction Optimal Radius Speedup
0.01 6 4.6
0.02 5 3.3
0.05 4 2.2
0.1 3 1.6
0.2 2 1.2
0.3 1 1.1
9
Improving FFPSReducing Heuristic Evaluations
  • If heuristic is monotonically non-decreasing.
  • Estimate distance to all perimeter states
  • Decrease estimate by edge cost
  • Re-compute only the minimum estimates

10
Improving FFPSReducing Heuristic Evaluations
Radius Total PDB Lookups Reduced PDB Lookups
1 9,910 427 95.7
2 743,432 46,175 93.8
3 1,556,360 129,770 91.7
4 2,615,490 256,375 90.2
5 3,644,070 405,560 88.9
6 1,529,750 168,845 88.9
11
Problems with FFPS
  • Taking the MIN of estimates
  • Checking for P Perimeter States
  • Each node expansion requires P estimates
  • Perimeter states and PDBs requires memory

P
S
G
12
Memory for Perimeter or PDB?
  • Distance to each P estimated by a PDB
  • Fixing number of states in memory,
  • How many Perimeter states?
  • How many PDB entries?
  • P P PDB c
  • Must remember that PDB determined by level of
    abstraction

13
Initial (Poor) Results
14
Initial (Poor) Results
15
Mixing Levels of Abstraction
  • c P P PDB
  • What if P gt PDB?
  • Each Perimeters PDB doesnt have to be the same
  • c P ?(Pi PDBi) , Pi ? P , PDBi ? PDB

Abstraction PDBi
P0 011234567 180k
P1 011223456 90k
P2 011123456 60k
P2 011122345 30k
16
Mixing Levels of Abstraction
Averages Same Level of Abstraction (PDB 90k) Different Levels of Abstraction (avg PDB 90k)
Abstraction0 Look-ups 170 21
Abstraction1 Look-ups 144 156
Abstraction2 Look-ups 109 239
Abstraction3 Look-ups 133 250
Nodes Expanded 56.2 64.5
  • 8-puzzle with 8 perimeter nodes and 360K states
    in memory

17
Combining Perimeter PDBs
  • If each PDB uses same abstraction, then will
    look up the same key in each PDB.
  • h(s) min PDB1 F(s) PDBN F(s)
  • Create one PDB with the same keys, and save only
    the MIN from each perimeter PDB.
  • h(s) PDBcF(s)
  • Reduce memory from
  • P P PDB to P PDB

18
Combining Perimeter PDBs
19
Combining Perimeter PDBs
20
10-pancake results
Radius Nodes Expanded Elapsed Time (s)
0 69565 12.664
1 53675 9.936
2 37751 6.994
3 24152 4.476
4 12822 2.485
5 5290 1.051
21
Conclusion
  • FFPS performance affected by
  • Number of goal comparisons
  • Number of heuristic evaluations (PDB lookups)
  • FFPS Perimeter vs PDB
  • Without combining PDBs, radius should be kept
    small.
  • Combining PDBs, memory should be allocated for
    radius (up to a certain point?)

22
Questions?
Write a Comment
User Comments (0)
About PowerShow.com