I suppose, in retrospect, it was a tad cheeky for me to presume to review this book by one of the luminaries in the AI field, but fortunately I had a co-author. Jim Jenal was immersed in the Computer Science world when we became friends at the 1980 Artificial Intelligence conference at Stanford, and his commentary was essential to this review. If you just Googled your way to this page, please note that there are many much newer books on this subject… it is included here as part of my own publishing archives, and was written during a time when I was newly obsessed with the AI field. The article appeared in the Artificial Intelligence issue of BYTE in which I wrote the cover story as well as a photo essay about the National Computer Conference.

Principles of Artificial Intelligence

by Nils J. Nilsson

Book review by
Steven K. Roberts & James Paul Jenal
September 2, 1981

Artificial intelligence (AI), for over two decades the arcane province of academic visionaries, is at last spilling over into the worlds of engineering and practical system design. A fascination with the programming language LISP is sweeping the industry, robotics and machine vision (though still primitive) are something other than fantasy, and the cost of computer hardware on a scale necessary for AI work has dropped to the point where it even touches the personal computer spectrum.

It is becoming worthwhile to learn something about the subject for reasons beyond intellectual curiosity.

A new book by Nils J Nilsson offers a substantive look at a body of techniques upon which much of the work in the artificial intelligence field is based. Presently the director of the Artificial Intelligence Center of Stanford Research Institute, Nilsson has for years been involved in problem-solving, theorem-proving, and planning systems, and has authored publications along these lines that date back to the early 1960s.

Principles of Artificial Intelligence is intended as a text for a college senior or first-year graduate student, and can thus be considered to be the reader’s first serious exposure to the field. But a question arises as to whether or not the ensuing (fairly rigorous) discussion of predicate  calculus is the way to proceed. Though the text was written as an introduction and does, in fact, concern itself far more with underlying techniques than with applications areas, it focuses fairly strongly upon formalisms with which the reader new to the field might be a little uncomfortable.

Predicate calculus is certainly not new to serious students of computer science—it is required material in almost any undergraduate coputer science curriculum, though exposure is typically limited to formal proving exercises. Nevertheless, predicate calculus does provide a refined set of manipulative tools that are useful for the implementation of knowledge-based production systems, and it has a distinct advantage over some of the more intuitive paradigms, such as relational databases and semantic networks, in that it has matured from many years of disciplined development in other application areas. Though imposing in appearance, it is a reliable basis for system design and, thanks to its universal acceptance, for communication of ideas with other workers in the field.

However, one of the ideals of artificial intelligence work is the comfortable bridging of   the vast conceptual gap between man and machine. Although this inevitably requires the application of formal tools, it should eventually lead to increased “naturalness” of problem expression. In a purely rigorous sense, any Turing machine implementation is as good as another (they provide the same computing power), but the differences to those who must use them are significant. As anyone who has ever attempted to express abstract, symbolic constructs within the syntactical and semantic restrictions of FORTRAN knows only too well, the issue of naturalness is inexorably tied to the representation problem.

Early on, Nilsson states that “selecting a good representation is one of the important arts involved in applying AI techniques to practical problems.” This is indeed true, not only in this field but in all aspects of computer problem solving. Knowledge representation, whether via a body of production rules (if…then constructs), frames (relatively passive data entities appropriately interconnected and applied to a set of inference procedures), or any other means, is a central and hotly contested issue that affects not only the usefulness of a system’s design but its naturalness. While different approaches may not necessarily provide greater power, they might free the mind to achieve greater insights—and insight is at the heart of all problem solving.

Nilsson makes a good case for the use of predicate calculus as the set of “cranks” with which any type of system can be implemented. Whether or not this approach constitutes an optimal entry into the artificial intelligence field is partly a function of the reader. From a classical engineering standpoint, the assimilation of formal methods before exposure to the more philosophical aspects is absolutely necessary, and for those who are comfortable with this approach, the book comes highly recommended: the problems are interesting, yet not so esoteric that you lose sight of their purpose—namely, the chance to apply the principles that Nilsson has so painstakingly laid out. Those who lack the text’s presupposed ease with formal methods (and there is much of interest in the field that does not require it) might prefer a book targeted to an overview of AI’s various subspecialties (such as Patrick H Winston’s classic Artificial Intelligence, Philip C. Jackson’s Introduction to Artificial Intelligence, or Pamela McCorduck’s Machines Who Think).

Principles of Artificial Intelligence, like its predecessor, Problem-Solving Methods in Artificial Intelligence (Nilsson, McGraw-Hill, 1971), can be considered an authoritative text on many of the underlying ideas that serve as the basis for the bulk of current artificial intelligence research. After Nilsson develops the primary theme, he provides a number of provocative comments about the field, and closes with a comprehensive and up-to-date bibliography of published works. Though hardly casual reading, the book offers solid underpinnings for methodologies which might otherwise appear disquietingly magical.

About the Authors

Jim Jenal is the CEO of Run on Sun, and is the author of Commercial Solar: Step-by-Step

Steve Roberts is a career technomad and this website is his archive of published work and media coverage.