Lecture 3 Flashcards

1
Q

What does a search algorithm do (in generic terms)?

A

A search algo takes a search problem as input and returns a solution or indication of failure.

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

In what kind of environment is the solution to any problem a fixed solution of actions?

A

In an environment that is fully observable, deterministic, and known.

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

What is an admissible heuristic?

A

One that never overestimates the cost to reach the goal. Thereofore, it is optimistic.

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

How do we decide which node from the frontier to expand next?

A

Using a search function, such as best-first, breadth-first, or depth-first search.

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

What are the 4 ways to measure the performance of a search algorithm?

A
  1. Completeness
  2. Cost Optimality
  3. Time Complexity
  4. Space Complexity
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the difference between an informed and uninformed search?

A

Informed knows how far the node is from the goal at any given step of the algorithm, whereas uninformed never has any idea of its distance from the goal.

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

How can you implement a BFS using Best-First Search?

A

f(n) = n.depth

Using the node’s depth as the evaluation function.

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

How can you implement a DFS using Best-First Search?

A

f(n) = -n.depth

Using the negative of the node’s depth as the evaluation function.

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

How can you implement a Dijkstra’s using Best-First Search?

A

f(n) = n.pathCost

Using the node’s path cost as the evaluation function.

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

What could go wrong if you use greedy best-first search for path-finding?

A

It is prone to getting stuck in local optima or dead ends. Because the algorithm always prioritizes nodes that appear to be closest to the goal, it may not explore other potentially useful paths or nodes that are further away from the goal but could ultimately lead to a better solution.

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

Is A* cost-optimal?

A

It depends on the heuristic function. If the heuristic function is admissible or consistent, A* is cost-optimal. Otherwise it may not be cost-optimal.

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

What is the performance difference between running hill-climbing search (or simulated-annealing) for k times and beam search of size k?

A

hill-climbing search with 5 threads could have essentially the same result. (the 4 that are bad will stay until the end because there is no way to prune them)

in local beam-search, bad options are pruned from the beginning, and you’re taking the k best

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

Considering the vanilla implementation of MINIMAX, discuss the disadvantages and possible solutions to fix them.

A

Memory and speed problems due to the algorithm’s requirement to expand a node on the tree all the way to the bottom of the tree.
- Alpha-Beta pruning can help speed up the algorithm by preventing some nodes from even being calculated.
- Depth-limit will solve the problem. We use heuristics to estimate the possible score for non-goal states.

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

What is a competitive Environment?

A

An environment in which two or more agents have conflicting goals.

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

Adversarial agents can be considered one of which 3 environment stances?

A
  • an economy
  • part of the environment (making it non-deterministic)
  • explicitly modelled
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

(Game Theory) Define transition model.

A

Defines the state resulting from taking action ‘a’ in state ‘s’

RESULT(s, a);

17
Q

(Game Theory) Define terminal test.

A

A test which is true when the game is over and false otherwise.

IN_TERMINAL(s);

18
Q

(Game Theory) What is a terminal state?

A

States where the game has ended.

19
Q

(Game Theory) What does a utility function define?

A

The final numeric value (utility score) of player ‘p’ when the game ends in terminal state ‘s’

UTILITY(s, p);

20
Q

(Game Theory) Which components make up the state space graph?

A

The initial state, ACTIONS function, and RESULTS function.

21
Q

(Game Theory) What is a state space graph?

A

A graph where the vertices are states, the edges are moves, and a state might be reached by multiple paths.

22
Q

(Game Theory) How do you determine which move to make using a state space graph?

A

By superimosing a game tree over part of the state space graph.

23
Q

(Game Theory) What is a game tree?

A

A search tree that follows every sequence of moves all the way to a terminal state.

24
Q

What is pruning?

A

Removing/ignoring large parts of a game tree that make no difference to the outcome.

25
Q

Describe a Weighted Linear Evaluation Function.

A

Computes numerical contributions from each feature (f i) and then combines them using weights w i from experience to find the total value.

26
Q

What are the weaknesses of Alpha-Beta Search (that are addressed by Monte Carlo Search Tree)?

A
  1. Alpha-Beta Search is limited in moves when the game tree has a large branching factor
  2. The evaluation function is difficult to define for complex games like Go

(where material value is not a strong enough indicator and most positions are in flux until the endgame)

27
Q

How does a Monte Carlo Search Tree strategy assign value to states (instead of a heuristic evaluation function)?

A

The value of a state is estimated as the average utility over a number of simulations of complete games starting from the state.

28
Q

What does a simulation (aka playout or rollout) do in the Monte Carlo Search Tree?

A

A simulation repeatedly chooses moves for one player then the other until a terminal position is reached.

(The rules of the game, not heuristics, determine the score and the winner.)

29
Q

What does the Monte Carlo Search selection policy do?

A

Determines which states to utilize by selectively focusing computational resources on Exploration or Exploitation of the game tree.

30
Q

What are the four steps performed every iteration of a Monte Carlo Tree Search?

A
  1. Selection
  2. Expansion
  3. Simulation
  4. Back-propagation
31
Q

What are the disadvantages of the Monte Carlo tree search?

A
  1. It’s likely that a single move can change the course of the game, but MC search might fail to consider it because of its stochastic nature
  2. There are game states that are “obviously” a win to humans or an evaluation function, but MC search will still take many moves in a playout to verify the winner.
32
Q

Problem-solving Agent

A

Plans ahead to find a sequence of actions that form a path to a goal state when the correct action is not immediately obvious.

33
Q

4 Step Problem-solving Process

A
  • Goal Formulation
  • Problem Formulation (desc. of states and actions necessary to reach goal)
  • Search
  • Execution