
Preface
Over the years my view of an artificial intelligence (AI) course has changed
significantly. I used to view it as a course that should discuss our efforts to
develop an artificial entity that can learn and make decisions in a complex,
changing environment, affect that environment, and communicate its knowledge
and choices to humans; that is, an entity that can think. I would therefore, cover
the weak AI methods that failed to scale up. However, as st r ong methods that
solved challenging problems in limited domains became more predominant, my
course increasingly concerned these methods. I would cover backward chaining,
forward chaining, planning,