Motor Knowledge Representation
Proceedings of the Ninth International Joint Conference on Artificial Intelligence. Robotics. Pages 1110-1111.
© 1985 International Joint Conferences on Artificial Intelligence
Abstract
The motor control problern is considered in the framework of knowledge representation. In the AI/ Robotic world, a formal IIOdel for 110tor knowledqe should fill a qap between task planning and low level robot languages; such model should be able to "virtualize" the robot and the interaction wi th the environment so that the planner could produce (and rely on) high level abstract actions, characterized by high autonomy and skill. The paper discusses some qeneral aspects about actions, actors, and scenes, and describes the NEM lanquaqe, which is able to represent and animate humanoids in a scene and is meant to provide a software laboratory for experimenting with action schemas .
- BADLER NI, SMOLIAR SW (1979} Digital representation of human movement, ACM Comp. Surv. 11:1
- BENATI M, GAGLID S, MORASSO P, TAGLIASCO V, ZAC- CARIA R (1980} Anthropomorphic robotics. Biol. Cybern. 38:125-150
- BONNER S, SHIN KG (1982} A comparative . study of Robot Languages, IEEE Computer, 15:12
- BINFORD TO (1982} Survey of model based image analysis systems. 1:18-64 Intern. J. Robotic Research HINTON G (1984} Some computational solutions to Bernstein problems. In WHITING HTA (Editor} Human motor action -Bernstein reassessed. Elsevier Sci- ence Publ. BV (North Holland}: 373-412
- LOZANO PEREZ T (1982} Task planning. In BRADY M et al ( edi tors} Robot motion: planning and control. MIT Press, Cambridge, MA
- MARINO G, MORASSO P, TROIANO E, ZACCARIA R ( 1984} Representing Motor Knowledge, Proc. AIMSA84 Conf., Varna, Bulgaria WEINREB 0, MOON 0 ( 1980} in the LISP Machine. Flavors: Message Passing Artificial Intelligence Labaratory Technical Report 602, MIT press, Cam- bridge, MA
References were extracted automatically from the PDF and may contain errors.
Full text extracted automatically from the PDF; figures, tables and equations may differ. The PDF is the version of record.
1. Introduction
In the AI/ Robotic world, a formal .odel for "110toric" knowledqe (Marino et al., 1984) should fill a gap between task planning (Lozano Perez, 1982 ) and low level robot languages (Bonner and Shin, 1982); such a model should be able to "virtu alize" the robot and the interaction with the environment so that the planner could produce (and rely on) high level abstract actions, characterized by high autonomy and skill. This problern is strongly re1ated to that of modeling and simulating the human body and its movements (Bad1er and Smo liar, 1979) . This paper briefly reviews a formal 1anguage , ca11ed NEM, for the representation and animation of "movinq entities", or actors (e . g. humanoids), in a scene . Geometrie, kinematic, dynamic aspects are al1 tight1y interrelated for any ski11. In genera1, however, it is convenient to distinguish, for an actor, two different leve1s of "know1edge" of the particular aspect of a skil1: i) a qualitativejs}'lllbolicjexplicit level, and ii) an implicit/analoqic/quantitative one; NEM is intended to support the second 1eve1.
An action is a change in the relation between an actor and its surroundinq . If we now associate with each feature of the scene a local system of Coordinates (a fra.e (*) ), the action can then be viewed as a stream of variations of some of the mutual relations between local coordinate systems, due to a stream of 110tor comaands.
The whole scene can thus be described as a "forest" of frames, linked to features, grouped together conveniently when referring to a common structure (an actor, an object, a family or a part thereof). Ensembles of frames can only represent, in a direct way, the "skeletric" structure of actors or objects; if smoother and more detailed representations are needed, it wou1d be necessary to associate appropriate "shape formation" attri butes with frames and frame ensemb1es. This points out the problern of interfacing an action oriented system with solid mode1ing concepts (Binford, 1982) and with techniques of path planning and obstacle avoidance (Lozano Perez, 1982).
2. NEM: a lanquaqe for representinq actors, scenes, actions
The NEM language has been designed to provide a procedura1, non-hierarchical representation of motoric knowledge. NEM is intended: i) to define and model (potentially) moving entities ("objects" or "actors"); ii) to describe the movement of an entity as a whole, or of groups or parts of enti ties.
Object/Actor representation is based on an atomic e1ement called Geometrie Frame (GF), by which Geometrie Frame Structures (GFS) can be bui1t . GFSs provide objectjactor modeling in ~~rms of skeletons of articulated chains, whose basic e1ement is a tree of GFs. NEM objects are general and hierarchical: "limb", "man", "quadruped", "tab1e", "crowd" are legal parameterized (families
of) entities .
Moving objects are called Actors. An Actor's
movement is described by means of scripts called Motions. Motions are abstract, non-hierarchical procedural descriptions of movement for single objects, parts or groups of them, or generaliza tions of objects (families). A motion can adapt itself to a particular object in a family: for example, a script "animal_walk" could fit, at some level of detail, different actors like a "spider" or a "dog". Metions are built by composition, or specia1ization of other motions. Metions can express, at a certain level, geometric reasoning, both static ("is the book over the chair ?") and dynamic ( "may john reach the book without walk ing ?"). Finally, motions allow expression of com mon sense motoric knowledge (that we may call "co. IIIOn skil1 knowledge"): naive physics concepts (such as "gravity", "equilibrium", "collision", "pushing" and so on) can be easily defined in terms of general virtual motions.
(*) This kind of "frames" has nothing to do with Minski's; they come from analytic geometry.
NEM has three components: i) an algebra, called Frame Algebra Notation (FAN), which manages GFSs; ii) atomic motor primitives and their seman tics ("Priai.tives"); iii) rules of superimposition or composi tion of motions and primitives, called Constructs. They are the operators with which we can build .otions.
2 .1. Fraaas and Notions
The atomic datum in NEM is the frame, which corresponds to an orthogonal system and is represented by means of a 4 x matrix. Homogeneous matrices translation/rotation of the given respect to an ancestor frame. of reference 4 homogeneous express the frame with
Frames are used to identify significant points of an object/actor. For example, a simple pyramid can be defined by the following GFS:
@ ENV FRAME PYRAMID
@ PYRAMID FRAME VERTEX 1 VERTEX 2 VERTEX 3
where ENV is the "universe" frame (the environment) and "@" is an operator which refers a frame to its ancestor. The definition of a GFS and its corresponding initialization can be embedded into a parameterized definition block and instanciated several times.
At the. lowest level, FAN semantics guarantees the computability of all spatial relations. How ever, FAN provides functions at different higher levels: GFSs can be dynamically generated and des troyed; frames can be assembled/disassembled into their components; functions can be defined and so on. For example, the script POS(ADAM'MOUTH @ EVE'R'HAND) gives the geometric relation existing at a Adam's mouth and Eve's certain instant between right hand. Finally, a frame can be referenced by its position inside a
GFS (its "patbna.e") rather than by its name.
Pathnames IS_DEF( and related functions (such as <pathname> function), which tests the the existence of a GFS element, allow motion scripts to fit families of similar structures.
A motion is a collection of three components : i) frames and declarations of variables, ii) motor primitives and iii) instances of other motions. Any component may be missing: for example, a motion can simply embed an object definition. Metions are usually active concurrently; frames and variables binding is dynamic.
The atomic element for motion construction is the priaitive .otor operator (PMO). PMOs are inspired by anthropomorphic mechanics and are defined at two levels: i) joint 1eve1, and ii) 1~ 1eve1. The PMOs of the former type move a frame, whereas the PMOs of the latter type affect chains of frames by specifying the motion of the "end effector" (they solve the inverse kinematic problern (Benati et a1., 1982)) . More abstract operators are also defined: for example, temporary linking an end effector with some moving frame (passive motions) , or "reversing" a chain ( "move the hip with respect to the foot").
Composite Metions are defined by composing PMOs and/or composite motions already defined. Com positions can be made in different ways:
sequential execution:
ACTION 1 1 ACTION_2 1 ACTION_3 J ·· ·
(where <ACTION> stands for a PMO or a motion;
parallel execution:
ACTION 1 5 ACTION 2 5 ACTION 3 5 ·.·
guarded execution:
WBILE EVENT DO ACTION WAIT EVENT DO ACTION PERFORM ACTION 1 EXCEPT EVENT THEN ACTION 2
The composition paradigm allows to overlap in time different spatio-temporal units, therefore providing an unlimited capability of trajectory formation: this expresses naturally a non hierarchical, distributed approach to motor control (Hinton, 1984) which is conceptua1ly akin to the object-oriented programming style (Weinreb and Moon, 1980). Guarded executions allow actors to synchronize through events, or to communicate each other through message passing.
3. Resu1ts
The NEM project is being implemented in the Unix environment. The NEM interpreter is written in C to obtain high efficiency. Preliminary ver sians of two interfaces are available: one inter faces NEM with PADL2 (a geometric modeling system} and the other with Prolog.
Figure l shows a graphic trace of the perfor mance of a NEM script which represents a diving humanoid. It is worth noting that in this motor paradigm the motor actions are concurrent with the action of gravity. In the NEM script, two corresponding concurrent motions are activated; this is an example of physical laws implicitly embedded into the motoric knowledge. Moreover, 11 environrnental" processes can be tested by "control" actors in order to tune action parameters.
Several other paradigms are being experimented (sitting, walking, picking ... } with the purpese of building a high level motor data base. With regard to the NEM-PADL2 interface, fig. 2 shows a NEM humanoid (in a "discobolus" posture} "dressed" with a PADL2 articulated solid model. Better schemes of human body representation are available ( see Spe cial Issue of IEEE Comp. Graph. and Appl. ,vol.2 no.9,1982}, but most of them are not articulated.
4. Final remarks
we stressed the potential capability of NEM to build high level, abstract pieces of motor activity, in spite of the simplicity of the GFSs, which are a low level atomic piece of knowledge. Moreover, NEM' s facilities to express both static and dynamic geometric reasoning suggest that it could play a rol~ L.f "co-planner", as to say, i t could integrate both functions of analog modeling the (moving} world and of storing tasks/actions data base.


@inproceedings{ijcai1985p227,
title = {Motor Knowledge Representation},
author = {Marino, Giuseppe and Morasso, Pietro and Zaccaria, Renato},
booktitle = {Proceedings of the Ninth International Joint Conference on
Artificial Intelligence, {IJCAI-85}},
publisher = {International Joint Conferences on Artificial Intelligence},
editor = {Aravind Joshi},
pages = {1110--1111},
year = {1985},
note = {Robotics},
url = {https://ijcai.org/proceedings/1985/227},
}
TY - CPAPER TI - Motor Knowledge Representation AU - Marino, Giuseppe AU - Morasso, Pietro AU - Zaccaria, Renato T2 - Proceedings of the Ninth International Joint Conference on Artificial Intelligence, IJCAI-85 PB - International Joint Conferences on Artificial Intelligence PY - 1985 SP - 1110 EP - 1111 UR - https://ijcai.org/proceedings/1985/227 ER -Copied
Machine-readable versions of this paper, for tools and AI agents: