CHAP 3 : Search Techniques (uninformed) Flashcards

1
Q

What is the definition of search?

A

It is the process of looking for a sequence of actions that reaches the goal.

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

What are inputs in problem formulation? [6]

A
  1. State space
    - all possible combinations of states in the end, set of all possible configurations of a system
  2. Action space
  3. Successor function
    - a description of possible actions, a set of operators.
    - for state x, returns s(x) –> Given a state, generates its sucessor states
  4. Start state
  5. Goal test (aka goal state)
  6. Path cost
    - A function that assigns a numeric value to each path.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a state?

A

A representation of physical state

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

What is a node

A

A data structure that is part of a search tree

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

What is a branching factor?
What is the branching factor of the search trees given in the slides?

A
  • The branching factor is the number of children at each node.
  • The search trees in the slides have a branching factor of 2. (Binary tree)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the parts of a search tree? [3]

A
  1. Root (parent) node
  2. Child nodes
  3. Edges –> representing the action and costs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the output of a search problem?

A

The output is the sequence of actions that reaches the goal state from the current state.

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

Predicting the sales price of an HDB flat is considered a search technique. Is the statement True or False?

A

False

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

The maximum number of elements in an action space is one. Is the statement true or false?

A

False

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

Goal test finds if a state is goal state or not a goal state. Is the statement true or false?

A

True

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

Search Trees are data structures that are used to represent the search problem. Is the statement true or false?

A

True

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

When planning a route for a robot, it is possible to build a search tree to find the most optimal routes. Is the statement true or false?

A

True

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

What the definition of a frontier in a search tree?

A

It is the set of unexplored child nodes that is to be expanded

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

What kind of data strucutres may be used for the frontier and how do they work?

A
  1. Queue – FIFO
  2. Stack – LIFO
  3. Priority queue – nodes expanded following a priority function that is set between the nodes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the definition of the explored set?

A

It is the set of leaf nodes that are already explored

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

What does the explored set do in a search tree?

A

It saves unique instances of the states from the search tree.

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

The explored set needs to provide fast insertion and searching. True or False?

18
Q

What is a search strategy?

A

It is the order of picking a node for expansion

19
Q

What are the criteria that strategies are evaluated based on? Give the definitions too

A
  1. Completeness : guarantee of finding a solution
  2. Optimality : guarantee of finding an optimal solution
  3. Time complexity : time spent to find a solution
  4. Space complexity : memory space needed to perform the search.
20
Q

What is the main difference between uninformed search techniques and informed search techniques?

A

Uninformed search techiques use only the info that is avail in the problem definition, and have no additional info about the states and cannot distinguish which non-goal state is better. They blindly try all possible ways to reach the target.

However, informed search techniques can tell which non-goal state is better, given some guidance

21
Q

What is the idea behind the breadth first search and how is it implemented (frontier)?

A

Idea : Expand shallowest unexpanded node.

Implementation : Frontier is a FIFO queue, i.e. insert new successors at the end

22
Q

Evaluate breadth first search based on completeness, optimality, space and time complexity.

A
  1. Completeness : BFS is complete, IF BRANCHING FACTOR IS FINITE
  2. Optimality : Optimal, IF STEP COST = 1
  3. Space complexity : increases exponentially
  4. Time complexity : time taken increases as depth of tree increases

Space is a bigger problem than time

23
Q

Uniform cost search is an extension of the breadth first search. True or False?

A

True. Uniform cost search is weighted breadth first search

24
Q

Evaluate the uniform cost search

(compare time and space w BFS)

A
  1. Complete : Yes, if all state’s actions have non-negative values
  2. Optimal : Yes. Uniform-cost search expands nodes in order of their optimal path cost.
  3. Time and space : Performs worse than BFS — list is required to be kept and sorted as priorities in queue, store step costs etc.
25
What is the idea of depth first search? How is it implemented?
Idea : It expands the deepest unexpanded node Implementation: Frontier --> LIFO stack, insert successors at the front
26
Evaluate the depth first search technique
1. Completeness : Yes, if state space is FINITE with no repeated states and path 2. Optimal : No, may find a solution at a deep level while a more optimal solution exists at a shallow level to the right side of the tree (bc always expand left first)
27
What are the characteristics of backtracking? [4]
1. Only one successor is generated at a time 2. Each partially expanded node remebers which successor to generate next 3. Once a node has been expanded and al its descendants are fully explored, it can be removed from memor if goal state not found 4. Uses recursion
28
What is recursion and when is it useful?
Recursion is a function calling itself and it is useful in solving problems that can broken down into smaller problems of the same kind
29
What are the sections involved in recursion?
1. Base case 2. Logic 3. Recursive call
30
What are the sections involved in recursion?
1. Base case 2. Logic 3. Recursive call
31
Breadth-first search is usually considered as complete (if branching factor=1) and optimal (step cost=1). Is the statement true or false?
True
32
Breadth-first search is usually considered as complete (if branching factor=1) and optimal (step cost=1). Is the statement true or false?
True
33
In Breadth-first search, memory space to store the nodes is usually the bigger problem than the computation time. Is the statement true or false?
True
34
UCS expands the node from the frontier with the cheapest path cost. Is the statement true or false?
True
35
UCS is always complete for any given search problem. Is the statement true or false?
False
36
* UCS is always optimal. Is the statement true or false?
True
37
The key difference between Breadth-first search and Depth-first search (DFS) is that the frontier for DFS operates using a FIFO order. Is the statement true or false?
False
38
DFS expands from the deepest unexpanded node. Is the statement true or false?
True
39
DFS is optimal. Is the statement true or false?
False
40
By using Backtracking only one successor node is generated at a time. This property of backtracking makes the search algorithm memory efficient. Is the statement true or false?
True