OOPSLA '95 Workshop on Complex Hardware and Software Systems

Mark D. Estes

Direct manipulation of a logical name space of object descriptions avoids the indirection of labeled pointers and the redundancy of one-way-mapped, look-up-table processing, while supporting a sharp distinction between problem space formulation and formulation of solution strategies which navigate problem space relationships. New work is introduced which enables combinational problem descriptions defined by relationships between attribute properties conceived in one mind to be shared among minds. The difficulty in communicating technical information among different disciplines may prevent a team comprising different disciplines from accomplishing the level of integration that can be achieved by a single designer who has an understanding of the behavior of each component within a complex system structure. Decision makers are often distinguished by their ability to suppress unwanted detail and synthesize essential relationships in a spectrum of problems having conflicting priorities. In a significant class of applications related to abstract visualization having solutions which are not arithmetic in nature the problem of what to represent and how to deliver the representation are the key.

Problem descriptions are characterized in combinational terms for logical comparison rather than being transformed into common, single-unit expressions for precise calculation. Intuitively, classification and logical comparisons of both numerical and non-numerical, mixed-unit expressions is a common-place experience. Colors, musical chords, dates, and times are examples of discrete event expressions that are also patterns which comprise a plurality of formants, creating an important distinction between name of the event and the description of its constituents. An object description system has been developed for processing higher order relationships between named attributes by generating internal expressions which at once uniquely names an attribute relation and its constituents [1]. When external control objectives are interactively modified, changes to corresponding internal object representations are dynamically implemented as logically encoded expressions of attribute relations in a polymorphic interconnection topology and protocol for data description, encoding, representation and for controlling the flow of information.

A simple example illustrates one aspect of descriptive aggregation accomplished by formulating problems in higher-dimensional spaces, in a manner conceptually similar to the problem of canonical term reduction for minimizing binary logic functions of combinational circuits. A transaction scenario involves the problem of approving a speculative, residential construction loan application. An objective of control limits approval based on an estimated unit-cost of construction being lower than a current unit-market-price for a similar product in a given location. Problem formulation involves dynamically characterizing a stream of property transactions in changing markets for comparison to similarly characterized loan applications. A unique method solves the difficult problem of synthesizing characterizations involving more than three descriptive attributes in a single view that can be shared among parties with diverse interests. The diagram below shows a four-dimensional problem formulation space where the number of descriptive attributes and the range of their respective properties have been intentionally minimized for pedagogical emphasis.

Each object space location uniquely names an attribute relation and its constituents. For example, the lower right cell labeled "10011" can at once name an associated aggregate unit value and name its descriptive properties: a new or like new 3-bedroom house larger than 1500 square feet located in the west quadrant. Conventionally, relations comprising more than two or three variables are visually presented as a plurality of charts, tables, or graphs. Early approaches to devising mechanical procedures for improving circuit design include the well-known Karnaugh map for mapping abstract representations of two-valued circuit inputs into visual space. It has long been known that Karnaugh's graphical method of representing all possible combinations of N switching variables on a plane breaks down for problems with five or more binary variables. It should be noted in the diagram above that the location attribute corresponding to a fourth dimension is four-valued. A feature of the mixed-resolution, N-dimensional paradigm of the object description system includes visualization of higher-dimensional problem spaces, providing an essential external interface, demonstrating a continuity between the machine level and all structures built up from this level.

Network implementations realized in a linear computer memory as lists of elements are variously indexed by embedding pointers in the lists to encode nonlinear conceptual structures, i.e., schemata. A pointer only names a location in memory. Nothing about the contents of a memory location can be inferred from the pointer. Pointers can be arranged to implement structured relationships between locations in memory, but even in networks the linking of nodes does not in itself express much information. Unless some particular relation is specified, each link "means" only that items are associated. Links must be labeled, carrying fully as much information as the nodes. Furthermore, the need to categorize network links results in additional levels of indirection. A reconfigurable, associative network forming an active memory is an example of a network configuration which does not explicitly store input patterns, output patterns, tags or retrieval keys, but sets or clears relations between properties of input attributes and properties of response attributes, permitting associations between input/output patterns to be changed dynamically. During the configuration phase of an associative process, active signals corresponding to wanted input patterns are configured as an associative network, distinguishing them from signals corresponding to unwanted input patterns. During an operational phase of a previously configured associative network, output patterns are obtained in response to a particular set of connections between input and output signals. Other configurations permit selection of multiple output patterns in response to partial input patterns.

A dynamically reconfigurable "description-oriented machine" has been realized which assists in formulating and navigating contexts defined as object description spaces. A system is reconfigurable if it may assume several architectural configurations, each of which is characterized by its own topology of activated interconnections between modules. A novel configuration control mechanism enables network elements arranged in a fixed physical configuration to be dynamically reconfigured into various logical configurations. The logical topology of a fixed physical network is manipulated by selectively reversing the logical polarity of module input circuits, further satisfying a principle of homogeneity which requires a correspondence between an external view of what is to be represented in a machine and the corresponding form in the machine, i.e., an internal view.

