Problem Solving by Search Flashcards

1
Q

What does an agent need to search for a solution?

A

A problem consists of five parts: the initial state, a set of actions, a transition model describing the results of those actions, a set of goal states, and an action cost function. The environment of the problem is represented by a state space graph.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the 5 parts of a search problem?

A

A problem consists of five parts: the initial state, a set of actions, a transition model describing the results of those actions, a goal test function, and a path cost function. The environment of the problem is represented by a state space. A path through the state space from the initial state to a goal state is a solution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How do search algorithms treat states and actions?

A

Search algorithms treat states and actions as atomic: they do not consider any internal structure they might possess.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How does a tree search work? How does a graph search work?

A

A general TREE-SEARCH algorithm considers all possible paths to find a solution, whereas a GRAPH-SEARCH algorithm avoids consideration of redundant paths.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How ares each algorithms judged?

A

Search algorithms are judged on the basis of completeness, optimality, time complex- ity, and space complexity. Complexity depends on b, the branching factor in the state space, and d, the depth of the shallowest solution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Name 5 uninformed search methods

A

Breadth first
Uniform cost (Dijkstra’s)
Depth first
Iterative deepending
Bidirectional

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Describe breadth first and depth first searches

A

Breadth-first search expands the shallowest nodes first; it is complete, optimal for unit step costs, but has exponential space complexity.

Depth-first search expands the deepest unexpanded node first. It is neither com- plete nor optimal, but has linear space complexity. Depth-limited search adds a depth bound.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Describe Uniform cost search

A

Uniform-cost search expands the node with lowest path cost, g(n), and is optimal for general step costs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Describe iterative deepening search

A

Iterative deepening search calls depth-first search with increasing depth limits until a goal is found. It is complete, optimal for unit step costs, has time complexity comparable to breadth-first search, and has linear space complexity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Describe bidirectional search

A

Bidirectional search can enormously reduce time complexity, but it is not always applicable and may require too much space.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Name the different informed search methods

A

Best first
Greedy best first
A star
Recursive best first

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Describe the best first search, and the greedy best first. How do they differ?

A

The generic best-first search algorithm selects a node for expansion according to an evaluation function.

Greedy best-first search expands nodes with minimal h(n). It is not optimal but is often efficient.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Describe the A * search algorithm

A

A∗ search expands nodes with minimal f (n) = g(n) + h(n). A∗ is complete and optimal, provided that h(n) is admissible (for TREE-SEARCH) or consistent (for GRAPH-SEARCH). The space complexity of A∗ is still prohibitive.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe the RBFS search algorithm

A

RBFS (recursive best-first search) and SMA∗ (simplified memory-bounded A∗) are robust, optimal search algorithms that use limited amounts of memory; given enough time, they can solve problems that A∗ cannot solve because it runs out of memory.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

How can one change the performance of a heuristic search algorithm?

A

The performance of heuristic search algorithms depends on the quality of the heuristic function. One can sometimes construct good heuristics by relaxing the problem defi- nition, by storing precomputed solution costs for subproblems in a pattern database, or by learning from experience with the problem class.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly