Tuesday, October 30, 2018

Let's read: Norvig's AI, chap 3

I'm tired of Norvig's AI now. It's too long. Much better if I can just refer to specific chapters of it when I need to get an introduction to a particular topic, rather than reading it in one go.
I will just post reading notes from what I've already accomplished.

Continuing from last post.

Chapter 3-6 are about solving given, well-defined problems by various kinds of searching. It is quite basic algorithmic stuff. There's no learning yet, and the agent can't improve itself.


Chapter 3: search

Chapter 3 studies the most classical kind of search problem: the world is fully observable and deterministic. Some examples to keep in mind while you read this chapter: Rubik's cube, Sudoku puzzle, Sokoban, and many other single-player puzzle games and toys...

Searching Problems

The simplest case of problem solving is when the world is determined, discrete, and fully observable. In such cases, it's enough for the agent to look once, think hard, find the best plan, then do it. Imagine someone blindly driving according to a GPS guidance, or solving Rubik's cube blindfolded after looking hard at it.

Abstractly, the problem becomes reaching one node from another on a weighted (if paths have costs) directed graph. The general solution is then a path-finding algorithm, like A* algorithm. Frankly though, a better way to learn them is to implement them, and there are good tutorials already.

The basic algorithms

breath first, depth first, cost first, depth-limited, iterative deepening, bidirectional.
visited set, frontier, child node.

Side note! It seems that when I resort to a search in solving a math problem, I use bidirectional search. From the assumptions I try to get some conclusions that take them closer to the final conclusion, and from the final conclusion I try to generate some intermediate steps that would lead to it. Hopefully, they meet in the middle and create a complete solution.

No comments:

Post a Comment

Let's Read: Neuropath (Bakker, 2009)

Neuropath  (Bakker 2009) is a dramatic demonstration of the eliminative materialism worldview of the author R. Scott Bakker. It's very b...