25
ELSEVIER Artificial Intelligence in Medicine 9 (1997) 173-197 Artificial Intelligence in Medicine A process-oriented reasoner about physiology InCs Aranaa,*, Jim Hunterb “School of Computer and Mathematical Sciences, The Robert Gordon University, St. Andrew Street, Aberdeen ABZS IHG, UK ‘Department of Computing Science, King’s College, University of Aberdeen, Aberdeen AB24 3UE, UK Accepted 14 October 1996 Abstract This paper presents the RAP system: a reasoner about physiology. RAP performs two tasks: ( 1) it infers the behaviour of a complex physiological process using the behaviours of its subprocesses and the relationships between them; (2) it reasons about the effect of introducing a fault into the model. In order to reason about the behaviour of a complex process, RAP uses a mechanism which: (i) represents how subprocesses behave; (ii) estab- lishes how these subprocesses affect each others behaviors; (iii) ‘aggregates’ these behaviors together to obtain the behavior of the top level process; (iv) gives that process a temporal context in which to act. RAP uses limited commonsense knowledge about faults to reason about their effect in terms of the generation of new processes and the misbehavior of existing ones. The effects are then propagated throughout the model to obtain the overall effect of the fault. Copyright 0 1997 Elsevier Science B.V. Keywords: Behavior aggregation; Temporal reasoning; Qualitative models 1. Introduction The ability to explain how a system works is often crucial to reasoning about that system. Such explanations can range from the highly formal and mathematical to * Corresponding author. Tel.: + 44 1224 262725; fax: + 44 1224 262727; e-mail: [email protected] 0933-3657/97/$17.00 Copyright 0 1997 Elsevier Science B.V. All rights reserved HI SO933-3657(96)00370-3

A process-oriented reasoner about physiology

Embed Size (px)

Citation preview

Page 1: A process-oriented reasoner about physiology

ELSEVIER Artificial Intelligence in Medicine 9 (1997) 173-197

Artificial Intelligence in Medicine

A process-oriented reasoner about physiology

InCs Aranaa,*, Jim Hunterb

“School of Computer and Mathematical Sciences, The Robert Gordon University, St. Andrew Street, Aberdeen ABZS IHG, UK

‘Department of Computing Science, King’s College, University of Aberdeen, Aberdeen AB24 3UE, UK

Accepted 14 October 1996

Abstract

This paper presents the RAP system: a reasoner about physiology. RAP performs two tasks: ( 1) it infers the behaviour of a complex physiological process using the behaviours of its subprocesses and the relationships between them; (2) it reasons about the effect of introducing a fault into the model. In order to reason about the behaviour of a complex process, RAP uses a mechanism which: (i) represents how subprocesses behave; (ii) estab- lishes how these subprocesses affect each others behaviors; (iii) ‘aggregates’ these behaviors together to obtain the behavior of the top level process; (iv) gives that process a temporal context in which to act. RAP uses limited commonsense knowledge about faults to reason about their effect in terms of the generation of new processes and the misbehavior of existing ones. The effects are then propagated throughout the model to obtain the overall effect of the fault. Copyright 0 1997 Elsevier Science B.V.

Keywords: Behavior aggregation; Temporal reasoning; Qualitative models

1. Introduction

The ability to explain how a system works is often crucial to reasoning about that system. Such explanations can range from the highly formal and mathematical to

* Corresponding author. Tel.: + 44 1224 262725; fax: + 44 1224 262727; e-mail: [email protected]

0933-3657/97/$17.00 Copyright 0 1997 Elsevier Science B.V. All rights reserved

HI SO933-3657(96)00370-3

Page 2: A process-oriented reasoner about physiology

114 I. Arana, J. Hunter / Artificial Intelligence in Medicine 9 (1997) 173-197

the less formal commonsense or ‘naive’ [lo]. In medicine, mathematical models are of use in a limited range of circumstances. However, doctors often utilise naive models at various levels of abstraction [19] and detail [20] in clinical reasoning.

Forbus [7] proposed the explicit representation and use of processes to de- scribe dynamical systems (QPT). This approach has mainly been used in reason- ing about man-made physical systems [6]. However the human body is clearly a dynamical system, and we believe that doctors frequently reason in terms of physiological processes.

‘Consolidation’ [5] is a way of building up an understanding of the behaviour of a complete device from descriptions of the behaviours of its component parts. We have adopted this approach to compose the behaviours of processes rather than devices.

Smith [19] proposed a computational model of anatomical and physiological reasoning. In particular, he suggested a method for reasoning about the effect a fault would have in a physiological system. His ideas were never implemented as he considered that the representational techniques available to him were insuffi- cient. Current representational techniques are, however, sufficiently powerful to represent and reason about naive anatomy and physiology. We have reconsid- ered and expanded some of Smith’s ideas about the effect of a fault in a physiological model.

This paper presents the RAP system: a reasoner about physiology [2]. RAP’s principal objective is to use commonsense knowledge in order to understand physiological and pathophysiological processes. To achieve this, RAP performs two tasks: (i) it infers the behaviour of a complex physiological process using the behaviours of its subprocesses and the temporal relationships between them; (ii) it reasons about the effect of introducing a fault into the system. Section 2 explains RAP’s representation; a mechanism which reasons about the behaviour of a complex process is presented in Section 3; Section 4 explains the reasoning about the effects of a fault; Sections 5 and 6 compare RAP with other related work and present our conclusions.

2. Knowledge representation

RAP’s knowledge base represents five physiological systems (respiratory, urinary, cardiovascular, digestive and metabolic) at various levels of abstraction and detail. In describing complex physiology, we find that the elements of the representation (body parts, processes and materials) are highly interrelated. Al- though we have insufficient space to set out the whole of RAP’s representation here, the main representational issues which are required in order to understand the reasoning module are explained in this section; in particular, the representa- tion of processes is described in some detail. Further information can be found in [3].

Page 3: A process-oriented reasoner about physiology

I. Arana, J. Hunter /Artificial Intelligence in Medicine 9 (1997) 173-197 175

2.1, Body parts

Body parts are described by their properties, at various levels of abstraction and detail. Important properties which are used in the reasoning module are: - Tyle specifies how a body part is seen at an abstract level. Several types of body

part have been represented such as enclosures, body cavities, valves, glands, filters, membranes, tubes, blood vessels, arteries, heart chambers, etc. For example, the aorta is of type artery (which is a type of blood vessel).

- Sta.tus describes a body part’s condition. It can take different values depending on the type of body part. For example, a valve can be closed or open and a container can be full of something or empty or have increased/decreased concen- tration of something.

- State specifies whether a body part is faulty or not. The difference between state and status is that the former gives an indication of whether a body part is faulty or :not whereas the latter describes conditions which are not responsible for faults. By default the state of a body part is ok, but it could be faulty, in which case this property describes the fault. For example a body part can be blocked (if it is a tube, a container or a filter) or always closed (if it is a valve).

