Showing posts with label Heuristic Searches. Show all posts
Showing posts with label Heuristic Searches. Show all posts

Problems with MiniMax algorithm efficiency?

Problems with MiniMax algorithm efficiency?



Combinatorial Explosion leads to search trees being too large
Evaluation of positions is time consuming

What is the Minimax Algorithm?

What is the Minimax Algorithm?



An algorithm used in game playing where one opponent tries to maximise their chance of winning and minimise their opponent's chance at every move


Talk through how the MiniMax algorithm works (different for different problems of course)
Set of values at terminal positions (triangles) at the bottom.
Level above is the last player who played a move
If + value is PC winning and they played the last move, we move every positive value up to their parents
If - value is ME winning, on the level above that, move the smaller values up to their parents
Keep going until you reach the root

What makes a heuristic admissible for a heuristic algorithm?

What makes a heuristic admissible for a heuristic algorithm?



Heuristic function must never overestimate the cost to reach the goal (i.e. not larger than the lowest possible cost from current state to the goal)

What is a greedy algorithm?

What is a greedy algorithm?



An algorithm that picks the locally-optimal/best choice at the moment in the hope it will lead to a globally-optimal solution.

What is the A* Search Algorithm?

What is the A* Search Algorithm?



A Heuristic search which combines the cost so far and the estimated cost to goal.
f(n) = g(n) + h(n) where g is path cost from initial state to current, h is heuristic cost from current state to goal and f is the overall estimated cost.

How does a heuristic function differ from a blind function?

How does a heuristic function differ from a blind function?



Heuristics use domain knowledge to explore the next best node which is most likely to lead to a goal state.
Makes educated guesses.
Directed search.

What is a Heuristic function?

What is a Heuristic function?



A function to inform the search about the direction to a goal

What is a Blind Search?

What is a Blind Search?



A search which has no information about its domain.
All it can do is distinguish a non-goal state from a goal state.