Вы находитесь на странице: 1из 8

Complex Information Processing

Paper #100
June 16 1967

CH4PTER VI

A GENERAL 'FRCBLEM-SOLVING PROGRAM

In the two previous chapters, we examined several problem-solving

systesis whose heuristics gave th&m some efficacy in particular task environ-

meats--theorem proving in logic in one instance, playing chess in the o£b,-*r

lz\ QWZ descriptions of these systeaasg we emphasised certain similarities

between their two task environments; in particular, that both task environ-*
ments can be represented as large mazes th&t most be searched very selec-

tively if the search is to be successful its any reasonable time.


If the structure of a problem-solving system is molded to a con-
siderable extent by the requirements of the situation, then we should find
similarities in the heuristice of the problem solvers corresponding to the
eommonslities in the structures of their environments <> In this we have not
been disappointed There were some particularly close resemblances in
esceeutive organization between LT, on the* one hand, and MATER, on the other*
Bcth uEed selective processes to generate new nodes on the search tree,than
picked off the top node on the "try-list" of unexplored terminal nodes to
generate new nodes the seerch and scan strategy.
There were also some very striking differences among the problem-
solving systems. LT did not s&k@ any great use, in its heuristics, of spec-
ific knowledge of symbolic logic, hence of whatever peculiar structure the
logic environment might possess. Information was drawn from the environment
by relatively general match processes (which determined from specific
expressions what constants'should'b« substituted for variables in crder to
snatch them) 9 tests for similarity between expresaions, and tests of tha
simplicity of expressions.
The selective heuristics of the chess programs 9 on the other hand.
made catch us© of specific ch<e$8 knowledge. The plausible moves generators

produced moves of particular types that are known, from chess experience,
to be often effectives developing moves, attacking moves, defending moves ,
pawn moves to control center squares 9 checking moves, and so on. To bs

sure, underlying some of these chess heuristics are general concepts (e.g,*
mobility) that are relevant is iraay competitive situations. These more

general concepts were net used as euch s however, in any of the prograa^s,
but were defined in specific terms appropriate to the game of chess.
In sum, many of the heuristics of LT might be made to carry over,
with little change, into other task environments; fewer of the heuristics
in the chess programs (other than the general se&reh-and-scan strategy)
appear to have direct applicability to other task environments<,
All the experience with chess programs suggests that they must be
provided with specific as well as general heuristics to play a tolerable,
saueh lens a good, game of chess. Nevertheless, heuristics that are general-

is&bla beyond a single environment 9 even if inadequate by themselves for


impressive performance in that environment, have considerable interest in
their own right. They seem to capture what we mean by "general intelligence,"

Place a problem-solving system in a task environment that it has not ex-


perienced before and has not been specifically programmed to handle. If it

behaves in a somewhat relevant manner--perhaps even succeeds in solving


simple problems--than we might say that it possesses some general intelligence s
JR.

over and above its capabilities for handling specific environments for
which it has specific heuristics»
It is generally conceived that normal human beings possess some
measure of general intelligence in this sense seme human beings more than
others« When a subject is brought into the psychological laboratory
or an examination roc a, and confronted with a task somewhat different frctc*
any he has seen be /re, he does not behave randomly 0 His behavior grad-

ually adapts itself to the requirements of the task environment.


In ths present chapter we will examine an information-process ing
system, the General Problem Solver (GP3), that was designed to exhibit
8O&& measure* of general intelligence that is, to behave in not irrelevant
ways in a variety of problem environments to which it was not specifically
adapted/ Actually, there are a number of different versions of GPS, rep-
resenf/.ag different stages of the research investigation Most of our die-
cusk'^n, will apply to all of the versions.
The research on GPS had a more specifically psychological racti^a-
rion than the research on LT and the chess programs described in the pre-
vious chapters., That is, the aim was not merely to produce a program that

sou-Id do human tasks in a somewhat humanoid manner (log., *>y u»iug highly
selective search instead of bruta force or systematic algorithms), but to

psroducd one that weald sicsslafe in some detail the processes that people
use to solve problems in a relatively novel task domain»

We need not r«df*e the issue b.ere s debated arsrr^ factor cisslysts,
there is a single factor that accounts for general intelligence, or
and if the latter, whether any one of these is completely general. Even
if we hypothesize a plurality of factors, most of these are not completely
specific to particular task environments.
GIF #100 - &-

In this chapter, however, as in the chapters that have preceded


it, we will give primary attention to the requirements of the situation
rather than to the processing limitations of the problem solver. We will

still be mostly interested in how the behavior of an information-processing,


system is molded by the structure of the task environment. In the follow-
ing chapters, we will tarn to the other side of the picture the character-
istics of the information processor as determinanats of behavior. GPS,
since it was designed with considerable concern for both aspects of problem-
solving activity, provides an appropriate bridge to carry us from the one
to the other.
2/
Generality ia Problem Solvers

