RAMOS (ID:7301/ram004)

Rule-based graphcial analysis system 


for Recovery and Manipulation of Situations

Robin Stanton's heuristic approach to graphical description

Initially at Department of Electronic Computation, University of New South Wales University of New South Wales then at Canberra Division of Computing Research, CSIRO as part of the VERBIGRAPHICS research group including Marin Clowes

Based on the ring structures in Sketchpad and Coral, but with a gestural basis; written in PLEXPACK

Constraint system itself based in part on Logical Theorist


Related languages
CORAL => RAMOS   Influence
PLANNER => RAMOS   Influence
PLEXPACK => RAMOS   Written using
REF-ARF => RAMOS   Influence
RAMOS => Picture Language   Influence

References:
  • Stanton, RB "Plane Regions: a Study in Graphical Communication" view details
          in Kaneff, S. (ed) Picture Language Machines: Proceedings of a Conference held at the Australian National University, Canberra on 24-28 February, 1969 view details
  • Stanton, R. B. "The recovery of descriptions in graphical communications," Doctoral dissertation, Dep. of Electron. Comput. Univ. of New South Wales, Sydney, NSW, Australia, May 1970. view details
          in Kaneff, S. (ed) Picture Language Machines: Proceedings of a Conference held at the Australian National University, Canberra on 24-28 February, 1969 view details
  • Stanton, R.B. "The interpretation of graphics and graphic languages" pp144-160 view details Abstract: Computer processing of graphical data can be divided into two broud categories, by drawing a distinction between those systems which attempt to interpret the data as a 'picture' and those which do not. We are here concerned with the former whilst acknowledging that the majority of computer graphics systems belong to the latter.

    Research into the interpretation of graphics has been motivated primarily from two sources. The first is simply the desire to realise in man-machine communication the kind of descriptive power supported by the use of graphics in man-man communication. The second springs from working with a data base of information which is most conveniently recorded in graphical form (e.g. maps, engineering drawings, etc.). The quality associated with this kind of interpretation is captured by the idea of the 'machine perception of graphics'. The acceptance of this idea places computer graphics and with it, graphic languages, in a cognate position with respect to picture interpretation and scene analysis, although there are, of course, important differences. The body of the paper is concerned with reviewing the status of graphical languages given that the task  for which they have to be suited is one of interpretation. Extract: RAMOS
    In Stanton (1970) a language, RAMOS, for recovering the interpretations of graphics is described. The language derives from the idea that graphics represent. That is, that graphical structure and problem structure are bound together under a relation of representation. The basic data types are objects, together under a relation of representation. The basic data types arc objects, attributes, relationships and sets. A complex of interrelated objects and their attributes is called a situation. For example, a situation described as "a line having an end point inside a circle" could be expressed as
    (Ll:LlNE L2.END(LI) L3:CIRCLE INSIDE(L2,L3))
    where Ll, L2, L3 are labels, LINE and CIRCLE are objects, INSIDE is a rclationship and END is an attribute having as value a POINT object. The rules allow new entities to be described in terms of situations and a set of directives.

    The rule form is as follows:
    NAME D1 (SITUATION) D2 (SITUATION). . . . Dn (SITUATION)

    The directives (D's) allow descriptions to be built up in terms of procedural notions. They are selected from the following set:
    1. G - (Given) the situation has been 'passed' to the rule, i.e. it is a known context
    2. F - (Find) find a particular instance of the situation
    3. NF - (Not Find) the situation must not be one which can be found
    4. FA - (Find All) find all instances of the situation
    5. FO - (Find Once) find any instance of the situation (i.e. all possible instances have the same status so there is no need to look for an alternative)
    6. C - (Create) create the situatjon in the data base
    7. R - (Return) return the situation as the value of the rule

    The system has three components; the set of rules, the data base and the acceptor. The data base is a ring based plex structure comprised of components which directly represent objects, attributes and their values, sets and relationships. Data structure is formed by using the create directivp, effectively putting structure assignment and choice of representation under the control of the User. For example, the user can represent a line either in terms of related point objects or as an object having two end-point attributes.
          in Nake, F. and Rosenfeld, A. "Graphic Languages" Amsterdam: North-Holland Publishing Company 1972. view details
  • Shapiro, Linda G. and Baron, Robert J. "ESP³: A Language for Pattern Description and a System for Pattern Recognition" view details Abstract: Most graphics languages are composed of a primitive set of commands which allow for the creation and manipulation of graphical objects. These commands are generally at a low level, in that each command causes one operation to be performed. Often the commands are to subroutines embedded in an algorithmic language so that the arithmetic and control features of the higher level language may be used.ESP3 (Extended SNOBOL Picture Pattern Processor) is a new high-level graphics and pattern recognition language. ESP3 was designed in an effort to provide simple, natural, and efficient manipulation of line drawings. ESP3 differs from present graphics languages in the following ways:1) It provides a high-level method for picture construction. The evaluation of a picture expression (analagous to the SNOBOL4 string-valued expression) causes the construction of a picture.2) It provides extensive referencing facilities for naming and accessing points, subpictures, and attributes of pictures.3) It provides predicates for testing attributes of and relationships among pictures and points.4) It provides a means for defining picture patterns that describe classes of line drawings in much the same way that SNOBOL4 patterns describe classes of strings. Picture pattern matching is a built-in facility.ESP3 is based on the premise that structural descriptions are an essential part of both picture construction and pattern recognition. The concept of a structural description of a picture has its origin with the linguistic-approach to pattern recognition. In the linguistic approach, formal grammars are used as a mechanism for picture description. [Kirsch (1964), Narasimhan (1964, 1966,1970), Anderson (1968), Evans (1968), Miller and Shaw (1969), Fu and Swain (1971), Shaw (1970, 1972), Chien and Ribak (1972), Thomason and Gonzalez (1975)]. Stanton (1970) described a graphics language based on linguistic pattern recognition. ESP3 incorporates and extends many ideas from the above work, and includes all of the features of SNOBOL4 to provide a high-level graphics and pattern recognition language. Some suggested applications of ESP3 are the generation of graphical output, AI programs with imaging capabilities, pattern recognition systems, and scene analysis programs.This paper will describe picture construction and pattern recognition in ESP with emphasis on picture construction. Some tests performed with an experimental version of ESP3 will also be discussed. For a more detailed description of ESP3, see Shapiro (1974).

    Extract: RAMOS
    All of the above studies used structural descriptions of pictures, but none of them attempted to provide a general programming language with pattem recognition capabilities. Stanton [20] did provide a graphics language, Recovery and Manipulation of Situations (RAMOS), based on linguistic approaches. RAMOS rules and ESP3 patterns do have some similarities, but the philosophy behind a pattem match is essentially different. The RAMOS routines search a data structure for an object described by RAMOS rules. The ordering of objects in the data structure has no relation to the special characteristics of the picture that the data structure represents. On the other hand, ESP3 routines search a special representation of a picture to find the left topmost subpicture which matches a given ESP3 pattern.

          in IEEE Transactions on Software Engineering (TSE) 3(2) 1977 view details