Proceedings of STeP'96. Jarmo Alander, Timo Honkela and Matti Jakobsson (eds.),
Publications of the Finnish Artificial Intelligence Society, pp. 115-121.

An Object-Oriented Distributed
Problem Solving Environment

Martti Paajanen
ViSolutions, Inc.
P.O.Box 458
00101 HELSINKI, Finland
Tel. +358 0 567 3608 / +358 40 505 4543


This paper describes an object-oriented approach for building distributed problem solving and decision support systems. The framework has been developed to solve problems encountered in building decision support applications for business planning tasks e.g. in the areas of strategic planning and budgeting, where the distribution of decision making authority and the nature of the tasks favours the implementation of a distributed support environment. The framework is based on MUST Modeller(TM), a flexible application development and modelling tool developed by ViSolutions, Inc., in Helsinki, Finland. The MUST development has been partially funded by the Technological Development Centre of the Finnish Ministry of Trade and Industry (TEKES).

1. Background

Business decision-making problems encountered in larger organisations have typically certain characteristics that motivate the employment of distributed problem solving techniques, and can be used to derive requirements for the support system: The decomposition of the overall task into a distributed problem-solving environment reflects the organisational responsibilities. This division of the tasks and responsibilities guides the design of the distributed problem solving agent architecture. We have found examples of both task-related and organisational hierarchy related agent compositions. Our experience from practical applications is that the division of tasks and roles in actual organisations is rather stable. Changes in organisation structure, in persons holding different positions, or in objectives on different levels of the organisation due to changes in market or competitive environment can necessitate immediate reactions from the organisation and therefore from the decision support environment. If essential changes in the business responsibilities between the corporate management and division management would be made the design of the decision support system might need to be revised. The basic application structure including inter-agent interfaces for a given task can be assumed to be the same over several problem- solving situations. We have found the approach presented by Wooldridge and Jennings (Wooldridge- Jennings 1994a) useful for positioning the efforts in the field of DAI (Distributed Artificial Intelligence). To define and analyse problem solving agents in more detail, the following dimensions can be seen: Within this framework, we propose an agent architecture for business decision support applications, based on an agent language, which in our case is based on the MUST object-oriented modelling platform.

2. The Problem Solving Framework

The problem solving application framework consists of a set of agents implemented as object models, communicating together to support the human decision makers in their solution of decision support tasks in a coordinated fashion. In object-oriented decision support applications the object model is used to define the domain model containing application area specific knowledge and problem solving ability. To make several such application agents cooperate in a useful way the agents must have a problem-solving support model that maintains knowledge and awareness about the problem solving tasks, their objectives, and the current situation in the model in relation to these objectives. The framework consists of several agents, each implemented as an object-oriented application, having the following structure:

The problem solving model contains the following elements:

Our approach is based on MUST Modeller, an object-oriented modelling and application development tool (Lehto 1995). MUST has features that combine benefits of declarative programming to the object oriented modelling environment: The object-oriented approach supports problem abstraction and representation of it in a class structure. The structural and calculational properties of the problem domain are declaratively defined as an integral part of the object structure. An essential element of MUST's application building tools is the calculation rule language and its dependency management and consistency maintenance methods. They provide the tools for implementing the problem-solving agents' mechanisms for recognising the changes in their knowledge base and their problem-solving status.

3. Applications

We have employed the framework in the implementation of decision support applications in the areas of strategic planning and financial planning or budgeting. Applications with their objectives and lessons learned have been described by Paajanen (Paajanen 1996). The evaluation of distributed problem solving applications can be made to consist of the development of validity axioms and their proofs. As the framework is based on an object-oriented tool utilising descriptive calculation rules, the axioms can be based on those developed for the underlying modelling platform (Lehto 1995). Because the object model is a descriptive representation of the logic related to the problem domain and problem solving methods, the development of axioms that are required to hold during the progress of problem solving is the basic approach to validation. Technical elements of such validation schemes would include: To validate a distributed problem solving system based on the proposed framework one has to find a validation to each agent model and then be able to validate the communication and communication based coordination schemes for the group of agents. On the agent model level the declarative nature of the object model definitions makes the effort of validation theoretically simpler than in the case of procedural definitions. In addition, as the definitions are declarative, the increase of complexity of the models does not necessarily complicate the validations, as each declarative definition can be seen as an axiom stated about the model. To validate the inter-operation of the agent models one should be able to find proofs for the correct exchange of object definitions between the object models. The agent level validation for the applications built using the framework presented here can be seen to consist of two elements: the validation of the domain model and the validation of the problem solving model. The validation of the domain model is based on the specifications and functionality descriptions made with the application users to define the required application characteristics. The essential requirement for the problem solving model is that it correctly evaluates the state of the model against the goals and handles the communication between different agents according to interface definitions. A basic guideline for the validation is based on defining and monitoring the following axioms about the problem solving model: Basically the proof of the validity of these axioms in the framework of the previous chapter is based on the validity of the underlying object model representations.


Decker, Keith S. - Lesser, Victor R. 1995:
Coordination Assistance for Mixed Human and Computational Agent Systems. University of Massachusetts Computer Science Technical Report 95-31, April 1995. Submitted to the Second International Conference on Concurrent Engineering Research and Application.

Jennings, N. R. 1996:
Coordination Techniques for Distributed Artificial Intelligence. In Foundations of Distributed Artificial Intelligence, pp. 187-210, (eds. G.M.P.O'Hare and N.R.Jennings), Wiley.

Lehto, Teemu 1995:
Funktionaalisen oliopohjaisen sovelluskehittimen suunnittelu ja toteutus (in Finnish). Master's Thesis 28.11.1995, Helsinki University of Technology, Espoo, Finland.

Paajanen, Martti - Tuomi, Ilkka 1992:
Adding Value to the Strategy Process Using Object-Oriented Modelling and Software Support: Theoretical Backgroung and Practical Results. 25th Annual Hawaii International Conference on System Sciences, January 7-10, 1992.

Paajanen, Martti 1996:
Distributed Problem Solving: Methodologies and a Proposed Framework. Licentiate's Thesis 23.4.1996, Helsinki University of Technology, Espoo, Finland.

Rumbaugh, J. - Blaha, M. - Premerlani, W. - Eddy, F. - Lorensen, W. 1991:
Object-Oriented Modeling and Design. Prentice-Hall International.

Tokoro, M. - Ishikawa, Y. 1984:
An Object-Oriented Approach to Knowledge Systems. Proceedings of the International Conference on Fifth Generation Computer Systems, 1984, pp. 623-631.

Verkama, Markku - Hämäläinen, Raimo P. - Ehtamo, Harri 1992:
Multi-Agent Interaction Processes: From Oligopoly Theory to Decentralized Artificial Intelligence. Group Decision and Negotiation, Vol. 1, No. 2, 1992, pp. 137-159, Kluwer Academic Publishers.

Wooldridge, Michael J. - Jennings, Nicholas R. 1994:
Agent Theories, Architectures, and Languages: A Survey. Proc. ECAI - Workshop on Agent Theories, Architectures and Languages, pp. 1-32. (eds. M.J.Wooldridge and N.R.Jennings), Amsterdam, the Netherlands

Wooldridge, Michael J. - Jennings, Nicholas R. 1994b:
Formalizing the Cooperative Problem Solving Process. 13th International Workshop on Distributed Artificial Intelligence (IWDAI-94), Lake Quinhalt, WA, July 1994, pp. 403-417.

Wooldridge, Michael - Jennings, Nicholas R. 1995:
Intelligent Agents: Theory and Practice. The Knowledge Engineering Review, Vol. 10 (2), 1995, pp. 115-152.