CMP 446 Basic Search Strategies - Module 2 - B Uninformed Search Strategies
CMP 446 Basic Search Strategies - Module 2 - B Uninformed Search Strategies
STRATEGIES
DR. S.A. AREKETE
COURSE CONTENTS
• Problem spaces (states, goals and operators), problem solving by
search, Factored representation (factoring state into variables),
Uninformed search (breadth-first, depth-first, depth-first with
iterative deepening), Heuristics and informed search (hill-
climbing, generic best-first, A*), Space and time efficiency of
search, Two-player games (Introduction to mini-max search),
Constraint satisfaction (backtracking and local search methods),
Review of propositional and predicate logic (cross-reference
DS/Basic Logic), Resolution and theorem proving (propositional
logic only), Forward chaining, backward chaining, Review of
probabilistic reasoning, Bayes theorem
Work Plan
Week# Topics Activity/Assignments
1 Problem spaces (states, goals and operators), problem solving by search, Factored
representation (factoring state into variables)
2-4 Uninformed search (Random Search, Generate and test breadth-first, depth-first, depth-first Assignment 1
with iterative deepening)
5-6 Heuristics and informed search (hill-climbing, generic best-first, A*), Space and time
efficiency of search, Two-player games (Introduction to mini-max search)
7 Continuous Assessment Test 1
8 Student Presentations
9 Space and time efficiency of search, Two-player games (Introduction to mini-max search), Assignment 2
Constraint satisfaction (backtracking and local search methods)
10 Constraint satisfaction (backtracking and local search methods), Review of propositional and
predicate logic (cross-reference DS/Basic Logic),
11-12 Resolution and theorem proving (propositional logic only), Forward chaining, backward Assignment 3
chaining, Review of probabilistic reasoning, Bayes theorem
13 Revision
Other Uninformed Search
Algorithms
Depth-Limited Search (DLS)
• The algorithm for UCS uses the accumulated path cost and a priority
queue to determine the path to evaluate.
• The priority queue is sorted from least cost to greatest and contains
the nodes to be evaluated.
• As node children are evaluated, we add their cost to the node with
the aggregate sum of the current path.
• This node is then added to the queue, and when all children have
been evaluated, the queue is sorted in order of ascending cost.
• When the first element in the priority queue is the goal node, then
the best solution has been found.
Uniform-Cost Search (UCS)..
Uniform-Cost Search (UCS)..
• To limit the size of the priority queue, it’s possible to prune entries that are
redundant.
• For example, at step 4 in Figure 2.17, the entry for E(8) could have been
safely removed, as another path exists that has a reduced cost (E(7)).
• The search of the graph is shown in Figure 2.18, which identifies the path
cost at each edge of the graph.
• The path cost shown above the goal node (E) makes it easy to see the least-
cost path through the graph, even when it’s not apparent from the initial
node.
• UCS is optimal and can be complete, but only if the edge costs are non-
negative (the summed path cost always increases).
• Time and space complexity are the same as BFS, O(bd) for each, as it’s
possible for the entire tree to be evaluated.