Recent decades have witnessed the emergence of artificial intelligence as a serious science and engineering discipline. This textbook, aimed at junior to senior undergraduate students and first-year graduate students, presents artificial intelligence (AI) using a coherent framework to study the design of intelligent computational agents. By showing how basic approaches fit into a multidimensional design space, readers can learn the fundamentals without losing sight of the bigger picture. The book balances theory and experiment, showing how to link them intimately together, and develops the science of AI together with its engineering applications. Although structured as a textbook, the book's straightforward, self-contained style will also appeal to a wide audience of professionals, researchers, and independent learners. AI is a rapidly developing field: this book encapsulates the latest results without being exhaustive and encyclopedic. The text is supported by an online learning environment, AIspace, http://aispace.org, so that students can experiment with the main AI algorithms plus problems, animations, lecture slides, and a knowledge representation system, AIlog, for experimentation and problem solving.