Causal Agent Modelling: A Unifying Paradigm

For Systems and Organisations

Dr Martin K. Purvis1

Dr Stephen J.S. Cranefield

Computer and Information Science

University of Otago

August 1995

Abstract

With the increasing size, complexity and interconnectedness of systems and organisations, there is a growing need for high level modelling approaches that span the range of application domains. Causal agent modelling offers an intuitive and powerful approach for the development of dynamic models for any application area. This paper outlines some of the basic ideas behind the nature of causal agent models, why they are fundamental to the modelling enterprise, and compares developments in this area to those in the related field of coordination theory. It also describes some research activities using causal agent models at the University of Otago.

1 Introduction

Modelling is essential to the development or modification of any complex system, since by examining the execution of a model, the designer can predict the ultimate behaviour of the system prior to actual construction. And so it is that along with the immense variety of complex, interacting systems and organisations within society, there have been developed an almost equally vast number of modelling approaches and techniques that have been tailored to the specific requirements of particular application domains. We argue in this paper, however, that despite the great variation among systems and organisations, there is a single, coherent modelling paradigm that can be applied effectively in a great many circumstances. We will call this approach, causal agent modelling, and it is emerging as a common modelling approach because of cross-disciplinary influences from organisation theory, philosophy, and artificial intelligence and because of new developments in software engineering.

In the remaining sections of this paper, we (a) discuss briefly the nature of modelling and causation in the abstract, and the notion of causal agents, (b) describe other developments in the understanding of organisations that are related to causal agent modelling, (c) consider some recent software developments that help facilitate causal agent modelling, and (d) describe our own modelling efforts in the area of legal systems and environmental resource management in New Zealand.

2 Modelling and Causation

A causal model enables the observer to explain the events of a system in terms of the influences that act upon it or within it. There are, however, various types of causes. Aristotle, for example, outlined four principal causes of natural events [14]:

1	Material cause: the substrate or material out of which something comes to be;

2	Formal cause: the essential structure or form that governs the manner in which something is or comes to be;

3	Efficient cause: the effective agent that initiates or carries out the activity;

4	Final cause: the goal or purpose for which the change is produced.

Over the centuries natural scientists moved towards explanations that could be independently and empirically validated, and so attempted to remove the anthropomorphic elements from their scientific explanations. The led to a reduced emphasis on the efficient and final causes and ultimately to the mechanical view of the universe. According to this view, the state of the world at time t1 and the laws of physics together determined inevitably the state of the world at a subsequent time t2. Thus, assuming the laws of physics to be true, an event at time t1 could be held to be the cause of an event at time t2. This event-causation was considered to be so superior to the anthropomorphic notion of agent-causation that the idea of causal agents came to be branded by some educators as "unscientific". Bertrand Russell went so far as to argue that the word "cause", itself, was so misleading that it should be banished from the philosophical vocabulary.

Nevertheless, agent-causation is used all the time by scientists and laymen alike. Consider how the modelling of a complex system is performed in the everyday world. The model will consist of individual components that are part of a larger structure. We observe that

a)	it is natural to conceptualise the relevant features, i.e. the behavioural components to be modelled, in terms of simple or familiar elements; and

b)	the overall model structure and the number of individual elements must be kept simple enough so that the entire model can be easily understood, manipulated, and modified, if necessary.

For complex systems, restriction b means that the individual elements must represent rather complex modelling "chunks". It is appropriate to express these dynamic "chunks" in terms of the complex entities from the world with which we are already familiar: human agents. Although this anthropomorphic approach is decried in some elementary science textbooks as backward and medieval, most modelling processes begin this way, whether they are undertaken by natural scientists or children.

When agents are examined carefully, they are usually thought at least to have some or all of the following attributes:

•	relative autonomy

•	goals or intentions

•	an ability to remember past events

•	the capability of sensing and reacting to operations that act upon them

•	some pro-active capability of acting in a manner to fulfill their goals whenever the environmental conditions are appropriate.

Even for mechanical descriptions most people will unconsciously form a mental picture of active agents that carry out actions according to their capabilities when the opportunities present themselves.

Consider the following description of a four-stroke internal combustion engine:

1st stroke:	While the inlet valve is open, the descending piston draws fresh petrol-and-air mixture into the cylinder.

2nd stroke:	While the valves are closed, the rising piston compresses the mixture to a pressure of about 7-8 atm.; the mixture is then ignited by the sparking plug.

3rd stroke:	While the valves are closed, the pressure of the gases of combustion forces the piston downwards.

4th stroke:	The exhaust valve is open and the rising piston discharges the spent gases from the cylinder.

