Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Formalization and Declarative Implementation of an Executable Concept Map Reva Freedman Department of Computer Science Northern Illinois University DeKalb, IL 60115 [email protected] http://www.cs.niu.edu/~freedman Abstract CIRCSIM-Tutor, an intelligent tutoring system in the domain of cardiovascular physiology, teaches students to solve problems according to a concept map taught in class. Although students believe that the concept map provides a unique solution to each problem, the solution is in fact dependent on a set of implicit assumptions that determine a unique reading of the concept map. In this paper we analyze the ambiguities in the CIRCSIM-Tutor concept map, then derive a set of rules that can be used to produce the unique correct reading for this map. We have implemented these rules in CAPE, a reimplementation of CIRCSIM-Tutor based on a fully declarative representation. Introduction CIRCSIM-Tutor (Michael et al., 2003) is an intelligent tutoring system (ITS) that uses a simplified model of blood circulation to help students learn the basic concepts of blood pressure regulation. When something happens to change the blood pressure, such as a change in blood volume or the administration of a drug, the body tries to compensate. This negative feedback loop is known as the baroreceptor reflex. Students are taught to solve problems about the baroreceptor reflex using a concept map presented in class. Although students believe that the concept map provides a unique solution to each problem, in fact obtaining the correct solution depends on a set of implicit assumptions that determine a unique reading of the concept map. In this paper we describe the assumptions that need to be formalized in order for the concept map to accurately model the problem-solving algorithm. Then we describe our implementation of the algorithm in CAPE (Freedman et al., 2004), a reimplementation of CIRCSIMTutor based on a fully declarative representation. CIRCSIM-Tutor does not implement the concept map directly; rather, it uses its own code to solve the problems. In addition to possible discrepancies introduced as a result, the problem solver cannot be used with other concept maps of the same form. Furthermore, since the solution does not include a trace of the problem-solving process we wish the student to follow, it cannot be used to generate explanations for the student. Our implementation solves all three of these problems. Background Physiology of the Concept Map CIRCSIM-Tutor (and thus also CAPE) gives students problems to work. In each problem, a perturbation changes the processing of the heart. The student is then asked to predict the value (increase, decrease or no change) of seven core physiological parameters at three points in time. Students enter their responses on a tabular worksheet called a prediction table (Figure 1) (Rovick & Michael, 1992). Here is a sample problem: A person has a pacemaker that has been running at 72 beats/minute. Suddenly it malfunctions and the rate changes to 120 beats/minute. What is the effect on the seven core variables immediately after this event, after the nervous system reacts, and after a new steady state is reached? First, the change in heart rate will propagate through the system, changing the value of other core variables. One of the variables changed will be blood pressure, which the baroreceptor reflex is trying to maintain. Thus mean arterial pressure (MAP) is called the regulated variable of the negative feedback loop. The change in blood pressure, sensed by the baroreceptors in the neck, changes the signal sent through the nervous system to other organs in the body, which changes the values of parameters measured at these organs. These parameters are called controlled variables. In the baroreceptor reflex, the controlled variables are the three variables controlled directly by the nervous system: inotropic state (IS), heart rate (HR), and total peripheral resistance (TPR). These changes are again propagated through the system. The concept map in Figure 2 shows the causal relationships between the regulated variable, the controlled variables, and a small number of other important variables. The concept map was developed to model the solutions that the CIRCSIM-Tutor domain experts, professors Joel Michael and the late Allen Rovick of Rush Medical College, want the students to assimilate, both in sequence of steps and in level of detail. It shows the relationships DR RR SS Central Venous Pressure Inotropic State Stroke Volume Heart Rate Cardiac Output Total Peripheral Resistance Mean Arterial Pressure relationship, which states that the more muscle fibers are stretched, the more force they can develop.) At higher values of inotropic state (IS), the same degree of ventricular filling causes a higher stroke volume. Thus an increase in IS causes an increase in SV. Finally, an increase in mean arterial pressure (MAP) causes SV to decrease. When mean arterial pressure increases, it becomes more difficult for blood to exit the heart. This causes stroke volume to decrease. The pressure that the ventricle has to pump against, i.e., the arterial pressure, is called afterload. Since this effect is less important than the other determinants of SV, in our simplified model it only applies when other determinants of SV are inapplicable. In the CIRCSIM-Tutor model, such a determinant is called a minor determinant. Figure 1: Prediction table Stages of the Feedback Loop among seven parameters: • Heart rate (HR). Pulse in beats per minute. • Inotropic state (IS). How much (or, equivalently, how forcefully), the heart contracts with every beat. • Stroke volume (SV). Blood pumped per beat. • Cardiac output (CO). Blood pumped per minute. • Mean arterial pressure (MAP). Blood pressure as measured in the arteries. • Total peripheral resistance (TPR). Resistance to blood flow through the circulatory system. Since vessels smaller in diameter resist the flow of blood more, peripheral resistance is a large component of total resistance. • Central venous pressure (CVP). Blood pressure in the large central veins outside the heart. As the reader can see, there is a tautological relationship between CO, HR, and SV, namely HR * SV = CO, based solely on conversion of units. The concept map, which is a qualitative device, simply shows that an increase in HR or SV will cause an increase in CO. In some ways, the qualitative model is more useful, because the equation does not show that the causality runs left-to-right only. When the heart pumps more blood per minute into the arteries, pressure in the arteries goes up because the peripheral circulation has resistance. The equation MAP = CO * TPR, the physiological equivalent of Ohm’s Law, describes this relationship. Again, the concept map shows that when TPR or CO increases, MAP increases also. When cardiac output increases, increased quantities of blood are transferred from the venous system into the arterial system, decreasing the central blood volume and thus decreasing central venous pressure. In other words, an increase in CO causes a decrease in CVP. As pressure increases in the central veins that provide the input to the heart, more blood flows into the heart on each beat. This increase in ventricular filling, also known as preload, causes the heart to beat more forcefully, which causes more blood to be pushed out per beat. In other words, an increase in CVP causes an increase in SV. (The cause of this phenomenon is the length-tension The negative feedback loop can be summarized as follows: When mean arterial pressure (MAP) goes up, the heart rate (HR) goes down, so the heart beats fewer times per minute, reducing cardiac output (CO), and thus reducing MAP. Additionally, when MAP goes up, up the blood vessels become wider, decreasing total peripheral resistance (TPR) and thus MAP. Finally, when MAP goes up, inotropic state (IS) goes down, so less blood is pumped per beat, reducing stroke volume (SV), then cardiac output (CO), and finally MAP. Rather than being represented directly, the negative feedback loop is divided into three stages, and students study the change in each variable at each of the three stages. Since the same principles apply at each stage, the same concept map can be used to represent all three stages. The three stages are the direct response (DR) stage, consisting of those changes that happen before the baroreceptors are activated; the reflex response (RR) stage, which includes changes that occur as a result of the activation of the baroreceptors; and the steady state (SS) stage, which describes the state of the system after it has restabilized. In the human body, a steady state is achieved within a couple of minutes. The variables directly controlled by the nervous system, namely HR, IS, and TPR, are called neural variables. The nervous system controls heart rate (HR) by stimulating the sino-atrial node; it controls total peripheral resistance (TPR) by constricting the arterioles; and it controls inotropic state (IS) by changing the concentration of calcium ions, which controls the force of contraction of the heart muscle. Since the nervous system is not activated in the initial (DR) stage, the neural variables do not change in DR unless they are affected directly by the perturbation. Perturbations of the System Perturbations can be caused by an event such as a hemorrhage or by administering a drug to the patient. In general, students are taught that all they need to know is the initial variable that changes, called the procedure variable, and whether that variable increases or decreases. - CVP + SV + + CO + MAP + + IS HR TPR - - - + Baro + NS + Figure 2: The concept map This term is derived from the fact that many perturbations are medical procedures. The procedure variable determines the initial variable on the concept map that will be affected, which is called the primary variable. For example, a hemorrhage causes the central blood volume to go down, causing a drop in central venous pressure. If the first variable that changes is on the concept map, then the procedure variable and the primary variable are the same. Only four of the seven core variables can be primary: central venous pressure (CVP), inotropic state (IS), heart rate (HR), and total peripheral resistance (TPR). That’s because SV and CO are derived values, and MAP is the regulated variable. In general, knowing the primary variable is sufficient to determine the behavior of the system, although there are two categories of exceptions. In one type of exception, the perturbation has other effects not shown on the concept map, so knowledge of the perturbation is required. The second category of exception refers to the fact that a primary variable can be clamped. In general, when the nervous system is activated in the reflex response (RR) stage, it can cause further changes in the value of any variable. But there is one exception: some perturbations involve physical restrictions that the nervous system cannot override. For example, a broken pacemaker always clamps HR. Sometimes the problem statement will tell the student whether a variable is clamped. For example, drugs can cause a primary variable to be clamped if given in sufficient concentration. Note that the definition of a single problem in the system does not mean that there is only one way to present that problem to the student. In fact, Khuwaja (1994) has studied various ways to present a problem to the student and their respective levels of difficulty. Problems with the Concept Map Students are given copies of the concept map during lecture and encouraged to use it to think about problems. Each box in the concept map represents a parameter. When two parameters are connected by an arrow, we say that A is a determinant of B. An arrow with a plus sign indicates a direct relationship, i.e., when the first variable changes, the second variable changes in the same direction. An arrow with a minus sign indicates an inverse relationship, i.e., the second variable changes in the opposite direction. The concept map directly represents only the following links between variables described in the previous section: Determinants: HR, TPR and IS are neural. The determinants of SV are CVP and IS, and MAP is a minor determinant (inverse direction). The determinants of CO are SV and HR. The determinants of MAP are CO and TPR. CO is the sole determinant of CVP (inverse direction). Along with knowledge of the determinants, students are taught several facts about concept map operation. When a variable has only one determinant, i.e., only one incoming link, then the value of the “sending” variable determines the value of the receiving variable. When there are two incoming links, if both sending variables have the same value, then that value is propagated. However, more complex cases are taught only by example. Although the concept map is a useful memory aid for students, it does not uniquely define the causal model. Several issues arise when trying to formalize the operation of the concept map. First, in order to have an algorithm, we need to know where to start and in what order to follow the links. Second, there are many cases where the instructions given to the students are insufficient to uniquely determine the value of a variable. This issue has two facets. One is that changes in the body during a physiological stage happen in parallel, but the concept map models them as a sequential process in order to emphasize the causal reasoning involved. Thus, in addition to specifying a sequence, the algorithm must recognize that a variable may not have an assigned value if it is used as a sending variable before it has received a value. The other is that when a variable has multiple determinants, the algorithm needs to specify how the calculation is done, remembering that incoming links may have contradictory values or none at all. Additionally, when one of the variables is a minor determinant, this fact must be recognized also. Third, the concept map does not indicate constraints on the links, for example, that a determinant relationship only holds for specific problems. Finally, we need to prove that the algorithm is fully specified, i.e., that each variable will be given one and only one value. These issues are handled in a variety of ways in the classroom. Some of them, such as the sequence of calculations, are taught to students conceptually, enabling students to solve the problems even though the algorithm is not specified sufficiently for a program to do so. Others, such as the fact that variables that do not have values do not enter into a calculation, are treated implicitly—the teacher ignores them, and the students model that approach. Again, this solution works for human beings but is not sufficient for a program. Finally, issues such as exceptions for clamped variables and exceptional procedures are taught as additional world knowledge that is not represented on the concept map. Modeling the Concept Map In this section we show how to represent the CIRCSIMTutor concept map as an algorithm. This algorithm has been implemented as part of CAPE (Freedman et al., 2004), a fully declarative rule-based reimplementation of CIRCSIM-Tutor. CAPE is implemented with the APE reactive planner (Freedman, 2000; Freedman et al., 2000). APE-based systems include two knowledge bases, one permanent and one that can be updated at run time. Both knowledge bases contain facts, i.e., first-order predicates without quantifiers or uninstantiated variables. Primitives are provided to query the knowledge bases. Expert system or Prolog-style rules can be used to add new facts to the transient knowledge base. In this section we describe the structure of facts that CAPE requires in the permanent knowledge base in order to solve concept map problems. Then we describe the types of facts that the problem solver adds to the transient knowledge base at run time. We describe the basic algorithm used for each stage, along with a list of rules for determining the value of a variable within a stage. Knowledge Base The permanent knowledge base contains five predicates. The first predicate provides information about variables. The system needs to know which variables are neural. (kd-is-neural is) (kd-is-neural hr) (kd-is-neural tpr) The second predicate gives the essential features of each concept map problem. For each perturbation, these facts identify the procedure variable and its direction of change. The third argument specifies whether the primary variable is clamped. This argument has three values, t, no, and na, which mean yes, no, and N/A, respectively. The latter value is used for non-neural variables, where clamping does not apply. In general, one fact is required per problem. Where clamping depends on concentration, two different problems are specified, one where the primary variable is clamped and one where the primary variable is not clamped. The following rule is an example: (kd-has-proc-vbl pacemaker-increase hr up t) The third predicate provides information about physiology. Each procedure variable is linked to its corresponding primary variable, and the correspondence is labeled as a direct or inverse relationship. The primary variable may or may not be the same as the procedure variable: (kd-proc-to-primary hr (kd-proc-to-primary ra hr direct) tpr direct) Once this information is obtained for a particular problem, a new fact that directly connects the problem to its primary variable is added to the transient knowledge base for convenience. For example, the facts above give rise to the following one, which says that HR is the primary variable for the pacemaker-increase problem, and that it increases in the DR stage. (kd-has-primary-vbl hr up pacemaker-increase dr) Fourth, additional physiology information is provided in terms of the determinant table. For ease of reading, we maintain the determinant knowledge base using the following nested representation. (kd-has-determinants inverse))) (kd-has-determinants (kd-has-determinants (kd-has-determinants sv (cvp is (map minor co (sv hr)) map (co tpr)) cvp ((co inverse))) However, the algorithmic rules are simpler to write with a flat representation, so at startup the system expands the nested representation into a flat representation with a fact for every determinant in the transient knowledge base. We number the determinants of each variable and provide a determinant count so that a program can pick up all the determinants of a variable without having to use a collection predicate like Prolog bagof. Thus the determinants of CO would look like this: (kd-has-determinant-count co 2) (kd-has-determinant-no co 1 sv direct major) (kd-has-determinant-no co 2 hr direct major) Finally, some information on qualitative mathematics must be provided. Although people can combine an incoming value and a type of propagation to provide a new value, the system needs to know how to do it. (kd-multiply-dirs (kd-multiply-dirs (kd-multiply-dirs (kd-multiply-dirs up direct up) up inverse down) down direct down) down inverse up) The goal of the problem solver is to create a fact of the following form for each variable in each stage of a problem. This fact states that HR increases in the DR stage of the pacemaker-increase problem. (kd-has-value hr up pacemaker-increase dr) Although our theoretical solution requires storing the paths in the knowledge base, our implementation calculates the paths in the correct sequence by checking the propagation rules sequentially so that each variable will be emitted at the appropriate time. Therefore we do not show any predicates here for storing the paths as permanent knowledge, although the system will store each path in the transient knowledge base as a simple list when they are created. Paths through the Concept Map It is useful to start by defining two terms, the primary path to MAP and the secondary path. Together, these two lists form a partition of the non-neural variables, and can be used to show that the algorithm does in fact give each variable a unique value. These two paths are used in the initial (DR) and steady state (SS) stages. The following conceptual rule defines the primary path to MAP: • Start with the primary variable. • Move forward along the most direct route until MAP is reached. The following similar rule gives a conceptual definition of the secondary path: • If the primary path contains CVP, then the secondary path is nil (i.e., there are no variables left for the secondary path) else if the primary path contains CO, then the secondary path starts with CO else the secondary path starts with MAP. • Then move forward until all variables have values. However, it is difficult to implement these rules directly, as we would need to prove that at every step we can uniquely identify the correct next variable and its value. There is an implicit assumption that the correct path does not recalculate the value of any variable already calculated, because that would contradict the causal nature of the reasoning the concept map is designed to teach. To guarantee that all of these assumptions hold, for our theoretical analysis, we store in the knowledge base the following rules for calculating the primary path to MAP. Determine-primary-path: The shortest path is determined by the primary variable. HR primary: HR → CO → MAP HR and IS primary: HR → CO → MAP No primary variable: HR → CO → MAP IS primary: IS → SV → CO → MAP TPR primary: TPR → MAP CVP primary: CVP → SV → CO → MAP Similarly, the rules for the secondary path are shown below. Additionally, for the secondary path, although it is not necessary to make the algorithm work we would like to show that the secondary path is always a connected path that contains all the remaining variables that do not have values, and only those. However, we have been unable to prove this fact except by enumerating the cases. Biologically, the secondary path contains the important link from CO to CVP unless CVP is the primary variable. Determine-secondary-path: The secondary path is determined by the path which has already been traversed. HR → CO → MAP: CO → CVP → SV IS → SV → CO → MAP: CO → CVP TPR → MAP: MAP → SV → CO → CVP CVP → SV → CO → MAP: Nil The reflex response (RR) stage requires an additional path. In the RR stage, the most important path to MAP is the path where the most significant changes take place. In this stage, the now-activated nervous system sends signals to the neural variables that will be propagated to the rest of the system. Thus the most important path to MAP starts with the most powerful neural variable, namely HR, unless that variable is clamped. For the same reasons as given above, we store in the knowledge base the following rules for creating this path. Determine-most-important-path: The most important path is determined by the clamped status of the neural variables. No clamped variable: HR → CO → MAP IS clamped: HR → CO → MAP TPR clamped: HR → CO → MAP HR clamped: IS → SV → CO → MAP HR and IS clamped: TPR → MAP Rules for the DR Stage The algorithm for assigning values to the variables in the DR stage is given below. Determine-DR: 1. Determine the procedure variable and its direction from the perturbation. 2. Derive the primary variable and its direction from the procedure variable. 3. Determine the values of the neural variables. 4. Propagate values to variables on the primary path to MAP. 5. Propagate values to the variables on the secondary path. The first step in solving a problem is to determine the procedure variable, whether the perturbation causes it to increase or decrease, and whether it is clamped in this procedure. This information can be determined from the problem name alone. The second step is to determine the primary variable and its direction, which can be determined from the procedure variable and its direction. The third step is to determine the values of the three neural variables. They are chosen next because they can be ascertained without reference to variables other than the primary variable. Since the neural variables are controlled by the nervous system and DR is the period before nervous system functioning is activated (i.e., before the changes being propagated through the system reach the baroreceptors), neural variables are not affected during the DR period. There is one exception to this rule: If the primary variable is neural, we already know from the previous step that it has changed. Thus the following rule can be used to determine the value of the neural variables: Neural-DR: Neural variables which are not primary do not change in DR. The fourth and fifth steps are to determine the values of the variables along the primary path to MAP and then along the secondary path. In the following section, we give rules for calculating the values of individual variables based on their determinants. Since the paths themselves have been precomputed and stored in the knowledge base, we know that the determinants for each variable will be available when it becomes time to calculate the value. Because the two paths are disjoint, one will never come across a variable that already has a value assigned. Since the two paths form a partition, the algorithm is guaranteed to assign a value to every variable. Non-neural Propagation Rules The following rules can be used to determine the value for any variable in any stage. Since neural variables do not have determinants within the same stage, these rules apply to the non-neural variables. When a variable has only one determinant, there is only one possible case: Prop-1: When a variable has one determinant, then the value of that determinant (increased, decreased or unchanged) determines the value of the variable. If a variable has two determinants, there are several possibilities: neither has a value, only one has a value, both have values but both are unchanged, both have values but one of them is unchanged, both have the same value, or they have conflicting values. In the DR stage, only two rules are needed to handle the case of two determinants. Prop-2n: (no value) If a variable has two determinants and one of them has a value and the other one does not have a value yet, then the value of the one with a value determines the value of the variable. Prop-2u: (unchanged value) If a variable has two determinants and one of them has increased or decreased and the other one is unchanged, then the value of the one that has changed determines the value of the variable. The following additional rules are needed in RR. Prop-2e: (equal values) If a variable has two determinants and both of them have the same value, then that value becomes the value of the variable. Prop-2sv: (conflicting values for SV) If the two determinants of SV (i.e., IS and CVP) have conflicting values (one increases and the other decreases), then the value of CVP determines the value of SV. Rule Prop-2sv expresses the fact that CVP usually has a stronger effect on SV than IS. This results from the fact that HR, which determines CVP, is usually more powerful than IS. Rule Prop-2sv is needed in DR when problems with multiple primary variables are considered. One additional rule is needed to complete propagation in SS. The intent of the following rule is to permit propagation along the path SV → CO → MAP even when there is conflicting data from HR and TPR. Prop-2c: (conflicting determinants for CO and MAP) If a variable other than SV has two determinants with conflicting values, and one determinant is neural and the other is not, then the non-neural determinant takes precedence unless the neural determinant is primary. There is also the possibility of a variable with three determinants. In CIRCSIM-Tutor, this case only arises when one of the three is a minor determinant. The minor determinant is only used when neither major determinant has a value or both major determinants are unchanged. The following rule applies when there are three determinants. Prop-minor: If a variable has two determinants and neither of them has a value other than “unchanged,” but there is a minor determinant with a value, then the value of the minor determinant determines the value of the variable. If one follows the paths correctly, one never comes across a variable where a value cannot be assigned because none of the determinants have values yet. Thus this set of rules can be used to uniquely determine the values on any of the paths. If the rules were updated to give the same results independently of the order in which they were tested, it would be possible to use these rules alone to calculate the values of the non-neural variables. In other words, it would be possible to generate the paths instead of precomputing them and storing them in the knowledge base. Rules for the RR stage In the RR stage, the baroreceptors have responded to the change in MAP in the DR stage. They activate the nervous system, which sends signals to various parts of the body. These signals cause a change in any neural variable whose value is not clamped. Due to the nature of negative feedback systems, a change in MAP in the initial (DR) stage causes neural variables to move in the opposite direction in the reflex response (RR) stage. The following propagation rules can be used to determine the values of the variables in RR. Determine-RR: 1. Determine values for the neural variables. 2. Propagate values to variables on the most important path to MAP. 3. Propagate values to variables on the secondary path. The following two rules can be used to determine values for the neural variables. Neural-RR: If MAP went up in DR, then non-clamped neural variables will go down in RR, and vice versa. Clamped-RR: Clamped neural variables do not change in RR. Values are assigned to the variables on the most important path to MAP and the secondary path using the non-neural propagation rules above. The secondary path in RR is determined using the same rules as in DR. Rules for the SS Stage In the SS stage, the system returns to a steady state. The following propagation rules can be used to determine the values of the variables in SS. Determine-SS: 1. Determine the value of the primary variable. 2. Determine values for the remaining neural variables. 3. Propagate values to variables on the primary path to MAP. 4. Propagate values to variables on the secondary path. Neural variables have done all the changing they are going to do in RR, so they have no further changes to make to come to a steady state in SS. But for primary variables, the majority of the change took place in DR. Thus we have the following rules for primary variables, whether neural or not, and for other neural variables in SS: Primary-SS: If a variable is primary, it has the same value in SS as it did in DR. Neural-SS: If a neural variable is not primary, it has the same value in SS as it did in RR. If MAP decreases in DR and thus increases in RR, it will usually still be decreased in SS relative to its initial value. This is an important principle which is usually expressed to the student as follows: • The reflex never fully compensates (for the perturbation). This is a basic principle of negative feedback systems. For example, suppose we give a patient a transfusion. This will cause MAP to increase and thus cause the values of the neural variables to decrease. In the new steady state, MAP will remain elevated and the neural variables decreased until the extra fluid is excreted. This logic provides the following rule: Compensate-MAP: The value of MAP in SS is the same as its value in DR. We could work backward from MAP to obtain values for the other variables. However, we prefer to work forward to be consistent with the previous stages. Thus we do not use Compensate-MAP in our solutions. The following rule can be used along with the rules for primary and neural variables given above to solve SS problems without using any propagation rules. Algebraic-SS: The value of a variable in SS is the “algebraic sum” of its qualitative predictions in DR and RR. If the DR and RR values have opposite signs, the DR value prevails. This rule is simple and easy to explain. However, because the propagation rules may give a deeper understanding of the mechanism, we prefer to use them instead. Conclusions and Future Work This paper describes our work in making explicit the implicit rules used by students to solve problems using the CIRCSIM-Tutor concept map. It also describes our implementation of these rules in CAPE, a rule-based reimplementation of CIRCSIM-Tutor that uses a fully declarative representation. In addition to eliminating possible discrepancies between the concept map and a procedural implementation, the new problem solver produces a trace of the problem-solving process that can be used to generate explanations for the student. In this section we discuss some proposed extensions to this project. First, we would like to update the propagation rules to ensure that all the propagation rules are independent of the order in which they are executed. That would make it possible to calculate the three paths through the concept map instead of storing them in the knowledge base. One approach to this goal is to note that rule Prop-2c, which is order-independent, could be used to replace all the other forms of Prop-2 except for Prop-2sv. In a similar vein, we would also like to experiment with fully domainindependent rules. Next, we would like to extend the scope of the system to cover all the CIRCSIM-Tutor problems. Two types of problems require only changes in the propagation algorithms. One case includes physiological conditions that require two paths through the concept map to be followed simultaneously, a condition called multiple primary variables. For example, beta-blockers, a class of drugs used to reduce blood pressure, affect both heart rate and inotropic state. A second case is multiple sequential perturbations, which require a path through the concept map to be immediately followed by another one. For example, a pacemaker can break after a drug has been administered to the patient. Other problems require an update to some of the system predicates to allow a link to be dependent on a particular problem. For example, in the problem called enervating the baroreceptors, the link from the baroreceptors to the nervous system is disabled. In that case, the baroreceptors cannot affect the nervous system, so a change in MAP will not affect the neural variables. This problem can be added to the CAPE implementation by allowing the Neural-RR rule to depend on the problem. Similarly, in the problem known as a change in intrathoracic pressure, a decrease in space available for the central veins causes an increase in central venous pressure (CVP) without the usual accompanying increase in stroke volume (SV). This problem could also be handled by adding the possibility of links dependent on a problem name. Finally, we would like to build a new concept map that differentiates causal and functional knowledge. Stevens, Collins and Goldin (1979) use the term causal for relationships that involve causation in the physical world and functional for dependencies which involve only a logical notion of causation, such as those involving a definition or role relationship. A causal model can contain two kinds of knowledge, knowledge about the causal sequence of events and knowledge relating factors inside a given event. The latter would fit under the definition of functional knowledge. The CIRCSIM-Tutor concept map treats both of these types of relationships as equivalent links. Acknowledgments Professors Joel Michael and the late Allen Rovick of Rush Medical College originated the CIRCSIM-Tutor concept map and the pedagogical principles behind it. Along with Professor Martha Evens of Illinois Institute of Technology, they were the principal investigators on the CIRCSIM-Tutor project, which was sponsored by the Office of Naval Research. Professor Greg Hume of Valparaiso University taught me how the original CIRCSIM-Tutor problem solver worked. References Freedman, R. (2000). Using a reactive planner as the basis for a dialogue agent. In J. Etheredge & B. Manaris (Eds.), Proceedings of the 13th International Florida Artificial Intelligence Research Society Conference (FLAIRS 2000), Orlando (pp. 203-208). Menlo Park, CA: AAAI Press. Freedman, R., Haggin, N., Nacheva, D., Leahy, T., & Stilson, R. (2004). Using a domain-independent reactive planner to implement a medical dialogue system. In Dialogue Systems for Health Communication: Papers from the AAAI Fall Symposium, Palo Alto (pp. 24-31). Menlo Park, CA: AAAI Press. Freedman, R., Rosé, C. P., Ringenberg, M., & VanLehn, K. (2000). ITS tools for natural language dialogue: A domain-independent parser and planner. In G. Gauthier, C. Frasson, & K. VanLehn (Eds.), Proceedings of the Fifth International Conference on Intelligent Tutoring Systems (ITS 2000), Montreal, (pp. 433-442). LNCS 1839. Berlin: Springer. Khuwaja, R. (1994). A Model of Tutoring: Facilitating Knowledge Integration using Multiple Models of the Domain. Ph.D. thesis, Department of Computer Science, Illinois Institute of Technology. Michael, J., Rovick, A., Glass, M., Zhou, Y. and Evens, M. (2003). Learning from a Computer Tutor with Natural Language Capabilities. Interactive Learning Environments. 11(3): 233–262. Rovick, A., & Michael, J. (1992). “The Predictions Table: A Tool for Assessing Students’ Knowledge,” American Journal of Physiology, 263(6, part 3): S33–S36. Also available as Advances in Physiology Education, 8(1): S33– S36. Stevens, A., Collins, A., & Goldin, S. 1979. “Misconceptions in Students’ Understanding,” International Journal of Man-Machine Studies 11(1): 145–156. Reprinted in Sleeman, Derek H. and John S. Brown, eds., 1982, Intelligent Tutoring Systems , New York: Academic Press.