Introduces fundamental principles and key applications of artificial intelligence, including heuristic search, automated reasoning, machine learning, neural networks and machine perception. Programming project include building autonomous software agents in a virtual world.This course is a prerequisite for advanced AI courses.