At ASU we have several AI courses starting with the undergraduate AI course CSE 471 which uses the Russel and Norvig book as the text book.  At the graduate level we have courses such as Machine Learning, Autonomous Agents, Data Mining, Answer Set Programming, Application of AI to Molecular Biology, Planning and Scheduling, Information Retrieval, Cognitive Systems,  etc. In most, but not all, of these courses the coverage is bottom-up; I.e., specific building block algorithms and theories are covered and it is assumed that AI systems can be built using those components.

In the graduate AI Class (CSE 571) we will take a top-down philosophy. We will focus on building an AI system and learn techniques necessary to build such a system. In Spring 2007  CSE 571 class, the AI system we will start with will be a system that  can answer puzzles of the type one sees in the analytical part of GRE. The input to the system will be a puzzle description in ENGLISH and the system has to understand the description, do the necessary reasoning and come up with the answers. Building such a system will involve AI topics such as Natural language processing (parsing, word sense disambiguation, etc.), Machine Learning (entity recognition, word sense disambiguation, etc.), Knowledge Representation and Reasoning, and Use of Ontologies.

The system can further evolve to a more general question answering system that takes ENGLISH text as input, uses learned or given world knowledge, and answers a question asked in ENGLISH. Here answering the question can involve planning, predictive reasoning, observation explanation, diagnosis, counterfactual  reasoning, and even probabilistic reasoning.

In learning how to build such systems we will use some off-the-shelf software and Ontologies. This includes parsers such as the Link parser, WEKA tool-kit, the Smodels knowledge representation and reasoning (KR&R) system and Wordnet ontology. While the use and user interface of some of these systems will be somewhat straightforward and follow-the-manual type, the use of the KR&R system will be more involved. That is because for the others the input is just some facts in a specified input language while for the KR&R system one has to write "knowledge modules". Thus for the later one has to understand how to represent knowledge, the logic behind the knowledge representation, and how reasoning or entailment is defined. But once one learns all that the payoff is enormous. One does not have to implement search or implement a planner, the KR&R system will do that; all one has to do is to express the reasoning problem appropriately.

Although the course will follow the top-down AI approach, we will cover some very recent and/or  crucial theories that are not covered in other AI classes. This includes learning causality, a language that combines logical and probabilistic reasoning and candidate languages for the semantic web that combine description logic, rules and non-monotonicity.