« PreviousContinue »
GENERAL Detrow we Raphael (1973)
WL Now and
Show (1957) New (1981) Now and Tengo (1960)
ALGOL, ASSOCIATION W NASH-CODING
CHART 4: AL SYSTEMS AND LANGUAGES
LANGUAGES Sur, for emplo, Gertion (190)
PROCEDURE Nawell, Show
and Simon (1958b) Samuel (1959) Edwards and
Mart (1961) Single and
Dizon (1969) Fuller, Casting and Gillogin (1973)
PROGRAMS Kister, et al (1957) Newell, Shaw
md Simon (1958) Bernstein (1959)
GO Zobrist (1969) Ryder (1971)
COMPETENT CHESS PROGRAMS Greenblatt, et
al (1967) Berliner (1970) Levy (1990) Gillogiy (19721 Zobrist and
EARLY WONK ON
MEDICINE Kulikowski and
Worts (1972) Shorditte, et
ANALYSIS Buchanan, at di (1969) Buchanon and
ORGANIC CHEMICAL SYNTHESIS Corey (1969) Sridheron (1971, 19730,6)
VACE PLANNING Enamen (1971)
ANALYSIS Waterman and Nawe (1971, 1978
CHART 6: MATH, SCIENCE AND ENGINEERING AIDS
See, for sample,
Green, at si (1961)
Oettinger (1963) PREPROCESSOR
REWRITING STUOENT AND SUR
Simmons, a w (1964)
Enes and Colby
SHRDLU Weg (1971)
ENGLAW Coles (1972)
STORIES Chermind (1977
Welles, a (19600
und Aunen (1998) Wilker (199) Barton (1932
CHART 12: INFORMATION PROCESSING PSYCHOLOGY
that these useful ideas seen so familiar in Al research today testifies to the success of this early work. But the very cleanness of puzzles allowed researchers to avoid facing what has turned out to be the key problem, namely dealing with knowledge, huge amounts of knowledge, diverse, cluttered and interrelated.
question-answering, and common-sense reasoning. First attempts to build such universal systems were unsuccessful in the incorporation of the necessary domain-specific knowledge and techniques and, as far u I know, there are at present no serious advocates of a simple universal system.
Question-answering. As one step toward facing the problen of dealing with knowledge, several researchers concentrated on building interential questionanswering systems. (See, in particular, the references listed under SIR, QA2, and QA3 in Chart 1.) Such systems should be able to store a large number of facts and should be able to respond to reasonable questions whose answers could be deduced from these facts. These systems required mechanisms for logical inference and led Al researchers into a romance with logic in general and with Robinson's resolution principle in particular. (See Chart 7.) This line of research clarified our concepts of applying Inference techniques to common-sense knowledge and led to various useful schemes for associative retrieval of stored data. We also learned that for large question-answering systems the question of when to use inference be thods was more important than the nature of the interence mechanism itself. Thus, we learned that we would need large amounts of secondary knowledge about how and when to use the primary knowledge of the domain.
At the opposite extreme of this controversy, however, are the proponents of what I would call ad hocism. To them, following any systenatic approach 18 anathema. Each task should simply be prograaned on its own using whatever tricks night be needed. There is no doubt that this kind of opportunisu is healthy for * growing field still in search of its general principles. Still, the following point must be made against rampant ad hocism: One part of developing a science is to discover those concepts that are important. We must try to produce intelligent behavior out of systems limited to various combinations of trial concepts. Our failures tell us where our present concepts are weak and give us hints about new ones that might be needed. If our trial concepts are always allowed the crutch of ad hocism, we do not learn enough about where the concepts are weak.
Another controversy concerns how much knowledge we ought to give our reasoning programs. At one extreme are researchers who insist that the program should be given only some basic premises from which it must derive any intermediate knowledge it needs to arrive at an answer. At the other (and impossible) extreme, programs would be provided explicitly with answers to all problems. There are some who feel that derivation of answers ultimately will play such a large role in intelligent systems that we may as well concentrate now on derivation techniques. To force derivation, they tend to work with knowledgeimpoverished systems.
Common-sense reasoning. In 1958, McCarthy proposed an ADVICE-TAKER that would be able to accept knowledge and use it to deduce answers to questions and to figure out simple plans for courses of action, One night ask such a system, for example, how to get to Timbuktu (a favorite example of McCarthy's). If the system knew about airline schedules, airports, how to get to airports, and other common (but immensely diverse) knowledge, it might answer thus: (1) go to your travel agent and find out about Ilights to Timbuktu, (2) using this information, select a flight and make a reservation, (3) drive to the airport at the appropriate time, (4) park your car, and (5) get on the appropriate airplane. Each of these steps, of course, could be expanded in detail.
Problems of this sort are clearly not as clean as puzzles; they denand the use of large amounts of knowledge; yet they have in common with puzzles the feature of planning a course of action to accomplish
The consensus just now emerging from this controversy is that, because of combinatoric problems, an intelligent system probably will be able to make only reasonably direct derivations at any stage. Thus, to deal with a large domain, such a system must begin with a large skeletal network of basic knowledge about the domain and knowledge about how to use its knowledge. Any excursion from the known (explicitly represented) knowledge into the unknown (derived) can thus be well-guided (1.e., practical) even though the "volume" of the unknown part itself can be extremely large. It is senseless to insist that, to answer a single question, an intelligent system must repeat the tedious trial and error evolution of a large part of our cultural and scientific knowledge to say nothing of possibly having to repeat much of biological evolution itself. Even the "let's derive all" school would agree. What members of this school and some others did not realize was just how much knowledge would finally be needed by intelligent systems. Given this realization, the only possible course is to build "knowledge-based" programs.
Robotics research (see Chart 9) has probably contributed the most to our knowledge of how to generate plans based on large amounts of common-sense knowledge, Researchers at NIT, using an arm in a domain of simple blocks (called the BLOCKS world) and at SRI using a mobile robot in a domain of corridors and roons, have developed various reasoning systems that can generate plans of action for a robot. 01 these, we night mention in particular STRIPS, SHRDLU, and HACKER (see Chart 1).
2.2.2 Modeling and representation of knowledge
There has been a lot of useful internal controversy about how to build reasoning systens and about the best directions for research. For a while, there was hope in some quarters that some universal systen (based, for example, 11ke QA3 on Robinson's resolution principle) could be used for all of the tasks we have mentioned so far: puzzle-solving,
Our ideas about how to represent knowledge have come from several of the applications aress. (Quite Ninsky (1974) guesses that a knowledge-based system reasoning about visual images (a system such as night be possessed by • typical human) "might need • few millions, but not billions, of structural units, interconnections, pointers."
obviously, every AI program uses some representational scheme. We cite in Chart 2 just a few of the important contributions.) Researchers in machine vision and perception and in natural language understanding were perhaps the first to realize how much knowledge would be needed by high performance programs. These two applications areas have thus probably contributed the most to our repertoire of representational techniques.
(the goal of being at the airport), how are we to deal with certain difficulties arising when new information is received prior to executing the plan. Suppose, for example, someone tells us that our automobile is out of gasoline so that now our plan (that called for driving to the airport) will not work. We had proved that it would, and now new information has rendered the proof invalid even though all of the information on which the original proof was based is still present. Hayes (1973) discusses this violation of the "extension property" and shows the close connection between the qualification problem and the frame problem. Systen builders (e. 8., Hewitt (1969) and Rulitson et al. (1972)) have invented certain constructs that apparently get around these difficulties, although in a way that 1s somewhat unsatisfactory to logicians.
The systems mentioned in Chart 2 cover some of the major suggestions. For example:
Green (1969a,b,c): Statements in the first order predicate calculus. Quillian (1968): Concept nodes in a graph structure linked by various relationships, Schank et al. (1972): Canonical concept structures having "slots" for case information. Hewitt (1969,71) and Winograd (1971): Patterninvoked procedures plus assertions. Rulifson et al. (1971): Pattern-invoked procedures plus special list structures such as n-tuples, bags and sets with property lists all organized in a discrimination net. Newell (1967): Sets of productions organized as Markov tables. Minsky (1974): Hierarchically organized structures called "frame systems." These have "free variables" (analogous to Schank's slots) that can be matched against constants occurring in the data to be analyzed.
We are still quite a way, it seems, from having a sound theoretical basis for knowledge representation, 'It is my view that the necessity of developing large and complex reasoning systems will produce the new concepts out of which the needed theories will be constructed.
2.2.3 Heuristic search (Chart 3)
For a period there was some controversy over whether knowledge should be represented assertionally or procedurally. (As an extreme case, a spiral, say, can be represented assertionally by a list of the points in the plane through which it passes, or it can be represented procedurally by a program that draws it.) Some thing of a cult was made of the "procedural embeading" of knowledge, but this controversy seems to be settling down now to an acceptance of the value of a combination of assertional and procedural knowledge.
One of the first results of early AI research was the development of a point of view toward problem-solving some times called "the heuristic search paradigm." There are two closely related versions of this paradigm. In one, a "problem" is transformed into the canonical problem of finding a path through a "space" of problem states from the initial state to a goal (i.e., solution) state, In the other, a problem is "reduced" to various subproblems that are also reduced in turn (and so on) until the ultimately resulting subproblems have trivial or known solutions. Each version is merely a slightly different way of thinking about basically the same problem-solving process, In each, the process involves generating alternative paths toward solutions, setting up certain key milestone states (or subproblems), and managing search resources wisely to find acceptable solutions.
Another concern, having antecedents in logic, is how to represent certain "modal" concepts involving time, necessity, possibility, and so forth. McCarthy & Hayes (1969) have analyzed some of the difficulties in formalizing these concepts; meanwhile, Hendrix (1973) and Bruce (1972) have developed systems that begin to deal with some of them.
The word "heuristic" is used because these techniques emphasize the use of special knowledge from the problem domain that "aids in discovering a solution" by drastically reducing the amount of search that would otherwise have to be employed, often this knowledge takes the form of "rules-of-thumb" that help to limit or direct the search. Sometimes there are constraining relations that can be employed to limit the search needed. (A good example of the use of constraints is the work of Waltz (1972).)
McCarthy and Hayes (1969) also discuss two fundamental problems concerning representation and reasoning. One is called the frame problem, and it concerns certain difficulties of model maintenance. If we have a representation of the world at a certain instant (based on observations and a priori knowledge), how should we represent and use "laws of physics" to update the model so that it represents the world (reasonably accurately) at some future instant? if a robot removes a book from a shelf, can we assume that a door across the room remains open without having to derive this fact or observe it again? There are several ways of dealing with this problem, e.g., Green (1969), Fikes and Nilsson (1971), Sandewall (1972), and Hewitt (1969). These are nicely discussed by Hayes (1973).
I have already referred to some of the heuristic search paradigm ideas (subgoals, reasoning backwards, and so on) as being basic to common-sense reasoning, deduction, and problem solving (Chart 1). Here (in Chart 3), we want to cite mainly those aspects of heuristic search dealing with the search process itself. Once a problem is represented as a search problem, how can a solution be found efficiently?
The searching occurs in one of two graph structures, ordinary graphs (or trees), and AND-OR graphs (or trees), depending on whether the problem is viewed as one of finding a path to a goal state or one of reducing problems to subproblems, respectively. The search techniques that have been developed (by workers in AI, control theory, and operations
Another problem is the qualification problem. 11 a system uses its representation to "prove," say, that a certain plan will achieve a desired goal