Although the description is mechanical, most people will unconsciously form a mental picture of the piston and spark plug as active agents that carry out actions according to their capabilities when the opportunities present themselves.

There are really two basic aspects to a causal agent model:

1	the nature or structure of the agent itself, and

2	the architecture of the system in which the agents interact.

Both of these aspects must be specified in the model, and there is considerable research activity concerning theoretical issues in each of these areas [5][7][23]. There is a temptation to assume that once the individual agent has been characterised, then the modelling task is complete. But the manner in which agents interact and the degree to which global information is "managed" by the system must also be specified in the model. This is especially true when the model contains large numbers of interacting agents. On the other hand, for some researchers, the emphasis has been almost exclusively on item 2, the architecture of complex systems, and that is the focus of the next section.

3 Coordination in Organisations and Systems

In the last few years, the interdisciplinary area of "coordination theory" has been pursued by various researchers [9][13]. What is coordination theory? In an effort to maintain as much generality as possible, Malone defines coordination as the task of "managing dependencies between activities" [13]. The emphasis here is on the relationships and mechanisms associated with implementing those relationships, rather than on individual agents -- thus this definition would include systems of elementary units in which the individual items have not been ordinarily modelled as agents. The work in this area, however, has been helpful for causal agent modelling, because it has served to isolate the organisational or "collaborative" aspect of agent models.

An example task from coordination theory is to examine the nature of task assignment within a business organisation. Should task assignment be managed by managerial decision, by some formula derived from task type and prior assignments, or by a pricing mechanism? Turoff, for example, suggested that employees within a large organisation should be able to bid for internal projects on which they wish to work, and that teams could be selected on the basis of these bids [22]. Such a market mechanism involves a different degree of communication among the organisational agents than one in which (local) managerial decisions predominate. Coordination theory attempts to examine the trade-offs associated with these various task assignment mechanisms in order to find an optimal arrangement.

Within the context of coordination theory, the term "agency theory" has been used to describe coordination mechanisms where the firm is viewed as a set of contracts between self-interested individuals. An agent, according to this view, will attempt to maximize his or her utility, without regard for collective, or team-oriented values. "Agency costs" are defined as the costs incurred as a result of discrepancies between the objectives of the principal and those of the selfish agents [8]. One example of an agency cost is the cost associated with monitoring the performance of sales agents in the field. Balanced against agency costs are "decision information costs", which are the overheads associated with documentation and managerial communication, as well as the opportunity costs associated with inefficient communication. Mechanisms that reduce agency costs will typically increase decision-information costs, so there is usually a trade-off. For example, agency costs can be reduced by enforcing strict adherence to policy or specific rules (bureaucracy), but this will introduce other inefficiencies. The goal of analysts who use this approach is to find the organisational structure (and information handling architecture) that minimizes all of the costs. A well constructed causal agent model of the organisation can examine various possible scenarios and help in this analysis.

One of the principal technical inspirations for analysts who build coordination theory models is Petri nets [16]. Petri nets are a formal modelling notation for describing the sequencing of distributed, concurrent activities, and they have a simple graphical representation. Although they have been primarily used to model the synchronisation of low-level systems, Holt and others have proposed extensions to serve as the basis of coordination modelling [9][10][20]. Until recently, however, these proposals did not involve the explicit introduction of causal agents into a Petri net formalism.

4 Agent-Based Software

In the last few years there has been a growing interest in agent-based software support systems and tools [6][7]. These systems provide a higher-level environment for the building of causal agent models and have contributed to the growing interest in this area. The motivation behind these developments is linked to the intuitive appeal of causal agents as modelling primitives for the construction of sophisticated systems. With the great richness and diversity of today's computer information systems and the increasing degree to which they are embedded in the everyday processes of the world, there is a growing need to have these systems exchange information and services with each other. The resulting interoperability of these systems will enable the solutions of problems that could not be solved otherwise. Agent-based software systems are designed to facilitate this interoperability in a heterogeneous environment. Each software system or component is fashioned as an agent that communicates (negotiates) with other agents in order to operate effectively in its environment. They exchange data, logical schemata, and individual commands or programs, enabling them effectively to program each other in ways that are useful.

When agents are implemented in software systems, they are usually constructed to have the agent attributes itemised in section 2. In order to communicate generally, the agents require an agent communication language that is independent of the specific structural features of individual agents, and it is this general agent communication language that represents a progressive step from ordinary object-oriented program message passing. At the moment there is work on several candidate agent communication language specifications [6][7].

