Artificial Intelligence (AI) is a big field, and this
is a big book. We have tried to explore the full breadth of the field,
which encompasses logic, probability, and continuous mathematics;
perception, reasoning, learning, and action; and everything from
microelectronic devices to robotic planetary explorers. The book is
also big because we go into some depth.
The subtitle of this book is "A Modern Approach.'' The intended
meaning of this rather empty phrase is that we have tried to
synthesize what is now known into a common framework, rather than
trying to explain each subfield of AI in its own historical context.
We apologize to those whose subfields are, as a result, less
recognizable.
New to this edition
This edition captures the changes in AI that have taken place since
the last edition in 2003. There have been important applications of
AI technology, such as the widespread deployment of practical speech
recognition, machine translation, autonomous vehicles, and household
robotics. There have been algorithmic landmarks, such as the solution
of the game of checkers. And there has been a great deal of
theoretical progress, particularly in areas such as probabilistic
reasoning, machine learning, and computer vision. Most important
from our point of view is the continued evolution in how we think about the field, and thus how we
organize the book. The major changes are as follows:
- We place more emphasis on partially observable and nondeterministic
environments, especially in the nonprobabilistic settings of search
and planning. The concepts of belief state (a set of possible
worlds) and state estimation (maintaining the belief state)
are introduced in these settings; later in the book, we add probabilities.
- In addition to discussing the types of environments and types of agents,
we now cover in more depth the types of representations that an agent can use.
We distinguish among atomic representations (in which each state of the
world is treated as a black box), factored representations (in which a state is
a set of attribute/value pairs), and structured representations (in which the world
consists of objects and relations between them).
- Our coverage of planning goes into more depth on contingent planning in partially observable
environments and includes a new approach to hierarchical planning.
- We have added new material on first-order probabilistic models,
including open-universe models for cases where there is
uncertainty as to what objects exist.
- We have completely rewritten the introductory machine-learning chapter, stressing a wider variety
of more modern learning algorithms and placing them on a firmer theoretical footing.
- We have expanded coverage of Web search and information
extraction, and of techniques for learning from very large data sets.
- 20% of the citations in this edition are to works published after
2003.
- We estimate that about 20%
of the material is brand new. The remaining 80% reflects older work but has been largely
rewritten to present a more unified picture of the field.
Overview of the book
The main unifying theme is the idea of an intelligent agent. We
define AI as the study of agents that receive percepts from the
environment and perform actions. Each such agent implements a
function that maps percept sequences to actions, and we cover
different ways to represent these functions, such as reactive agents,
real-time planners, and decision-theoretic systems. We explain the
role of learning as extending the reach of the designer into unknown
environments, and we show how that role constrains agent design,
favoring explicit knowledge representation and reasoning. We treat
robotics and vision not as independently defined problems, but as
occurring in the service of achieving goals. We stress the importance
of the task environment in determining the appropriate agent design.
Our primary aim is to convey the ideas that have emerged over
the past fifty years of AI research and the past two millennia of
related work. We have tried to avoid excessive formality in the
presentation of these ideas while retaining precision. We have
included pseudocode algorithms to make the key ideas concrete; our
pseudocode is described in Appendix B.
This book is primarily intended for use in an undergraduate course or
course sequence. The book has 27 chapters, each requiring about a
week's worth of lectures, so working through the whole book requires a
two-semester sequence. A one-semester course can use selected chapters
to suit the interests of the instructor and students. The book can
also be used in a graduate-level course (perhaps with the addition of
some of the primary sources suggested in the bibliographical
notes). Sample syllabi are available at the book's Web site, aima.cs.berkeley.edu
The only prerequisite is familiarity with basic concepts of computer
science (algorithms, data structures, complexity) at a sophomore
level. Freshman calculus and linear algebra are useful for some of the
topics; the required mathematical background is supplied in Appendix
A.
Exercises are given at the end of each chapter. Exercises requiring
significant programming are marked with a keyboard icon. These
exercises can best be solved by taking advantage of the code
repository at aima.cs.berkeley.edu. Some of them are large
enough to be considered term projects. A number of exercises require
some investigation of the literature; these are marked with a book
icon.
Throughout the book, important points are marked with a
pointing icon. We have included an extensive index
of around 6,000 items to make it easy to find things in the book.
Wherever a new term is first defined, it is also
marked in the margin.
About the Web site
aima.cs.berkeley.edu,
the Web site for the book, contains
About the cover
The cover depicts the final position from the decisive game 6 of the
1997 match between chess champion Garry Kasparov and program
Deep Blue. Kasparov, playing Black, was forced to resign,
making this the first time a computer had beaten a world champion in a
chess match. Kasparov is shown at the top. To his left is the Asimo
humanoid robot and to his right is Thomas Bayes (1702-1761), whose
ideas about probability as a measure of belief underlie much of modern
AI technology. Below that we see a Mars Exploration Rover, a robot
that landed on Mars in 2004 and has been exploring the planet ever
since. To the right is Alan Turing (1912-1954), whose fundamental
work defined the fields of computer science in general and artificial
intelligence in particular. At the bottom is Shakey (1966-1972), the
first robot to combine perception, world-modeling, planning, and
learning. With Shakey is project leader Charles Rosen (1917-2002). At
the bottom right is Aristotle (384 B.C.-322 B.C.), who
pioneered the study of logic; his work was state of the art until the
19th century (copy of a bust by Lysippos). At the bottom left, lightly
screened behind the authors' names, is a planning algorithm by
Aristotle from De Motu Animalium in the original Greek. Behind
the title is a portion of the CPSC Bayesian network for
medical diagnosis (Pradhan et al., 1994). Behind the chess
board is part of a Bayesian logic model for detecting nuclear
explosions from seismic signals.
Credits:
Stan Honda/Getty (Kasparaov),
Library of Congress (Bayes),
NASA (Mars rover),
National Museum of Rome (Aristotle),
Peter Norvig (book),
Ian Parker (Berkeley skyline),
Shutterstock (Asimo, Chess pieces),
Time Life/Getty (Shakey, Turing).
Acknowledgments
This book would not have been possible without the many contributors
whose names did not make it to the cover. Jitendra Malik and David
Forsyth wrote Chapter 24 (computer vision) and Sebastian Thrun wrote
Chapter 25 (robotics). Vibhu Mittal wrote part of Chapter 22 (natural
language). Nick Hay, Mehran Sahami, and Ernest Davis wrote some of the
exercises. Zoran Duric (George Mason), Thomas C. Henderson (Utah),
Leon Reznik (RIT), Michael Gourley (Central Oklahoma) and Ernest Davis
(NYU) reviewed the manuscript and made helpful suggestions. We thank
Ernie Davis in particular for his tireless ability to read multiple
drafts and help improve the book. Nick Hay whipped the bibliography
into shape and on deadline stayed up to 5:30 AM writing code to make the book
better. Jon Barron formatted and improved the diagrams in this edition, while
Tim Huang, Mark Paskin, and Cynthia Bruyns helped with diagrams and
algorithms in previous editions. Ravi Mohan and Ciaran O'Reilly wrote
and maintain the Java code examples on the Web site.
John Canny wrote the robotics chapter for the first edition and Douglas Edwards
researched the historical notes. Tracy Dunkelberger, Allison Michael,
Scott Disanno, and Jane Bonnell at Pearson tried their best to keep us
on schedule and made many helpful suggestions. Most helpful of all has
been Julie Sussman, P.P.A., who read every chapter and provided
extensive improvements. In previous editions we had proofreaders who
would tell us when we left out a comma and said which when we
meant that; Julie told us when we left out a minus sign and said
xi when we meant
xj. For every typo or confusing explanation that remains in the
book, rest assured that Julie has fixed at least five. She persevered
even when a power failure forced her to work by lantern light rather
than LCD glow.
Stuart would like to thank his parents for their
support and encouragement and his wife, Loy Sheflott, for her endless
patience and boundless wisdom. He hopes that Gordon, Lucy, George, and
Isaac will soon be reading this book after they have forgiven him for
working so long on it. RUGS (Russell's Unusual Group of Students)
have been unusually helpful, as always.
Peter would like to thank his parents (Torsten and Gerda) for getting
him started, and his wife (Kris), children (Bella and Juliet),
colleagues, and friends for encouraging and tolerating him through the
long hours of writing and longer hours of rewriting.
We both thank the librarians at Berkeley, Stanford, and
NASA and the developers of CiteSeer, Wikipedia, and Google, who have
revolutionized the way we do research.
We can't acknowledge all the people who have used the book and made
suggestions, but we would like to note the especially helpful
comments of Gagan Aggarwal,
Eyal Amir,
Ion Androutsopoulos,
Krzysztof Apt,
Warren Haley Armstrong,
Ellery Aziel,
Jeff Van Baalen,
Darius Bacon,
Brian Baker,
Shumeet Baluja,
Don Barker,
Tony Barrett,
James Newton Bass,
Don Beal,
Howard Beck,
Wolfgang Bibel,
John Binder,
Larry Bookman,
David R. Boxall,
Ronen Brafman,
John Bresina,
Gerhard Brewka,
Selmer Bringsjord,
Carla Brodley,
Chris Brown,
Emma Brunskill,
Wilhelm Burger,
Lauren Burka,
Carlos Bustamante,
Joao Cachopo,
Murray Campbell,
Norman Carver,
Emmanuel Castro,
Anil Chakravarthy,
Dan Chisarick,
Berthe Choueiry,
Roberto Cipolla,
David Cohen,
James Coleman,
Julie Ann Comparini,
Corinna Cortes,
Gary Cottrell,
Ernest Davis,
Tom Dean,
Rina Dechter,
Tom Dietterich,
Peter Drake,
Chuck Dyer,
Doug Edwards,
Robert Egginton,
Asma'a El-Budrawy,
Barbara Engelhardt,
Kutluhan Erol,
Oren Etzioni,
Hana Filip,
Douglas Fisher,
Jeffrey Forbes,
Ken Ford,
Eric Fosler-Lussier,
John Fosler,
Jeremy Frank,
Alex Franz,
Bob Futrelle,
Marek Galecki,
Stefan Gerberding,
Stuart Gill,
Sabine Glesner,
Seth Golub,
Gosta Grahne,
Russ Greiner,
Eric Grimson,
Barbara Grosz,
Larry Hall,
Steve Hanks,
Othar Hansson,
Ernst Heinz,
Jim Hendler,
Christoph Herrmann,
Paul Hilfinger,
Robert Holte,
Vasant Honavar,
Tim Huang,
Seth Hutchinson,
Joost Jacob,
Mark Jelasity,
Magnus Johansson,
Istvan Jonyer,
Dan Jurafsky,
Leslie Kaelbling,
Keiji Kanazawa,
Surekha Kasibhatla,
Simon Kasif,
Henry Kautz,
Gernot Kerschbaumer,
Max Khesin,
Richard Kirby,
Dan Klein,
Kevin Knight,
Roland Koenig,
Sven Koenig,
Daphne Koller,
Rich Korf,
Benjamin Kuipers,
James Kurien,
John Lafferty,
John Laird,
Gus Larsson,
John Lazzaro,
Jon LeBlanc,
Jason Leatherman,
Frank Lee,
Jon Lehto,
Edward Lim,
Phil Long,
Pierre Louveaux,
Don Loveland,
Sridhar Mahadevan,
Tony Mancill,
Jim Martin,
Andy Mayer,
John McCarthy,
David McGrane,
Jay Mendelsohn,
Risto Miikkulanien,
Brian Milch,
Steve Minton,
Vibhu Mittal,
Mehryar Mohri,
Leora Morgenstern,
Stephen Muggleton,
Kevin Murphy,
Ron Musick,
Sung Myaeng,
Eric Nadeau,
Lee Naish,
Pandu Nayak,
Bernhard Nebel,
Stuart Nelson,
XuanLong Nguyen,
Nils Nilsson,
Illah Nourbakhsh,
Ali Nouri,
Arthur Nunes-Harwitt,
Steve Omohundro,
David Page,
David Palmer,
David Parkes,
Ron Parr,
Mark Paskin,
Tony Passera,
Amit Patel,
Michael Pazzani,
Fernando Pereira,
Joseph Perla,
Wim Pijls,
Ira Pohl,
Martha Pollack,
David Poole,
Bruce Porter,
Malcolm Pradhan,
Bill Pringle,
Lorraine Prior,
Greg Provan,
William Rapaport,
Deepak Ravichandran,
Ioannis Refanidis,
Philip Resnik,
Francesca Rossi,
Sam Roweis,
Richard Russell,
Jonathan Schaeffer,
Richard Scherl,
Hinrich Schuetze,
Lars Schuster,
Bart Selman,
Soheil Shams,
Stuart Shapiro,
Jude Shavlik,
Yoram Singer,
Satinder Singh,
Daniel Sleator,
David Smith,
Bryan So,
Robert Sproull,
Lynn Stein,
Larry Stephens,
Andreas Stolcke,
Paul Stradling,
Devika Subramanian,
Marek Suchenek,
Rich Sutton,
Jonathan Tash,
Austin Tate,
Bas Terwijn,
Olivier Teytaud,
Michael Thielscher,
William Thompson,
Sebastian Thrun,
Eric Tiedemann,
Mark Torrance,
Randall Upham,
Paul Utgoff,
Peter van Beek,
Hal Varian,
Paulina Varshavskaya,
Sunil Vemuri,
Vandi Verma,
Ubbo Visser,
Jim Waldo,
Toby Walsh,
Bonnie Webber,
Dan Weld,
Michael Wellman,
Kamin Whitehouse,
Michael Dean White,
Brian Williams,
David Wolfe,
Jason Wolfe,
Bill Woods,
Alden Wright,
Jay Yagnik,
Mark Yasuda,
Richard Yen,
Eliezer Yudkowsky,
Weixiong Zhang,
Ming Zhao,
Shlomo Zilberstein,
and our esteemed colleague Anonymous Reviewer.