2.2. Processes

A process has various properties: _ Type shows how the process is seen at an abstract level. Broadly speaking there

are two general kinds of processes: (i) one location processes, which perform their actEons in one specific location; ii) two location processes, whose actions involve transferring something from one location to another. Each of these groups of processes can be further refined depending on the actions performed. The ‘one location’ processes are: block, unblock, mix, breakdown, transform, create and destroy. The ‘two location’ processes are: filtration, absorption, secretion, diffu- sion, pump, transport and expel. As an example, ingestion is a transport type of process.

_ Preconditions are the set of conditions which have to be satisfied for a process to become active. This property is determined by the process type. For example, in order for the process left uentricular pumping to become active the left ventricle cannot be empty of blood, there must be a connection between the left ventricle and the aorta, etc. A formal description of the way process preconditions are represented is specified in Section 2.2.1.

- Beh,auiour is a description of the action of the process in producing a change in the organism. This property should not be confused with the type of a process (an abstraction of the process), although the behaviour of a process is deter- mined by its type. For example, the behaviour of the process bladder emptying is to expel urine from the bladder to the urethra. Section 2.2.2 gives a formal description of the way process behaviours are represented.

_ Effect is the result of the action of a process. It is determined by the process type. For example, the effect of bladder emptying is that the bladder is empty of urine

Page 4: A process-oriented reasoner about physiology

116 I. Arana, J. Hunter / Artijicial Intelligence in Medicine 9 (1997) 173-197

and the urethra is full of urine. Section 2.2.3 gives a formal description of the way process effects are represented.

_ Body parts defines the anatomical parts a process uses. They are determined by the type of process. For example, the process of bladder emptying uses the bladder and the .urethra.

- State indicates the condition of a process in terms of whether it behaves correctly or whether it is faulty. It can take the values ok, not happening, uncertain, less than normal (i.e. less active) and more than normal. By default a process is in an ok state. For example, if there is some problem with the ureter (i.e. it is partially blocked) the process of urine transportation into bladder will be in a less than normal state (i.e. less urine is transported). For each type of process, there is an abstract process descriptor hierarchy which

describes the preconditions, behaviour and effects of that type of process at the abstract level; e.g. Fig. 1 illustrates the pumping process, which is a sub-type of ‘two location processes’. In this figure, information which is derived by the system is enclosed between parentheses.

Abstract preconditions, behaviour and effects are inherited and instantiated in instances of real processes. For example, an abstract pumping process behaviour will

Type: Preconditions:

two location process {F is from-location of Process) (T is to-location of Process) {M is material acted on by Process]

F is an enclosure state of F is ok status of F is not empty(M) status of T is not full(Something) F is directly connected to T by connection C state of C is ok

Behaviour:

Effect:

