This course studies the problem of making computers act in ways which we call “intelligent”. Topics include major theories, tools and applications of artificial intelligence; aspects of knowledge representation; searching and planning; and natural language understanding. Students will be expected to complete projects which express problems that require search in state spaces and to propose appropriate methods for solving the problems. Undergraduate credit may not be earned both for this course and for CS 534.