Since the problem-solving systems that have been designed and


tested over the past decade or so have all been very ungeneral in important
respect?*, one way to get an insight into the question of generality is to
understand just how these systems have lacked it. There are three major

respects in which such a system may lack generality:


1. It may be unable to accept a problem, in order to go to work
on it* unless the problem .is presented in some special form or representa-
tion. Thus, the chess programs we have discussed can only accept problems
ia the form of chess positions requiring a move to be made, and these only
if the chess position is described in a special way in a special language.
2. When it accepts a problem, it may have to translate it in terms
of a particular language in order to represent it to itself that is,

2J Many of the ideas in this section are treated more fully in Newell and
Ernst (1965) and Ernst and Newell (1967).
CIF #100 -3-

internally during the problem-solving effort. Thus, LT represents logic


expressions internally as list structures of a certain kind; it is unable
to handle them in any other forme If a single internal representation
were the proper one for all problems, this would constitute no limitation
on problem-solving power. More likely, one of the sources of problem-solv-
ing power for an information-processing system is an appropriate (appropriate
for a particular kind of problem!) internal representation.
3. Its problem-solving techniques may be appropriate only to
specific problem domains.
Some attempts have been made in research on artificial intelligence
to push out all of these limits most such attempts focussing on only one
of them at a time. The sum total of progress to date can be regarded only
as a hint of the progress that will be needed before we understand fully
the problem of generality. It may be summarized, very briefly, as follows:

External Representation

Two ideas hav« been explored for presenting problems to the problem-
solving system as flexibly and "naturally" as possible. One of these is
to use natural language inputs. This is the way that those real-world prob-
lems come to us which are not sensed directly, hence a system prepared to
accept natural-language problem statements can deal with though not nec-
essarily successfully problems of that broad class.
Another attractive input language is one that simulates the stimuli
of visual perception. Visual stimuli, except those produced by strings of
letters or the like, are notoriously hard to describe in language. One

might hope that a problem solver equipped to accept both visual and natural-
language inputs would be prepared for most of the kinds of problems that
arise in th© real world.
Char own research has been only marginal 1j concerned with the gen-
erality of input languages,, so we will put these questions aside here, al-
though we will have something to say about aatuxal-language inputs in

later chapters«

ICaternal Repreaenta t ion

The well-recognised character is tics of natural language =»-its flex-


ibility 9 ambiguity,, and irregularity has aaade it appear to most researchers
a more suitable medium for external than for internal representation of
problems For Internal representation,, it is thought, one would like order
and lawfulness without loss of generality» The language that has seemed
to possess these qualities best is the language of symbol logic specifically,
the first order predlc&te calculus has been the most popular candidate. Th$
first order predicate calculus, though not completely general, is flexible
enough to permit reasonable translation of most natural-language state-
ments, and at the same time has a relatively simple, formalizable syntax.
The first order predicate calculus has been used as the language
for internal representation in a number of theorem-proving systems, as well
as in several systems for "everyday reasoning." In our own work, we have
not employed it, hence will not consider these particular investigations
here.,
An information-processing language of the kind described in Chapter
is a relatively general and flexible formalism for representing problems
CIJ? fl

internally, and is the formalism employed in most of the programs dis-


cussed here« The various objects that occur in problem statement, or that
are created in the course of problem solution, are represented by lists-
description lists, and list structures of various kinds. For example,

the chess board used in MATER is simply a large description list, in


which a square can have associated with it the attribute MAN, whose value
(If any) is the naise of the piece standing on that square (Beylor and Simon 9
1966}.

Problem-Solving Techniques

The third locus for generality is in the problem-solving techniques


embodied in a system. The general paradigm for problem solving that has

been developed in the previous t&o chapters may be called heuristic search 0
In heuristic search there ai*e two basic kinds of entities: objects and
operatorso A problem to be solved is stated by specifying or describings
(1) an initial situation represented as an object, (2) a desired situation
represented as an object, and (3) a set of operators capable of acting on
objectSo The problem then is to find a sequence of operators whose suc-
cessive application will transform the initial situation into the desired
situation.
The oparators genera£e ne-sr ebj*ets» fr?™ ol-d, ttiwti define a trees
of. objectss each node of the tree representing an object, and each branch
CIP $100 -35-

Conclusioa

It is time now to leave our description of GPS, and the dis-


ci as ion of its performance in various task domains, in order to turn to
the problem of confronting information processing-theories with data of
t
htuEfift performance o We have described in this chapter a particular problem-
solving program that achieves a certain measure of generality by relying
on very general processes of means-end analysis and planning for its prob-
lem-solving capabilitieso We have seen that it can in fact solve at least

elementary problems drawn from ® variety of task domains when appropriate


representations of the tasks are given it. In the next few chapters, we

©hall try to evaluate how far this program, and to a lesser extent the
programs discussed in previous chapters, can serve as a theory of human
problem solving»