The artificial intelligence research community is also actively exploring elaborations to the basic notion of a causal agent outlined above. Apart from more extensive planning capabilities for agents, which has long been an interest in AI circles, researchers have been investigating additional "mental" attributes of agents, such as emotional states, belief, intention, and obligation [1][21]. The computer system implementation architecture in which agents interact has been the domain of investigation for distributed artificial intelligence (DAI) [2][11], and we will not cover this large topic in the present article. We will note, however, that recent extensions in the area of Petri net theory (coloured Petri nets) suggest that Petri nets can be used in the coordination of causal agent systems. With coloured Petri nets serving as the coordination mechanism and the individual coloured tokens of the net serving as the causal agents, distributed information systems can be developed that have an intuitively appealing modelling representation and a formal representation for synchronisation and coordination among the individual elements. There has also been work in the area of representing the internal structure of causal agents themselves (not just the coordination among the agents) in terms of coloured Petri nets [12][18]. This latter effort could contribute to model refinement so that a computer representation of a system could be entirely in terms of Petri nets.

5 Causal Agent Modelling Applications

The most immediate modelling application for researchers in this area is the software construction process, itself. Since evidence indicates that errors in software engineering projects are often introduced at the very earliest stages of development, i.e. during the requirements analysis stage, it is important that the facilities for initial software engineering models enable a natural mapping from the real world to software structures [17]. Traditional software engineering, employing structured analysis, begins this mapping process by representing the static, structural relations among individual software elements in terms of entity-relationship diagrams (ERDs), and the behavioural elements of a system in terms of data flow diagrams (DFDs) [3]. With the new causal agent modelling paradigm, however, it seems more natural to replace the entities of ERDs with causal agents and the DFDs with coloured Petri nets, which will give a more intuitive modelling capability, combined with a more formally precise specification mechanism. There is already one software engineering textbook employing this approach (called "model-based software engineering") and more are likely to follow [3].

Since computer information systems are increasingly embedded in real-world operations and processes, it is important to be able to model the entire environment in which they operate. Causal agent modelling is helpful in this regard, since it is a general modelling paradigm, and both humans and computer systems (as well as any other active entity) can be modelled as a causal agent. In fact causal agent modelling can be used to model and simulate the behaviour of any organisation of interest. At the University of Otago we are interested in modelling the activities associated with environmental resource management in New Zealand and, in particular, have been building a model of the national Resource Management Act of New Zealand [19].

5.1 Model of New Zealand Resource Management Act

The New Zealand Resource Management Act (RMA) governs the management of virtually all aspects of the natural and physical environment. When it was enacted in 1991, it integrated 15 major laws into a single legal framework. One of its principal themes is deregulation: "its structure reflects a determination on the part of the government for a more open and competitive economy, a move away from state participation in promoting economic growth..." [15]. Because of the relative newness of the Act and the fundamental policy shifts that it reflects, it is important for all concerned parties to understand how the processes within the Act work. In particular, because the Act is less restrictive than previous legislation, there is a much wider role for public involvement and participation in the decisions that are made regarding the environment. Rather than provide for a detailed prescription concerning the way the environment should be managed, the RMA has established a set of consultative processes and a set of results-oriented principles that should guide these processes[4].

Consider, for example, the act of obtaining a resource consent. The Resource Management Act specifies a set of legal procedures with associated time limits, during which various operations are to take place. In many cases potentially affected parties must be notified or a public notification must be made. In addition public hearings (including preliminary pre-hearings) may have to be held. Since the local government must accommodate many concurrent resource consent applications at various stages of progress, it is difficult to predict the ultimate performance of the legal system without building a model and executing the model. We are currently building a causal agent model that employs coloured Petri nets to coordinate the various active entities that come together at various stages of the legal processes specified in the Act. The model for resource consent applications entails a network structure that characterises the various processes specified in the Act. Coloured tokens that move through the network are causal agents, such as the applicant, members of the concerned public, and various government officials, that communicate and interact during the consent granting process.

Another aspect of the RMA involves the development of district and regional government plans for resource management. The process for developing a district plan must go through numerous steps that involve potentially complex interactions with multiple agents:

•	Early consultation

•	Production of a proposed plan drafted by the district council

•	Public notification

•	Public hearing in response to submissions

•	Notification of submitters

•	Possible appeals to the (national) Planning Tribunal

•	Planning Tribunal notifies its decision.

As part of our overall model of the RMA, we are also building a submodel of the district plan development process, again using causal agents in the coordination environment provided by coloured Petri nets.

6 Conclusions

