retina is a parallel processor, and the perceptual primitives are the algorithms it executes. (Do not be misled by the term. "retina"; it refers to a general system of ...
WHISPER: A PROBLEM-SOLVING SYSTEM UTILIZING DIAGRAMS AND A PARALLEL PROCESSING RETINA Brian V. Funt Artificial Intelligence Laboratory" Stanford University, Stanford CA
ABSTRACT
l| t MECHANISM? ppff PIAQRAM INTERAPTION
Diagrams are of substantial benefit to WHISPER, a computer problem-solving system, In testing the stability of a "blocks world" structure and predicting the event sequences which occur as that structure collapses. WHISPER'S components include a high level reasoner which knows some qualitative aspects of Physics, a simulated parallel processing "retina" to "look at" Its diagrams, and a set of re-drawing procedures for modifying these diagrams. Roughly modelled after the human eye, WHISPER'S retina can fixate at any diagram location, and Its resolution decreases away from its center. Diagrams enable WHISPER to work with objects of arbitrary shape, detect collisions and other motion discontinuities, discover coincidental alignments, and easily update its world model after a state change. |, INTRODUCTION Diagrams are very important tools which we use daily In communication, information storage, planning and problemsolving. Their utility Is, however, dependent upon the existence of the human eye and its perceptual abilities. Since human perception involves a \/ery sophisticated information processing system, it can be argued that a diagram's usefulness results from its suitability as an input to this powerful visual system. Alternatively, diagrams can be viewed as containing Information similar to that contained In the real visual world, the canonical entity the human visual system was presumably designed through evolution to interpret. From this latter perspective, diagrams are a natural representation of certain types of primarily visual Information, and the perceptual system simply provides an appropriate set of database accessing functions. Both these viewpoints underly the work described in this paper. The role of diagrams is explored in a computer problemsolving program, named WHISPER, which refers to diagrams during its processing. A strong case for computer use of diagrams as models for Geometry has been made by Gelernter[1963], and as general analogical representations by Sloman[1971]. Hayes[1974] discusses the theoretical nature of these representations. WHISPER'S high-level reasoning component (HLR), built along the lines of traditional procedural Al problem-solving programs, has the additional option of requesting observations in a diagram. It does this by asking Its "perceptual system" to "look at" the diagram with Its parallel processing "retina". The questions that the perceptual system can answer are called perceptual primitives. If necessary, the HLR can also make changes to the current diagram. A major portion of this research was done at the University of British Columbia and is fully described in the author's PhD. theala[Funt 76].
The retina and perceptual primitives are designed to provide WHISPER with a new set of operations whose execution times are of the same order of magnitude as conventional machine instructions. To achieve this a high degree of parallelism has been incorporated into the system. The retina is a parallel processor, and the perceptual primitives are the algorithms it executes. (Do not be misled by the term "retina"; it refers to a general system of receptors and processors for the early stages of perceptual processing, rather than Implying any close resemblance to the human retina.) Each perceptual primitive, when executed by the retina, determines whether some particular feature is present in the diagram. WHISPER'S retina mixes parallel and sequential computation, so the features it can recognize are not subject to the same theoretical limitations that perceptrons [Mlnsky and Papert 1969] are. 11.1 The Retina WHISPER'S retina Is a software simulation of hardware which, given the rapidly advancing state of LSI technology, should soon be possible to build. It consists of a collection of processors, each processor having its own input device called a receptor. As with the human eye, WHISPER'S retina can be shifted to fixate at a new diagram location (also a feature of a program by Dunlavey[1976]), so that each processor's receptor receives a different input from the diagram. This fixation facility is important because the resolution of the retina decreases from its center to Its periphery. Without being able to fixate, it would be Impossible for WHISPER to examine the whole diagram in detail. Economy of receptors and processors dictates the use of decreasing resolution. (A declining resolution is also a characteristic of the human eye.) Each receptor covers a separate segment of the diagram and transmits a single value denoting the color of that region. The geometrical arrangement of the receptors and the area each covers Is shown in Figure 1. The "circles" In the figure are called bubbles, and they are arranged in wedges (rays emanating from the center) and ring? (one of the concentric circles of bubbles). The resolution varies across the retina because a larger portion of the underlying diagram is mapped onto a bubble depicted by a larger circle. Since the complete group of receptors Is assumed to sense and transmit ail signals In parallel, fixations are fast. Each retinal processor has direct communication links to Its 4 nearest neighbors plus one additional link via a common databus connecting all the processors to a supervisory processor called the retinal supervisor. The communication topology has been restricted in this simple way to ensure a feasible future hardware Implementation. The
bubble processors are each small computers with
ProMer*-Sol v in^-3 : U59
runt
I n d e p e n d e n t memory. They all simultaneously e x e c u t e the s a m e p r o c e d u r e ; h o w e v e r , each bubble does not necessarily e x e c u t e t h e same Instruction at the same time. In t h e c u r r e n t Implementation, a call to the LISP evaluator simulates a p r o c e s s o r ; and LISP mapping functions simulate the parallel control structure. A l t h o u g h t h e bulk of t h e processing of the perceptual p r i m i t i v e s Is done In parallel, t h e r e is also a small amount of s e q u e n t i a l p r o c e s s i n g which is performed by the retinal s u p e r v i s o r . The retinal supervisor also directs the parallel p r o c e s s i n g by choosing which procedure the bubbles should e x e c u t e n e x t and broadcasting i t t o them.
all t h e c o n t r i b u t i n g bubbles. If the computed center of area Is f a r from t h e r e t i n a ' s c e n t e r then Its accuracy can be Improved by f i x a t i n g t h e retina on the estimated c e n t e r of a r e a and t h e n recomputing. The decision to i t e r a t e is made by t h e r e t i n a l supervisor. The accuracy improves b e c a u s e more of t h e c e n t r a l , high resolution portion of the retina is used. The c e n t e r of area is used for more than simply providing the c e n t e r of g r a v i t y of the o b j e c t s in WHISPER'S problem domain. Other primitives (symmetry, similarity, and c o n t a c t f i n d i n g ) f i x a t e on a shape's c e n t e r of area before beginning t h e i r c a l c u l a t i o n s . For example, If a shape is symmetrical its c e n t e r of area will be on Its axis of symmetry. Another important primitive is visualization. What Is " v i s u a l i z e d " Is t h e rigid rotation of a shape about the retinal c e n t e r . While t h e shape is rotating the collision d e t e c t i o n p r i m i t i v e c a n be called as a demon to w a t c h whether the r o t a t i o n c a u s e s t h e shape to overlap with another stationary s h a p e . This is u s e f u l both In "blocks w o r l d " environments Involving moving o b j e c t s and In testing whether t w o shapes a r e e q u i v a l e n t under rotation. The process Is termed v i s u a l i z a t i o n b e c a u s e It does not Involve modifying t h e diagram, but I n s t e a d Is totally internal to the retina itself. It simply entails an organized and uniform exchange of Information amongst neighboring bubbles.
Figure 1
II.2 The P e r c e p t u a l Primitives Each p e r c e p t u a l primitive d e t e c t s a problem domain I n d e p e n d e n t diagram f e a t u r e . The HLR assigns t h e s e f e a t u r e s I n t e r p r e t a t i o n s pertinent to the problem It is solving. The c u r r e n t s e t of implemented perceptual primitives include o n e s t o : f i n d t h e c e n t e r of area of a shape; find the points of c o n t a c t b e t w e e n a shape of one color and a shape of a n o t h e r ; e x a m i n e c u r v e s for abrupt slope changes; t e s t a s h a p e for s y m m e t r y ; t e s t the similarly of shapes; and v i s u a l i z e t h e r o t a t i o n of a shape while watching for a collision w i t h another shape. The c e n t e r of area p e r c e p t u a l primitive is an Illustrative e x a m p l e of t h e general operation of the perceptual primitives. It computes the center of area of a shape r e l a t i v e to t h e origin d e f i n e d by the center of the retina. For e a c h p i e c e , A A , of t h e t o t a l area we need to compute the x a n d y components of Its contribution to the t o t a l area. Dividing t h e v e c t o r sum of t h e s e contributions by the t o t a l a r e a y i e l d s t h e coordinates of the center of area. Since e a c h r e t i n a l bubble r e c e i v e s its input from a f i x e d sized area of t h e diagram and Is at a f i x e d location relative to the r e t i n a ' s c e n t e r , e a c h bubble can independently compute t h e c o m p o n e n t s of Its contribution to the total area. The bubbles w h o s e r e c e p t o r s do not He over any part of the shape simply do not c o n t r i b u t e . The retinal supervisor performs t h e summation and t h e division by t h e total area. A s e p a r a t e p r i m i t i v e computes t h e t o t a l area. It simply totals the area of
The g e o m e t r i c a l arrangement of the bubble receptors Is w h a t f a c i l i t a t e s t h e visualization of rotations. From Figure 1 It can be s e e n t h a t aligning the bubble centers along w e d g e s r e s u l t s In a c o n s t a n t angular separation b e t w e e n bubbles of t h e same ring w h e n t h e y are from neighboring w e d g e s , and t h a t t h i s c o n s t a n t is independent of the ring chosen. Thus, to r o t a t e a s h a p e c l o c k w i s e each bubble marked by the shape simply s e n d s a message to its clockwise ring neighbor asking it to mark Itself. The sender then erases its own mark. A collision Is d e t e c t e d if a bubble receives a message to mark w h e n it Is a l r e a d y marked by a shape other than the rotating o n e . Although t h e shape Is r o t a t e d in sequential s t e p s , t h e time r e q u i r e d is still short because (I) there are, as a maximum, only as many s t e p s to be made as there are w e d g e s on t h e retina (currently 3 6 ) ; and (ii) all the message p a s s i n g and collision checking occurs in parallel during e a c h step. II.3 The Underlying Diagram We b e g a n w i t h t h e v i e w t h a t the retina Is a special purpose p a r a l l e l p r o c e s s o r designed to d e t e c t diagrammatic f e a t u r e s w i t h o u t s a y i n g anything about the precise nature of the diagrams t h e m s e l v e s . With the retinal processor In hand, we c a n now s e e t h a t t h e representation of the diagrams Is u n i m p o r t a n t as long as each bubble r e c e i v e s its c o r r e c t Input. This is analogous to a program which Issues a READ command w i t h o u t caring whether the Input is coming from a c a r d r e a d e r , a f i l e , or a terminal. The method of mapping from t h e diagram to t h e retinal bubbles' input must be f a s t , h o w e v e r , b e c a u s e t h e retina is re-filled everytime It is f i x a t e d at a n e w diagram location. T h e r e a r e at l e a s t t w o d i f f e r e n t t y p e s of representing media f o r t h e underlying diagram. The first is the conventional medium of visible marks on a two-dimensional s u r f a c e , usually paper. The map from diagram to human retina is a c c o m p l i s h e d by t h e lens of the e y e focusing the incoming light. Since t h e r e is simultaneous stimulation of t h e r e c e p t o r s , It Is a very f a s t process.
Problem-Solving-3: 460
Funt
The second possible type of diagram representation is similar to that used In generating computer graphics. The diagram Is specified as a list of primitive elements (in graphics applications, usually line segment equations), in a similar vein, Kosslyn [ 1 9 7 5 ] proposes that human visual Imagery is In some ways analogous to the storage and display of graphics Images. The parallel processing capacity of WHISPER'S retina can be used to quickly map each primitive element Into the proper bubble inputs. To mark ail bubbles lying on line segment, S, the retinal supervisor directs every bubble to determine independently if it is on S, and if so, to mark Itself. Since this simple test -- do a circle and a line segment intersect? -- Is performed by ail bubbles simultaneously, the time required is independent of the length of S. The same method can mark all bubbles within any simple shape such as a circle, square or triangle in time Independent of its area. Regardless of the type of primitive element, the time taken to "draw" the diagram on the retina is, however, proportional to the number of primitives in Its description. They must be processed sequentially. With the fast parallel processing of each primitive this should only pose a problem for very detailed diagrams. Due to the lack of true parallel processing, neither of the above two types of diagram representations is used In WHISPER. Instead, the diagram is implemented as a square array. Each array cell denotes a point on a real world, pencil and paper diagram. 11.4 The Re-drawing Transformations The re-drawing transformations are the procedures the HLR can call to change the underlying diagram. In WHISPER there are transformations for adding and removing lines, and for rigidly translating and rotating shapes. Other non-linear transformations could be added if required. These redrawing procedures are of course dependent upon the representation of the diagram they modify, and the ease and efficiency with which they can be implemented could affect the choice of diagram representation. III. WHiSPER IN OPERATION
Figure 2 IH.1 The Qualitative HLR The HLR is the top level of the WHISPER system. It is solely responsible for solving each problem; the diagram and retina are simply tools at its disposal. It consists of procedural specialists which know about stability, about the outcome of different varieties of instability, how to Interpret each perceptual primitive, and how to call the transformation procedures to produce the solution snapshots. There are two types of instabllites - rotational and sliding. For clarity, sliding Instabilities will not be discussed for the present. Operation of the system follows the steps: (1) determine all instabilities (2) pick the dominant Instability
With the basic mechanisms for interaction with the diagram now understood, It Is appropriate to see how they are used In the course of solving a problem. We will consider problems of the type: predict the sequence of events occuring during the collapse of a "blocks world" structure. The structure will be a piled group of arbitrarily shaped objects of uniform density and thickness. If the structure is stable, there are no events to describe; if it is unstable, then the events involve rotations, slides, falls, and collisions. WHISPER accepts a diagram of the Initial problem state, and produces a sequence of diagrams, called snapshots, as its qualitative solution. A quantitative solution specifying precise locations, velocitites, and times is not found; however, deriving one from a qualitative solution should not be too difficult [deKleer 1976]. Figure 2 Is a typical example of WHISPER'S Input diagrams. They all depict a side view of the structure. Each object Is shaded a different "color" (alphanumeric value) so it can be easily distinguished and identified. Objects' boundaries are also distinctly colored. The diagram depicts a problem, called the "chain-reaction problem", which is particularly Interesting because the causal connection between objects B and D must be discovered.
(3) find pivot point tor rotation of unstable object (4) find termination visualization
condition
of rotation
using retinal
(5) call transformation procedure to modify diagram as determined in step (4) (6) output modified diagram as a solution snapshot (7) use snapshot from step (6) as Input and restart from step (1). In what follows we elaborate on each of these steps. The diagram and retina are an invaluable aid to the HLR In discovering what stops an object's motion, and in accomplishing the necessary state change. The chain reaction problem demonstrates this. The stability specialist directs the retina to fixate at numerous locations while perusing the diagram, and from an analysis (discussed below) of the visible support relationships determines that B Is the only unstable object. B will pivot about the support point closest to its center of gravity. The retina Is fixated there (the top right corner of A), so B's rotation can be visualized. As the object rotates, two events are possible. It may
Problem-Solving-3 : 4 61
Funt
collide w i t h another o b j e c t , or It may begin to fall freely. The c o n d i t i o n s under w h i c h either of these occur are monitored during t h e visualization. From this simulation of B's rotation, its collision w i t h D is d i s c o v e r e d , and its angle of rotation and l o c a t i o n of f i r s t c o n t a c t w i t h D are found. Because of the c o a r s e n e s s of t h e retinal resolution, this angle of rotation is only approximate. This approximate value is used in c o n j u n c t i o n w i t h f e e d b a c k from the diagram to refine the angle of rotation as follows. First the re-drawing t r a n s f o r m a t i o n s are called to produce a new diagram in which B is r o t a t e d by slightly less than the estimated value. The r o t a t i o n is made on the short side so that B will not o v e r s h o o t . The r e t i n a is t h e n f i x a t e d on the a n t i c i p a t e d p o i n t of collision so t h a t the gap b e t w e e n the t w o o b j e c t s c a n be e x a m i n e d . If t h e r e is none, then the update is c o m p l e t e ; h o w e v e r , if t h e r e is, then B is rotated again until t h e gap Is c l o s e d . The resulting diagram is output as WHISPER'S f i r s t snapshot of the solution sequence. III.2 Motion Discontinuities and Experimental Feedback T h e r e a r e s e v e r a l Important observations to be made at this p o i n t . One is t h a t discovering the reason for the interruption of an o b j e c t ' s motion, accomplished so simply here for B t h r o u g h visualization, is generally found to be a v e r y difficult p r o b l e m . P h y s i c s provides equations for o b j e c t motions, but t h e s e e q u a t i o n s describe a condition which theoretically l a s t s I n d e f i n i t e l y . They do not indicate when new boundary c o n d i t i o n s should t a k e e f f e c t . Certainly it is possible to d e s i g n a s e t of s p e c i a l heuristics specifying when and w h e r e collisions are most likely to occur (e.g. below the rotating o b j e c t ) . H o w e v e r , it is quite probable that the collision occuring In Figure 3 would be overlooked, whereas WHISPER'S visualization process would definitely d e t e c t It.
u n i v e r s e as a possible candidate for a collision. O n c e WHISPER has produced the f i r s t snapshot, it is ready to c o m p u t e t h e n e x t one. AH the information the HLR needs for t h i s is c o n t a i n e d in the f i r s t snapshot diagram. Thus to p r o d u c e t h e n e x t snapshot, the HLR t a k e s its last output s n a p s h o t as input, and begins processing e x a c t l y as if It w e r e w o r k i n g on a f r e s h problem. Although some results d e r i v e d w h i l e w o r k i n g on the previous snapshot remain valid ( e . g . some c o n t a c t relationships will still hold), many will be i n a p p l i c a b l e to t h e n e w problem. It is easier to disregard this o l d information t h a n to sort It out and update it, since the r e t i n a p r o v i d e s a f a s t and e f f i c i e n t method of f e t c h i n g It f r o m t h e n e w diagram. HI.3 S u b s e q u e n t Snapshots of the Chain Reaction Problem T h e a n a l y s i s producing t h e second and third snapshots is v e r y similar to t h a t for the f i r s t . In Figure 4, B's weight on D c a u s e s D to be unstable. Its rotation is visualized with t h e r e t i n a f i x a t e d at t h e peak of C leading to the discovery of Its collision w i t h t h e table. The diagram is updated to p r o d u c e t h e s e c o n d snapshot, Figure 5, which is again input f o r f u r t h e r analysis. B now lacks sufficient support, and t o p p l e s to hit D again as shown in Figure 6. The complexity of t h e problem rises sharply at this point, and WHISPER'S a n a l y s i s e n d s , as, I b e l i e v e , would most peoples'. B a n d D could be shown to fall simultaneously (WHISPER c u r r e n t l y does not) by rotating D only part of the way to the t a b l e b e f o r e allowing B to c a t c h up, and then Iterating this p r o c e s s a f e w times until D reaches the table.
WHISPER relies on experimental feedback to s u c c e s s f u l l y u p d a t e Its diagram In Its method of visualization followed by g a p c l o s u r e . This method is basically a pragmatic equivalent to t h e u n f e a s i b l e e x p e r i m e n t of rotating the o b j e c t In t h e diagram by v e r y small increments until a collision occurs. Usually f e e d b a c k is thought of in terms of a robot immersed in a r e a l w o r l d environment. In WHISPER'S case, however, t h e f e e d b a c k Is from a situation analogous to that in t h e real w o r l d - t h e diagram and diagram transformations - rather than f r o m o b s e r v a t i o n of a c t u a l falling o b j e c t s [Funt 1 9 7 6 ] . Using t h i s f e e d b a c k WHISPER is able to find when and w h e r e d i s c o n t i n u o u s c h a n g e s in an o b j e c t ' s motion occur without b e i n g f o r c e d t o use s o p h i s t i c a t e d , time-consuming, "numberc r u n c h i n g " algorithms for touch t e s t s [Fahlman 1 0 7 3 ] (for a r b i t r a r y s h a p e s ) , and avoids considering e v e r y o b j e c t in t h e Problem-Solving-3 : 462
Punt
c o n t i n u a l l y c h e c k for the situation; (iii) that its check Involve t e s t i n g w h e t h e r t h e f i r s t o b j e c t touches any other o b j e c t in t h e u n i v e r s e ; and (iv) t h a t it know how to amalgamate the t w o s e p a r a t e c u r v e segment descriptions into a new curve d e s c r i p t i o n . For WHISPER there is no problem because t w o a l i g n e d s u r f a c e s of neighboring o b j e c t s form a continuous c u r v e in t h e diagram; WHISPER only has to look at this c u r v e , r a t h e r t h a n , in a s e n s e , discover or construct it.
Figure 6 III.4 Slide Problems
HI.6 The S t a b i l i t y Test
U n s t a b l e o b j e c t s may also slide. Although the basic outline of t h e solution p r o c e s s -- t e s t stability, find termination point of motion, u p d a t e diagram, output snapshot, restart with the o u t p u t as Input — Is the same, there are some essential d i f f e r e n c e s In handling sliding o b j e c t s . The most Important a r i s e s b e c a u s e It Is not possible to visualize the slide of an o b j e c t d o w n an arbitrary curve. What WHISPER'S does I n s t e a d Is e x a m i n e t h e curve itself with its retina.
A full discussion of WHISPER'S stability testing routines c a n n o t be given In the limited space of this paper; however, we shall give an Impressionistic view. Rather than solve the problem with a sophisticated general method, as Fahlman [ 1 9 7 3 ] did in his BUILD system, WHISPER s e e k s q u a l i t a t i v e solutions using rules corresponding to those a p e r s o n untrained In Physics might apply. The HLR has s p e c i a l i s t s which e x p r e s s rules like: "If an o b j e c t hangs over t o o far, It will t o p p l e " ; and "If an object and one of Its s u p p o r t e r s make c o n t a c t along a surface (rather than at a single point) and if this surface is not horizontal, then the o b j e c t will slide." A frictioniess environment is assumed.
A v a r i e t y of conditions can terminate an o b j e c t ' s slide. For e x a m p l e , t h e r e may be a sharp rise (a bump), a sharp fall (a c l i f f ) , or a hill which Is higher than the starting point. Also t h e o b j e c t may slide into another object resting on or near t h e s u r f a c e . WHISPER t e s t s for these conditions by f i x a t i n g at regular Intervals along the curve. At each point It invokes t h e p e r c e p t u a l primitives relevant to each of the above c o n d i t i o n s . There are some cases, for example when a plank s l i d e s o f f a b o x , w h e n WHISPER examines the surface of the u n d e r s i d e of t h e sliding o b j e c t . W h e n It finds t h e endpoint of a slide, WHISPER updates the diagram using t h e r e - d r a w i n g transformations In a t w o s t e p p r o c e s s . First, It t r a n s l a t e s the o b j e c t to the new point, and t h e n , If n e c e s s a r y , r o t a t e s It. A rotation is usually required, b e c a u s e If t h e c u r v e Is a not simple straight Incline, the o r i e n t a t i o n of t h e o b j e c t changes as It moves. WHISPER d e t e r m i n e s t h e magnitude of this corrective rotation by reestablishing, via rotation visualization, the contact r e l a t i o n s h i p s w h i c h e x i s t e d b e t w e e n the o b j e c t and the s u r f a c e prior to t h e s t a r t of the slide. Ml.5 B e n e f i t of t h e Diagram During SHde Analysis In t h e c u r v e examination and diagram update process, the diagram Is vory useful to the HLR In the course of curve f o l l o w i n g , as w e l l as providing feedback as it did In the case of r o t a t i o n s . The main pitfall in curve following is the p o s s i b i l i t y t h a t t w o o b j e c t s will coincidentally align so that a s m o o t h c u r v e Is formed across them both. An o b j e c t could t h e n b e g i n Its slide on one o b j e c t and continue sliding along t h e o t h e r as shown In Figure 7. This emergent property of t h e c u r v e must be n o t i c e d , and the t w o curve segments a p p e n d e d . In a s y s t e m relying on an independent description of e a c h o b j e c t , this would pose a significant problem b e c a u s e one would require: (i) that it have a built In e x p e c t a t i o n t h a t the situation might arise; (II) that It
Overall organization of t h e stability t e s t is based on the o b s e r v a t i o n t h a t a complete structure is stable If each of its i n d e p e n d e n t subparts is stable whenever their supporters are s t a b l e . An Independent subpart is any connected group of o b j e c t s which is not supporting anything. For example, In Figure 2 of t h e chain reaction problem the independent s u b p a r t s are o b j e c t s B, D, AB, and DC, but not A and C. Thus t h e Initial s t r u c t u r e is broken down into smaller s u b s t r u c t u r e s w h o s e stability as Individual units Is easier to t e s t t h a n t h e s t a b i l i t y of the structure as a whole. When their s t a b i l i t y Is t e s t e d , B and AB are found to be rotationally u n s t a b l e , while D and DC are found to be stable. Since B Is a s u b p a r t of AB, It Is the dominantly unstable o b j e c t , and t h e r e f o r e It Is t h e one r o t a t e d . If AB were unstable, but B s t a b l e , t h e n AB would be r o t a t e d (i.e. o b j e c t s A and B would be r o t a t e d t o g e t h e r as if t h e y w e r e a single o b j e c t ) . I n c i d e n t a l l y , t r e a t i n g t w o o b j e c t s like A and B as a single o b j e c t AB is another example of a situation in which t w o d e s c r i p t i o n s must be amalgamated, it is a trivial task for WHISPER to amalgamate t w o o b j e c t descriptions, since all It n e e d do Is I n t e r p r e t their t w o color codings as the same color. The s t a b i l i t y t e s t uses the diagram and retina to find c o n t a c t r e l a t i o n s h i p s , c e n t e r s of area, and slopes of c o n t a c t i n g s u r f a c e s . The symmetry perceptual primitive is used to a c c u r a t e l y e s t a b l i s h t h a t D in the chain reaction problem will balance.
IV. CONCLUSION WHISPER demonstrates the advantages and feasibility of using diagrams as an aid in problem-solving. A fundamental component of the system Is a retina which blends sequential and parallel processing while limiting the quantity of processors and processor interconnections to a fixed, not too large number. By asking questions of the retina, the HLR Is able to obtain the type of experimental feedback from the diagram which is normally expected only as a result of interaction with the real world. ACKNOWLEDGMENT I have benefitted from the Inspiration of Raymond Relter, Alan K. Mackworth, Richard S. Rosenberg, and Gordon McCalla. This research was supported by the National Research Council of Canada under grant A7642, and through the author's NRC Postdoctora* Fellowship. REFERENCES 1. deKleer, Johan. Qualitative and Quantitative Knowledge in Classical Mechanics. Cambridge, Mass.: MIT, M.Sc. Thesis, (1976). 2. Dunlavey, Michael. "An Hypothesis-Driven Vision System". Advance Papers of the Fourth International Conference on Artificial Intelligence. Tlbiiisl, Georgia, USSR, September 3-8, 1976, pp.618-619. 3. Fahlman, S. A Planning System For Robot Construction Tasks.AI TR 283.M.I.T. (May 1973). 4. Funt, B. WHISPER: A Computer Implementation Using Analogues In Reasoning. Tech. Report 76-9, Department of Computer Science, Unlv. of British Columbia.,! 1076). 6. Gelernter, H. "Realization of a Geometry-Theorem Proving Machine." Computers and Thought. Ed. E.A. Felgenbaum and J. Feldman. New York: McGraw-Hill, 1963, pp.134-162. 6. Hayes, P. "Some Problems Representation Theory." AISB Proceedings. July 1974, pp.63-79.
and Non-Problems In Summer Conference
7. Kosslyn, Stephen M. "Information Representation In Visual Images." Cognitive Psychology. Vol. 7 (1976), pp.341-370. 8. Minsky, Marvin and Papert, Seymour. Perceptrons: Aft Introduction to Computational Geometry. Cambridge, Mass.: M.I.T. Press, 1969. 9. Sloman, A. Interactions Between Philosophy and Artificial Intelligence: The Role of Intuition and Non-Logical Reasoning In Intelligence. Artificial Intelligence2 1971 ).209-226.
Problem-Solving-3:
Funt