PLANNER
|
Planner was a programming language designed by Carl Hewitt at MIT first published in 1969. Hewitt (then a student of Marvin Minsky, Seymour Papert and Mike Paterson) championed the "procedural embedding of knowledge" in the form of high level procedural plans in contrast to the logical approach pioneered by John McCarthy who advocated expressing knowledge declaratively in mathematical logic for Artificial Intelligence. This raised a fundamental question: "What is the difference between the procedural and logical approaches?" It took several years to provide an answer to this question (see below).
Planner was the first language to feature procedural plans that were called by pattern-directed invocation using goals and assertions. A subset called Micro Planner was implemented by Gerry Sussman, Eugene Charniak and Terry Winograd and was used in Winograd's natural-language understanding program SHRDLU. This generated a great deal of excitement in the field of Artificial Intelligence. It also generated controversy because it proposed an alternative to the logic approach that had been one of the mainstay paradigms for AI.
Bruce Anderson at Edinburgh University implemented a subset of Planner and Julian Davies at Edinburgh essentially the whole language. At SRI, Jeff Rulifson Jan Derksen, and Richard Waldinger developed QA4 which built on the constructs in Planner and introduced a context mechanism to provide modularity for expressions in the data base. Bob Kowalski, who had been one of the principal members of the logic paradigm community, then adapted in collaboration with Alain Colmerauer some theorem proving ideas into a form similar to a subset of Micro Planner called Prolog. Indeed, Hewitt considers Prolog to be largely a reinvention of a subset of Micro Planner, e.g., Micro Planner (unlike Prolog) had the capability to use pattern-directed invocation of procedural plans from assertions as well as goals. But compare Kowalski's paper on the early history of logic programming. Using Prolog Kowalski hoped to save the logic paradigm as a viable approach to Artificial Intelligence.
In the meantime, Hewitt and his students at MIT had come to realize the limitations of the Planner approach and developed the Actor model of concurrent computation as a supplement. Kowalski's thesis was that that computation could be subsumed by deduction and quoted with approval "Computation is controlled deduction." which he attributed to Pat Hayes. Contrary to Kowalski and Hayes, Hewitt's thesis was that logical deduction was incapable of carrying out concurrent computation in open systems. However, his thesis is still controversial and the subject of current research. Note that the limitations of logic do not mean that logic is not an extremely valuable tool. Much later in 1981, Bill Kornfeld and Carl Hewitt contributed to pattern-directed invocation languages with the development of the Scientific Community Metaphor, which made strong use of logic within scientific theories.
The Actor model provided an answer to the question of the relationship between the procedural and logical approaches discussed above: It is a difference of semantics. The logical approach relies on mathematical model theory for its semantics whereas the procedural approach relies on the semantics of the Actor model. However, this answer is still controversial and further work remains to be done on characterizing the relationship between model theory and the Actor model.
Reference
- Carl Hewitt. PLANNER: A Language for Proving Theorems in Robots IJCAI 1969
- Gerry Sussman and Terry Winograd. Micro-planner Reference Manual AI Memo No, 203, MIT Project MAC, July 1970.
- Terry Winograd. Procedures as a Representation for Data in a Computer Program for Understanding Natural Language MIT AI TR-235. January 1971.
- Carl Hewitt. Procedural Embedding of Knowledge In Planner IJCAI 1971.
- Gerry Sussman, Terry Winograd and Eugene Charniak. Micro-Planner Reference Manual (Update) AI Memo 203A, MIT AI Lab, December 1971
- Carl Hewitt. Description and Theoretical Analysis (Using Schemata) of Planner, A Language for Proving Theorems and Manipulating Models in a Robot AI Memo No. 251, MIT Project MAC, April 1972.
- Bruce Anderson. Documentation for LIB PICO-PLANNER School of Artificial Intelligence, Edinburgh University. 1972
- Bruce Baumgart. Micro-Planner Alternate Reference Manual Stanford AI Lab Operating Note No. 67, April 1972.
- Eugene Charniak. Toward a Model of Children's Story Comprehension MIT AI TR-266. December 1972.
- Julian Davies. Popler 1.5 Reference Manual University of Edinburgh, TPU Report No. 1, May 1973.
- Jeff Rulifson, Jan Derksen, and Richard Waldinger. QA4, A Procedural Calculus for Intuitive Reasoning SRI AI Center Technical Note 73, November 1973.
- Robert Kowalski Predicate Logic as Programming Language Memo 70, Department of Artificial Intelligence, Edinburgh University. 1973
- Pat Hayes. Computation and Deduction Mathematical Foundations of Computer Science: Proceedings of Symposium and Summer School, Strbské Pleso, High Tatras, Czechoslovakia, September 3-8, 1973.
- Carl Hewitt, Peter Bishop and Richard Steiger. A Universal Modular Actor Formalism for Artificial Intelligence IJCAI 1973.
- Drew McDermott and Gerry Sussman. The Conniver Reference Manual MIT AI Memo 259A. January 1974.
- William Kornfeld and Carl Hewitt. The Scientific Community Metaphor MIT AI Memo 641. January 1981.
- Carl Hewitt. The Challenge of Open Systems Byte Magazine. April 1985
- Robert Kowalski. The limitation of logic Proceedings of the 1986 ACM fourteenth annual conference on Computer science.
- Robert Kowalski. The Early Years of Logic Programming CACM January 1988.
- Carl Hewitt and Gul Agha. Guarded Horn clause languages: are they deductive and logical? in Artificial Intelligence at MIT, Vol. 2. MIT Press 1991.
- Alain Colmerauer's and Philippe Roussel's account of the birth of Prolog (http://www.lim.univ-mrs.fr/~colmer/ArchivesPublications/HistoireProlog/19november92.pdf)Template:Compu-lang-stub