ISI is an off-campus research center in the University of Southern California's School of Engineering. The Institute engages in a broad set of research and application oriented projects in the computer sciences, ranging from advanced research efforts aimed at producing new concepts to operation of a major Arpanet computer facility.
As part of the ARPA DSSA program, we are developing a methodology and integrating a suite of supporting tools to help specify, design, validate, package and deploy distributed intelligent control and management (DICAM) applications. Our domain of specialization is vehicle management systems, and our near-term focus is on advanced artillery systems. To attain higher levels of performance and functionality while reducing the time and cost required for development, we are recommending a generic control architecture suitable for use as a single intelligent agent or as multiple cooperating agents. This reference architecture combines a task-oriented domain controller with a meta-controller that schedules activities within the domain controller. The domain controller provides functions for model-based situation assessment and planning, and inter-controller communication. Typically, these functions are performed by components taken from a repository of reusable software. In tasks that are simple, deterministic or time-stressed, the modules may be complied into or replaced by conventional control algorithms. In complex, distributed, cooperative, non-deterministic or unstressed situations, these modules will usually exploit knowledge-based reasoning and deliberative control.To improve the controller development process, we are combining many of the best ideas from software engineering and knowledge engineering in a software environment. This environment includes a blackboard-like development workspace to represent both the software under development and the software development process itself. In this workspace, controllers are realized by mapping requirements into specializations of the reference architecture. The workspace also provides mechanisms for triggering applications of software tools, including knowledge-based software design assistants.We are currently in the third year of a five-year program. In conjunction with our collaborators at ARDEC, we have produced a schema for describing architectures which is being used by ARDEC's community of contractors, by an ARPA architecture specification project for the Joint Task Force ATD, and by the Stanford Knowledge Systems Laboratory. We have released the second major version of our development environment, which is being used at ARDEC and in support of this ARPA architecture specification program. This version of the development environment is focused on initial requirements, architecture, and design. It provides both CASE-like editing of architectures and textual browsing/editing of repository descriptions expressed in the schema mentioned above. In the remaining years of the program we will be expanding the suite of tools and improving the methodologies required to build intelligent, distributed, hybrid controllers capable of spanning multiple levels of organization and system hierarchy. This technology holds considerable promise for near-term value, and the associated methodology provides a candidate approach for realizing the goals of mega-programming practice in control software. In assessing this prospect, we discuss some of the remaining shortfalls in both methodology and tools that require additional research and development.
The authors are developing a generic control architecture suitable for use as a single intelligent agent or as multiple cooperating agents. The generic architecture combines a task-oriented domain controller with a meta-controller that schedules activities within the domain controller. The domain controller provides functions for model-based situation assessment and planning, and inter-controller communication. Typically, these functions are performed by modules taken from a repository of reusable software. To improve the controller development process, the authors are combining many of the best ideas from software engineering and knowledge engineering in a software environment. This environment includes a blackboard-like development workspace to represent both the software under development and the software development process itself.<>
We have recently begun a 4-year effort to develop a new technology foundation and associated methodology for the rapid development of high-performance intelligent controllers. Our objective in this work is to enable system developers to create effective real-time systems for control of multiple, coordinated entities in much less time than is currently required. Our technical strategy for achieving this objective is like that in other domain-specific software efforts: analyze the domain and task underlying effective performance, construct parametric or model-based generic components and overall solutions to the task, and provide excellent means for specifying, selecting, tailoring or automatically generating the solution elements particularly appropriate for the problem at hand. In this paper, we first present our specific domain focus, briefly describe the methodology and environment we are developing to provide a more regular approach to software development, and then later describe the issues this raises for the research community and this specific workshop.
The development of a generic control architecture suitable for use as a single intelligent agent or as multiple cooperating agents is described. The generic architecture combines a task-oriented domain controller with a metacontroller that schedules activities within the domain controller. The domain controller provides functions for model-based situation assessment and planning, and intercontroller communication. Typically, these functions are performed by modules taken from a repository of reusable software. To improve the controller development process, many of the best ideas from software engineering and knowledge engineering are being combined in a software environment. This environment includes a blackboard-like development workspace to represent both the software under development and the software development process itself. The workspace also provides mechanisms for triggering applications of software tools, including knowledge-based software design assistants
The DARPA Domain Specific Software Architecture Program (DSSA) is a five-year effort that has been active since July 1991. This document contains an overview of the work being done in the program as of July 1992. Software architectures serve as frameworks for software reuse. Domainspecific software architectures also serve as a common language in which domain engineers can discuss, understand and teach the principles of their craft. There are six independent projects within the DSSA program. Four of these projects are working in specific, militarily-significant domains. Those domains are Avionics Navigation, Guidance and Flight Director for Helicopters; Command and Control; Distributed Intelligent Control and Management for Vehicle Management; Intelligent Guidance, Navigation and Control for Missiles. In addition, there are two projects working on underlying support technology: Hybrid (discrete and continuous, non-linear) Control and Prototyping Technology. This report contains brief descriptions from each project and an overview.
The development of a system engineering environment called ABE, a Better Environment, as part of the strategic computing program of the US Dept. of Defense's Defense Advanced Research Projects Agency (DARPA) is described. The goal was to create technologies and methodologies for building cooperative, intelligent systems with modular, heterogeneous components. The motivating problems are discussed. The specific needs of intelligent-system developers that the work addressed and the key technical approaches that were adopted are examined. The ABE software system is described. As an example of the use of ABE, PMR, a system for plan monitoring and replanning, is presented. The lessons learned in developing ABE and the issues remaining to be addressed are discussed.<>
We describe the ABE/RT toolkit—a set of design, development, and experimentation tools for building time-stressed intelligent systems-and its use for the Lockheed Pilot's Associate application. We use the termtimely systems to refer to systems with hard real-time requirements for interacting with a human operator or other agents with similar time-scales. The ABE/RT methodology is based on a philosophy of rigorous engineering design in which the application developer works to guarantee the system's timeliness by identifying the various events which require timely responses, determining the worst-case frequencies of these events and the deadlines and durations of the tasks that respond to the events, and then verifying that the run-time system has enough processing resources to complete all mandatory taks by their deadlines. We believe this is the only way in the near-term to build complex real-time intelligent systems that will be reliable enough for critical applications with demanding users. The ABE/RT Toolkit contains a set of languages for specifying the structure and behavior of timely systems, together with tools to simulate those models, log and analyze data collected during simulation runs, predict an application's performance on a specified target hardware architecture, and deploy the application on the target architecture.
Publisher Summary This chapter provides an overview of ABE, a cooperative operating system and development environment. Teknowledge’s ABE™ system addresses the problem of combining conventional computing functions with knowledge processing capabilities. It enables the development of cooperative application systems that can exploit new-generation multiprocessing and distributed hardware. These are called new-generation applications intelligent systems, and ABE embodies excellent methods for engineering these systems. ABE is intended for system architects and application developers. It supports the exploratory and evolutionary development of applications that must integrate both conventional and knowledge processing capabilities. It provides several high-level graphical design and development environments, which we call frameworks. It encourages a high degree of modularity and facilitates radical reorganization of software components and the mapping of those components onto the hardware used to deploy them. ABE, in essence, provides an environment and operating system for intelligent systems. At present, Teknowledge offers the ABE software system as a prototype to a limited number of advanced users. These users typically face the problem of developing applications that must combine several software subsystems into an effective whole. These subsystems may employ conventional or AI capabilities.
The ABE multilevel architecture for developing intelligent systems addresses the key problems of intelligent systems engineering: large-scale applications and the reuse and integration of software components. ABE defines a virtual machine for module-oriented programming and a cooperative operating system that provides access to the capabilities of that virtual machine. On top of the virtual machine, ABE provides a number of systemdesign and development frameworks, which embody such programming metaphors as control flow, blackboards, and dataflow. These frameworks support the construction of capabilities, including knowledge processing tools, which span a range from primitive modules to skeletal systems. Finally, applications can be built on skeletal systems. In addition, ABE supports the importation of existing software, including both conventional and knowledge processing tools.
For practical expert systems, more task-specific control is needed than provided in the bunt-in inference engine provided by most rule-based tools. A knowledge engineer typically accomplishes this by encoding the control within the rules or by programming outside the tool. This problem is addressed within the S.1 tool by providing a separate procedural representation for control knowledge that is integrated within the tool; this allows for a cleaner knowledge base and support by the tool for utilities such as explanation and translation of the control knowledge.
Hearsay-Ill provides a framework for constructing knowledge-based expert systems. While Hearsay-Ill makes no commitment to any particular application domain, it does supply a variety of generally applicable facilities. These include representation primitives and an interpreter for large-grained, flexibly schedulable production rules called knowledge sources. A detailed overview of the motivations behind Hearsay-Ill and the facilities it provides are presented. Finally, an application of Hearsay-Ill is described.
Current high-accuracy speech understanding systems achieve their performance at the cost of highly constrained grammars over relatively small vocabularies. Less-constrained systems will need to compensate for their loss of top-down constraint by improving bottom-up performance. To do this, they will need to eliminate from consideration at each place in the utterance most words in their vocabularies solely on the basis of acoustic information and expected pronunciations of the words. Towards this goal, we present the design and performance of Noah, a bottom-up word hypothesizer which is capable of handling large vocabularies-more than 10 000 words. Noah takes (machine) segmented and labeled speech as input and produces word hypotheses. The primary concern of this work is the problem of word hypothesizing from large vocabularies. Particular attention has been paid to accuracy, knowledge representation, knowledge acquisition, and flexibility. In this paper we discuss the problem of word hypothesizing, describe how the design of Noah faces these problems, and present the performance of Noah as a function of the vocabulary size.
Hearsay-III is a conceptually simple extension of the basic ideas in the Hearsay-II speech-understanding system [3]. That domain-dependent expert system was, in turn, a product of a tradition of increasingly sophisticated production-rule-based expert systems. The use of production systems to encapsulate expert knowledge in manageable and relatively independent chunks has been a strong recurrent theme in Al. These systems have steadily grown more sophisticated in their pattern-match and action languages, and in their conflict-resolution mechanisms [13]. In this paper, we describe the Hearsay-III framework, concentrating on its departures from Hearsay-II.
The range of application areas to which distributed processing has been applied effectively is limited. In order to extend this range, new models for organizing distributed systems must be developed.
Nils J. Nilsson合作论文数Department of Computer Science, Stanford University1
Stephen Fickas合作论文数University of Oregon;Computer Science Dept.1