[1] U.S. Patent No. 5,301,284 "MIXED-RESOLUTION, N-DIMENSIONAL OBJECT SPACE METHOD AND APPARATUS," issued April 5, 1994, to Estes and Walker.

Annotated References

Goldberg and Robson,
SmallTalk -80: The Language and its Implementation, Addison-Wesley, Reading, MA, 1983, pp. vii. Principal areas of research are characterized as "an interface between the models in the human mind and those in computing hardware ... which matches the human communication system to that of the computer ....

Mark Wells,
"Aspects of Language Design for Combinatorial Computing," IEEE Transactions on Electronic Computers, August, 1964, pp. 431-438. A class of computations which are combinatorial rather than arithmetic in nature is characterized as manipulations with sets, patterns and labels rather than with numbers. "Historically, both machines and languages have been inadequate for combinatorial computing."

Allen Newell,
"On Programming a Highly Parallel Machine to be an Intelligent Technician," in Proceedings of the Western Joint Computer Conference, IRE-AIEE-ACM, 1960, pp. 267-282. "We need a Œproblem-oriented machine¹ instead of a Œmachine-oriented machine¹" Newell continues: "In current machines and coding a large discontinuity exists between the machine level and all structures built up from this level." Newell further suggests that continuity between the machine level and all structures built up from it can be achieved in "problem-oriented machines" by satisfying a "principle of homogeneity, according to which a module and a higher unit cannot be distinguished by any of the conventions for dealing with them."

Siegel et al.,
"A Survey of Interconnection Methods for Reconfigurable Parallel Processing Systems," Proceedings National Computer Conference, 1979, pp. 529-543. Siegel has defined a system as being "...reconfigurable if it may assume several architectural configurations, each of which is characterized by its own topology of activated interconnections between modules."

George Wier,
"Living with Complex Interactive Systems," in Human-Computer Interaction and Complex Systems, Wier and Alty eds., Academic Press, London, 1991, pp. 1-21. A large class of complex interactive systems embrace sophisticated control techniques in combination with human operators, from industrial control systems to interactive devices we meet in daily life. The degree to which a task domain with many interconnected parts proves dynamic determines the joint performance of any combined man and machine system.

Frank Gray,
US Patent No. 2,632,058 issued March 1953. "Some forms of the reflected binary code offer special advantages over others for particular applications."

Morton Lind,
"Representations and Abstractions for Interface Design," in Human-Computer Interaction and Complex Systems, Wier and Alty eds., Academic Press, London, 1991, pp. 223-253. "If we consider self-organising systems, i.e., systems which either organise system resources as a response to changing goals or change goals as a response to changes in system capabilities, the notion of levels [of representation] becomes problematic. In this case, the ordering of system resources by means-end relations becomes a dynamic feature of the system and the planning of the content for the information interface to the system [presentation] cannot be based on these relations. Accordingly, special consideration should be given to the representation problems of systems with self-organising features."

Janos Sztipanovits,
"Towards Structural Adaptivity," Proceedings ISCAS¹88, IEEE Press, 1988, pp. 2359-2366. An adaptation process is described as having the ability to modify the structure of the processing system as well as its parameters, driven by changes in the environmental model. According to Sztipanovits this process requires the symbolic representation of the structure of the processing system itself. The implementation of dynamically reconfigurable processing systems is a non-trivial task, in that, "the tasks of modeling the environment, the processing system, and their relationships constitute a complex representation problem."

Janos Sztipanovits,
"The Multigraph Approach to Parallel, Distributed, Structurally Adaptive Signal Processing," Proceedings ISCAS¹90, IEEE Press, 1990, pp. 2037-2040. Structurally adaptive and dynamically reconfigurable systems are important ingredients in the design and development of robust large-scaled signal processing systems for operation in complex nonstationary environments. Sztipanovits suggests the main difficulty is not so much the complexity of the individual modeling aspects, but "the representation of the interactions among them."

French and Taylor,
"A Self-Reconfiguring Processor," Proceedings IEEE Workshop on FPGAs for Custom Computing Machines, April 5, 1993, p. 50. French and Taylor characterize "partial dynamic reconfiguration" -- as the ability to modify random logic circuits by changing the "program" or configuration loaded on power up -- as being possible at least in theory. French and Taylor further note that "automatic" reconfiguration is complex -- "the processor itself must perform many of the optimizations that would be more conventionally handled by a compiler." A processor with a "hardware caching mechanism" in addition to its normal execution unit also has the potential for high levels of parallelism. "Better support for the use of several FPGAs as a single system is also required ... (and) support for loading and retrieving large amounts of data to and from the FPGA quickly is required."