Programming constructs for real-time distributed knowledge-based systems
Andrew S. Cromarty · 1988
Existing design approaches for distributed intelligent systems have tended to focus on multiagent abstract architectures and interagent communications and control policies. Generally they have not distinguished those policies from the underlying mechanisms upon which they are implemented, often resulting in distributed intelligent system designs that do not attend well to execution performance concerns. Meanwhile, a growing class of demanding practical applications for distributed knowledge-based systems (DKBS's) is developing; those applications frequently must meet stringent performance requirements, notably including strict real-time problem solving constraints. In this study, we present a set of mechanisms for use in the construction of distributed knowledge-based systems that must meet such practical performance constraints. These mechanisms are made manifest in the form of programming language constructs designed to support the development of DKBS's that implement a multiplicity of alternative policies and abstract architectures. We study the proposed constructs using two techniques: implementation in an experimental testbed environment and performance measurement in controlled experiments that assess the time cost of interagent communications among loosely-coupled LISP processes. Our empirical data on interagent communications should prove valuable to DKBS implementors who must meet real-time constraints using contemporary hardware and software technology. We conclude that it is possible to construct interagent communications cost models that are useful and have a high degree of predictive value. Our experimental results indicate that the cost of message-based interagent communications between symbolic processing agents is very high. The cost was found to be essentially independent of the hardware system performance and communications technique employed, varying principally as a function of message size; the expense appears to be attributable primarily to the overhead in traversing the boundary between the symbolic computing environment and the communications subsystem. We conclude that DKBS designers employing contemporary technology to implement loosely-coupled multiagent symbolic computing systems must design for a large computation to communications ratio and that the high cost of communications for symbolic agents requires a rethinking of message-based interagent communications strategies for very large distributed multiagent systems.