(Body Parts:

if C is of type “connection via valve” then {V is the valve in C}

the state of V is ‘ok’ or ‘always open’

[F is from-location of Process} {T is to-location of Process} (M is material acted on by Process)

pump M from-location F to-location T

(F is from-location of Process} (T is to-location of Process) (M is material acted on by Process}

full(status,T, M)

empty(status,F,M) {F is from-location of Process} {T is to-location of Process)

(State: ok\

Fig. 1. An example of an abstract process: the pumping process,

Page 5: A process-oriented reasoner about physiology

I. Arana, J. Hunter 1 Artijicial Intelligence in Medicine 9 (1997) 173-197 111

say that it pumps the materials it acts on from an origin to a destination. In the case of the real process left ventricular pumping this behaviour will be instantiated to pump blood from the left ventricle to the aorta. The formal descriptions of process preconditions, behaviours and effects are explained below.

2.2.1. Preconditions The preconditions for a process are the set of conditions which must be satisfied

for the process to become active. These conditions can be of the following types: - Conditions specifying the type of an object, e.g. ‘(body part) is an enclosure’. _ Conditions specifying the state of an object, e.g. ‘the state of (object) is ok’. ~ Relationships between locations, e.g ‘(body part) is connected to (body part)‘. - Conditions specifying the status of a location, e.g. ‘the status of (body part) is not

full ((material))‘.

2.2.2. Behaviours AbsRract behaviours can take one of the following forms:

- (action) (material) from-location (enclosure) to-location (enclosure) (where (action) E {transport, pump, expel, secrete]).

- (action) (material) from-location (enclosure) to-location (enclosure) through (membrane) (where (action) E {absorb, diffuse}).

- filter (material) from-location (enclosure) to-location (enclosure) through (filter) obtaining-filtrate (filtrate) obtaining-residue (residue)

- (action) (connection) (where (action) E {block, unblock}).

- (action) (materials) in-location (enclosure) (where (action) E {mix, create, destroy}).

_ transform (material) into (material) in-location (enclosure). - decompose (material) into (material) in-location (enclosure) using (active-in-

gredient) (where (active-ingredient) is a type of material).

2.2.3. Effects Effects refer to the changes which occur as a consequence of the action of a

proces,s. They express modifications in either the state or the status of a body part or the state of a process or a connection (a type of relationship explained in Section 2.3) Effects are expressed by three parameter predicates of the form:

(change)((property), (object)[, (material)])

where - (change) is the actual modification and can take the following values: full,

empty, decreased-concentration, increased-concentration, ok, blocked, blocking or unblocking.

- (property) takes the values ‘state’ or ‘status’.

Page 6: A process-oriented reasoner about physiology

178 I. Arana, J. Hunter / Artificial Intelligence in Medicine 9 (1997) 173-197

- (object) is the object whose state or status is changed. It can be a body part, a process or a relationship.

- (material) is the material to which the modification applies (if it exists). An effect expressed in this way can be interpreted as ‘the (property) of

(object) is (change)[((material))]‘.

2.3. Relationships

In order to establish associations between body parts, processes and materials, a large number of relationships must be defined. For example, processes ‘act on’ materials, body parts ‘are connected’ to other body parts and a body part ‘is the destination’ of a transport process. Relationships which are important in order to understand the reasoning module are: _ Structural: used to indicate that an element can be further subdivided into

other elements to obtain a more detailed description of the first. Processes may be decomposed into sub-processes (left ventricular pumping is a subpro- cess of left pumping); complex processes are the ones which can be so decom- posed - simple ones can not. Likewise part-of relationships exist for body parts (the left ventricle is part-of the left side of the heart) and for materials (blood is composed of water, blood cells, oxygen, carbon dioxide, nutrients and waste).

_ influence: defined as a possible association between two simple processes where the action of the first can (directly) affect the action of the second. RAP infers that two processes influence each other if they share a location (i.e. they use the same body part). Two kinds of influences are possible: (1) ‘direct influence’ is a relationship between two processes which are not part of the same complex process, i.e. their father processes are different; (2) ‘brother influence’ is an association between two processes which are part of the same less detailed process (i.e. both processes have the same father). For example, the process external oxygen respiration ‘directly influences’ the process air

transport from alveoli to bronchioles (the former process is part of external respiration and the latter is part of expiration).

_ Temporal Relationships: we use an interval based set of temporal relationships (an extension of Allen’s temporal relationships [l]) in order to describe the relative times at which two processes occur. The relationships ‘precedes/is preceded by’, ‘starts before/starts after’, ‘finishes before/finishes after’, ‘same start/same start’ and ‘same finish/same finish’, have been added to Allen’s. These new relationships can be expressed as disjunctions of other relation- ships. For example, ‘starts before’ can be defined as the disjunction of ‘is before’, ‘meets’, ‘contains’, ‘overlaps’ and ‘is finished by’. These extra relation- ships have been included because they are considered to be more natural than relationship disjunctions. For example, it is more natural to say ‘A precedes B’ than to say ‘A is before or meets B’.

Page 7: A process-oriented reasoner about physiology

I. Arana, J. Hunter 1 Artijicial Intelligence in Medicine 9 (1997) 173-197 179

3. Reasoning about the behaviour of a process

Before we explain RAP’s mechanisms for reasoning about the behaviour of a process, the underlying knowledge will be introduced.

3.1. Rides for combining behaviours

A rule for combining behaviours expresses how the behaviours of two processes with a specific temporal relationship can be combined to give a new behaviour. A rule has the following properties: _ Name: the term by which the rule is known. - First and second behaviours: the behaviours which take part in the composition. - Preconditions: conditions which have to be satisfied for the rule to be valid.

These conditions refer to parameters used in the first and second behaviours. - Temporal relationships: time relationships between the two behaviours which

make the rule valid. These could be considered as ‘further preconditions’. - Nemo behaviour: the behaviour obtained by combining the first and second

behaviours. There are two kinds of rules for combining behaviours:

- Rules of influence: used to account for the interactions between processes. - Rules of composition: used to aggregate the behaviours of two processes in order

to obtain the behaviour of a process at a less detailed level. A description of these rules is given in Sections 3.3 and 3.4.

3.2. Rules of temporal composition

When two processes A and B are ‘aggregated’ to obtain a new, less detailed process P, temporal relationships for P need to be established to give this new process a temporal context in which to act. The temporal relationship between the two original processes and the temporal relationships between at least one of the original processes and some other process are used to establish a new temporal relationship between the latter process and the new process (result of the composi- tion). A set of rules of temporal composition has been defined for this purpose.

The rules of temporal composition use the following temporal functions on a temporal relationship between process X and process Y (TempReZXY): - StartsXY: gives the relationship between the starting times of the two processes

X and Y; - EndsXY: gives the relationship between the finishing times of the two processes

X and Y; _ StartEndXY: gives the relationship between the finishing time of process X and

the :start time of process Y. Each. of the above functions can take the following values:(i) jirst, if X time

occurs before Y time; (ii) equal, if X time occurs at the same time as Y time; (iii) last, if X time occurs after Y time; (iv) not last, if X time occurs at the same time or before Y time; (v) [/, if the relationship between X time and Y time cannot be computed.

Page 8: A process-oriented reasoner about physiology

180 I. Arana, J. Hunter 1 Art&ial InteNigence in Medicine 9 (1997) 173-197

The following is an example of a rule of temporal composition where A and B are two processes which are aggregated to give process P, and C is another process which is temporally related to A and/or B:

if StartEndAC = first and member (EndsAB, [last, equal]) then TempRelPC = ‘is before’

This rule expresses that ‘if A finishes before C starts and A finishes after or at the same time as (i.e. not before) B, then P is before C’.

3.3. Interactions between simple processes

The behaviour of a simple process is obtained by accessing the abstract process of which it is an instance, getting the behaviour of that abstract process and instantiating it with the parameters of the simple process. The behaviour obtained following this method only shows the behaviour of a simple process which has no interactions with other processes. It needs to be modified to reflect these interac- tions. For example, the simple process air transfer from alveoli to bronchioles is an instance of the abstract process transport. The behaviour of a transport process is to transport substances from an origin to a destination. Instantiating parameters, the behaviour of air transfer from the alveoli to the bronchioles is to transport air from the alveoli to the bronchioles. However, this behaviour is incomplete - it is known that the air being transported contains less oxygen and more carbon dioxide than normal air. As other processes also occur, their interactions with air transfer from the alveoli to the bronchioles have to be taken into account when calculating the ‘complete behaviour’ of the latter process. Thus a complete behaviour is used to describe the behaviour of a process taking into account the context in which it takes place (i.e. how other processes affect its behaviour) and adds the following information to its behaviour: _ Change in initial conditions: used to describe the effect that processes directly

influencing P have in the condition of the materials P acts on just before P starts acting on them. Each change will take the form

variation (material(s)) in (material(s)) [in (body part)]

where a variation can take the values it increased and it decreased. By default this property takes the value [] (empty list). For example, the process of air transfer from the alveoli to the bronchioles will have increased carbon dioxide in air in its change in initial conditions due to the influence of the process of external carbon dioxide respiration (which puts extra carbon dioxide in the air in the alveoli).

_ Change in final conditions: this property specifies the effect that processes directly influencing P have in the condition of the material M which P acts on, before or during the time when P acts on it. These changes are expressed in the same way as changes in initial conditions and take the same default value ([A. For example, the process of air transfer from the alveoli to the bronchioles will have

Page 9: A process-oriented reasoner about physiology

I. Arana, J. Hunter / ArtiJicial Intelligence in Medicine 9 (1997) 173-197 181

decreased oxygen in air in its change in final conditions due to the influence of the process of internal oxygen respiration. Generally, changes in initial conditions are also changes in final conditions (i.e. they are propagated forward on the time dim.ension) but the reverse is not true.

- Completion: can be it total if the effect of the behaviour is total or it partial if only part of the behaviour takes place. By default behaviours are total. For exa:mple, external oxygen respiration is a partial behaviour as only part of the oxygen is diffused from the alveoli to the pulmonary capillaries. Note that the changes in initial and final conditions can have several compo-

nents. In the remainder of this paper, the term ‘behaviour’ will sometimes be used to

refer to a ‘complete behaviour’ of a process. To simplify terminology, the attributes of processes will sometimes be used with their behaviours. For example, the statement ‘a behaviour Bl influences a behaviour B2’ is used to express that the process represented by Bl influences the process represented by B2.

Complete behaviours are derived by RAP using rules of influence (see Section 3.1). Given the complete behaviours of two processes, the first one directly influencing the second, a rule of this type modifies the complete behaviour of the second process to account for the influence of the first.

For example, the rule ‘add locations’ says that if an influencing behaviour leaves some material in the origin location of an influenced behaviour, this material will (if the right conditions are satisfied) be acted on by the influenced behaviour. For example, the behaviour diffuse carbon dioxide from pulmonary capillaries to the alveoli influences transport air from the alveoli to the bronchioles. As the first behaviour ‘meets’ the second one and air contains carbon dioxide, the second behavi’our’s change in initial and final conditions are modified to include increased carbon dioxide in air.

Let us now demonstrate how we obtain the complete behaviour of air transfer from a.lveoli to bronchioles. The behaviour of air transfer from alveoli to bronchioles is to transport air from the alveoli to the bronchioles. A complete behaviour is defined (before any interactions are considered) by adding the information that the behaviour’s completion is total and both its changes in initial and final conditions

are empty ([I). Because they share the same location (alveoli), the processes directly influencing

this process are air transfer from the bronchioles to the alveoli, external oxygen respiration and external carbon dioxide respiration. The influence each of these processes have is derived as follows: _ Air transfer from the bronchioles to the alveoli: the complete behaviour is

calculated: (1) its behaviour is transport air from the bronchioles to the alveoli; (2) its completion is total; (3) its changes in initial and final conditions are both [I. The temporal relationship between air transfer from the bronchioles to the alveoli and air transfer.from the alveoli to the bronchioles is ‘is before’. We look for a rule of influence which is satisfied with the complete behaviours of these processes and which has ‘is before’ as a temporal relationship. The rule which satisfies these conditions says that because the second process uses the same

Page 10: A process-oriented reasoner about physiology

182 1. Arana, J. Hunter / Artificial Intelligence in Medicine 9 (1997) 173-197

material as the first, but uses it later on, the changes in final conditions for the first process can be applied to the second and should be added to the changes both in initial and in final conditions. As the first process has ‘empty’ ([I) changes in final conditions, the complete behaviour of the second remains un- changed. _ External oxygen respiration: the complete behaviour is: (1) the behaviour is diffuse oxygen from the alveoli to the pulmonary capillaries; (2) its completion is total; (3) its changes in initial and final conditions are both [I. The temporal relationship between this process and air transfer from the alveoli to the bronchi- oles is ‘meets’. There is an applicable rule, which can be interpreted in the following way: because part of the oxygen in the air in the alveoli is diffused into the pulmonary capillaries, not all the oxygen can be transported to the bronchioles, and therefore the completion of the process of air transfer from the alveoli to the bronchioles is partial (instead of total as previously thought). In addition, because not all the oxygen is transported, the air transported contains less oxygen. The following changes should therefore be made to the complete behaviour of air transfer from the alveoli to the bronchioles:

0 Completion: partial; l Changes in initial and final conditions: [decreased oxygen in air].

_ External carbon dioxide respiration: following similar reasoning, the following changes are added to the the complete behaviour of air transfer from the alveoli to the bronchioles: l Changes in initial and final condition: [increased carbon dioxide in air]. Note that influences from processes which share a common ancestor with the

process under consideration are not taken into account. They could have been in exactly the same way as with non-related processes, but would have involved the calculation of the complete behaviours for all simple process (as they are all, ultimately, related to each other in some way and can, therefore, influence each other). The complexity of calculating the behaviour of a process would, hence, increase considerably. Besides, when composing the behaviours of two simple (or complex) processes, some brother influences are accounted for (see example in Section 3.4). The effect of ignoring sibling influences depends on the model structure; in practice, ignoring such influences has not caused any problems.

3.4. Reasoning about the behaviour of a complex process

The behaviour of a complex process can be inferred from the behaviour of its subprocesses and the temporal relationships between them. Hence, in order to obtain the complete behaviour of a complex process CProcess, the complete behaviours of its subprocesses SetOfSubprocesses have to be calculated. If these processes are complex, their behaviours are calculated by recursively following the tasks outlined below. On the other hand, if these processes are simple, their behaviours are calculated using the mechanism to account for interactions be- tween processes which was explained in Section 3.3.

Page 11: A process-oriented reasoner about physiology

I. Arana, J. Hunter / Artijicial Intelligence in Medicine 9 (1997) 173-197 183

In order to compose all the behaviours of a complex process, rules of composi- tion of behaviour and rules of temporal composition are used.

Rules of composition are used to add two complete behaviours to obtain the complete behaviour of a process at a higher (less detailed) level. For example, the rule ‘a.ggregate locations’ says: given two behaviours of the same type where the destination of the first is the origin of the second (and the destination of the second is different from the origin of the first), both acting on the same material, the result of composing them is a behaviour of the same type which acts on the same material but whose origin is the origin of the first behaviour and whose destination is the destination of the second. The behaviours transport air from the alveoli to the bronchioles and transport air from the bronchioles to the bronchi can be composed to obtain the behaviour transport air from the alveoli to the bronchi.

Note that rules of composition have to preserve completely the two original behaviours which are combined. For example, if a process PI transports material M from a location A to a location B and another process PZ transports material (M-N) from location B to a location C, the rule of composition ‘aggregate locations’ cannot be used to combine them into a process which transports (M-N) from 11 to C because it omits the fact that part of the material M (i.e. N), is only transported to B.

The rules of composition and rules for combining temporal relationships (see Section 3.2) are used to derive the behaviour of a complex process as follows. Two processes are selected from SetOfSubprocesses. If there is a rule of composition which can be used to aggregate their behaviours to obtain a new behaviour AggregatedBehaviour, a new process, AggregatedProcess, is created whose be- haviour is AggregatedBehaviour. This selection is repeated until two processes are successfully composed or all alternatives have been tried.

When the composition is successful, the new process (the result of the composi- tion) replaces the two original processes in SetOfSubprocesses. Temporal relation- ships for the new process are then calculated using the rules of temporal composition. If SetOfSubprocesses contains just one process, its behaviour is the behaviour of CProcess. Otherwise, two further processes are selected from SetOf- Proces>:es, the selection being based on recency (the last process created is selected whenever possible). This mechanism is repeated until only one process is left in SetOfProcesses or all possible alternatives have been tried (undoing some of the compositions, i.e. backtracking, if necessary). The behaviour of CProcess is repre- sented by the behaviours of all the processes in the shortest list of processes found.

3.5. Example: how to obtain the complete behaviour of the process of expiration

Reasoning about the behaviour of a complex process will be illustrated by the following example: how to obtain the complete behaviour of the process of expiration, a subprocess of respiration (see Fig. 2).

In order to calculate the behaviour of expiration, the behaviours of all its subprocesses have to be obtained. As these are all simple processes, their be- haviours are calculated by instantiating the behaviours of their abstract classes with

Page 12: A process-oriented reasoner about physiology

184 1. Arana, J. Hunter / Art$cial Intelligence in Medicine 9 (1997) 173-197

respiration

%.

insp;E;tion extyznal in;;xal

oxygen carbon dioxide oxygen carbon dioxide respiration respiration respiration respiration

. . . . . . _ .

/&T&l air transfer air transfer air transfer air transfer air transfer air transfer air transfer from alveoli from bronchioles from bronchi from trachea from larynx from pharynx from nose

to bronchioles to bronchi to trachea to larynx to pharynx to nose to outside

Fig. 2. The processes of respiration and expiration.

their own parameters (and giving default values to completion and changes in initial and final conditions) and then modifying these behaviours to account for influences (explained in Section 3.3). Fig. 3 shows the complete behaviours of all these subprocesses.

Two influences on air transfer from alveoli to bronchioles by the processes external oxygen respiration and external carbon dioxide respiration are taken into account; these modify the changes in initial and final conditions to ‘decreased oxygen and increased carbon dioxide in air’. Note, however, that air transfer from bronchioles to bronchi, influenced by the process air transfer from alveoli to bronchioles, has empty changes in initial and final conditions instead of ‘decreased oxygen and increased carbon dioxide in air’. This is because the influence from air transfer from alveoli to bronchioles to air transfer from bronchioles to bronchi is a brother influence and is, therefore, not taken into account.

Having obtained all the complete behaviours of the subprocesses of expiration, its own complete behaviour can now be derived by composing all these behaviours. Fig. 4 illustrates this composition.

Two processes are selected, namely, air transfer from alveoli to bronchioles and air transfer from bronchioles to bronchi. The former meets the latter. Their behaviours are composed using the rule of composition aggregate locations and a new process Expl is obtained. Expl therefore replaces air transfer from alveoli to bronchioles and air transfer from bronchioles to bronchi. Note that the changes in initial and final conditions in air transfer from alveoli to bronchioles are propagated to Expl (the

Page 13: A process-oriented reasoner about physiology

I. Arana, J. Hunter / ArtiJicial Intelligence in Medicine 9 (1997) 173-197 185

brother influence the former has on process air transfer fvom bronchioles to bronchi is taken into account). Next, new temporal relationships are established between Expl and other processes. For example, Expl meets the process air transfer from bronchi to trachea (see Fig. 5). A new composition is then attempted. Using the same rule of composition as before, Expl is composed with air transfer from bronchi to trachea, obtaining a new process Exp2. New temporal relationships are established between Exp2 and other processes. Exp2 therefore replaces Expl and air trunsfer from bronchi to trachea. This is repeated to obtain a new process Exp3.. .and so on until a process Exp6, the composition of all the processes of expiration is obtained. The behaviour of expiration is, therefore, the behaviour of Expd

Note that although in this particular example the processes are given in such an order that composition never fails, if the processes had been declared in a different order, backtracking would take place until the maximal combination of processes was found.

Process Complete Behaviour

I transport air I

air transfer from-alveoli

from alveoli - to bronchioles

to bronchioles ChI = -02, tc02

ChF z -02, tcO2

(me = partial 1

air transfer :rom bronchioles -

to bronchi

1 Type = total 1

air transfer from trachea -

to larynx

air transfer from-bronchi

from bronchi to trachea

to trachea - ChI=[]

ChF z [] 1 Type = total 1

Process Complete Behaviour

transport air

air transfer from larynx

from larynx - to pharynx r-l to pharynx

ChI = [] ChF = []

( Type = total 1

transport air

air transfer from pharynx

from pharynx - to nose

n

to nose ChI = I] ChF 2 [I

l Type : total J

(transport

air transfer from nose

from nose - to outside

to outside ChI = [] chF= I]

1 Type = total 1

ChF change in final conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , . . . . . . . . . . . . . , .

-02 decreased oxygen in air

tC02 increased carbon dioxide in air

Fig. 3. The behaviours of all the subprocesses of the process of expiration.

Page 14: A process-oriented reasoner about physiology

186 I. Arana, J. Hunter 1 Artificial Intelligence in Medicine 9 (1997) 173-197

air transfer air transfer air transfer air transfer air transfer air tkfer air transfer from alveoli from bronchioles from bronchi from trachea from larynx from pharynx from nose

0 X is not part of expiration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

- meets

.- is before . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ChI change in initial conditions

ChF change in final conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

-02 decreased oxygen in air

tC02 increased carbon dioxide in air

Fig. 4. The .behaviour of the process of expiration derived from the behaviour of its subprocesses.

Page 15: A process-oriented reasoner about physiology

I. Arana, J. Hunter / Artificial Intelligence in Medicine 9 (1997) 173-197 187

i.._.......__ _ ._____.....______................-................................., P2 i Pl meets P2

Pi 1..._ _ .._..._ _ . . . . . . . . . . . . . .._._...........~.. _ . . .._....__......___............... ,. . _ . . . . . . . _ . . . . . . . . . . . . . . . . . _ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . _ . . _ . . . . _ _ ., +

Pl P3

1 P3 meets PI

-. ___._......__......................... _ . ..-.... ~ .._...._ _ . . . ..___....._.________I #

,..._ _ . . . . . . . . _ . . . . . . . . _- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . _ . . . . . .._ _ ____., t

Expl j P3 meets Expl

P3 i (Expl = composition of Pl and P2) I _......._ _ __.. _.._..._ . . . . . . . . _ _.....___......___................ _ . . . .._._...__..

c Pl = air transfer from alveoli to bronchioles P2 = air transfer from bronchioles to bronchi P3 = air transfer from bronchioles to alveoli

Fig. 5. Calculating a temporal relationship for Expl, a process composed of PI and P2.

4. Reasoning about faults

This section describes the way in which the reasoning mechanism has been extended to handle the introduction of a fault into the model. Faults may occur in: - a body part (e.g. a container is perforated or severed); - a connection (e.g. a connection is partial or blocked); - a process (e.g. a process may have a higher/lower degree of activity than normal,

or rnay not happen). A fault may affect the overall functioning of the system by creating one or more

new processes or by affecting the behaviour of already existing processes. An example of the former would be a leakage - a new kind of process in which something accidentally escapes from its normal location through a new crack or hole. In order to calculate the overall effect of the fault, the effects that newly generated or misbehaving processes have on the system are propagated throughout the model.

The mechanism for reasoning about faults will be illustrated using the urinary system. Blood in the renal vascular system is filtered by the kidney, obtaining urine as filtrate. This urine is transported from the kidney into the ureter and from the latter into the urinary bladder. Urine is then expelled from the bladder into the urethra from where it is transported to the outside of the body. As a running exampIle, we will look at the consequences of severing the ureter (see Fig. 6).

4.1. Process generation

As a result of a fault in one process (the originator) a new process may be generated; the knowledge about how such new processes are created is contained in generazors, which have the following structure:

Page 16: A process-oriented reasoner about physiology

188 I. Arana, J. Hunter / Artificial Intelligence in Medicine 9 (1997) 173-197

_ Name: a term which describes the kind of process generated and the kind of fault which gives rise to it.

_ Preconditions: a set of conditions which need to be satisfied for the new process to be generated; these will test (inter ah) for the presence of a fault.

- Process Generated: instructions (i.e. code) needed to create the new process. A generator can be instantiated for any process which satisfies the preconditions

and may apply to originators derived from different abstract process descriptors. Fig. 7 shows an example of a generator.

Generation consists of: (i) using the location in which a fauit occurs in order to establish which processes (PossibleOriginators) may originate new processes; (ii) utilising the generators associated with processes in PossibleOriginators to attempt the creation of new processes.

kidney

leakage from ureter

Fig. 6. What happens if the ureter is severed?

Page 17: A process-oriented reasoner about physiology

I. Arana, J. Hunter / Arhjicial Intelligence in Medicine 9 (1997) 173-197 189

Name: leakage generation by a two location process with bad destination

Preconditions: origin location of originator is 0

state of 0 is ‘ok’

destination location of originator is D

state of D is (severed or perforated)

material acted on by originator is M

status of 0 is not ‘empty(M)’

. .

Process generated: destination location of originator is D

material acted on by originator is M

D is enclosed in body cavity BC

T is type of originator

if T = filtration

then F is filter of originator

Mat = filtrate(F,M)

else Mat = M

Name = compose-name(leakage from D to BC)

create new object New-Proc with:

name: Name origin: D destination: BC acts on: Mat

of type leakage process

Fig. 7. An example of a generator.

The severing of the ureter occurs in just one location and involves two processes which use this location: movement from renal pelvis into ureter and movement from

ureter into bladder. Each of these processes is tested as a possible originator for generation: - Movement from renal pelvis into ureter: this process is of type transport. A

trartsport type has three generators associated with it. Only the preconditions of the generator leakage generation by a two location process bad destination

(illustrated in Fig. 7) are satisfied by the parameter values of movement from

renal pelvis into ureter (because the destination, i.e. the ureter, is severed). Therefore, the ‘process generated’ code is accessed and instantiated, creating a NewProcess of leakage of urine from the ureter to the abdominal cavity (which encloses the ureter).

NewProcess must be related to the rest of the physiological model. First, influences to and from NewProcess are calculated, obtaining the following: l NewProcess influences movement from renal pelvis to ureter and movement from

ureter into bladder.

Page 18: A process-oriented reasoner about physiology

190 I. Arana, J. Hunter 1 Artljicial Intelligence in Medicine 9 (1997) 173-197

l NewProcess is influenced by movement from renal pelvis to ureter. Next, NewProcess needs to be given an environment in which to act, by giving

it a ‘father process’ (superprocess) and temporal relationships to other processes. A generated process takes as ‘father’ the same process as its originator. As movement of urine from renal pelvis to ureter is part of the process of urine transportation to bladder, NewProcess will also be part of it.

A temporal relationship ‘meets’ is then established between movement between renal pelvis and ureter and NewProcess, this relationship being determined by the generator. Next, other temporal relationships are calculated. As movement from renal pelvis into ureter ‘meets’ movement from ureter into bladder, a new temporal relationship ‘same start’ can be established between NewProcess and movement from ureter into bladder. No other temporal relationships can be established.

_ Movement from ureter into bladder: this process is also of type transport and therefore has three associated generators. However none of the sets of precondi- tions is satisfied, and movement form ureter into bladder cannot therefore generate a new process.

4.2. Faulty processes

Recall that processes are represented as instances of abstract (normal) process descriptors. Thus if the parameters of a process P satisfy the preconditions of an abstract process descriptor NP, then P is instantiated and inherits NP’s behavious and effects. Knowledge about how processes behave when a fault is introduced is contained in abstract faulty process descriptors, FP, and P will now inherit the modified behaviour and effects from FP.

Process: transfer process with severed origin

Represents a fault in: transport process, pumping process, expel process, secretion process

Abstract Behaviour: empty

Abstract Preconditions: origin location of process is 0

destination location of process is D

state of D is ‘ok’

state of 0 is severed

direct connection between 0 and D is C

state of C is ‘ok’

if process is an instance of a secretion process then

0 is a (or contains) glands

Abstract Effect: if destination location of process is D and process acts on material M

then status of D is ‘empty(M)’

Fig. 8. An example of a faulty abstract process descriptor.

Page 19: A process-oriented reasoner about physiology

I. Arana, J. Hunter /Artificial Intelligence in Medicine 9 (1997) 173-197 191

Fig. 8 shows an example of a faulty abstract process descriptor for a transfer process (with a direct connection between the origin and the destination) when the origin is severed.

If the ureter is severed, movement from ureter into bladder becomes an instance of a transfer process where the origin is severed (see Fig. 8). Instantiating parameters, its belhaviour is ‘empty’ and its effect is ‘status of bladder is empty(urine)’ (i.e. there is no urine in the bladder).

4.3. Reasoning about a fault

The main steps followed in order to obtain the effect of introducing a fault into the model are:

- generate new processes; _ identify all processes which misbehave due to a fault; - propagate the effects of the processes which misbehave as a direct consequence

of the fault (see below); - propagate the effects of the newly generated and the misbehaving processes.

A process P is affected by a faulty situation (a fault or a faulty process) if it becomes faulty as a consequence.

Propagation is limited by: - the processes, DirAffectedProcs, directly affected by the fault; _ the processes, ZndAffectedProcs, affected in turn by DirAffectedProcs; _ the newly generated processes.

As before, propagation is restricted to those processes which have a common parent. This constraint limits propagation to specific physiological systems.

Each of the effects, Effect, of process P is propagated in the following way: first, proce,sses whose effect opposes Effect are searched for. For example, if the Effect is that t,he bladder contains no urine, it will look for processes whose effect is tojill the bladder. If the whole of Effect is cancelled, nothing needs to be done (i.e. Effect need not be propagated). However, if part of Effect (UncancelledEffect) remains, it is introduced in the model for propagation. The elements which are affected by UncancelledEffect are used to select a SetOjProcesses whose behaviour may be affectled by UncancelledEffect. For each of these processes, if its preconditions under normal conditions are still satisfied, the process is not affected by Uncan- CelledEffect. Otherwise its effects need to be propagated throughout the model in the sa.me way as Effect.

For example, it has been shown previously in Section 4.2 that if the ureter is severed movement from ureter into bladder has an ‘empty’ behaviour. In normal conditions, this process has the behaviour ‘transport urine from ureter into blad- der’. .4s the behaviour of this process has changed, its effects have also changed.

The effect of movement from ureter into bladder is now ‘the status of the bladder is empty(urine)’ (i.e. there is no urine in the bladder). This effect affects the bladder. There is one process using the bladder, bladder emptying. The effects of this process are that: ‘the status of bladder is empty(urine)’ and ‘the status of urethra is full(urine)‘. These effects are checked to see whether any of them can cancel the

Page 20: A process-oriented reasoner about physiology

192 I. Arana, J. Hunter / Arttjicial Intelligence in Medicine 9 (1997) 173-197

effect ‘the status of bladder is empty(urine)‘. As none of them can, the informa- tion ‘the status of bladder is empty(urine)’ is introduced into the knowledge base to see how it affects processes using the bladder (i.e. bladder emptying). The preconditions of this process are now unsatisfied (because the bladder is empty) and the process is therefore faulty.

4.4. Example: what would happen tf the ureter were severed?

Let us now study the entire chain of reasoning to establish the consequences for the urinary system as a whole if the ureter is severed.

First, new processes are generated (if possible). In Section 4.1 we demonstrated that when the ureter is severed a new process is generated with movement from renal pelvis into ureter as the originator. This new process is leakage of urine from the ureter into the abdominal cavity.

Then, the set of processes directly affected by the fault (processes which use the ureter) is analysed; movement from renal pelvis into ureter is found to be function- ing correctly. However we have shown in Section 4.3 that movement from ureter into bladder changes its behaviour to ‘empty’ and that as a consequence bladder emptying is also faulty. The latter process is therefore included in the list of processes to be considered for propagation.

The propagation is limited by the superprocesses of the processes directly affected by the fault (i.e movement from ureter into bladder), the processes affected by those processes (i.e bladder emptying) and the newly generated processes (i.e. leakage from ureter into abdominal cavity). All these processes are part of the urinary process and propagation is, therefore, restricted to subprocesses of the urinary process and proceeds as follows: - The effects of leakage from ureter into abdominal cavity are obtained: ‘the

status of ureter is empty(urine)’ and ‘the status of abdominal cavity is ful- l(urine)‘. The first of these effects is selected, ‘the status of ureter is emp- ty(urine)‘. This effect is cancelled by ‘the status of the ureter is full(urine)’ which is one of the effects of process movement from renal pelvis into ureter and does therefore not need to be propagated. The second effect, ‘the status of abdominal cavity is full(urine)‘, cannot be cancelled by the effect of any other process and is hence introduced into the model. As no process is affected by the abdominal cavity being full of urine, propagation stops here.

_ The effects of bladder emptying are now considered. As bladder emptying has an ‘empty’ behaviour instead of an ‘expel urine from the bladder into the urethra’ behaviour, its effect is that ‘the status of the urethra is empty(urine)‘. This effect cannot be cancelled by the effects of any other process and is therefore introduced into the model for propagation. It affects the behaviour of movement outside urethra which, as a consequence, has an ‘empty’ behaviour. The effect of movement outside urethra (i.e. ‘the status of urine disposal outside

is empty(urine)‘) cannot be cancelled by the effects of any other process and is introduced into the model for further propagation.

Page 21: A process-oriented reasoner about physiology

I. Arana, J. Hunter /Artificial Intelligence in Medicine 9 (1997) 173-197 193

urinary process

movement from movement from leakage from bladder movement fr kidney into ureter into ureter into emptying urethra to ureter bladder abdominal cavity outside

Fig. 9. The urinary process and its subprocesses when the ureter is severed.

The following processes have been generated or affected by the fault: - leakage from ureter into abdominal cavity; - mo,vement from ureter into bladder; - bladder emptying; - movement outside urethra.

As ,a consequence, their superprocesses are also faulty: urine transport to bladder, urination and urinary process (see Fig. 9).

The behaviour of each of these processes is as follows: - leakage from ureter into abdominal cavity

Behaviour: leak urine from ureter to abdominal cavity Change in initial conditions: [ ] Change in final conditions: [ ] Completion: total

_ movement from ureter into bladder, bladder emptying, movement from urethra to outside all have

Behaviour: empty Change in initial conditions: [ ] Change in final conditions: [ ] Completion: total

- urine transport to bladder Behaviour: transport urine from the set of glomerular capsules to the abdom- inal cavity Change in initial conditions: [ ] Change in final conditions: [increased waste in urine, decreased water in urine] Completion: partial

_ urination Behaviour: empty Change in initial conditions: [ ] Change in final conditions: [ ] Completion: total

Page 22: A process-oriented reasoner about physiology

194 I. Arana, J. Hunter 1 Artijicial Intelligence in Medicine 9 (1997) 173-197

urinary process Behaviour: filter blood from the renal vascular system to the abdominal cavity through the set of endothelial capsular membranes obtaining urine as filtrate and blood as residue Change in initial conditions: [ ] Change in final conditions: [increased waste in urine, decreased water in urine] Completion: partial

In summary, the system correctly predicts that when the ureter is severed the urine obtained in the kidney (by filtering blood from the renal circulation) is passed from the kidney into the ureter and from the latter into the abdominal cavity (instead of being passed from the ureter into the bladder and along the urethra to be finally delivered outside).

5. Related work

The knowledge base has been implemented in the object-oriented database Abel [8]. Rules for combining behaviours and process generators have also been imple- mented as database objects. Rules of temporal composition and the overall reasoning system have been written in Quintus Prolog.

RAP is similar to Abel [18] in that they both represent knowledge at various levels of detail and both reason at various levels. However, Abel does not describe knowledge about structure and behaviour [4] whereas RAP represents these explic- ity. Although both systems have aggregation operations, these are very different. In Abel, aggregation means instantiating a causal net at a higher level of description whereas in RAP aggregation involves composition using rules, and is guided by the hierarchical structure of processes.

KBPMS [14,15] and RAP are both process-oriented approaches to reasoning about physiology, and they both represent processes at various levels of detail. However, KBPMS does not support abstract levels of knowledge, and lacks the explicit representation of anatomical information.

The ICE system [11,13] is a blackboard based diagnostic system which is a reasoning component within GUARDIAN [12]. ICE models are represented at one abstract level. RAP models, however, are represented at various levels of abstrac- tion. In ICE, reasoning about an abnormal situation consists of working from a given symptom backwards, following causal links, until the fault responsible for the symptom is obtained. RAP, however, is given a fault and reasons (forward) about its possible consequences by propagating the effects of faulty processes throughout the model. Causality in RAP is therefore deduced by following the effects of processes. ICE’s model aggregation algorithm does not allow backtracking. It works on the assumption that the whole list of subprocesses of a given process can be aggregated into just one single process. Aggregation is performed ‘left to right’ in the list of subprocesses. If total aggregation is not achieved, ICE does not backtrack. RAP, on the other hand, does not make any assumptions about the order in which processes (their behaviours) are composed together, and backtracks when necessary. If total aggregation is not possible, RAP returns the best (the

Page 23: A process-oriented reasoner about physiology

I. Arana, J. Hunter 1 Artificial Intelligence in Medicine 9 (1997) 173-197 195

smalle,st) possible partial aggregation (i.e. two or more behaviours). Unlike RAP’s rules of composition, ICE’s rules of aggregation do not always compose two behaviours together. In ICE, a rule can be used to obtain a new behaviour from two original behaviours which is not a ‘summary’ of them, i.e. it cannot replace them (although it can be deduced from them).

The use of temporal information in ICE seems to be limited to a relationship of precedence. The reasoner will attempt to aggregate two processes if there is a relationship of precedence between them. Rules of aggregation do not make use of temporal information. In RAP, however, temporal information is essential to compose behaviours and is explicitly included in the rules.

CYC [17,16] is an extremely large knowledge base of facts and heuristics about the real world and a set of mechanisms to reason over the knowledge base. In particular, CYC focuses on the representation of commonsense knowledge and includles physiological knowledge [9]. Both RAP and CYC represent physiology at various levels of abstraction and detail. The level of description used seems to be lower (more detailed) in RAP. CYC does not appear to encode knowledge about physiological processes explicitly, but only as events or as functions of body parts. These functions are, generally, described at a shallow level, as commonsense dependencies. RAP, however, encodes physiological processes explicitly and anatomical parts are given more detailed functions.

6. Conclusions

We have presented an approach to reasoning about the behaviour of a complex process as a combination of the behaviours of its subprocesses. Three kinds of rules: rules of influence, rules of composition and rules of temporal composition, have been described. A new reasoning task, which uses these rules in order to understand the overall behaviour of a system has been developed. This mechanism works by first representing how subsystems behave, next establishing how subsys- tems affect each others behaviours, then ‘aggregating’ these behaviours together to obtain the behaviour of the main system and finally giving that system a temporal context in which to act. This reasoning mechanism has been succesfully tested in numerous examples.

We have also described a mechanism which is able to reason about the effect of the introduction of a fault into the model. Although this mechanism does not always achieve the right solution, it generally produces good results by the application of commonsense knowledge. When the solution obtained is not correct, it does not contradict the information contained in the knowledge base. An incorrect solution may be obtained because: _ tem.poral relationships are not taken into account when looking for effect

cancellation and propagation; _ the level of detail at which processes are represented does not include informa-

tion about their driving forces.

Page 24: A process-oriented reasoner about physiology

196 I. Arana, J. Hunter / Artijkial Intelligence in Medicine 9 (1997) 173-197

Incorporating all this information into the knowledge base would produce better results. However, it would also increase the depth of the representation (which would no longer be naive) and the complexity of the reasoning mechanism.

The technique of process generation appears to have a much wider applicability. It could be used: _ in non-faulty situations where something new (e.g. a nervous stimuli to the tip of

the finger) causes a process to be created (e.g. as in a chain of processes which transfer a nervous signal in the direction of the brain);

_ to create new processes in very specific faulty situations which are related to particular physiological systems (e.g. a problem in the stomach may cause vomiting).

Acknowledgements

One of us (IA) acknowledges the support of the Spanish ‘Ministerio de Educa- cion y Ciencia’ in the form of an FPI grant.

References

[I] J.F. Allen, Maintaining knowledge about temporal intervals, Commun. ACM 26, 11 (1983) 832-843.

[2] I. Arana, A process-oriented approach to representing and reasoning about naive physiology, PhD thesis, Department of Computing Science, University of Aberdeen, 1995, http:// www.csd.abdn.ac.uk/publications/theses/arana.html.

[3] I. Arana and .I. Hunter, Applying qualitative reasoning to commonsense physiology, in: S. Andreassen, R. Engelbrecht and J. Wyatt, eds., Proc. 4th Co& on Artificial Intelligence in Medicine in Europe (Munich, October 1993) 50-62.

[4] T. Bylander, Some causal models are deeper than others, Artif lntell. Med. 2 (1990) 123-128. [5] T. Bylander, A theory of consolidation for reasoning about devices, Int. J. Man-Mach. Stud. 35

(1991) 467-489. [6] B. Falkenhainer and K.D. Forbus, Setting up large-scale qualitative models, in: D.S. Weld and J.

de Kleer, eds., Readings in Qualitative Reasoning about Physical Systems (Morgan Kaufmann, San Mateo, CA, 1990) 5533558.

[7] K.D. Forbus, Qualitative process theory, Artif. Intell. 24 (1984) 85- 168. [8] 0. Diaz Garcia, Making object-oriented databases more knowledgeable, PhD thesis, Department of

Computing Science, University of Aberdeen, 1992. [9] R. Guha and D.B. Lenat, Enabling agents to work together, Commun. ACM 37(7) (1994) 127-142.

[lo] P. Hayes, The second naive physics manifesto, in: J. Hobbs and R. Moore, eds., Formal Theories of the Commonsense World (Ablex, Norwood, NJ, 1985) l-36.

[l l] B. Hayes-Roth, R. Hewett and A. Seiver, Diagnostic Explanation Using Generic Models, Knowledge Systems Laboratory, Department of Computer Science, Stanford University Technical Report KSL 88-20, Stanford, CA, 1988.

[12] B. Hayes-Roth, R. Washington, D. Ash, R. Hewett, A. Collinot, A. Vina and A. Seiver, Guardian: a prototype intelligent agent for intensive-care monitoring, Artif. Zntell. Med. 4 (1992) 165- 185.

[13] R. Hewett and B. Hayes-Roth, Representing and Reasoning About Physical Systems Using Prime Models, Knowledge Systems Laboratory, Department of Computer Science, Stanford University Technical Report KSL 90-40, Stanford, CA, 1990.

Page 25: A process-oriented reasoner about physiology

I. Arana, J. Hunter /Artificial Intelligence in Medicine 9 (1997) 173-197 191

[14] R. Kunstaetter, Intelligent Physiologic Modeling, MIT Technical Report MIT/LCS/TR-360, Cam- bridge, MA, 1986.

[15] R. Kunstaetter, Intelligent physiologic modeling: an application of knowledge based systems technology to medical education, Comput. Methods Prog. Biomed. 24 (1987) 213-225.

[16] D. Lenat and R.V., Guha, Building Large Knowledge-Based Systems: Representation and Inference in /he CYC Project (Addison-Wesley, Reading, MA, 1990).

[17] D.B. Lenat, R. Guha, K. Pittman, D. Pratt and M. Shepherd, Cyc: Toward programs with common sense, Commun. ACM 33(8) (1990) 30-49.

[18] RX Patil. P. Szolovits and W.B. Schwartz, Modeling knowledge of the patient in acid-base and electrolyte disorders, in: P. Szolovits, ed., Artif. Intell. Med. (Westview Press, Boulder, CO, 1982) 191-226.

[19] B. Smith, A Proposal for a Computational Model of Anatomical and Physiological Reasoning, MIT A.I. Memo 493, Cambridge, MA, 1978.

[20] P. Szolovits, Using artificial intelligence models on medical decision making in medical education, in: J.-C. Pages, A.H. Levy, F. Gremy and J. Anderson, eds., Meeting the Challenge: Znformatics and Medical Education (North Holland, Amsterdam, 1983) 271-281.