Week 2 Flashcards
Generate and Test Search Algorithm?
a very simple algorithm that guarantees to find a solution if done systematically and there exists a solution
Informed Search methods?
Informed Search methods may have access to a heuristic function h(n) that estimates the cost of a solution from n
- Best-first search algorithm
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 - A* Search
expands nodes with minimal f(n) = g(n) + h(n). A* is complete and optimal. - RBFS (recursive best-first search) and SMA* (simplified memory-bounded A*)
Search algorithms are judges on the basis of?
completeness, optimality, time complexity, and space complexity. complexity depends on b, the branching factor in the state space, and d, the depth of the shallowest solution.
Iterative deepening search only uses?
linear space and not much more time than other uninformed search strategies.
Jenis-jenis Uninformed search strategy?
- Breadth-First Search
- Uniform-Cost Search
- Depth-First Search
- Depth-Limited Search
- Iterative Deepening Search
Time complexity of Breadth-First Search?
O(b^d)
Why Iterative Deepening Search may seem wasteful?
because so many states are expanded multiple times
Best first search (greedy) complexity?
Complete? NO, can get stuck in loops
Time? O(b^m)
Space? O(b^m)
Optimal? NO
admissible heuristic used in?
A* search
is A* search is optimal?
YES
search algorithm that combines advantages of uniform-cost and greedy searches?
A* Search
A* characteristics?
Complete, optimal, and optimally efficient. But space complexity still exponential.
Greedy search?
best-first search with the estimated cost to reach the goal as a heuristic measure. not optimal and not complete but generally faster than uninformed search.
What is hill climbing?
hill-climbing is a mathematical optimization technique for local search. can be used to solve problems that have many solutions. It starts with a random solution, and iteratively makes small changes and keep improving to find the solution.