Reference: Hayes-Roth, F.; Erman, L. D.; Terry, A.; & Hayes-Roth, B. Distributed Intelligent Control and Management: Concepts, Methods and Tools for Developing DICAM Applications. 1992.
Abstract: We 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. In tasks that are simple, deterministic or time-stressed, the modules may be compiled 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 generic controller architecture. The workspace also provides mechanisms for triggering applications of software tools, including knowledge-based software design assistants. This paper explains our general approach, illustrates it in the context of our current demonstration task, and assesses the interplay between the software engineering and knowledge engineering evident in our research program.
Full paper available as hqx, ps.