Causal agent modelling can be applied to devices, computers, engineering systems, and human organisations. In each case, the fundamental modelling units are individual causal agents that interact in ways that are intuitively easy for the modeller or designer. Building a causal agent model involves designing the nature of the causal agent and constructing an architecture of interaction for the agents. We have found that coloured Petri nets offer a useful coordination mechanism for causal agents, although other coordination mechanisms are also under investigation. In any case, the emerging software tools that support agent modelling are making it feasible to begin modelling tasks for any system or organisation with a causal agent model. The model can then be executed for examination of behavioural results and possibly modified or refined. As we have seen, the approach, involving causal agents and Petri nets is now in use in the software engineering community itself for the construction of software systems. Our efforts in the area of modelling a significant segment of the New Zealand legal system associated with resource management has convinced us that the basic paradigm of causal agent modelling will be increasingly applied to other large-scale modelling projects involving multiple interactions of complex systems.

References

[1]	Bates, J. "The Role of Emotion in Believable Agents", CACM, Vol 37, No. 7, pp. 122-125.

[2]	Bond, A. H., & Gasser, L. (eds.), Readings in Distributed Artificial Intelligence, Morgan Kaufmann, San Mateo, CA, 1988.

[3]	Bruno, G. Model-based Software Engineering, Chapman & Hall, London, 1995.

[4]	Collins, D. W. "The Innovations -- How are They Working?", Conference Papers, First Annual Conference, Resource Management Law Association, Auckland, 1993.

[5]	Edmonds, E. A., Candy, L., Jones, R., & Soufi, B. "Support for Collaborative Design: Agents and Emergence", CACM, Vol. 37, No. 7, July 1994, pp. 41-47.

[6]	Finin, T., Fritzson, R., McKay, D., & McEntire, R. "KQML as an Agent Communication Language", Proceedings of the Third International Conference on Information and Knowledge Management (CIKM'94), ACM Press, November 1994.

[7]	Genesereth, M. R., & Ketchpel, S. P. "Software Agents", CACM, Vol. 37, No. 7, July 1994, pp. 48-53.

[8]	Gurbaxani, V., & Whang, S. "The Impact of Information Systems on Organizations and Markets", CACM, Vol 34, No. 1, pp. 59-73.

[9]	Holt, A. W. "Coordination Technology and Petri Nets", Advances in Petri Nets, Lecture Notes in Computer Science No. 222, Springer-Verlag, Berlin, 1985.

[10]	Holt, A. W. "Diplans: a New Language for the Study and Implementation of Coordination", ACM Transactions on Office Information Systems, Vol 6, No. 2, April 1988, pp. 109-125.

[11]	Huhns, M. N., & Gasser, L. (eds.) Distributed Artificial Intelligence, Vol. 3, Morgan Kaufmann, San Mateo, CA, 1989.

[12]	Levis, A. H. "Human Organisations as Distributed Intelligence Systems", Distributed Intelligence Systems, Methods and Applications, Varna, Bulgaria, 1988, pp. 13-18.

[13]	Malone, T. W., & Crowston, K. "The Interdisciplinary Study of Coordination", ACM Computing Surveys, Vol. 26, No. 1, March 1994, pp. 87-119.

[14]	McKeon, R. (ed.) Introduction to Aristotle, Random House, New York, 1947.

[15]	Memon, P. A. Keeping New Zealand Green, University of Otago Press, Dunedin, 1993.

[16]	Murata, T. "Petri Nets: Properties, Analysis and Applications", Proc. IEEE, Vol. 77, pp. 541-580.

[17]	Pressman, R. Software Engineering, a Practitioner's Approach, McGraw-Hill, New York, 1992.

[18]	Purvis, M. K. "Causal Modelling in Software Engineering Design", in Software Engineering Education, B. Z. Barta, S. L. Hung, K. R. Cox (eds.), North Holland, Amsterdam, 1993, pp. 175-188.

[19]	Purvis, M. K., Benwell, G. L., & Purvis, M. A. "Dynamic Modelling of the Resource Management Act", New Zealand Journal of Computing, 5:1, 1994, pp. 45-56.

[20]	Remy, P. A., & Levis, A. H. "On the Generation of Organizational Architectures Using Petri Nets", Advances in Petri Nets, Springer Verlag, Berlin, 1988.

[21]	Shoham, Y. "Agent-oriented Programming", Artificial Intelligence, Vol. 60, No. 1, pp. 51-
92.

[22]	Turoff, M. "Information Value and the Internal Marketplace", unpublished manuscript, New Jersey Institute of Technology, Newark, N. J. (cited in [13]).

[23]	Wooldridge, M., & Jennings, N. R. "Intelligent Agents: Theory and Practice", submitted to Knowledge Engineering Review.