Foundations of Artificial Intelligence
- 8. State-Space Search: Data Structures for Search Algorithms
Malte Helmert and Gabriele R¨
- ger
University of Basel
Foundations of Artificial Intelligence 8. State-Space Search: Data - - PowerPoint PPT Presentation
Foundations of Artificial Intelligence 8. State-Space Search: Data Structures for Search Algorithms Malte Helmert and Gabriele R oger University of Basel March 13, 2017 Introduction Search Nodes Open Lists Closed Lists Summary
University of Basel
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
common operations must be fast
bonus materials (Burns et al. paper)
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
3, 3, 1
Introduction Search Nodes Open Lists Closed Lists Summary
3, 3, 1 2, 2, 0 3, 2, 0 3, 1, 0
Introduction Search Nodes Open Lists Closed Lists Summary
3, 3, 1 2, 2, 0 3, 2, 0 3, 3, 1 3, 1, 0
Introduction Search Nodes Open Lists Closed Lists Summary
3, 3, 1 2, 2, 0 3, 2, 1 3, 3, 1 3, 2, 0 3, 3, 1 3, 1, 0
Introduction Search Nodes Open Lists Closed Lists Summary
3, 3, 1 2, 2, 0 3, 2, 1 3, 3, 1 3, 2, 0 3, 3, 1 2, 2, 0 3, 2, 0 3, 1, 0 3, 1, 0
Introduction Search Nodes Open Lists Closed Lists Summary
3, 3, 1 2, 2, 0 3, 2, 1 3, 3, 1 3, 2, 0 3, 3, 1 2, 2, 0 3, 2, 0 3, 1, 0 3, 1, 0
Introduction Search Nodes Open Lists Closed Lists Summary
nodes of the example search tree
set of leaves of example search tree
inner nodes of a search tree
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
Introduction Search Nodes Open Lists Closed Lists Summary
Do we need explicit nodes at all? Can we use lazy evaluation? Should we manually manage memory? Can we compress information?
Introduction Search Nodes Open Lists Closed Lists Summary
node := new SearchNode node.state := init() node.parent := none node.action := none node.path cost := 0 return node
Introduction Search Nodes Open Lists Closed Lists Summary
node := new SearchNode node.state := state node.parent := parent node.action := action node.path cost := parent.path cost + cost(action) return node
Introduction Search Nodes Open Lists Closed Lists Summary
path := while node.parent = none: path.append(node.action) node := node.parent path.reverse() return path
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary
Introduction Search Nodes Open Lists Closed Lists Summary