Tuesday, October 18, 2011

how AI parts are related (or: avoiding Bayes net whiplash)

I mentioned in today's post that it's hard to see how we get from search to Bayes nets, and the student can feel a little lost.  This post tries to explain AI as I see it.

Fundamentally, I see top-level AI as all Search.  We have a world state, actions that can be taken, a possible goal, and possible heuristics.  So where do diagnostic-style things, like Bayes nets fit in?  Bayes nets are all about figuring out what state we're in.   In the 'travel Romania' example, we know what out start state is, so we can begin searching immediately.  But what if we didn't?  We would need to figure out where we were before we could start to search.

Or to turn this upside-down, look at the car starting network.  Sure, the network tells us what is wrong (or at least what is most likely wrong) but it doesn't tell us what to do about it.  That's where search comes in.  Now that we know it's the alternator, we can start to search the actions we can take to formulate a plan of action.  Often in applications of Bayes nets, the only part of the system is the network itself, how is that related to search?  State space search is still being done, it's just by the humans involved, not the computer.  When we use a medical diagnosis system, it spits out a diagnosis, and then the doctor and patient think about various options for care (sort of an AI cyborg: intelligent decisions made part by humans, part by machines).  We could have let the treatment plan also be computer generated, and that would likely require good old state-space search.

So diagnosis is a tool so we know where we are in our state-space search.

(Warning: not all AI people agree with me on this, but they're wrong.)

1 comment:

  1. Very nice post this one. It's good to get some additional information what was missed in your opinion, not just the fact that something is missing.