Asia
An experiment in knowledge-based automatic programming
Human programmers seem to know a lot about programming. This suggests a way to try to build automatic programming systems: encode this knowledge in some machine-usable form. In order to test the viability of this approach, knowledge about elementary symbolic programming has been codified into a set of about four hundred detailed rules, and a system, called PECOS, has been built for applying these rules to the task of implementing abstract algorithms. The implementation techniques covered by the rules include the representation of mappings as tables, sets of pairs, property list markings, and inverted mappings, as well as several techniques for enumerating the elements of a collection. The generality of the rules is suggested by the variety of domains in which PECOS has successfully implemented abstract algorithms, including simple symbolic programming, sorting, graph theory, and even simple number theory. In each case, PECOS's knowledge of different techniques enabled the construction of several alternative implementations. In addition, the rules can be used to explain such programming tricks as the use of property list markings to perform an intersection of two linked lists in linear time. Extrapolating from PECOS's knowledge-based approach and from three other approaches to automatic programming (deductive, transformational, high level language), the future of automatic programming seems to involve a changing role for deduction and a range of positions on the generality-power spectrum.
Purposive Understanding
... we began to program a computer understanding system thatwould attempt to process input texts. An item crucial to our ability to accomplishthis task was what we called a script. A script is a frequently repeated causalchain of events that describes a standard situation. In understanding, when it ispossible to notice that one of these standard event chains has been initiated,then it is possible to understand predictively. That is, if we know we are in arestaurant then we can understand where an "order" fits with what we justheard, who might be ordering what from whom, what preconditions (menu,sitting down) might have preceded the "order", and what is likely to happennext. All this information comes from the restaurant script.Hayes, J.E., D. Michie, and L. I. Mikulich (Eds.), Machine Intelligence 9, Ellis Horwood.
The Inference of Regular LISP Programs from Examples
—A class of LISP programs that is analogous to the finite-state automata is defined, and an algorithm is given for constructing such programs from examples of their input-output behavior. It is shown that the algorithm has robust performance for a wide variety of inputs and that it converges to a solution on the basis of minimum input information.IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS, VOL. SMC-8, NO. 8,
DENDRAL and Meta-DENDRAL: Their applications dimension
Buchanan, B. G. | Feigenbaum, E. A.
Retrospective on lessons learned from the Dendral project."The DENDRAL and Meta-DENDRAL programs are products of a large, interdisciplinary group of Stanford University scientists concerned with many and highly varied aspects of the mechanization of scientific reasoning and the formalization of scientific knowledge for this purpose. An early motivation for our wok was to explore the power of existing Al methods, such as heuristic search, for reasoning in difficult scientific problems. Another concern has been to exploit the AI methodology to understand better some fundamental questions in the philosophy of science, for example the processes by which explanatory hypotheses are discovered or judged adequate. From the start, the project has had an applications dimension. It has sought to develop "expert level" agents to assist in the solution of problems in their discipline that require complex symbolic reasoning. The applications dimension is the focus of this paper."Artificial Intelligence 11 (1-2): 5-24
Non-resolution theorem proving
Earlier work by Newell, Simon, Shaw, and Gelernter in the middle and late 1950s emphasized the heuristic approach, but the weight soon shifted to various syntactic methods culminating in a large effort on resolution type systems in the last half of the 1960s. It was about 1970 when considerable interest was revived in heuristic methods and the use of human supplied, domain dependent, knowledge. It is not my intention here to slight the great names in automatic theorem proving, and their contributions to all we do, but rather to show another side of it. For recent books on automatic theorem proving see Chang and Lee [19], Loveland [44], and Hayes [31]. Also see Nilsson's recent review article [61]. The word "resolution" has come to be associated with general purpose types of theorem provers which use very little domain dependent information and few if any special heuristics besides those of a syntactic nature. It has also connoted the use of clauses and refutation proofs. There was much hope in the late 60's that such systems, especially with various exciting improvements, such as set of support, model elimination, etc., would be powerful provers. But by the early 70's there was emerging a belief that resolution type systems could never really "hack" it, could not prove really hard mathematical theorems, without some extensive changes in philosophy.
Generating project networks
Austin Tate Department of Artificial Intelligence University of Edinburgh Edinburgh Scotland Abstract Procedures for optimization and resource allocation in Operations Research first require a project network for the task to be specified. The specification of a project network is at present done in an intuitive way. AI work in plan formation has developed formalisms for specifying primitive activities, and recent work by Sacerdoti (1975a) has developed a planner able to generate a plan as a partially ordered network of actions. The "planning: a joint AI/OR approach" project at Edinburgh has extended such work and provided a hierarchic planner which can aid in the generation of project networks. This paper describes the planner (NONLIN) and the Task Formalism (TF) used to hierarchically specify a domain. Current work in Operations Research (OR) and Artificial Intelligence (AI) has concentrated on different aspects of the problem. We have taken an interdisciplinary approach in the hope that this will lead to a development of both these aspects. In the OR approach, the planning process falls into two stages. The constituent "jobs" of a plan are specified together with their precedence relationships (i.e.