Journal of Mathematical Analysis and Applications 249, 3᎐31 Ž2000. doi:10.1006rjmaa.2000.6949, available online at http:rrwww.idealibrary.com on
Towards an Integration Science The Influence of Richard Bellman on Our Research Kirstie L. Bellman and Christopher Landauer Aerospace Integration Science Center, The Aerospace Corporation, Mail Stop M6 r 214, P.O. Box 92957, Los Angeles, California 90009-2957 E-mail:
[email protected],
[email protected] Received April 19, 2000
In this paper, we describe the influence of Richard Bellman’s work on our research. The influence is primarily felt in the attitude we take towards the research, which is that whenever the right mathematical tool for a problem that we are considering is not available, then some mathematical invention is required. We describe our research studies in software and system engineering for what we have called Constructed Complex Systems Žwe call them that to distinguish them from the mathematically more popular use of the term to refer to studies of fractals, chaos, and other behaviors in dynamical systems., which are large systems mediated or managed by computing systems, and the Integration Science that we believe is necessary for adequately designing, building, and analyzing such systems. The two technical topic areas we describe are Wrappings, which is our knowledge-based integration infrastructure for Constructed Complex Systems, and Virtual Worlds, which provide a very interesting testbed for integrating a wide range of processes, from human activities to formal systems. In both cases, we describe some of the mathematical implications and requirements of our approach. 䊚 2000 Academic Press
Key Words: integration science; constructed complex systems; computational reflection; virtual worlds.
INTRODUCTION In honor of Richard Bellman, this paper is a call to the spirit of mathematical invention in every mathematician or mathematically inclined reader. In addition to his considerable contributions, Richard Bellman personified a risk-taking and creative force in mathematics. An avid reader of biography and the history of mathematical inventions, he often used not 3 0022-247Xr00 $35.00 Copyright 䊚 2000 by Academic Press All rights of reproduction in any form reserved.
4
BELLMAN AND LANDAUER
only the results of great mathematicians but also studied their lives for the key to their attitudes. He also would have liked not only to have people use his inventions but also to find something in his life and style to admire. In this paper, we consider two of R. Bellman’s attitudes about mathematics: the first is on the importance of using diverse applications to spur the development of new types of problem formulation, and the second is on the need to consider mathematics as a living language for human reasoning, leading to continual mathematical invention. Using these Bellman attitudes as a starting point Žfor one author most literally ., this paper discusses how our new work on creating an ‘‘Integration Science’’ continues some of these interests. When asked about the origin of the term ‘‘Integration Science,’’ we have told people it is a hopeful term. Whereas currently there are increasingly valuable computer based techniques for supporting system design and analysis, we would like to actually have a scienceᎏwith both principles and corresponding analytic methodsᎏthat helps one construct and integrate very large systems. We then go on to describe two current areas of research and developmentᎏone that started in software integration with the need to integrate the use of and results of hundreds of models and computational resources in large space system and DoD programs, and the other in Virtual Worlds and ‘‘integration places,’’ where the human being is one of the components of the system and their activities must also be modeled and reasoned about. For each area, we describe some of the new mathematical questions arising from them. E¨ erything Starts with a Problem He strolled and she, then 7, ran lightly at his side, ‘‘Little sweetheart, how would you solve the following problem . . . wand laterx Ah, it only took mankind a thousand years to find the answer to that one.’’ He said often and very seriously, ‘‘The right problem is always so much harder than a good solution.’’
Part of R. Bellman’s gift laid in his ability to see the mathematical problems that underlie the concerns of different fields. Perhaps like Michelangelo there was a perceptual quality to this ability except instead of a rock revealing the statue inside he saw the beginning of a problem formulation hidden in the information supplied him by practitioners. Or perhaps this ability to see from other points of view as reflected in his multilingual capabilities Žhe spoke a large number of languages and read classical Greek, Latin, and even a little of Egyptian hieroglyphics.. Although R. Bellman was not a psychologist Žalthough interestingly, his son, Eric Bellman, is a very successful therapist and observer of human psychology., he nonetheless always was interested in the relationship of
TOWARDS AN INTEGRATION SCIENCE
5
mathematics to the minds of its inventors. He often noted with great interest where mathematical invention was shaped by the social and cultural milieu of the times. He saw mathematics as always related originally to the needs of its inventors and users. As with any other mathematician, he enjoyed the special puzzle solving and intellectual activities that occur within formal spaces once they are invented. But to him, an even greater intellectual puzzle and feat was to map between this constructed formal space and the real world. We believe that in addition to the clear benefits of the applied mathematics to real world problems Žhe frequently expressed feeling an obligation to give back to a culture that paid him to do the work he so loved., he was motivated by the sheer difficulty of extending purely mathematical inventions to appropriately support the reasoning needed in real world applications. In the work described in this paper, the reader will see the impact of this attitude in a number of ways. First, if one starts any modeling activity with an emphasis on problem formulation, then one immediately recognizes that problem formulation will depend on the needs, experience, expertise, and viewpoint of the modeler w27x. In a complex system this will clearly lead to multiple models. All of our work in developing an Integration Science starts with the consideration of heterogeneous systems with multiple models, methods, and modelers. Second, in our software integration techniques, we not only emphasize the identification of the right problem, but we retain at all times what ‘‘problems’’ were the initial reasons for selecting and using any of the processing in a complex software system. Furthermore, in the wrex notation Žto be described., this ‘‘problem-posing paradigm’’ is generalized to all programming languages. Finally, we continue R. Bellman’s emphasis on problem formulation by emphasizing the context of the Žhuman or artificial . problem poser, the motivational context for the requirements, and the operational environment of the proposed ‘‘solutions.’’ Wrappings emphasize the manipulation of explicit machine-interpretable meta-knowledge about this context, while the virtual worlds described in the following section embody such context information in the structure of the ‘‘virtual’’ interaction space. Mathematics as the Language of Reason She was 17 and working at her first job. He handed her a notebookᎏan ‘‘idea book’’ to write her new ideas in and said, ‘‘Mathematics is something you think withᎏwhen you need to think about new problems then you invent the mathematics to go with them.’’ She was 24 and in graduate school, teaching her first courses, and over the phone he said, ‘‘when you really understand something you can explain it to anyoneᎏa fisherman on a bus, a housewife, a poet. Jargon is the scaffolding we use until we understand and then we can just talk in plain English to anyone.’’
6
BELLMAN AND LANDAUER
Because R. Bellman saw problems as the starting point of mathematics, he always saw mathematics as a vibrant and living language of discourse. Richard Bellman believed strongly that mathematics is the language of not only formal reasoning processes, but potentially Žgiven the right formulation and invention. a language for any methodical, descriptive set of thoughts or decision processes. ŽHis daughter cherishes several old letters in which some of her major life decisions were described by him in hand-drawn graphs and decision tables.. One develops a mathematical formalism because its analytic power fuels one’s insights and reasoning capabilities and acts as a means of transmitting ideas across cultures and time. It is not arcane knowledge to be handed down by priests; it is a living process of invention and experimentation with formalism. Hence, R. Bellman taught us to be fearless in asking new questions and in searching for mathematics in new applications. Below we will discuss inventing suitable mathematics for virtual reality environments composed of heterogeneous modeling and analysis tools and inhabited by robots and humans. We will also describe the idea of using such environments as a new type of testbed for integrating the results of different mathematical models. Although R. Bellman encouraged mathematical invention, he also was a critical and relentlessly strict judge of new mathematical invention. We do not imply here that he would have agreed with all of our strategies, efforts, or ideas in formulating these mathematical problems. Based on our experience, in fact, we would have argued intensely and enjoyably on many of these points and approaches that follow. But one of Richard Bellman’s great gifts was his ability to appreciate the difference between the needs that motivate new applications and the initial success or failure of these applications. He also felt that most papers should ‘‘self-destruct’’ Žthe bulk of his own 690 included. after a suitable period of time, and placed instead the emphasis on the role of any given effort within a historical process of building up a set of ideas. With this very much in mind, we offer the following report as stimulation for the reader and as part of a continual conversation. One that for many of us, Richard Bellman started.
1. INTEGRATION SCIENCE The need for integration arises from complexity. One characteristic of complex systems is that one must use a repertoire of methods, models, and experts from different fields in order to develop and analyze such systems, since NO one method can suffice w11, 27x. This results in the need to integrate everything from the diversity of tools, the languages and viewpoints of different types of expertise, and even the goals and policies of different organizations that manage the development and use of these
TOWARDS AN INTEGRATION SCIENCE
7
systems. This also means that such systems must be developed incrementally, often over years, with components, personnel, and even responsible organizations changing through time. Often, the system must be in use the entire time, even while it is being modified. A good example of constructed complex systems are military space systems w19, 63x, which include both the satellites and the managing ground systems and activities of the organizations designing, building, and controlling them. The scale of these systems is enormous: the space systems being built today have thousands of software components, tens or hundreds of thousands of hardware parts, and many different kinds of system components. They are built by hundreds of different organizations, which are involved at different times and for different lengths of time. The systems are expected to be effectively usable for decades. They are generally distributed Žoften globally. and volatile Žnew technologies and mission requirements are frequently inserted or imposed.. There are multiple users, human and otherwise, and the system must interact with real world phenomena on several different time scales. These enormous systems are at or beyond the edge of the capabilities of any system or software development methods. We suspect that many current and planned systems are actually far beyond any current capability to effectively design and manage them, and that they will succeed Žif they succeed. only because of what we have called ‘‘heroic engineering.’’ Over the last decade, we have built support systems that supply useful computer support for designing and analyzing these huge systems w19, 63x. However, although it is important to continue to develop many new kinds of capabilities, analyses, and components, the challenge is to build integrated and adaptable systems. We want an Integration Science because we want a scientific, i.e., a principled base to systems. For example, we need more than good expert opinions. We need to be able to analyze the impact of inserting some new type of capability into a large system before we invest large amounts of resources in what too often turns out to be an expensive and not totally successful experiment. To do this, we need more analytic power in our models. Furthermore, given the scale of both existing systems and the even more ambitious systems in preparation, we need much more effective and scalable methods to design, track, analyze, monitor, control, and evaluate these systems. Last, we need to be able to model ourselves as an essential component of these systems. We need to be able to represent and reason about our capabilities and limitations within a much larger system. We need to understand what roles or contributions are expected from the human decision maker or operator versus the engineered components, and last architect the system so that it becomes a ‘‘livable’’ system that supports human goals, concerns, communication, interaction, and individual abilities.
8
BELLMAN AND LANDAUER
If we are trying to invent both a deeper science of how one creates, represents and reasons about integrating complex systems and a technology that supports this understanding and analysis, then we need to have a more rigorous definition of what we want to gain from the integration of a system. This more rigorous definition will include the criteria that will allow us to compare and evaluate different integration techniques. There are three major reasons for integrating a complex system: 1. Sharing capabilities across the system; 2. Enabling different kinds of efficiencies within the system; 3. Providing a perspective and comprehension of global properties of the overall system. Each one of these reasons has benefits from the standpoint of both the individual component and the overall system. For example, individual components benefit from ‘‘shared capabilities’’ because a component can take advantage of others and not have to do everything for itself. At the system level, the system benefits from shared capabilities in several ways: it can specialize components, substitute different components in a context-sensitive manner, and optimize the system for critical domain-specific efficiencies, such as speed needed for real-time processing or storage space needed for on-board processing. The efficiencies one can gain with an integrated system also can be viewed from the perspectives of a given component and the overall system. From a component viewpoint, efficiencies are often seen as smooth handoffs, that is, the ease with which another component can be called, utilized, andror sent results of some computational process. At the global level, efficiency deals with global versus local optimizations and the trade-offs in the utilization of different components or among the requirements for different users or system functions. Integration permits a system to be treated as a whole, so it can be understood, monitored, reasoned about, and evaluated in terms of its impact and performance in its operational environment. It is this ability to analyze, evaluate, and comprehend the global properties of a complex system that eventually allows us to trust its use. The ability to represent and reason about global properties of the system also permits the critical analyses needed for trade-offs among different functional requirements, different components, and different configurations or architecture of system components within a complex system. In one sense, an integrated system embodies a proposed set of choices and solutions for reconciling the different requirements and viewpoints of users of the whole system and the properties and functions of the individual components.
TOWARDS AN INTEGRATION SCIENCE
9
This last point, which we call the ‘‘design problem,’’ is of course one of the chief reasons it is so difficult to integrate a system. It is tedious and difficult to find that reasonable set of integration solutions that balance competing and sometimes partially incompatible requirements and component characteristics, permitting a system to function as a whole. A second reason that integration is so tough is that it is difficult to decide what characteristics of the system should stem from individual components or from the configuration of components. Hence it is hard to determine how reliable, strong, secure, flexible or whatever the components need to be in order to have the system as a whole be reliable, strong, secure, flexible, or whatever. It is also hard to know how much we need to know about the internals of a component in order to guarantee its behavior within the overall system. Much of integration is making decisions about how to allocate such properties between qualities of the component and the system. This is the reason for at least some of the intense interest by engineers in human brains. Human brains are incredibly fast at some types of processingᎏperception and recognition, for exampleᎏand yet composed of relatively slow components Žespecially when compared to modern computers.. Single human cells are sophisticated entities, and yet they are not nearly as ‘‘intelligent’’ as the overall system. A third reason that integration is so difficult is that we really don’t want just an integrated system, but rather an adaptable and flexible system that is also capable of enjoying all the benefits of an integrated system described above. The reasons are clear: complex systems always are changing, with new users, new requirements, new components, new environments, etc. It is hard but straightforward to integrate a system once and forever in one way. The real challenge is to create the architectures, processes, and infrastructure that support different kinds of flexibilities and that integrate them across those ‘‘allowable differences’’ w11x. In our effort to create an Integration Science and the technology to support the above goals, we are building off the integration and architectural methods developed across the world-wide research community w39, 75x. We have concentrated on what we call Constructed Complex Systems Žwe call them that to distinguish them from the mathematically more popular use of the term to refer to studies of fractals, chaos, and other behaviors in dynamical systems., which are large systems mediated or managed by computing systems w58x. In the next two sections, we will describe in more detail two areas that are interesting for their mathematical implications and new problem areas. Wrappings is an integration theory and approach developed by the authors. Virtual Worlds ŽVWs. are distributed collaborative environments and agent architectures.
10
BELLMAN AND LANDAUER
2. WRAPPINGS It is well known that when making combinations of components, using smaller parts means that more different kinds of combinations can be made, and that more flexible combinations can be made, but there is still a problem of having combination methods that can deal with the larger numbers of components and the wider variety of interconnection styles w24, 25, 75x. In this section, we give an overview of the Wrapping approach; many more details are elsewhere w52, 54, 58, 62x. Our ‘‘Wrapping’’ approach to the development, integration, and management of heterogeneous computing systems, is based on two key, complementary parts: Ž1. explicit, machine-interpretable descriptions Ž meta-knowledge. of all software, hardware, and other computational resources in a Constructed Complex System Žorganized into Wrapping Knowledge Bases., and Ž2. active integration processes that use that information to select, adapt, and combine these resources for particular problems Žthe Problem Managers. w11, 45x. The Wrappings approach has the advantages of Ž1. a simplifying uniformity of description, using the meta-knowledge in the Wrapping Knowledge Bases; and Ž2. a corresponding simplifying uniformity of processing that metaknowledge using the Problem Managers. We emphasize three properties of our approach that lead to more flexible integration Žand some interesting mathematical questions.. Ž1. In the Wrappings approach, we not only emphasize the use of meta-knowledge, brokering, and mediation Žwhich are all critical concepts., as seen increasingly in other approaches, but we regard as equally important the Problem Managers, which are the special resources that organize and process this information in a flexible and evolvable fashion. The Wrappings are not actually implemented as code surrounding a given software resource, as one might imagine various intelligent front-end programs are. Instead, the Wrappings are collected into potentially several Wrapping Knowledge Bases, which allows system designers to test this meta-knowledge with known static methods for evaluation of knowledge bases w10, 21, 47, 60x. This shows a conceptual difference between Wrappings and most interface wrappers. Wrappings are descriptions of uses of resources, and therefore contain the information required to construct the actual interface when it is needed, according to the operating context and problem to be addressed. Ž2. The Wrappings approach, because it Wraps all of its resources, even the Problem Managers, results in systems that are Computationally Reflective w44, 46, 47, 65x. That is, each has a machine-processible model of itself; the Wrappings resources and their interactions allow, in essence,
TOWARDS AN INTEGRATION SCIENCE
11
a simulation of the system that can be analyzed within and by the system. This allows sophisticated instrumentation and adaptive processing. It is this ability of the system to analyze and modify its own behavior, including current and expected future behavior at whatever level of detail is important Žand that was defined by the implementor’s choice of resources and Wrappings., that provides the power and flexibility of resource use. These ideas have proven to be useful, even when implemented and applied in informal and ad hoc ways. Ž3. The Problem Posing Paradigm described in Subsection 2.2 is a key theoretical part of Wrappings. The approach uses problem posing in a recursive fashion to organize its own processing. This is an important architectural property for autonomous systems, and for the infrastructure of distributed systems, because the communication among components can be at the level of problems rather than remote function calls with special interface code Žthe way that ‘‘wrappers’’ are usually implemented.. Because we Wrap ‘‘uses’’ of resources instead of the resources themselves, we can separate the actual resources to be applied from the problem specifications. This avoids a theoretical problem of trying to enumerate all possible uses, especially all future uses, of a resource in a single consistent description. The reason that it is essential not to insist on consistency at this level is that for many complex modeling problems, we do not know all of the necessary assumptions and conventions that will eventually have to be agreed upon until long after we need to know detailed information about their behavior in certain specialized contexts. We have shown how the Wrappings approach can be used to combine models, software components, and other computational resources into Constructed Complex Systems w58x, and that it is a suitable implementation approach for complex software agents w51, 59x. We have used these Wrappings for verification and validation of complex systems w10, 21, 47, 60x. We have also shown its wide applicability in software and system development w52x Žand references therein .. 2.1. Wrapping O¨ er¨ iew The Wrapping theory has four essential properties that underlie its simplicity and power: 1. ALL parts of a system architecture, at all levels of detail, are resources that provide an information ser¨ ice, including programs, data, documents, user interfaces, infrastructure services, architecture and interconnection models, and everything else Žimplementors choose a level of detail below which they do not want to decompose the services..
12
BELLMAN AND LANDAUER
2. ALL activities in the system are problem study Ži.e., they apply a resource to a posed problem in a particular problem context., including computations, user interactions, information requests and announcements within the system, service or processing requests, and all other processing behavior Žimplementors choose a level of detail below which they do not want to decompose the activities.. We therefore make explicit the separation between the problem to be studied and the resources that might study it. 3. Wrapping Knowledge Bases Žor WKBs. contain Wrappings, which are explict machine-interpretable descriptions of all of the resources and how they can be applied to problems to support what we have called the Intelligent User Support ŽIUS. functions w11x: 䢇
Selection Žwhich resources to apply to a problem.,
䢇
Assembly Žhow to let them work together.,
䢇
Integration Žwhen and why they should work together.,
䢇
Adaptation Žhow to adjust them to work on the problem., and
䢇
Explanation Žwhy certain resources were or will be used..
Wrappings contain much more than ‘‘how’’ to use a resource. They also provide information to help decide ‘‘when’’ it is appropriate, ‘‘why’’ it might be the right one for the problem, and ‘‘whether’’ it can be used in this current problem and context. 4. Problem Managers ŽPMs., including the Study Managers ŽSMs. and the Coordination Manager ŽCM., are algorithms that use the Wrapping descriptions to collect and select resources to apply to problems. Making these infrastructure resources also explicit is one key to the flexibility afforded in Wrapping systems. They use implicit invocation, both contextand problem-dependent, to choose and organize resources. Resources are connected to problems via Knowledge-Based Polymorphism. The PMs are also resources, and they are also Wrapped. The most important conceptual simplifications that the Wrapping approach brings to integration are the uniformities of the first two features: the uniformity of treating everything in the system as resources, and the uniformity of treating everything that happens in the system as problem study. The most important expressive simplification is the meta-knowledge contained in the Wrappings, because it makes explicit Žand therefore analyzable. all of the various selection conditions for the computational resources, and their expectations for information services required and produced, whether those conditions are quantitative or qualitative.
TOWARDS AN INTEGRATION SCIENCE
13
2.1.1. Problem Managers. Because the PMs are essential to understanding the problems that arise from Computational Reflection, we describe them in a little more detail. The alternation between problem definition and problem study, and the determination of an appropriate context of study, is organized by the Coordination Manager ŽCM., which runs the sequence of steps shown in Fig. 1 that manages the overall system behavior Žit is written in the wrex notation, which is described in detail elsewhere w54x, but should be clear enough for our purposes here.. The default Study Manager ŽSM. is a Žvery. simple planning algorithm, which runs the sequence of steps described in Fig. 2 Žnot written in wrex, for space reasons.. The CM is a very simple analog of the ‘‘read-eval-print’’ loop in LISP, with the addition of explicit context accession. The default SM is a very simple planner, with a straight line execution path from problems in context to resource application. Finally, and most importantly, we explicitly make the entire system Computationally Reflective w1, 44, 46, 65, 77x in two ways. First, by considering these programs that process the Wrappings to be resources also, and wrapping them, all of our Wrappings and integration support processes apply to them, too. Second, we make every one of the CM and SM steps a posed problem, which is mapped to applicable resources using the WKBs, as above. It is this ability of the system to analyze and modify its own behavior that provides the power and flexibility of resource use. 2.2. Problem Posing In this section, we describe our Problem Posing programming paradigm w48, 55x, which underlies our approach to system integration. It is a different interpretation of programming languages that greatly facilitates our search for flexibility. We have defined Problem Posing as a new
FIG. 1. CM steps in wrex.
14
BELLMAN AND LANDAUER
FIG. 2. Steps for default SM.
declarative interpretation of programs that unifies all major classes of programming. Problem Posing can therefore be viewed as a new programming paradigm that changes the semantics, but not the syntax, of any programming or modeling language. We have demonstrated the conceptual utility of Problem Posing in our own descriptions of systems w51, 52, 54x. In any programming or modeling language, whether imperative, functional, object-oriented, or relational, there is a notion of service providers Že.g., functions to be called, state to change, messages to be fielded and acted upon, and assertions to be satisfied., and a corresponding notion of service requests Žthe function calls, assignments and branches, messages to send, and assertions that cause those service providers to be used.. In almost all of the programming languages, we connect the service requests to the service providers by using the same names; i.e., the connections are static and permanent, defined at program construction time w55x. The Problem Posing interpretation breaks this connection and generally moves it to run-time, recognizing that all of the language processors can tell the difference between the service provider and the service request Žthis is less straightforward in relational languages such as prolog, but there are very few programs that actually use the supposed reversibility of clause satisfaction .. Then the language processors take the service requests and turn them into posed problems Žhence the name., and use the Wrapping processes described earlier in this section Žor any other mapping process. to allow a context-dependent resource selection process to select an appropriate resource for the problem in the problem context. The selection process is guided by knowledge bases that define the resources, the kinds of problems they can address, and the specific requirements for applying the resource to the problem in the context. This is what we mean by ‘‘Knowledge-Based’’ Polymorphism.
TOWARDS AN INTEGRATION SCIENCE
15
The Problem Posing Interpretation unifies all major classes of programming, since any programming or modeling language can be interpreted in this new way. This interpretation is particularly effective in combination with Wrappings, since they provide a Knowledge-Based mapping from problems to resources. 2.3. The Wrapping Expression Notation wrex The Wrapping expression notation wrex w52x is one possible way to use the Problem Posing paradigm. It is a ‘‘Problem Posing’’ notation intended for programming ‘‘in-the-large,’’ i.e., as an Architecture Description Language for resources written in any programming languages. This kind of programming is necessary for building reliable systems because it allows us to make explicit the interconnection between architectural models and the component models w75x. We also intend to use wrex at a much smaller scale, to help us write infrastructure resources. For example, the CM program in Section 2 above was written in wrex for illustration. We have also shown that it is appropriate for Generic Programming w54x, and we think it is a candidate solution for the problem of overly constraining, ‘‘tyrannical’’ programming languages w76x. The wrex notation actually extends the application of Wrapping all the way down to the data access and expression evaluation level of detail, or as far down as the system designer chooses to partition the computations into resources. This uniformity of expression across many levels of granularity allows similarities of process to be expressed directly, and yet the interpretation can depend on the granularity, applying different resources for the same posed problem in different contexts. 2.4. Mathematical Issues from Wrappings Now that we have described the application area and the computational problems that we address, we can describe some of the key mathematical issues w18, 62x. We do not try to describe all the work in each of these areas, but instead only give a flavor of the mathematical issues involved and then give pointers in the literature for reading more. The first issue comes from the Computational Reflection in WrappingBased Architectures w46x, which we implement so that the system has a complete model of its own behavior Žto some level of detail., which it can use to adjust that behavior according to predicted outcomes. This is a kind of computational self-reference. Self-reference has always been troublesome in mathematics. Since Russell’s Paradox and Godel’s Theorem, the ¨ power of self-reference has been interesting and dangerous, and mathematics has generally responded to that danger by avoiding it altogether. On the other hand, another dangerous operation, that of extrapolation of
16
BELLMAN AND LANDAUER
the results of infinitely many computational steps, as seen especially in sums of power series and in integration, has become well-known and widely used, because the mathematical community has developed criteria for its proper use. We think the same can be and should be done with self-reference, and we are pleased that significant progress is being made w2, 6, 7x. Many analysis failures are modeling failures, in which the models used for the analysis do not capture the properties necessary for an adequate analysis. In these cases, the modeler’s choices of what to model were at fault w10x. Furthermore, if we want to have computers play increasingly sophisticated roles in complex systems, then we need to learn how to formalize more of the currently very informal human process of modeling, and develop new formal spaces for modeling. We can characterize the modeling process as consisting of four steps: 1. choose a formal space Ždecide what characteristics of the system will be modeled for what reasons and find a corresponding formal space that expresses those properties.; 2. map the phenomena of interest to the formal space; 3. manipulate the models in that formal space, according to the rules of that space; and finally, 4. map results back to implications about the original system. The modeling problem is about how modelers select the relevant or interesting formal spaces and how the original mapping to and from that formal space is performed. These first two steps are very often the most difficult part of the process, and we need much better descriptions of how they work. This means capturing the activities of the modelers, such as their scope of consideration, selection and evaluation criteria, choices, etc., in some kind of comprehensible computational form. Along these same lines of wanting better modeling methods, we want many more kinds of formal spaces, so that we can provide the modeler with formal spaces that are expressive of more of the characteristics of current complex systems. Our generic programming notation wrex has an intriguing property that we have called semantic neutrality, in that it constrains only the interaction dependencies among a set of resources, but not what those resources are or do. Conceptually, this is a kind of ‘‘computation with holes,’’ the holes being the problems to which the resources are applied. It is also analogous to a kind of variable in the program text that can be assigned later. We would like to do the same with some mathematical objects, something like a kind of mathematics with variables that can be assigned later. Of course, we do this already, but we usually do it by specifying a fixed but unknown set first, and then we do not change the set as we
TOWARDS AN INTEGRATION SCIENCE
17
examine the structures. It would be interesting to be able to change the set as we go along, and have some explicit way of determining how much of what has already been learned is still valid. Another version of this same idea is the category theoretical notion of a ‘‘free program,’’ that is, one in which the program structures Ži.e., the problems. specified in the wrex notation are fixed, but the mapping down to specific resources that are applied to the problems is a kind of structure morphism. This idea is not particularly new, but we think it can now be applied to much more general kinds of program structures, with much more interesting behaviors, once the proper set of morphisms is defined. The advent of automatic theorem provers Žin the late 1950s., and the more recent proof of the Four Color Theorem that made essential use of some computer searches Žby Haken and Appel in 1976., have reminded us that the nature of mathematical proof is not eternal. It is defined by what we take as acceptable demonstration, and it has changed over the years in many ways. We regard this with a mixture of excitement and nervousness, since it means that some proofs are too long in practice for a human to read, while others are too hard in principle for a computer to solve. It is not so much that the mathematics is loosening up, becoming less formal; it is that our notion of what is formal is changing Žas it must.. We are looking here for a balance between the reliability and precision of mathematical reasoning and the flexibility and expressive power of natural language reasoning w50x. This would be something between the plausible reasoning that is so helpful for mathematical discovery w73x and the rhetoric of story-telling that is necessary for understanding w40, 66, 74x, with some combinations being more useful than others. This leads to considerations of computational semiotics, which is the study of the use of symbol systems by computers w49, 70x. It is a very rich field, but somewhat beyond the scope of this paper. In particular, we want a reasoning system to allow us to have some things known by proof, others known by observation or experimentation, and others simply asserted, so that we can keep track of the sources of our common knowledge, and as the use of the system continues, these sources will change as we learn the modeling techniques that are most effective for that system. This kind of ‘‘incremental mathematics,’’ that has information at several different levels of credibility, has not been studied at all, as far as we know, except for the extremely superficial method of assigning numerical weights to the assertions that is commonly found in Expert Systems. Heterogeneous systems are a fact of life w21, 80x, and in order to deal with them, it is necessary to understand how they may be constructed. One approach is to construct a negotiated interface, using some kind of common language, for the negotiation or for the interface description. When integrating two disparate models, it is necessary to find a common
18
BELLMAN AND LANDAUER
notation in which to describe what is known about each, so that the knowledge may be combined, or at least transferred from one to the other. Our Wrappings can be used to treat this problem. The kinds of complex systems we are now trying to build require many different kinds of models and modeling methods, so integrating the models themselves is becoming more important w80x. One of the interesting approaches to integrating diverse formalisms is to use a metalogic w9, 68x, which allows us to describe the appearance and effects of different formalisms in a common language or framework, and then to study the possibility of transferring information from one to another, or Žmore likely. to some overall collection of results and information derived from the models. We have also claimed that Wrappings can be used w48x, but have not pursued that application yet. Similarly, we think that Wrappings can be used in other areas to provide systems that are usually very tightly integrated with a looser and more flexible integration style. The next section of this paper describes in detail one approach to this kind of integration problem w15, 48x.
3. VIRTUAL WORLDS Over the last seven years, we have been exploring the use of collaborative virtual environments called Virtual Worlds ŽVWs. as a new type of testbed for experimenting with ways of organizing and integrating diverse types of computational and human processes w15, 24, 25, 48, 56, 64x. In other papers, we have discussed a wide variety of applications to fields as diverse as education w12x and software engineering w57, 58x. Here we would like to focus on some of the mathematical experiments we are currently building in these environments. The idea of using the VW as a testbed for mathematical research was briefly described in several earlier papers w15, 48x; here the focus is specifically on strategies for dealing with the integration of different mathematical processes. Integration is becoming one of the key barriers to better system modeling and development in Constructed Complex Systems. The problem is that there are necessarily many different viewpoints and formal methods that are essential, and that they are not completely disjoint; rather, they are often partially overlapping and incompatible in subtle ways in their assumptions, definitions, and results. The outcome of these interactions is that there is often no justifiable decision process for combining the results of these different levels and types of models. In the worst case, the layman and the professional often resort to an unjustified strategy or just ‘‘adding them all up.’’ Below we describe briefly the integration problem and our approach to this classic problem using VWs.
TOWARDS AN INTEGRATION SCIENCE
19
Unlike a formal mathematical space, or even the usual kind of homogeneous simulation system, part of the strength of a VW is its ability to become the common meeting ground for a variety of different types of symbol systems and processing capabilities. These different symbol systems and processes occur in a variety of forms within the VW. Information and processing capabilities can be packaged or encapsulated as ‘‘agents’’ w29x, who often interact with human users in natural language, and can freely move and act within the VW in the same way as a human user; as an ‘‘object’’ within the VW that is manipulated by human andror agent users; or as part of the ‘‘setting,’’ e.g., the description, capabilities, contents, and ‘‘virtual physics’’ of one of the many ‘‘places’’ within a VW. The packaging of some process to become an object, an agent, or part of a setting in a VW hides, as does any good Application Program Interface ŽAPI., many details about the process and how that process works. The VW gives the appearance of a uniform world of objects, actors, and places, all acting within the common ‘‘physics’’ of a setting, and seen and heard in the same way. This is a reasonably successful strategy for integration w15, 48, 56, 58x. However, if one looks one level deeper, this common meeting ground is also the theoretical meeting ground for how communication will occur among different types of formal systems. It therefore makes a new hopeful tack for the very hard traditional problem of integrating different formal systems. Most integration of formal systems occurs in two ways: Ž1. by trying to map one formal system into the other Ž‘‘translation’’.; or Ž2. by trying to create a new formal system that subsumes the previous two Ž‘‘common generalization’’.. VWs in a sense are a version of the strategy of common generalization, but with a helpful additional property. Instead of taking the formal systems and mapping them both into another common formal system, this maps them ‘‘up and out’’ into a functional and less formal space. It maps the formalism into a ‘‘place’’ that has behaviors and observable outcomes. This takes it out of the formalism’s own internal set of rules into a world in which its attributes and outcomes are to be understood in terms of purposes and roles, that may or may not interact with the behaviors of other formalisms. That is, the formalism becomes the machinery that is used to enable certain properties or behaviors within a given object. The object’s properties and behaviors are ‘‘situated’’ w78x within an explicit context where their potential usefulness and limitations can be evaluated. Part of this object’s explicit context is other objects, and hence one can again overtly analyze how they interact with or make use of other objects. For example, an adding machine is an object that embodies the formalism of arithmetic. Now, instead of working within that formal space on the limitations of this formalism, the limitations of the arithmetic formalism appear as failure: the object cannot handle certain types of problems.
20
BELLMAN AND LANDAUER
Furthermore, integrating it with another object, say an object called an algebraic simplifier, becomes a matter of deciding what the role of each formalism is, what information and processing services they need from each other, and then how they will ask for and exchange these services. This can be done in many ways, depending upon the capabilities and the medium of the ‘‘setting’’; it can be arranged through language-like dialog, the exchange of objects, such as files, or implicitly in changes in the setting. In one way, this mapping of the formalism into this functional space imitates what human mathematicians do when they map from the problem space to a mathematical space and back out again. Interactions of what one entity says to another are also clearly seen, but neither talks in their ‘‘native’’ language. Rather they speak only in functional terms and results and outcomes to get a job done. This again is a helpful and useful strategy but it skirts two formidably difficult problems. First, this strategy is not in itself a formalization of the interactions in the VW. We need that so that eventually we have some analytic power in understanding the interactions and behaviors. One of the purposes of VWs as an integration place is that one has a computer-mediated environment that captures all human-human, tool-tool, and humanusing-tool interactions, and one wants to develop appropriate analyses for such information. We are starting such a formalization in work reported elsewhere w24x. However, even as we hope to accomplish this first difficult challenge, we are faced with a second tougher challenge. We have no theory yet on what happens when the setting has dynamics that change the properties of the agents and objects. That is, one could create separable theory and formalisms of the VW as a whole, allowing the formalisms underlying the objects to remain visible only to the extent that they show up as properties and behaviors within the VW. This is the tack described above, and is a first strategy for allowing the VW to make use of many different layers of formalisms. But eventually, we want to understand what ‘‘hidden’’ attributes of the formalisms of the objects matter in a specific setting and to other objects and what doesn’t. We need to understand when the different ways of accomplishing a given change within a setting or between objects matters and and when it doesn’t. Furthermore, there is a leakage between ‘‘layers’’ of models Že.g., interactions among the objects and their settings. and eventually we need to really understand the semiotic issues of what are the limits and strengths of different symbol systems, how they interact and how to integrate them. A strength of the VWs is that they can become a very important testbed in the experiments we will need to approach these issues. The integration problem we consider is how to transfer information among different formal systems, and thereby make their combined use more flexible and easily managed w32, 38, 79x. Our approach is to use a
TOWARDS AN INTEGRATION SCIENCE
21
VW and embody the formal systems as agents, objects, and the ‘‘physics’’ underlying settings within the VW w12, 16, 23x. In this section, we mainly focus on experiments with formalisms embodied as agents. Embodiment is an important property for agents, because it leads to specific proposals for architectures and usefully constrains the range of sources of information for the agent w22, 51, 67x. However, it is important to note that formalisms embodied as settings that can become the context for agents and objects have also been a rich source of important and revealing experiments w13x. The VW defines constraints on the structures and meanings of what can be exchanged among its characters, and learned from or made available to its objects and settings. The agents can either tell each other things or observe things in each other or in the objects or settings. This approach also allows humans to participate in the deliberations of the formal systems, because their access to the VW is exactly the same as that of the agents. This latter property seems to us to be a much more fruitful approach to interactive theorem discovery and proof than, for example, forcing the human user to sit outside the system, with no access to the interactions among the formal systems contained in it, and only one method of interacting with the system. There is another style of integration to consider: encompassing formal space, such as those afforded by logical frameworks w41, 42, 69x, general logics w68x, etc. The reason that we do not do it that way is as given in w31x: the weaker the framework is, the more varied and interesting the interactions can be, and the easier it is to bring additional agents into it. The VW provides the ability to insert instrumentation and to observe and capture results in a variety of easy and flexible ways. The hard part of using this new testbed has been to invent scenarios that rationalize bringing together different formalisms embodied in different ways. 3.1. Virtual Worlds and Embodied Agents The basic nature of VWs leads to collaboration among the participants. It allows an explicit consensus process for building common ontologies in complex technical areas. Therefore, it can lead to explicit community-wide models, which are important for communication. We believe that these domain-specific models are essential for complex computing application developments, since they provide common terminology and processes for the application domain w19, 63x. In order to embody formalisms as agents in the VW, so that they can interact there, we design them as processes to be ‘‘carried’’ by an agent, in much the same way as a satellite payload is carried by the satellite vehicle w57x. The agent is represented Žboth perceived as and acts through. as a character in the VW. Currently in VWs, many agents are computer
22
BELLMAN AND LANDAUER
programs that come in through the same client protocols as a human user, and their character representation in the VW moves and acts using the same set of commands as any human user. Often these VW ‘‘robots’’ have simple parsing schemes that allow them to respond to text Žboth the ‘‘chatroom’’ like dialogue of other players and the text descriptions of events within the VW places. with different behaviors. We want to improve on this level of responsiveness to events by using the Problem-Posing Programming Paradigm described above. The important question addressed by using this paradigm is how to provide a very flexible framework that will enable agents to say very different things to each other. Part of this flexibility derives from separating the semantics from the syntax of their exchanges. Whatever the agents need to say to each other, they can use the common coordination language of problem posing. For our current intentions, we expect the computing agents to interchange posed problems, since that already affords a common abstract syntax for their communication language. Having a common syntax means that each agent can parse each posed problem, whether or not it has a way of interpreting it. It also makes room for the eventual invention of processes within the agent that will generate interesting responses, rather than the current strategy in agents of having the only variation of responses be differences in an underlying set of condition-consequence rules. There are a number of interesting approaches to managing the semantics of the language of interaction among the agents w30, 33᎐37x, including trying to have them form their own w13, 53x by cooperative interchange, based on some theoretical studies in biological systems w14, 20, 26x. These approaches are beyond the scope of this paper. For our purposes here, we assume that the semantics of equality and the collection of possible variable names is shared. For example, we can use this mechanism to integrate decision procedures for certain logical theories, as is done by the Nelson᎐Oppen simplifer that was used in some theorem provers w71, 72x. The result Nelson and Oppen prove is that if there are several theories with equality, if they are pairwise disjoint except for the equality symbol, and if there are decision procedures for each theory, then the combined theory has a combined decision procedure, obtained by allowing the expressions in the original problems to be decomposed into their respective theories, with new variables invented for sub-expressions outside each theory, and new equalities asserted for boundary crossings. This is to be contrasted with the usual integration style in theorem provers, in which the different theories are very carefully and tightly integrated, so that it becomes extremely difficult to change them w32, 38, 79x. As an example of a simple VW mathematical experiment, we intend to implement the Nelson᎐Oppen
TOWARDS AN INTEGRATION SCIENCE
23
simplifier as agents within a common room, and to compare such an implementation with the Nelson᎐Oppen approach. Two key issues in this comparison will be to examine whether in fact the VW embodiment simplifies the current integration scheme in the Nelson᎐Oppen simplifier, and whether or not the VW embodiment suggests new ideas because of the type of observability allowed by the experiments. This example is the first Žand the simplest. of our mathematical experiments, which will range over many sets of theories with and without decision procedures, as part of our study of integration of logical formalisms in VWs. 3.2. VWs as Testbeds We have used these VWs as testbeds for our own research on intelligence and autonomy for some time w12, 13, 51, 53, 59, 61x, and more recently on emotions and self w17, 18x. These areas of research are full of problematic language Žoveruse and misuse of metaphors, for example.. We need an environment in which we can operationalize some of these concepts and actually observe such mechanisms in use. One of the most important things we need is an environment in which we can explore these very difficult ‘‘mappings’’ between goals, agent capabilities, agent behaviors and interactions with the environment, and consequences or results in that environment. One of the most difficult issues has been that, heretofore, since we could not completely instrument the real world, we certainly could not capture all interactions between a system and its world. Now in Virtual Worlds we have an opportunity to do so. The disadvantage of course is that these worlds are not nearly as rich as real worlds. However, it is our experience that when one starts filling these worlds with information, objects, processes, and agents that move around the different rooms of these worlds and interact with each other, then the worlds are rich enough to be complex worlds. If one now adds humans behaving through a number of modalities in these worlds while interacting with these objects and agents, we have more than sufficient complexity to be interesting enough for the forseeable future. Especially important is that these worlds force us to describe explicitly what the salient features in the ‘‘world’’ are that will be noticed by the agent, what the actions are that will be performed in this world to cause what results, and so forth. This, to our mind, has been the missing partner in the usual concentration on building agents to interact with the world. Last, we have a simplification not enjoyed in the real world of having hard boundaries between the inside and outside of a system Žalthough one can walk into an object in a Virtual World and have it become a setting w16x..
24
BELLMAN AND LANDAUER
Equally important is that we need a testbed and a style of experimentation that allows us to build, observe, refine, and accumulate knowledge about our agent experiments and implementations. Computer scientists, unlike other scientific fields, do not have a good track record in building off of each other’s implementations. Partly due to the wide variety of languages, machines, etc., and the problems of integration, each researcher tends to rebuild capabilities rather than using someone else’s. Virtual Worlds hopefully will encourage a new attitude and process for conducting and observing each other’s efforts and sharing experiments and implementations, since they have such a low entry cost, both conceptually and computationally. 3.3. Mathematical Issues from VWs and Agents Some of the mathematical issues that arise from VWs have already been addressed, such as the integration across different formalisms, and the varyingly formal system that improves its level of credibility by a process of observing, abstracting, and generating new information. There is also a different kind of ‘‘incremental mathematics,’’ that leaves information and constraints embodied as objects, places, and agents, and then studies how those constraints can be pulled together. The Wrappings approach emphasizes the role of explicit context, and VWs explicitly embody it as the structure of the interaction space. This allows reasoning processes to use that context in different ways w3, 78x, which means that there is a kind of ‘‘local logic’’ to the space. The interactions of different local logics could possibly be addressed by personifying theories and interaction rules as agents in a VW, but developing a suitable interaction scheme makes the problem very hard. There is an emerging notion of ‘‘situatedness’’ that is leading to new developments in logic w4, 5x, having to do with how context can be represented and reasoned about without being formal in the usual sense Žsince, for example, the context of an autonomous agent is only gradually and imperfectly discovered as it travels its path through a VW or a real environment.. We therefore want our autonomous systems to have some modeling capability, which means that we want to implement our notions of modeling processes, as described in the Wrappings Subsection 2.4, so that the agents can make sufficiently complex models to survive in the environments we put them in. We also need mechanisms for managing different viewpoints, especially in a situation with multiple agents, since any negotiations among them will have to take that into account. This includes some kind of interaction logic for distributed systems w8x, as well as some potentially important properties of interaction w81x.
TOWARDS AN INTEGRATION SCIENCE
25
4. CONCLUSION As we have discussed in this paper, one characteristic of complex systems is the variety and multiplicity of components, behaviors, and functions. This results in the need to integrate a diversity of tools, the languages and viewpoints of different types of expertise, and even the goals and policies of organizations managing the development and use of these systems. We’ve learned a great deal about engineering such systems, but now we face the greatest challenges of all. We need to construct systems in which human capabilities and limitations are an integral part of such systems. And we need new theory and methods for combining the efforts of many humans and artificial agents Žessentially ‘‘group mind’’.. The challenge for us is: How do we create a scientific and technical basis for understanding ourselves as part of a system? How do we create a scientific and technical basis for understanding the contributions of dozens of human and artificial entities? To face these challenges, we need new theory and good analytic power to face the complex systems we will now construct. Essentially, we need new intellectual scaffolding for building up this theoretical foundation. That is, we need new experimental approaches and new types of laboratories or testbeds for experimenting with these approaches complemented by new methods of analysis. In this paper, we presented a brief overview of two approaches that we have been developing, ‘‘reflective architectures’’ supported by Wrappings and Virtual Worlds, but we wish to encourage others to develop many more approaches. Wrappings offers an approach to these issues by providing mechanisms for explicitly describing and using knowledge about the expected role of both human and constructed components. In the absence of good global models Žoften true of complex systems., Wrappings can allow us to create ‘‘islands of good behavior’’ by knitting together resources, appropriately bounded for their optimal use by explicit meta-knowledge and the reflective processing described earlier. Last, reflection can help us to build systems that can help to report on and control themselves. Virtual Worlds, because they capture all the interactions ᎏhuman to human, tool to tool, human using toolᎏin computer-mediated environment, give us another set of methods with which to approach complex systems. Here one can experiment with the explicit context for different interactions, constrain and shape interactions, and provide a common medium for all human and artificial agents Ž‘‘standing’’ toe-to-toe with one’s inventions.. We see both Wrappings and VWs as key strategies for developing a new type of system engineering for human᎐machine systems. We are not just users but parts of the system. In this system engineering we must partition
26
BELLMAN AND LANDAUER
the complementary functions and roles of humans and machines and understand and monitor interactions. Such systems will need highly evolvable infrastructure. Virtual Worlds and Wrappings allow us to explore not only different capabilities, but different operational environments and infrastructure embodied as ‘‘integration places’’ and explicit multiple contexts. Perhaps most difficult of all, we need to support a new ‘‘experimental process’’ for building very complex systems. This experimental process would be characterized by allowing us to build incrementally, assess the results, and learn what to retain or enhance from the previous experiment. We need to do better on building off of our previous forays into very complex systems, but in a flexible fashion. Given the increasing role of technology in everyday life, our systems must be ‘‘livable’’ from our standpoint and supportive of our goals and capabilities. In addition, for the complex system of tomorrowᎏ globally available infrastructures, widespread health and education, complete mapping of the human genome into behavior, supported space colonizationᎏwe will need to have our artifacts understandable over generations of developers! We have built cities and many human artifacts over generations, but they have not been necessarily planned, understandable, or flexible. Supporting such complexity with suitable analysesᎏrepresenting it, reasoning about it, and controlling it is the mathematical problem for this new millennium. The authors were asked to comment on the impact of Richard Bellman on their work. A safe paper would have been to talk just about Bellman’s mathematical work and not what in fact is his wider intellectual impact. Many areas in mathematics are now going in directions very much predicted in attitude if not content by R. Bellman. This is the greater influence of mathematical reasoning as opposed to just mathematical formalism. First and foremost to Richard Bellman, mathematics was a language to think with. Since we are here to celebrate a pioneer and a risk taker par excellence, it is fitting that we do the riskier paper. He would approve. This great man was perhaps most comfortable to many fellow mathematicians in hindsight. Somehow a proper celebration argues for someoneᎏmaybe everyoneᎏplaying the role of uncomfortable agent of change. Hence, we discussed not only some of the impacts of Richard Bellman on our work, but also our predictions as to the type of future problems we need considered and which will need new mathematical thinking. Most of all, we hope that the reader will join us in celebrating the life of a great mathematician by keeping the vital language of mathematics alive by arguing, inventing, and applying new mathematics to the brave new Žvirtual. worlds of tomorrow.
TOWARDS AN INTEGRATION SCIENCE
27
REFERENCES 1. H. Abelson, G. Sussman, with J. Sussman, ‘‘The Structure and Interpretation of Computer Programs,’’ Bradford BooksrMIT Press, Cambridge, MA, 1985. 2. P. Aczel, ‘‘Non-well-founded Sets,’’ CSLI Lecture Notes, Vol. 14, Center for the Study of Language and Information, Stanford University, 1988. 3. G. Attardi and M. Simi, Proofs in context, in ‘‘Proc. KR’94, the 1994 International Conference on Principles of Knowledge Representation and Reasoning, Bonn, Germany, May 24᎐27, 1994’’ ŽJ. Doyle, E. Sandewall, and P. Torasso, Eds.., pp. 15᎐26. 4. F. Bacchus, J. Y. Halpern, and H. J. Levesque, Reasoning about noisy sensors and effectors in the situation calculus, Artificial Intelligence 111 Ž1999., 171᎐208. 5. J. Barwise, ‘‘The Situation in Logic,’’ CSLI Lecture Notes, Vol. 17, Center for the Study of Language and Information, Stanford University, 1989. 6. J. Barwise and J. Etchemendy, ‘‘The Liar: An Essay on Truth and Circularity,’’ Oxford Univ. Press, London, 1987. 7. J. Barwise and L. Moss, ‘‘Vicious Circles: On the Mathematics of Non-Wellfounded Phenomena,’’ CSLI Lecture Notes, Vol. 60, Center for the Study of Language and Information, Stanford University, 1996. 8. J. Barwise and J. Seligman, ‘‘Information Flow: The Logic of Distributed Systems,’’ Cambridge Tracts in Theoretical Computer Science, Vol. 44, Cambridge Univ. Press, Cambridge, UK, 1997. 9. D. A. Basin and R. L. Constable, Metalogical frameworks, in ‘‘Logical Environments, Proc. Second Workshop on Logical Frameworks: Design, Implementation, and Experiment, May 19᎐24, 1991,’’ pp. 1᎐29, Cambridge Univ. Press, Cambridge, UK, 1993. 10. K. L. Bellman, The modeling issues inherent in testing and evaluating knowledge-based systems, Expert Systems Appl. J. 1, No. 3 Ž1990., 199᎐215. 11. K. L. Bellman, An approach to integrating and creating flexible software environments supporting the design of complex systems, in ‘‘Proc. WSC’91, the 1991 Winter Simulation Conference, Phoenix, AZ, December 8᎐11, 1991,’’ pp. 1101᎐1105; revised version, K. L. Bellman, C. Landauer, Flexible software environments supporting the design of complex systems, in Proc. Artificial Intelligence in Logistics Meeting, Williamsburg, VA, March 8᎐10, 1993,’’ American Defense Preparedness Association, 1993. 12. K. L. Bellman, Playing in the MUD: Turning virtual reality into real places, in ‘‘Proceedings NATO Conf. on Virtual Reality: Training for Tomorrow, Portsmouth, England, February 1994’’ ŽR. J. Seidel and P. R. Chatelier, Eds.., NATO Defense Research Group No. 16 on Training and Training Technology, 1994; published as R. J. Seidel and P. R. Chatelier ŽEds.., ‘‘Virtual Reality: Now or Tomorrow,’’ Plenum, New York, 1977. 13. K. L. Bellman, Sharing work, experience, interpretation, and maybe even meanings between natural and artificial agents, in ‘‘Proc. SMC’97, the 1997 IEEE International Conference on Systems, Man, and Cybernetics, Orlando, FL, October 12᎐15, 1997,’’ Vol. 5, pp. 4127᎐4132. 14. K. L. Bellman, Motion and communication in layers of symbol systems, in ‘‘Proc. SMC’98, the 1998 IEEE International Conference on Systems, Man, and Cybernetics, San Diego, CA, October 11᎐14, 1998.’’ 15. K. L. Bellman, Knowledge-based integration infrastructure and the emerging integration science, in ‘‘Proc. ICC’98, the 15th International Congress on Cybernetics, Namur, Belgium, August 23᎐27, 1998.’’
28
BELLMAN AND LANDAUER
16. K. L. Bellman, Towards a theory of virtual worlds, in ‘‘Proc.VWsim’99, Virtual Worlds and Simulation Conference, SCS Western Multi-Conference, San Francisco, January 18᎐20, 1999.’’ pp. 17᎐21. 17. K. L. Bellman, Emotions: Meaningful mappings between an individual and its world, in ‘‘Proc. Workshop on Emotions in Humans and Artifacts, Vienna, Austria, August 13᎐14, 1999.’’ 18. K. L. Bellman, Mathematical fictions and physiological realities: The challenges of brains reasoning about themselves, in ‘‘Proc. IMACS’2000, the 16th IMACS World Congress on Scientific Computation, Applied Mathematics and Simulation, Invited Session on Bioinformatics, Lausanne, August 21᎐25, 2000.’’ 19. K. L. Bellman, A. Gillam, and C. Landauer, Challenges for conceptual design environments: The VEHICLES experience, in ‘‘Revue Internationale de CFAO et d’Infographie,’’ Hermann, Paris, September 1993. 20. K. L. Bellman and L. Goldberg, Common origin of linguistic and movement abilities, Amer. J. Phys. 246 Ž1984., R915᎐R921. 21. K. L. Bellman and C. Landauer, Designing testable, heterogeneous software environments, J. Systems Software 29, No. 3 Ž1995., 199᎐217. 22. K. L. Bellman and C. Landauer, A note on improving the capabilities of software agents, in ‘‘Proc. AA’97, the First International Conference on Autonomous Agents, Marina Del Rey, CA, February 5᎐8, 1997,’’ pp. 512᎐513. 23. K. L. Bellman and C. Landauer, Playing in the MUD: Virtual worlds are real places, in ‘‘Proc. ECAI’98, the 1998 European Conference on Artificial Intelligence, Workshop w14 on Intelligent Virtual Environments, Brighton, England, August 25, 1998;’’ revised and extended version, J. Appl. Artificial Intelligence 14, No. 1, Ž2000., 93᎐123. 24. K. L. Bellman and C. Landauer, Virtual worlds as meeting places for formal systems, Appl. Math. Comput., in press. 25. K. L. Bellman and C. Landauer, Integration science is more than putting pieces together, in ‘‘Proc. 2000 IEEE Aerospace Conference ŽCD., Big Sky, Montana, March 18᎐25, 2000,’’ IEEE Press, New York, 2000. 26. K. L. Bellman and D. O. Walter, Biological processing, Amer. J. Phys. 246 Ž1984., R860᎐R867. 27. R. Bellman and P. Brock, On the concepts of a problem and problem-solving, Amer. Math. Monthly 67 Ž1960., 119᎐134. 28. J. M. Bradshaw ŽEd.., ‘‘Software Agents,’’ AAAI Press, Menlo Park, CA, 1997. 29. J. M. Bradshaw, An introduction to software agents, in ‘‘Software Agents,’’ Chap. 1, pp. 3᎐46, AAAI Press, Menlo Park, CA, 1997. 30. C. Crangle and P. Suppes, ‘‘Language and Learning for Robots,’’ CSLI Lecture Notes, Vol. 41, Center for the Study of Language and Information, Stanford University, 1994. 31. N. G. de Bruijn, A plea for weaker frameworks, in ‘‘Logical Frameworks, Proc. First Workshop on Logical Frameworks: Design, Implementation, and Experiment, SophiaAntipolis, France, May 7᎐11, 1990,’’ pp. 40᎐67, Cambridge Univ. Press, Cambridge, UK, 1991. 32. R. Diaconescu, J. Goguen, and P. Stefaneas, Logical support for modularization, ‘‘Logical Environments, Proc. Second Workshop on Logical Frameworks: Design Implementation, and Experiment, Edinburgh, May 19᎐24, 1991,’’ pp. 83᎐130, Cambridge Univ. Press, Cambridge, UK, 1993. 33. T. Finin, Y. Labrou, and J. Mayfield, KQML as an agent communication language, in ‘‘Software Agents,’’ Chap. 14, pp. 291᎐316, AAAI Press, Menlo Park, CA, 1997. 34. D. Gelernter, Generative communication in Linda, ACM Trans. Programm. Languages Systems 7, No. 1 Ž1985., 80᎐112.
TOWARDS AN INTEGRATION SCIENCE
29
35. M. R. Genesereth, An agent-based framework for software interoperation, in ‘‘Proc. DARPA Software Technology Conference,’’ Los Angeles, April 1992,’’ pp. 359᎐366. 36. M. R. Genesereth, An agent-based framework for interoperability, in ‘‘Software Agents,’’ Chap. 15, pp. 317᎐345, AAAI Press, Menlo Park, CA, 1997. 37. M. R. Genesereth and R. E. Fikes, ‘‘Knowledge Interchange Format Version 3.0 Reference Manual,’’ Logic-92-1, Stanford University Logic Group, 1992; available at http:rrlogic.stanford.edurkifrHypertextrkif-manual.html or . . . HTML.tar, 320KB, last changed December 7, 1994 Žavailability last checked April 10, 2000.. 38. F. Giunchiglia, P. Pecchiari, and C. L. Talcott, ‘‘Reasoning Theories: Towards an Architecture for Open Mechanized Reasoning Systems,’’ IRST Technical Report 9409-15 and Stanford University Technical Note STAN-CS-TN-94-15, December 1994; also available via anonymous ftp from host ‘‘steam. stanford. edu’’ in file ‘‘rpubrMTr94omrs.ps.Z’’, 227KB, last changed November 14, 1994 Žavailability last checked April 10, 2000.; revised version, in ‘‘Proc. FroCoS’96, The First International Workshop on Frontiers of Combining Systems, Munich, Germany, March 26᎐29, 1995,’’ pp. 157᎐174; also available via anonymous ftp from host ‘‘steam.stanford edu’’, in file ‘‘rpubrMTr96frocos.ps.Z’’, 77KB, last changed December 22, 1995 Žavailability last checked April 10, 2000.. 39. B. Hayes-Roth, K. Pfleger, P. Lalanda, P. Morignot, M. Balabanovic, A domain-specific software architecture for adaptive intelligent systems, IEEE Trans. Software Engrg. 21, No. 4 Ž1995., 288᎐301. 40. B. Hayes-Roth and R. van Gent, Story-making with improvisational puppets, in ‘‘Proc. AA’97, the First International Conference on Autonomous Agents, Marina Del Rey, CA, February 5᎐8, 1997,’’ pp. 1᎐7. 41. G. Huet and G. Plotkin ŽEds.., ‘‘Logical Frameworks, Proc. First Workshop on Logical Frameworks: Design, Implementation, and Experiment, Sophia-Antipolis, France, May 7᎐11, 1990.,’’ Cambridge Univ. Press, Cambridge, UK, 1991. 42. G. Huet and G. Plotkin ŽEds.., ‘‘Logical Environments, Proc. Second Workshop on Logical Frameworks: Design, Implementation, and Experiment May 19᎐24, 1991,’’ Edinburgh Cambridge Univ. Press, Cambridge, UK, 1993. 43. W. Lewis Johnson ŽEd.., ‘‘Proc. AA’97, the First International Conference on Autonomous Agents, Marina Del Rey, CA, February 5᎐8, 1997.’’ 44. G. Kiczales, J. des Rivieres, and D. G. Bobrow, ‘‘The Art of the Meta-Object Protocol,’’ MIT Press, Cambridge, MA, 1991. 45. C. Landauer, Wrapping mathematical tools, in ‘‘Proc. EMC’90, the 1990 SCS Eastern MultiConference, Nashville, TN, 1990,’’ pp. 261᎐266, Simulation Series, Vol. 22, No. 3, SCS International, 1990; also in ‘‘Proc. Interface ’90: The 22nd Symposium on the Interface Žbetween Computer Science and Statistics ., East Lansing, Michigan, 1990,’’ pp. 415᎐419. 46. C. Landauer and K. L. Bellman, The role of self-referential logics in a software architecture using wrappings, in ‘‘Proc. ISS’93, the 3rd Irvine Software Symposium,’’ U. C. Irvine, California, 1993. 47. C. Landauer and K. L. Bellman, Knowledge-based integration infrastructure for complex systems, Internat. J. Intelligent Control Systems 1, No. 1 Ž1996., 133᎐153. 48. C. Landauer and K. L. Bellman, Integration systems and interaction spaces, in ‘‘FroCoS’96, the First International Workshop on Frontiers of Combining Systems, Munich, Germany, March 1996,’’ pp. 161᎐178. 49. C. Landauer and K. L. Bellman, Semiotics of constructed complex systems, in ‘‘Intelligent Systems: A Semiotic Perspective, Proc. 1996 International Multidisciplinary Conference. Vol. I. Theoretical Semiotics, Workshop on Intelligence in Constructed Complex Systems, NIST, Gaithersburg, MD, 1996,’’ pp. 35᎐40.
30
BELLMAN AND LANDAUER
50. C. Landauer and K. L. Bellman, Mathematics and linguistics, in ‘‘Intelligent Systems: A Semiotic Perspective, Proc. 1996 International Multidisciplinary Conference, Vol. I. Theoretical Semiotics, Workshop on New Mathematical Foundations for Computer Science, NIST, Gaithersburg, MD, 1996,’’ pp. 153᎐158. 51. C. Landauer and K. L. Bellman, Computational embodiment: Constructing autonomous software systems, in ‘‘Continuing the Conversation: Dialogues in Cybernetics. Vol. I. Proc. ASC’97, the 1997 ASC Conference, 1997,’’ pp. 42᎐54. American Society for Cybernetics, Univ. of Illinois 1997; revised version, Cybernetics Systems Internat. J. 30, No. 2 Ž1999., 131᎐168. 52. C. Landauer and K. L. Bellman, Wrappings for software development, in ‘‘Proc. HICCS’98, the 31st Hawaii International Conference on System Sciences. Track III. Emerging Technologies, Kona, Hawaii, 1998,’’ pp. 420᎐429. 53. C. Landauer and K. L. Bellman, Language formation in virtual worlds, in ‘‘Proc. SMC’98, the 1998 IEEE International Conference on Systems, Man, and Cybernetics, San Diego, CA, 1998,’’ pp. 1365᎐1370. 54. C. Landauer and K. L. Bellman, Generic programming, partial evaluation, and a new programming paradigm, paper etspi02, in ‘‘Proc. HICSS’99, the 32nd Hawaii Conference on System Sciences ŽCD.. Track III. Emerging Technologies, Software Process Improvement Mini-Track, Maui, Hawaii, 1999,’’ revised and extended version, ‘‘Software Process Improvement, ’’ Chap. 8, pp. 108᎐154, Idea Group Publishing, 1999. 55. C. Landauer and K. L. Bellman, Problem posing interpretation of programming languages, paper etecc07, in ‘‘Proc. HICSS’99, the 32nd Hawaii Conference on System Sciences ŽCD.. Track III. Emerging Technologies, Engineering Complex Computing Systems Mini-Track, Maui, Hawaii, 1999.’’ 56. C. Landauer and K. L. Bellman, Virtual worlds as integration spaces for world modeling, in ‘‘Proc. AIPA’99, the 1999 Conference on Advanced Information Processing and Analysis, Washington, DC, 1999.’’ 57. C. Landauer and K. L. Bellman, Agent-based information infrastructure, in ‘‘Proc. Agents’99rAOIS’99, Workshop on Agent-Oriented Information Systems, Seattle, Washington, 1999’’; revised version, in ŽGerd Wagner and Eric Yu, Eds.., ‘‘Agent-Oriented Information Systems,’’ MIT Press, Cambridge, MA, in press. 58. C. Landauer and K. L. Bellman, New architectures for constructed complex systems, in ‘‘Proc. 7th Bellman Continuum, International Workshop on Computation, Optimization and Control, Sante Fe, NM, 1999.’’ Appl. Math. Comput., in press. 59. C. Landauer and K. L. Bellman, Architectures for embodied intelligence, in ‘‘Proc. ANNIE’99, the 1999 Conference on Artificial Neural Nets and Industrial Engineering, Special Track on Bizarre Systems, St. Louis, MO, 1999,’’ pp. 215᎐220. 60. C. Landauer and K. L. Bellman, Detecting anomalies in constructed complex systems, in ‘‘Proc. HICSS’2000, the 33rd Hawaii International Conference on System Sciences ŽCD.. Track IV. Emerging Technologies, Maui, Hawaii, 2000.’’ 61. C. Landauer and K. L. Bellman, Reflective infrastructure for autonomous systems, in ‘‘Proc. EMCSR’2000, the 15th European Meeting on Cybernetics and Systems Research, Symposium on Autonomy Control: Lessons from the Emotional, Vienna, April 2000.’’ 62. C. Landauer and K. L. Bellman, Can formal mathematics model nonformal phenomena? in ‘‘Proc. IMACS’2000, 16th IMACS World Congress on Scientific Computation, Applied Mathematics and Simulation, Invited Session on Bioinformatics, Lausanne, August 2000.’’ 63. C. Landauer, K. L. Bellman, and A. Gillam, Software infrastructure for system engineering support, in ‘‘Proc. AAAI’93 Workshop on Artificial Intelligence for Software Engineering, Washington, DC, 1993.’’ 64. C. Landauer and V. E. Polichar, More than shared artifacts: Collaboration via shared presence in MUDs, in ‘‘Proc. WETICE’98, the 1998 IEEE Workshops on Enabling
TOWARDS AN INTEGRATION SCIENCE
65.
66. 67. 68. 69.
70. 71. 72. 73.
74. 75. 76.
77. 78. 79.
80.
81.
31
Technologies: Infrastructure for Collaborative Enterprise, web-based Infrastructures for Collaborative Enterprises: Ready for a Second Generation? Stanford University, Palo Alto, CA,’’ pp. 182᎐189, IEEE Press, New York, 1998. P. Maes and D. Nardi ŽEds.., ‘‘Meta-Level Architectures and Reflection, Proc. Workshop on Meta-Level Architectures and Reflection, Alghero, Italy, 1986,’’ North-Holland, Amsterdam, 1988. J. M. Mandler, ‘‘Stories, Scripts, and Scenes: Aspects of Schema Theory,’’ Erlbaum, Hillsdale, NJ, 1984. M. J. Mataric, Studying the role of embodiment in cognition, Cybernetics Systems 28, No. 6 Ž1997., 457᎐470. J. Meseguer, General logics, in ‘‘Proc. Logic Colloquium ’87,’’ pp. 275᎐329, North-Holland, Amsterdam, 1989. J. Meseguer, A logical theory of concurrent objects and its realization in the Maude language, in ‘‘Research Directions in Object-Based Concurrency,’’ Chap. 12, pp. 313᎐389, MIT Press, Cambridge, MA, 1983. A. Meystel, ‘‘Semiotic Modeling and Situation Analysis: An Introduction,’’ AdRem, Inc., 1995. C. G. Nelson, ‘‘Techniques for Program Verification,’’ CSL-81-10, Xerox PARC, June 1981. C. G. Nelson and D. Oppen, Simplification by cooperating decision procedures, ACM Trans. Programm. Languages Systems 1, No. 2 Ž1979., 245᎐257. G. Polya, ‘‘Mathematics and Plausible Reasoning. Vol. I. Induction and Analogy in Mathematics, Vol. II, Patterns of Plausible Inference,’’ Princeton Univ. Press, Princeton, NJ, 1956. J. D. Ramage and J. C. Bean, ‘‘Writing Arguments: A Rhetoric with Readings,’’ 3rd ed., Allyn & Bacon, Needham Heights, MA, 1995. M. Shaw and D. Garlan, ‘‘Software Architecture: Perspectives on an Emerging Discipline,’’ Prentice-Hall, Englewood Cliffs, NJ, 1996. M. Shaw and W. A. Wulf, Tyrannical languages still preempt system design, in ‘‘Proc. ICCL’92, the 1992 International Conference on Computer Languages, Oakland, CA, 1992,’’ pp. 200᎐211; includes comments on M. Shaw and W. A. Wulf, Toward relaxing assumptions in languages and their implementations, ACM SIGPLAN Notices 15, No. 3 Ž1980., 45᎐51. B. Cantwell Smith, Varieties of self-reference, in ‘‘Proc. TARK’86, the 1986 Conference on Theoretical Aspects of Reasoning about Knowledge, Monterey, CA, 1986.’’ L. A. Suchman, ‘‘Plans and Situated Actions: The Problem of Human-Machine Communication, Cambridge Univ. Press, Cambridge, UK, 1987. C. L. Talcott, Reasoning specialists should be logical services not black boxes, in ‘‘Proc. CADE-12 Workshop on Theory Reasoning in Automated Deduction, Nancy, France, 1994,’’ pp. 1᎐6; also available via anonymous ftp from host ‘‘steam.stanford.edu,’’ in file ‘‘rpubrMTr94cade-tr-work.ps.Z’’, 33KB, last changed July 25, 1994 Žavailability last checked April 10, 2000.. D. O. Walter and K. L. Bellman, Some issues in model integration, in ‘‘Proc. EMC’90, the 1990 SCS Eastern MultiConference, Nashville, TN, 1990,’’ pp. 249᎐254; Simulation Ser. 22 Ž1990.. P. Wegner, Why interaction is more powerful than algorithms, Comm. Assoc. Comput. Mach. 40, No. 5 Ž1997., 80᎐91.