Automated merging of conflicting knowledge bases, using a consistent, majority-rule approach with knowledge-form maintenance

Automated merging of conflicting knowledge bases, using a consistent, majority-rule approach with knowledge-form maintenance

Computers & Operations Research 32 (2005) 1809 – 1829 www.elsevier.com/locate/dsw Automated merging of con%icting knowledge bases, using a consisten...

267KB Sizes 0 Downloads 81 Views

Computers & Operations Research 32 (2005) 1809 – 1829

www.elsevier.com/locate/dsw

Automated merging of con%icting knowledge bases, using a consistent, majority-rule approach with knowledge-form maintenance Christopher W. Zobel∗ , Loren Paul Rees, Terry R. Rakes Department of Business Information Technology, Virginia Polytechnic Institute and State University, Mail Drop 0235, Blacksburg, VA 24061, USA

Abstract This paper discusses an automated process of merging con%icting information from disparate sources into a combined knowledge base. The algorithm provided generates a mathematically consistent, majority-rule merging by assigning weights to the various sources. The sources may be either con%icting portions of a single knowledge base or multiple knowledge bases. Particular attention is paid to maintaining the original rule format of the knowledge, while ensuring logical equivalence. This preservation of rule format keeps the knowledge in a more intuitive implication form as opposed to a collection of clauses with many possible logical roots. It also facilitates tracking using the support for each deductive result so that 3nal knowledge in rule form can be ascribed back to original experts. As the approach is fairly involved mathematically, an automated procedure is developed. ? 2004 Elsevier Ltd. All rights reserved. Keywords: Knowledge management; Knowledge engineering; Con%ict resolution

1. Introduction Ten years ago Durkin estimated that there were 12,500 knowledge-based systems with over 100 developed expert systems in each of the application areas of business, manufacturing, medicine, engineering, power systems, space, electronics, computers, environment, the military, and transportation [1]. These knowledge-based systems were accomplishing generic tasks in such problem areas as diagnosis (∼ 30%), interpretation (∼ 18%), prescription (∼ 16%), planning, design, monitoring, and control [1,2]. ∗

Corresponding author. Fax: +1-540-231-3752. E-mail addresses: [email protected] (C.W. Zobel), [email protected] (L.P. Rees), [email protected] (T.R. Rakes).

0305-0548/$ - see front matter ? 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2003.11.027

1810

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

When knowledge bases are built and when they are updated, con%icting pieces of knowledge must be “resolved.” The con%ict can be in the form of diGering small atoms of information as well as con%icting bodies of knowledge. For example, a rule for the diagnosis of cancer written 10 years ago may have recommended mammograms every year, whereas a newer rule may prescribe every 3 years; alternatively, acupuncture may now be seen as a recognized body of knowledge for the treatment of certain neural disorders, whereas ten years ago it may have been considered a “fringe” treatment. At times it is easy to resolve the con%icting knowledge (“we’ll go with the current recommendations for mammograms”), but at other times it is not—e.g., current treatments for cerebral palsy and fertility are disputed. Often, there are serious consequences for how the knowledge is assimilated: couples may care greatly whether they are able to conceive; and in some cases (e.g., cancer), an appropriate diagnosis or prescribing may save a life. Depending on how widely a given knowledge base is used for decision-making, the overall impact of the knowledge that it contains can be signi3cant. A variety of approaches has been advanced in the literature to resolve discrepancies that may appear within a body of knowledge. Many of these approaches focus on the use of human negotiation. In contrast, this paper takes a mathematical approach for merging disparate pieces of knowledge. The methodology is presented in the form of an algorithm, and is based upon a merging operator introduced by Lin [3]. The algorithm may be used either to integrate con%icting portions of a knowledge base or to combine entire knowledge bases that are generated from multiple sources. It generates a mathematically consistent, majority-rule merging by assigning weights to the various sources of knowledge. The process lends itself well to automation, as even the merging of small con%icting knowledge bases can become cumbersome. This approach could be of interest to various audiences. While the domain of knowledge integration 3ts squarely within the 3eld of arti3cial intelligence, the methodological processes used in algorithmic formation, analysis, and automation place this topic in the realm of operations research and analysis as well. This paper 3rst presents background information on two areas: knowledge engineering con%ict resolution, and Lin’s merge function [3]. This is followed by the development of a formal algorithm for merging incompatible knowledge. A speci3c example of combining knowledge bases is then used to illustrate the approach and to highlight several necessary considerations in its implementation. These considerations are incorporated into a revised version of the algorithm, and their impact and implications are discussed in some detail. As an extension of Lin’s original work, it will be seen that it is important to recast knowledge into an appropriate, logically equivalent representation which maintains the truth content of the knowledge bases, while preserving the original rule format and allowing for identi3cation of the logical roots of any deduced clauses. The paper concludes with a section summarizing advantages and disadvantages of the approach and then prescribes future work. 2. Background 2.1. Knowledge engineering con:ict resolution Knowledge is information that is contextual, relevant, and actionable [4, p. 349]. It may take many forms, including procedural knowledge (how to do something), declarative knowledge (knowing that something exists), semantic knowledge (knowledge about concepts, facts, and their relationships),

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1811

and episodic knowledge (information about episodes or events and relationships among these events) [5, pp. 22–23]. Knowledge in organizations comes from many sources. It is often learned through corporate experience and exists in the form of organizational processes, best-practices, policy manuals, customer trust, management information systems, culture, and norms [4]. However, much of the knowledge needed by corporations that is cutting-edge or deals with new or controversial areas is in the form of individual expertise. It is the job of the knowledge engineer to capture this knowledge from experts and to merge it with knowledge from other sources to create a knowledge base for the organization. While the literature on knowledge engineering describes numerous methods for capturing expertise, the knowledge engineer’s job is complicated by multiple sources of knowledge that require “techniques for accommodating or integrating multiple expertise” [5, p. 265]. Information from multiple sources may be in harmony, but in many cases may be either wholly or partially in con%ict. Any such methods for integrating multiple collections of expertise must therefore be able to deal with knowledge con%ict resolution. According to LeClair [6], most of the approaches dealing with multiple lines of reasoning follow one of two strategies. The 3rst is to integrate expertise during knowledge acquisition. In this way, con%icts can be addressed before rules are created so that all experts are in agreement. This approach requires the use of techniques aimed at achieving group consensus [5]. The second strategy for integration of expertise involves capturing the knowledge of each expert individually, and then somehow merging this knowledge. The knowledge may be merged in a way that permits multiple lines of reasoning, or a single line of reasoning for any domain. McGraw and Harbison-Briggs [5] describe several methods for accommodating multiple lines of reasoning. One approach is to overlay the knowledge from multiple experts and examine the areas of agreement and disagreement, using techniques such as repertory-grid analysis or concept sorting. The user can then select the expertise of any subset of experts during the decision process. Other methods they describe are that of Mayer [7], where knowledge bases are not integrated a priori but during the decision process by intelligent cooperative agents, and the approach used by Barr and Feigenbaum [8] whereby cooperating knowledge sources communicate using a “blackboard,” and con%icts among experts are handled by assigning certainty factors which express the degree of agreement or con%ict among the sources. Knowledge bases may also be constructed so that a single line of reasoning can be developed for each decision problem. This would require the knowledge engineer to “segment the knowledge base into subdomains and use a single, separate expert line of reasoning for each (subdomain): : : . The advantage of this technique is that each line of reasoning (i.e., problem-solving model) can contribute unique information that others can use in supporting the initial line of reasoning in deducing a solution” [5, p. 267]. McGraw and Harbison-Briggs use LeClair’s [6] research as an example, illustrating the use of “overlapping, possibly redundant, but unique lines of reasoning which [allow] developers to combine the strengths of diGerent problem-solving models or alternate solution sets.” One well-known approach for managing uncertainty and combining knowledge is Dempster-Shafer theory, also known as the theory of belief functions, which is a generalization of the Bayesian theory of subjective probabilities [9]. According to Shafer [9], “Whereas the Bayesian theory requires probabilities for each question of interest, belief functions allow us to base degrees of belief for one question on probabilities for a related question. These degrees of belief may or may not have the mathematical properties of probabilities; how much they diGer from probabilities will depend

1812

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

on how closely the two questions are related. (Thus) the Dempster–Shafer theory is based on two ideas: the idea of obtaining degrees of belief for one question from subjective probabilities for a related question, and Dempster’s rule for combining such degrees of belief when they are based on independent items of evidence.” The burden in applying this approach is the requirement to ascertain probabilities of the truth of knowledge fragments. In each of these merge techniques, whether it results in multiple lines of reasoning or segmented single lines of reasoning, the traditional approach has been to preserve the captured knowledge of individual sources in the knowledge base. While this oGers the advantage of allowing the user to observe directly the source of recommendations, it also places a tremendous burden on the end user to make decisions as to the appropriateness and reliability of diGerent knowledge sources, and often requires very sophisticated methods for applying the knowledge base to the decision task. Also, methods such as Bayesian analysis or Dempster-Shafer theory require knowledge of a priori probabilities, which are often diOcult to obtain, in order to develop belief functions. An approach which requires only an assessment of the reliability of an expert and correspondingly of his or her contributed knowledge would generally be a much simpler approach. 2.2. Merging knowledge bases The merge function introduced by Lin [3] allows a knowledge engineer to mechanistically combine multiple knowledge bases or knowledge sources into a single, uni3ed knowledge base without constructing belief functions. Once combined, the source of each knowledge kernel becomes hidden, but the knowledge application process is greatly simpli3ed. Lin’s approach deals with con%ict and the issue of reliability by assigning weights to each knowledge base to re%ect the degree of trust in the knowledge source; these weights are then used to determine a majority opinion during the merge process. In particular, Lin [3] provides a semantic de3nition of a knowledge base as a 3nite set of sentences, where a knowledge base supports a sentence if the knowledge base implies that sentence. He also de3nes a function ! that assigns each of the knowledge bases a non-negative number representing the weight (relating to the “trust” or “believability”) of the knowledge base. He then de3nes his merge operator as a mapping from a set of knowledge bases and the weight function ! to a new knowledge base. He stipulates that a “good” merge operator should be de3ned such that the result of mergeing is a maximal amount of information transferred from each knowledge base, but also de3ned so that the merged knowledge base diGers minimally from each original knowledge base. Lin achieves these stipulations operationally by de3ning his merge function to have the mathematical properties of consistency and majority rule, which may be applied to two or more knowledge bases with con%ict. A consistent merging of these databases ensures that the con%icts among the knowledge bases are always resolved. A majority-rule merging means that the opinion of two experts will overrule the opinion of a third whose opinion is considered of equal value to each of the others’. These two properties are important in that equally valued but con%icting opinions will cancel, a preponderance of opinion is guaranteed to dominate, and con%icts are assured to be resolved by the procedure. Lin [3] provides a formal mathematical proof of the consistency and completeness of his merging function. However, although he illustrates its use by giving several small examples of its application to multiple knowledge bases, and by providing a brief description of the merging process [3], he

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1813

does not explicitly provide an algorithm for implementing the technique. Prior to our work, such an algorithm has not yet been put forth in the literature. The following discussion therefore introduces a formal algorithm for merging con%icting knowledge bases, based upon Lin’s examples, his description of the process, and his mathematical development of the merge operator. In order to properly implement such an algorithm, it is necessary to clarify several subtle characteristics of the original merge process. Speci3c examples of the algorithm’s application are inspected to illustrate these characteristics and to demonstrate their importance with respect to the resulting knowledge contained within the 3nal merged knowledge base. Note that this algorithm and the associated clari3cations do not change Lin’s operator and therefore preserve the properties of consistency and majority rule. 3. A methodology for merging knowledge bases Consider two knowledge bases 1 and 2 consisting of many statements (also known as clauses) about individual facts or atoms. Let the capital letters A, B, and C represent such individual atoms, where A (for example) might represent the atom “Cipro:oxacin is a drug for treatment of anthrax.” For the purposes of this paper, assume that knowledge statements/clauses are enclosed in braces and are in one of the following three forms, or may be cast into one of these forms: • {A}, meaning “A is true”; • {−A}, meaning “A is not true”; or, • {A ⇒ B}, meaning “A implies B,” or equivalently, “if A then B”. Note that with this restriction, either A is true or it is not true; facts cannot be partially true (as, e.g., in fuzzy logic). Following the notation of [3], commas are utilized to represent logical conjunction (i.e., logical “and ”), whereas juxtaposed braces indicate logical disjunction (logical “or”) of adjoining statements. For example, the two statements {A; −B}{C} correspond to “(A is true and B is not true) or (C is true).” When all statements in a knowledge base contain only the and operator, and all statements are themselves combined using only disjunction, then the knowledge base is said to be in disjunctive normal form (DNF). Thus the knowledge base: {A; −B}{C} is in DNF, whereas the knowledge base: {A}; {−B}{C} is not in DNF because the 3rst two clauses are and -ed together. (The interested reader new to the area should see introductory texts such as [10] or [11] for a more complete development of basic logic and knowledge representation.) To examine how Lin combines con%icting knowledge bases, consider the following three de3nitions: Let 1 : {A}; 2 : {A ⇒ B}; 3 : {A; −B}; and suppose that we wish to combine the knowledge represented therein. Clearly, there is con%ict among these knowledge bases, as both 1 and 3 state that A is true, which would lead 2 to conclude B. But at the same time, 3 states that −B is true, in direct opposition to the conclusion of B. Including all three clauses in the knowledge base is thus not a viable option, because then B is stated to be both true and false simultaneously. Not only would

1814

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

this prevent conclusions from being drawn about B, but it also could lead to additional erroneous conclusions if a new rule containing either B or −B in its premise was subsequently added to the combined knowledge base. Conversely, omitting both 2 and 3 from the resultant knowledge base eliminates all knowledge of B, which may not be desirable if one of the two clauses is more trusted than the other. Suppose now that the knowledge bases above are individually weighted in some manner re%ecting the relative degree to which the knowledge of the three knowledge bases is accepted. For example, the owner of 1 may be an expert with 30 years of experience in the 3eld, whereas the owner of 2 may only have a single year of experience. The knowledge provided by 1 could therefore be given more consideration than that of 2 when the two knowledge bases are combined. For the purposes of our example, let us arbitrarily assume that 1 has been given a weight of two, whereas 2 and 3 each have a weight of one. Lin syntactically expresses weights through superscripts; e.g., if 4 : {A; C; −B}{A; C; D} is given a weight of two, he writes, 4 : {A2 ; C 2 ; −B2 }{A2 ; C 2 ; D2 }. We follow that convention here as well. Given the above de3nitions and notation, we introduce an algorithm for combining knowledge bases in the presence of con%ict, as follows: 0. Set aside all atoms or rules that do not con:ict with any other knowledge in any knowledge base being included in the merging process. We will add this knowledge to the combined knowledge base once all con%icts have been resolved and removed. Note that passing such knowledge through the merging algorithm will generate correct results; it is just not computationally eOcient. For all remaining knowledge: : : 1. Cast each knowledge base into disjunctive normal form. For example, A ⇒ B is logically equivalent to “−A or B” as their truth tables are equivalent. In the example above, 1 and 3 are already in DNF, but 2 : {A ⇒ B} is not. However, 2 : {A ⇒ B} = {−A or B} = {−A}{B}, which is in DNF. 2. For each resulting disjunctive clause, associate the weight assigned to that clause’s knowledge base to each individual atom. As discussed above, knowledge base 4 with a weight of two may be written as 4 : {A2 ; C 2 ; −B2 }{A2 ; C 2 ; D2 }. 3. Create a disjoint set of combined clauses, constructed as follows: • Consider all clauses (not skipped by step 0) Recall that each pair of curly braces in each knowledge base represents a clause/statement. Therefore, there is one clause in each of the knowledge bases 1 and 3 , and there are two clauses in 2 . 1 : {A}. (This is one clause); 2 : {−A}{B}. (This is two clauses); 3 : {A; −B}. (This is just one clause). • Form all possible unique combinations of clauses, with exactly one clause taken from each knowledge base for each combination. In the example being considered, C1 = combination 1 = clause 1 of 1 ; clause 1 of 2 ; clause 1 of 3 . C2 = combination 2 = clause 1 of 1 ; clause 2 of 2 ; clause 1 of 3 .

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1815



Form the conjunction of the weighted atoms for each combination above. C1 = {A2 ; −A1 ; A1 ; −B1 } C2 = {A2 ; B1 ; A1 ; −B1 }. The disjoint (or-ed) set of combined clauses C1 and C2 represents the un3ltered combined knowledge of the individual knowledge bases. 4. Cancel and remove instances of con:icting “positive” and “negative” pairs of atoms. Within each combined clause, treat the weight associated with each atom as the number of occurrences of that atom. Cancel as many pairs of positive and negative occurrences of each atom as possible. C1 = {A2 ; −A1 ; A1 ; −B1 } = {A2 ; ; ; −B1 } = {A2 ; −B1 }. C2 = {A2 ; B1 ; A1 ; −B1 } = {A2 ; ; A1 ; } = {A3 }. 5. Determine the combined clause that maintains the largest resulting overall sum of weights. After the cancellation in step 4 takes place, the result represents the combination with the least amount of con%ict, and thus the most certainty. C1 = {A2 ; −B1 } has a total weight of 2 + 1 = 3; C2 = {A3 } has a total weight of 3, so we have a tie. 6. Create the @nal combined knowledge base by: : : • Case 1 (ties): : : : removing the weights from the individual atoms and connecting the combined clauses of the previous step together using the “or” operator: : : Since the weights of the two resulting combinations in the example are the same, removing the individual weights and forming the disjunction of the individual atoms in the two combinations gives the solution. In the example, C1 = {A2 ; −B1 }, and C2 = {A3 }, so c : {A; −B}{A}, where c : represents the combined knowledge base. In eGect, this result discounts 2 completely, and gives as a solution the disjoint combination of 1 and 3 . Recall that 1 had a weight twice that of the other knowledge bases. • Case 2 (no ties): : : : removing the weights from the individual atoms within the “winning” combined clause of step 5 (i.e., the clause with the largest resulting overall sum of weights): : : For example, in a diGerent scenario with C1 = {D2 ; E 1 ; −F 2 } and C2 = {E 2 }, since the weight of C1 is 5, and the weight of C2 is 2, then the combined knowledge base would be c : {D; E; −F}. • : : : and then, @nally, forming the conjunction of the combined knowledge base with any atoms or rules that were set aside in step 0. Note that, in its current form, this algorithm assigns a single weight to an entire knowledge base, and thus to all knowledge statements within it. The single-weight scheme may not be realistic in all situations since knowledge statements within a knowledge base may vary in quality. The algorithm is, however, easily adapted to handle knowledge bases with diGerentially weighted knowledge statements within them. By 3rst partitioning the knowledge base into subsets with a single weight for all knowledge statements within the subset, the algorithm can be applied directly to the process of combining the subsets. Such an approach should be not only technically feasible but also practically feasible, except in the extreme where each knowledge statement requires a unique weight. This situation seems unlikely as the weights normally re%ect con3dence in the source of knowledge statements, with large clusters of

1816

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

Table 1 The three knowledge bases of the example Knowledge base

Weight

Assertions

1

1

2

2

3

1

c1 ({A; −B}) c2 ({A; A ⇒ −B}) Modi3ed c

{E}; ({A; B; −D; P}{−A; −B; −D; P}) {E}; ({−A; −D; P}{B; −D; P}) {A ⇒ −B; −D; E; P; P ⇒ −D}

−(A ⇒ B) C ⇒ −D A⇒B C −D P ⇒ −D C⇒D −C E P

knowledge statements coming from a common source. By having clusters of knowledge statements, where the algorithm treats each cluster as a knowledge base, the number of required weights should be small enough to allow the expert or knowledge engineer to accurately re%ect the relative degree to which each cluster (knowledge source) is accepted. Other areas in the literature assign weights to re%ect quality or con3dence in a similar manner to this. For example, a well-developed area of research that also involves the assignment of weights either to individual hypotheses or to sets of such hypotheses is the use of belief functions for representing and combining knowledge under uncertainty. This research does not pursue belief functions further; the reader interested in this topic should see [12,13]. The algorithm given above is derived from Lin’s work [3]. As such, the theoretical properties of consistency and majority rule, which he proved were characteristics of his merge operator, guarantee that the set of clauses with the largest resulting weights do in fact, in disjunction, form the merged knowledge base. They also guarantee that such a combination is a minimal merged knowledge base with all the appropriate properties. The following example is intended both to elucidate this preliminary algorithm and to illustrate several important issues that must be resolved if the algorithm is to be applied successfully. Based on these issues, we will then provide a modi3ed and extended version of the algorithm. 4. Example Consider the three knowledge bases given in Table 1. Although the three sets of knowledge are each just a simple expression of a few facts, there are several explicit con%icts visible within these knowledge bases. In particular, the atoms C and −C of knowledge bases 2 and 3, respectively, directly con%ict, as do the implications A ⇒ B in knowledge base 2 and −(A ⇒ B) of knowledge base 1. Further, there is a potential con%ict between the implications C ⇒ D (3 ) and C ⇒ −D (1 ); this is a potential con%ict in the sense that no con%ict exists until C is actually asserted. For

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1817

the purposes of the example, we assume that knowledge bases 1 (1 ) and 3 (3 ) have each been assigned a weight of 1, whereas knowledge base 2 (2 ) has been given a weight of 2. Step 0 of the procedure, as given above, requires all uncontested atoms or implications to be set aside for inclusion in the 3nal, combined knowledge base. We note that the atoms A, B, C, and D are each contested by information in other knowledge bases, so all clauses containing these atoms must be processed through the algorithm. The atom P (in 3 ) seems at 3rst glance to be uncontested, appearing elsewhere only in the form P ⇒ −D in 2 . But this latter clause is equivalent to {−P}{−D}, thereby indicating that the atom P initially appears in both positive and negative form; it too must be processed by subsequent steps. The atom E, however, appears only in atomic form (in 3 ), and is not contested elsewhere; it is therefore set aside and is not dealt with until the last part of step 6. The disjunctive normal form representation (step 1) of each individual knowledge base, adjusted for weights (step 2), is as follows: [First note, with respect to 1 , that logical equivalence provides: −(A ⇒ B) ≡ −({−A}{B}) ≡ {A; −B}.] 1 : {A; −B}; {−C}{−D} is recast as {A1 ; −B1 ; −C 1 }{A1 ; −B1 ; −D1 }

(1)

using the distributive law {X }; ({Y }{Z}) = {X; Y }{X; Z}. 2 : {−A}{B}; C; −D; {−P}{−D} is reformulated as {−A2 ; C 2 ; −D2 ; −P 2 }{−A2 ; C 2 ; −D2 ; −D2 }{B2 ; C 2 ; −D2 ; −P 2 }{B2 ; C 2 ; −D2 ; −D2 } ={−A2 ; C 2 ; −D2 ; −P 2 }{−A2 ; C 2 ; −D4 }{B2 ; C 2 ; −D2 ; −P 2 }{B2 ; C 2 ; −D4 }:

(2)

3 : {−C}{D}; −C; P is rewritten as ={−C 1 ; −C 1 ; P 1 }{D1 ; −C 1 ; P 1 } ={−C 2 ; P 1 }{D1 ; −C 1 ; P 1 }:

(3)

Applying step 3 of the merge algorithm, there are 16 possible combinations of these eight clauses. After cancellation of con%icting atoms (step 4), there are six of the 16 combinations that share the maximum total weight (step 5) of 8: C1 = {A1 ; −B1 ; −C 1 ; −A2 ; C 2 ; −D4 ; −C 2 ; P 1 }; which after cancellation gives = {−A1 ; −B1 ; −C 1 ; −D4 ; P 1 } C2 = {A1 ; −B1 ; −C 1 ; B2 ; C 2 ; −D4 ; −C 2 ; P 1 }; = {A1 ; B1 ; −C 1 ; −D4 ; P 1 } C3 = {A1 ; −B1 ; −D1 ; −A2 ; C 2 ; −D4 ; −C 2 ; P 1 }; = {−A1 ; −B1 ; −D5 ; P 1 } C4 = {A1 ; −B1 ; −D1 ; −A2 ; C 2 ; −D4 ; D1 ; −C 1 ; P 1 }; = {−A1 ; −B1 ; C 1 ; −D4 ; P 1 }

1818

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

C5 = {A1 ; −B1 ; −D1 ; B2 ; C 2 ; −D4 ; −C 2 ; P 1 }; = {A1 ; B1 ; −D5 ; P 1 } C6 = {A1 ; −B1 ; −D1 ; B2 ; C 2 ; −D4 ; D1 ; −C 1 ; P 1 }; = {A1 ; B1 ; C 1 ; −D4 ; P 1 }: Removing the weights from the individual atoms and forming the disjunction of all “tied” clauses gives (step 6): c : {−A1 ; −B1 ; −C 1 ; −D4 ; P 1 }{A1 ; B1 ; −C 1 ; −D4 ; P 1 }{−A1 ; −B1 ; −D5 ; P 1 } {−A1 ; −B1 ; C 1 ; −D4 ; P 1 }{A1 ; B1 ; −D5 ; P 1 }{A1 ; B1 ; C 1 ; −D4 ; P 1 }; or c : {−A; −B; −C; −D; P}{A; B; −C; −D; P}{−A; −B; −D; P} {−A; −B; C; −D; P}{A; B; −D; P}{A; B; C; −D; P}: Since (in general) {X; C}{X; −C}{X } = {X }, we have c : {E}; ({A; B; −D; P}{−A; −B; −D; P});

(4)

which is listed in Table 1 as combined knowledge base c1 , after reinsertion of the atom E, which was set aside in step 0. Several observations are appropriate at this point. First, even with the relatively small knowledge bases of the example, the procedure generates many clauses and quickly becomes computationally cumbersome. Second, the knowledge in the combined knowledge base is now in a form that bears little, if any, resemblance to the knowledge in the original knowledge bases. For example, the rules (e.g., A ⇒ B) have all been subsumed by the procedure. The form of the knowledge in c has not been preserved so that the information initially stored can be recognized. It should be noted that a great deal of care must be taken to represent the knowledge in each of the original knowledge bases in an appropriate format. For example, in introducing the example above, we recast the negated implication −(A ⇒ B) in its logically equivalent form: {A; −B} so that we might easily incorporate it into the algorithm. It turns out, however, that by using this particular logically equivalent formulation in the cancellation procedure, we inadvertently achieve a 3nal result that appears to be diGerent from what the actual logically consistent result should be, for reasons that will be explained shortly.

5. The algorithm revisited To address these observations, and to guarantee the consistency and majority-rule properties of the procedure when dealing with rules, we modify the algorithm in the following manner; the rationale for these modi3cations follows.

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1819

Modify steps 1 and 4 to read: 1. Cast all knowledge bases into disjunctive normal form. • Cast all rules A⇒B into the form {−A}{B}. • Cast all rules −(A ⇒ B) as the disjunctive combination of the possible interpretations of {A; −B}: {A; (A ⇒ −B)}{−B; (−B ⇒ A)}{A; −B}. • When casting a rule into DNF, keep track of its original form and maintain the association between the DNF atoms and the original rule (its “support.”). This may be done by simply “marking” the atoms at the beginning of resolution with an identi@cation number of the supporting rule and having that number carried through all subsequent steps of the resolution process. (As an aside, note that compound rules such as rules of the form (A; B) ⇒ C; D can also be successfully recast by treating each conclusion separately and by substituting the compound antecedent into the second bullet above. See Appendix A for details.) 4. Cancel and remove instances of con:icting “positive” and “negative” pairs of atoms. However, maintain in storage the pre-cancellation weighted clauses for possible future use. Add a new step 7 as follows: 7. For each atom remaining in step 6 that was originally derived from a rule, recast that atom back into its original rule form, using the support developed in step 1. The determination of the source rule from its support (original rules and lines of reasoning) for any deduced form could be accomplished in various ways, such as backtracking through the reasoning chain, or, if atoms were marked in step 1 with an identi@cation number of the supporting rule, by recalling that rule. The complete algorithm, including these modi3cations, is given in Appendix B. 6. Solving knotty problems caused by rules The rationale for the above algorithmic changes, primarily dealing with rules in the knowledge base, is now explained. Recall that, as a general rule, known contradictions (i.e., two or more con%icting opinions) should not be maintained in the knowledge base simultaneously. If opinions truly con%ict, then one of the two must be true and the other must be false. If the false knowledge is chained to become a premise of a rule, anything can be proved, as falsity logically implies anything. The basic principle of Lin’s work is that equally weighted opposing atoms cancel; unequally weighted opposing facts remain in the knowledge base in the higher-weighted form. We utilize this principle in determining how to coalesce con%icting rules. It is desirable for logically con%icting rules to cancel, i.e. the combination of any two con%icting rules, R1 and R2 , and an arbitrary atom, A, should always reduce to the atom alone, {A}. Since X ⇒ Y and −(X ⇒ Y ) con%ict, they should therefore cancel each other. If two con%icting rules can be made to cancel, then the merge procedure’s consistency and majority-rule properties will be

1820

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

maintained; however, getting two rules to completely cancel is not as straightforward as one might assume. Without loss of generality, let us cast a rule R1 : X ⇒ Y in its simplest DNF form, namely the disjoint clauses {−X }{Y }. In the example given above, we used R2 : −(X ⇒ Y ) = −({−X }{Y }) = {X; −Y } to represent the logical negation of rule R1 . Combining these two rules using the merge algorithm yields: R1 : {−X }{Y } R2 : {X; −Y }, and {R1 }{R2 } = {−X; X; −Y }{Y; X; −Y }, which gives: ={X }{−Y } after removing con%icting atoms. By combining {A} with R1 and R2 , we then obtain {A; X }{A; −Y } = {A}. It thus appears that the two rules have not cancelled and that the desired atom {A} has not been obtained after the merge procedure. As no rules of logic were violated in casting the rules into DNF, it must be true that the merge procedure itself must be the cause of the diOculty. Stated directly, the merge procedure, as originally presented, does not appear to work for rules. Suppose, however, that we utilize the logically equivalent form R2 : −(X ⇒ Y ) = {X; (X ⇒ −Y )} rather than R 2 : {X; −Y }. The merge algorithm then yields: R1 : {−X }{Y } R2 : {X; (X ⇒ −Y )} = {X; {−X }{−Y }} = {X; −X }{X; −Y } {R1 }{R2 } = {−X; X; −X }{−X; X; −Y }{Y; X; −X }{Y; X; −Y } ={−X; −X; X }{−X; X; −Y }{−X; X; Y }{X; −Y; Y }, which after cancellation gives: ={−X }{X }{−Y }{Y }. Since {A; −X }{A; X }{A; −Y }{A; Y } = {A}, this is the desired outcome. This result implies that if rules of the form A ⇒ B are always cast as {−A}{B}, and rules of the form −(A ⇒ B) are always cast as {A; (A ⇒ −B)}, then the merge function works as intended, and we are able to achieve consistent and majority-rule results. There is, however, one more issue to be considered, namely “meaning.” Although using R 2 : {X; (X ⇒ −Y )} rather than R 2 : {X; −Y } “works” (i.e., gives the correct result) and is logically equivalent to −(X ⇒ Y ), the physical meaning of the former R 2 does not seem equivalent if one is using ordinary atoms such as X : “There is a cloud ” and Y : “It is raining.” In particular, in the negated rule −(X ⇒ Y ), there is no assertion that there is a cloud at all; there is just the assertion that if there is a cloud, it is false to say it is raining. However, in R 2 : {X; (X ⇒ −Y )}, which is logically equivalent to the negated rule, we assert that X is true and that if/since this is true, then we hold that it is not raining. These two assertions do not have equivalent meanings. In this paper, we wish to derive a con%ict resolution procedure that ensures logical equivalence, meaning, and maintenance of the original form for rules that survive (to be discussed shortly). Consequently, we cast rules of the form R 2 : −(X ⇒ Y ) as R 2 : {X; (X ⇒ −Y )}{−Y; (−Y ⇒ X )}{X; −Y }: Logically, it is not hard to show that {A}{R 1 }{R 2 } = {A}, as desired. With respect to meaning, note that R2 now does not assert directly that there is a cloud, but rather says that one of the following must be true: (1) there is a cloud and the presence of a cloud

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1821

implies that it is not raining, or (2) it is not raining and the absence of rain implies that there is a cloud, or (3) there is a cloud and it is not raining. This states the truth of the negated rule in three diGerent ways without stipulating which of the three possibilities in fact is correct. This gets around the meaning diOculty described above. The issue of logical equivalence and interpretation of the 3nal combined knowledge base also arises with respect to the retrieval of the original form of the contributed knowledge. As seen in the example section above, the 3nal, combined knowledge base typically contains disjunctions of collections of atoms; one cannot readily see, for instance, whether any rules have been carried by the process through to the 3nal result. The diOculty can be observed explicitly in the following. Consider the combination of a single atom {X } from one knowledge base with a single atom {Y } from another knowledge base, generating the clause {X; Y }. Without maintaining support for each atom, this cannot be distinguished from the reduced form of the combination of {X } and {X ⇒ Y }, despite the fact the origin of the contributed knowledge is very diGerent. In the spirit of truth maintenance systems [14], therefore, it is important that the algorithm stipulate that support for each atom or rule be speci3ed and then maintained throughout the process. This allows the original form of each rule to be retrieved and then displayed within the 3nal combined knowledge base. Finally, with respect to the eOciency and performance of the merging algorithm, it is very important to store the weighted clauses prior to cancellation (Step 4) if it is known that additional con%icting knowledge is likely to be added to the combined knowledge base at some point in the future. This will save repeating the entire process starting from step 0, which would otherwise be necessary if additional knowledge is to be properly incorporated into the combined result. A short example used to illustrate this issue has been provided in Appendix C. 7. The example revisited As a result of the modi3cation of the algorithm to incorporate the simplifying reformulation of rules, the example of Table 1 leads to a new equation (1 ), as follows: Substituting {A; (A ⇒ −B)}{−B; (−B ⇒ A)}{A; −B} for −(A ⇒ B), 1 : ({A; −A}{A; −B}{−B; B}{−B; A}{A; −B}); {−C}{−D} = {A1 ; −A1 ; −C 1 }{A1 ; −A1 ; −D1 }{A1 ; −B1 ; −C 1 }{A1 ; −B1 ; −D1 } {B1 ; −B1 ; −C 1 }{B1 ; −B1 ; −D1 }{A1 ; −B1 ; −C 1 }{A1 ; −B1 ; −D1 } {A1 ; −B1 ; −C 1 }{A1 ; −B1 ; −D1 }:

(1 )

Notice that several clauses in (1 ) are duplicates of one another, and by removing these duplicates we can reduce it to {A1 ; −A1 ; C 1 }{A1 ; −A1 ; −D1 }{A1 ; −B1 ; −C 1 }{A1 ; −B1 ; −D1 } {B1 ; −B1 ; −C 1 }{B1 ; −B1 ; −D1 }:

(1 )

When the algorithm is run incorporating this new formulation, six additional unique clauses with the shared maximum weight of eight are produced (each of the pre-cancellation clauses listed below

1822

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

has an associated and equivalent clause with (B1 ; −B1 ) replacing the initial (A1 ; −A1 )), along with the six that were generated previously: C7 = {A1 ; −A1 ; −C 1 ; −A2 ; C 2 ; −D4 ; −C 2 ; P 1 } = {−A2 ; −C 1 ; −D4 ; P 1 }; C8 = {A1 ; −A1 ; −C 1 ; B2 ; C 2 ; −D4 ; −C 2 ; P 1 } = {B2 ; −C 1 ; −D4 ; P 1 }; C9 = {A1 ; −A1 ; −D1 ; −A2 ; C 2 ; −D4 ; −C 2 ; P 1 } = {−A2 ; −D5 ; P 1 }; C10 = {A1 ; −A1 ; −D1 ; −A2 ; C 2 ; −D4 ; D1 ; −C 1 ; P 1 } = {−A2 ; C 1 ; −D4 ; P 1 }; C11 = {A1 ; −A1 ; −D1 ; B2 ; C 2 ; −D4 ; −C 2 ; P 1 } = {B2 ; −D5 ; P 1 }; C12 = {A1 ; −A1 ; −D1 ; B2 ; C 2 ; −D4 ; D1 ; −C 1 ; P 1 } = {B2 ; C 1 ; −D4 ; P 1 }: Note that it was the explicit inclusion of {A; −A} (and equivalently {B; −B}) in (1 ) that led to these additional clauses. As a general rule to simplify calculation, if at least one non-con%icting atom has been combined with such a clause, the original pair of con%icting atoms can be dropped from the computation (so that clauses for both {A; −A} and {B; −B} need not be carried all the way through the process). Any unique clause generated from such a con%ict, however, should be maintained until its 3nal weight is calculated and compared against the maximum, even if additional con%ict is subsequently introduced. With the additional clauses given above, Eq. (4) from step 6 now becomes c : {A; B; −D; P}{−A; −B; −D; P}{−A; −D; P}{B; −D; P}; and using the logical equivalence of {B} and {A; B}{B}, we can rewrite this result as c : {E}; ({−A; −D; P}{B; −D; P});

(4 )

after re-introducing the atom E (set aside in step 0). This is listed in Table 1 as combined knowledge base c2 . If we then trace the origin of each atom that contributes towards this solution clause (step 7), we achieve the following logically equivalent solution: {A ⇒ B; −D; E; P; P ⇒ −D}:

(5)

Referring to Table 1, it can thus be seen that each of the con%icts initially present within the system of knowledge bases has been resolved. A single instance of each of the con%icting implications A ⇒ B and −(A ⇒ B) has canceled, leaving a single instance of A ⇒ B from the more heavily weighted 2 . Similarly, an instance of each of the atoms C and −C has canceled, and the remaining instance of C was also canceled when combined with C ⇒ −D and C ⇒ D (since C and (C ⇒ −D) ≡ −(C ⇒ D)). None of the information remaining in the joint knowledge base contradicts E, P, or P ⇒ −D, and thus each of the other atoms and implications has been retained, in its original form, from its original knowledge base. 8. Disadvantages and advantages The primary disadvantage of the merge procedure developed above, in our view, is that it is almost purely mechanistic. Existing approaches (see [5,6]) bene3t from human input in the form

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1823

of negotiation and mediation either during knowledge acquisition or after. For example, experts in con%ict may meet face-to-face to resolve disagreements. In this manner misunderstandings can be hammered out, terms re-de3ned, and re3nements and new rules generated; perceived con%icts among experts may in fact be just the consequence of terminology or error. The mechanistic approach presented here does not allow improvements of this nature. It assumes all con%icts in the knowledge base are true con%icts, and it will attempt to eliminate equally weighted con%icts, and will rule in favor of more heavily weighted experts. Another disadvantage of the approach is that all experts’ expertise must be placed on a cardinal scale. That is, the procedure assumes that expert one’s opinions should get a weight of two (say), whereas expert two’s opinions warrant a three. This assessment is often diOcult and somewhat arbitrary. (In the spirit of fairness, however, it should be noted that some extant con%ict resolution approaches with humans use certainty factors, also a cardinal scale. Further, it is possible to improve the weighting process by weighting diGerent portions of an expert’s knowledge diGerently, as mentioned, by partitioning that expert’s knowledge base.) The primary advantage to the procedure presented in this research is that it can be invoked even when other approaches fail. There are situations when it is inappropriate, costly, and/or even impossible to gather human experts together to resolve knowledge con%ict. In other instances, human experts may not have been involved in generating the knowledge, as can happen, for example, with machine learning from case data. And even when experts can be assembled, compromise is sometimes unsuccessful and information overload (say due to too many multi-comparisons) may occur. In all such instances, the automated line of attack developed above may be a good alternative. 9. Conclusions and additional issues Integrating knowledge from multiple knowledge bases or gathering knowledge from multiple experts can lead to knowledge con%ict. In some cases this can be a serious and/or costly problem. Based on work by Lin [3], we have formulated an algorithm to resolve knowledge-base con%ict in a consistent, majority-rule manner. The method speci3es that in order to simplify the process and to aid in the interpretation of the results, rules, in particular, must be manipulated in a precise fashion. That is, one must (1) keep support for all rules; (2) formulate the rule A ⇒ B in DNF as {−A}{B}, and the rule −(A ⇒ B) in DNF as as {A; (A ⇒ −B)} {−B; (−B ⇒ A)}{A; −B}; and (3) at the end of the algorithm, recast the remaining atoms that were derived from rules back into their original form. The algorithm developed here is not mathematically intense, but even small problems quickly expand, necessitating computer assistance. When considering the combination of multiple knowledge bases, there may be a number of atoms and rules in each knowledge base that do not con%ict with the knowledge in any of the other knowledge bases. It is only the remaining atoms and rules that do present some sort of con%ict that must be manipulated by the knowledge base merging algorithm in a non-trivial manner. In particular, two aspects of the algorithm contribute signi3cantly to its computational complexity: the casting of the potentially con%icting elements in each knowledge base into disjunctive normal form (Step 1), and the generation of the combined clauses in Step 3. The process of converting a knowledge base into DNF, as discussed in the algorithm above, is of exponential complexity. This level of eGort will only be required, however, when the knowledge base contains the negation of an implication whose antecedent (if-clause) is composed of the conjunction

1824

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

of multiple atoms (such as −((F; G) ⇒ H )). Because the algorithm calls for casting all such rules as the disjunctive combination of all possible interpretations of the base case ({F; G; −H }), the number of such combinations may potentially be very large (see Appendix A for a simple example). Although the exhaustive generation of these combinations can become computationally prohibitive if there are many atoms involved, we believe in practice such rules tend to be limited in size and occur only rarely. On average the conversion process will use only the simple application of DeMorgan’s laws and will thus be polynomial in complexity. The generation of the combined clauses in Step 3 of the algorithm has the most potential for imposing a computational burden. Both the size of each knowledge base and the overall number of knowledge bases can have a signi3cant eGect on the eGort required for implementing the algorithm. The number of clauses generated before canceling of atoms occurs, and before duplicates are removed, will be equal to the product of the cardinalities of each of the individual knowledge bases being combined (i.e. the product of the number of clauses in each of their individual DNF representations). For example, the three small knowledge bases of Table 2 resulted in the initial generation of over 2800 diGerent clauses during step 3 of the algorithm ((|1 | = 12 clauses) ∗ (|2 | = 20 clauses) ∗ (|3 | = 12 clauses)), with a solution given by the disjunction of four clauses (reduced to two unique clauses) averaging 15 atoms each in step 6. The amount of work required to determine the optimal clauses, even if they are small in number, demonstrates the need for a mechanized version of the algorithm, which we have developed (in Excel). The combined knowledge base output for this example, given by our Excel program, is shown in the bottom row of Table 2. Maintaining the associations between individual DNF atoms and the rules from which they were derived, as suggested in Step 1 of the modi3ed algorithm, will also have an eGect on computational eGort. Rather than being an issue of computation time, however, such maintenance is primarily an issue of memory since this information must be stored for each atom that is involved in an implication in its native knowledge base. Because an association must be tracked for each combined clause of which the atom is a part, the required memory allocation can be signi3cant—particularly if there is a large number of knowledge bases to be combined. In work we are currently pursuing, the cost of not merging known, con%icting knowledge can also be estimated. This work asks, suppose one does not merge? The choices are then (1) leave all con%icting knowledge out of the knowledge base, or (2) include either of the two sides of each con%icting piece, or (3) include the con%ict in the knowledge base. Using the merge algorithm as a baseline, one can estimate and assess the relative cost of each option. In some problems, it may be appropriate to assign probabilities to the occurrence of certain events. If it is also possible to determine the societal impact of these events, one can determine the expected impact of a decision. This topic of merging knowledge bases under uncertainty is another important area of research that we are pursuing. The previous section noted two disadvantages to an algorithmic approach to merging disparate knowledge bases. These disadvantages can be turned into advantages, however, in cases when it is possible to combine such a procedure with existing (human) approaches. In particular, we see promise with using the algorithm discussed above as a preprocessor and/or mediator for human-negotiated merging. For instance, one could present the merged result to the experts for consideration in their con%ict deliberations. If societal impact estimates were available (e.g., based on our work in progress), one could rank the knowledge con%icts from greatest impact to least, thereby resolving issues of the greatest import 3rst.

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1825

Table 2 Combining three other knowledge bases becomes computationally involved Knowledge base

Weight

Assertions

1

1

2

2

3

1

c

(A ⇒ B), (C ⇒ D), F; (F ⇒ −H ), ((F; G) ⇒ H ), (F ⇒ E), ((B; D) ⇒ H ), {A; (C ⇒ B)}{−(C ⇒ B)} i.e. c is the disjunction of C1 and C2 de3ned as follows: C1 : {(A ⇒ B); (C ⇒ D); F, (F ⇒ −H ); ((F; G) ⇒ H ), ((B; D) ⇒ H ); (F ⇒ E), A; (C ⇒ B)} C2 : {(A ⇒ B); (C ⇒ D); F; (F ⇒ −H ); ((F; G) ⇒ H ), ((B; D) ⇒ H ); (F ⇒ E), −(C ⇒ B)}

A⇒B C⇒D (F; G) ⇒ H −(C ⇒ B) A⇒B F F ⇒ −H C⇒B A F ⇒E (B; D) ⇒ H

Finally, it should be repeated that in situations when it is inappropriate to utilize human experts, as existing methodologies may require, the automated line of attack developed above may be a good alternative. Appendix A. Casting compound rules Rules of the form (A; B; : : :) ⇒ C; D; : : : can be successfully recast as follows: (1) Multiple, conjunctive-consequent rules should be broken into multiple, single-consequent rules, as follows: (A; B; : : :) ⇒ C, (A; B; : : :) ⇒ D, etc.

1826

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

(2) Each rule with multiple, conjunctive antecedents should be reformulated as follows: • Cast the rule as described in the body of the paper (A ⇒ B ⇔ {−A}{B}) and then apply both of DeMorgan’s Laws (see, e.g., Rolston [15, p. 43]). For example, (A; B) ⇒ C ⇔ {−(A; B)}{C} ⇔ {−A}{−B}{C}: (3) In order to maintain meaning, each negation of a rule with multiple, conjunctive antecedents and a single conclusion should be reformulated as follows: • Generate the disjunctive combination of all equivalent forms of the single clause obtained by applying DeMorgan’s Laws to the rule being negated. For example, for −((A; B) ⇒ C), we get the single clause {A; B; −C}, which has thirteen distinct disjunctive combinations, including its original form: {A; B; −C} ⇔ ( {A; B; −C} {A; A ⇒ (B; −C)} {B; B ⇒ (A; −C)} {−C; −C ⇒ (A; B) {(A; B); (A; B) ⇒ −C} {(A; −C); (A; −C) ⇒ B} {(B; −C); (B; −C) ⇒ A} {A; A ⇒ B; B ⇒ −C} {A; A ⇒ −C; −C ⇒ B} {B; B ⇒ A; A ⇒ −C} {B; B ⇒ −C; −C ⇒ A} {−C; −C ⇒ A; A ⇒ B} {−C; −C ⇒ B; B ⇒ A}: ): Casting compound rules in the fashion described above maintains not only logical equivalence (validity), but maximal explanatory power as well. (4) Each negation of a rule with multiple, conjunctive antecedents and multiple conclusions should be reformulated as follows:

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1827

• First, using (1), recast the rule being negated as the conjunction of multiple, single-consequent rules For example, for −((A; B) ⇒ (C; D)), we have: −((A; B) ⇒ C; (A; B) ⇒ D)): • Second, apply DeMorgan’s Laws to generate the disjunction of the negations of these multiple rules: {−((A; B) ⇒ C)}{−((A; B) ⇒ D)}: • Now apply (3) to each of these disjunctive clauses individually. Appendix B. Updated knowledge base merging algorithm 0. Set aside all atoms or rules that do not con:ict with any other knowledge in any knowledge base being included in the merging process. For all remaining knowledge: : : 1. Cast each knowledge base into disjunctive normal form. • Cast all rules A ⇒ B into the form {−A}{B}. • Cast all rules −(A ⇒ B) as the disjunctive combination of the possible interpretations of {A; −B}. • When casting a rule into DNF, keep track of its original form and maintain the association between the DNF atoms and the original rule (its “support.”). This may be done by simply “marking” the atoms at the beginning of resolution with an identi@cation number of the supporting rule and having that number carried through all subsequent steps of the resolution process. 2. For each resulting disjunctive clause, associate the weight assigned to that clause’s knowledge base to each individual atom. 3. Create a disjoint set of combined clauses, constructed as follows: • Consider all clauses (not skipped by step 0). • Form all possible unique combinations of clauses, with exactly one clause taken from each knowledge base for each combination. • Form the conjunction of the weighted atoms for each combination above. 4. Cancel and remove instances of con:icting “positive” and “negative” pairs of atoms. However, maintain in storage the pre-cancellation weighted clauses for possible future use. 5. Determine the combined clause that maintains the largest resulting overall sum of weights. 6. Create the @nal combined knowledge base by: : : • Case 1 (ties): : : : removing the weights from the individual atoms and connecting the combined clauses of the previous step together using the “or” operator: : : • Case 2 (no ties): : : : removing the weights from the individual atoms within the “winning” combined clause of step 5 (i.e., the clause with the largest resulting overall sum of weights): : :

1828

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

Table 3 Approach

Knowledge representation

Result of merging algorithm

1 (correct)

1 2 3 c 3 c

c∗ : {−B; −D}{A; −D}{A; B}

2 3 (also correct)

: {−B}{D} : {A; −A}{A; B} : {−D} : {A; B; D} : {−D} : {A; −A; −B}{A; −A; D} {A; B; −B}{A; B; D} 3 : {−D}

c∗ : {A; B} c∗ : {−B; −D}{A; −D}{A; B}

• : : : and then, @nally, forming the conjunction of the combined knowledge base with any atoms or rules that were set aside in step 0. 7. For each atom remaining in step 6 that was originally derived from a rule, recast that atom back into its original rule form, using the support (marking) developed in step 1.

Appendix C. Combining new and intermediate forms of con+icting knowledge In this appendix we show how new, con%icting knowledge is to be combined with intermediate forms of combined knowledge. We do this with a simple example. Suppose we are given 1 and 2 , each with a knowledge base weight of 1, as shown in the 3rst row of Table 3 below. Applying the algorithm to these two knowledge bases yields c : {B; −D}{A; −D}{A; −B}. Now suppose that at a later time we are provided with additional information from a new knowledge base, 3 : {−D}, to which we have given a weight of 1. The 3rst row of Table 3 shows the result (c∗ ) from starting the algorithm over “from scratch,” which is a correct approach to assimilating all knowledge. The second row shows the result of forming c∗ by using the algorithm to combine c with 3 directly. The result is incorrect, as indicated in the 3nal column of Table 3. As illustrated in the third row of Table 3, however, it is not actually necessary to repeat the entire merging process in order to generate the correct results. If we retain the weighted clauses from immediately before the cancellation of the con%icting atoms, we can incorporate new knowledge at this stage of the process, and then proceed with the remainder of the algorithm to achieve the desired result, as indicated by the correct combined knowledge base in the bottom right cell of Table 3. Note that c in row 2 is actually the result of applying step 5, so although we do not have to return all the way to step 1, it is necessary for us to start the new merging process prior to step 5 in the algorithm. This approach of maintaining the results of step 3 “in the background” as knowledge bases are being combined, in case knowledge is added later, has been incorporated in step 4 of the (revisited) algorithm.

C.W. Zobel et al. / Computers & Operations Research 32 (2005) 1809 – 1829

1829

References [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]

Durkin J. Expert systems: design and development. New York, NY: MacMillan Publishing Company; 1994. Hayes-Roth F, Waterman DA, Lenat DB. Building expert systems. Reading, MA: Addison-Wesley; 1983. Lin J. Integration of weighted knowledge bases. Arti3cial Intelligence 1996;83:363–78. Turban E, Aronson J. Decision support systems and intelligent systems, 6th ed. Upper Saddle River, NJ: Prentice-Hall; 2001. McGraw K, Harbison-Briggs K. Knowledge acquisition: principles and guidelines. Englewood CliGs, NJ: Prentice-Hall; 1989. LeClair SA. Multiexpert knowledge system architecture for manufacturing decision analysis. Doctoral Dissertation, Arizona State University, 1985. Mayer A. The integration of multiple knowledge sources for solving user-posed problems. Knowledge-Based Engineering Systems Research Laboratory, University of Illinois at Champaign/Urbana, 1987. Barr A, Feigenbaum EA. The handbook of arti3cial intelligence. Los Altos, CA: Kaufman Publishing; 1981. Shafer G. Perspectives on the theory and practice of belief functions. International Journal of Approximate Reasoning 1990;3:1–40. Winston PH. Arti3cial intelligence, 2nd ed. Reading, MA: Addison-Wesley; 1984. Genesereth MR, Nilsson NJ. Logical foundations of arti3cial intelligence. Los Altos, CA: Morgan Kaufmann Publishers; 1987. Murphy C. Combining belief functions when evidence con%icts. Decision Support Systems 2000;29(1):1–9. Lefevre E, Colot O, Vannoorenberghe P. Belief function combination and con%ict management. Information Fusion 2002;3(2):149–62. de Kleer J. An assumption-based TMS. Arti3cial Intelligence 1986;28:127–62. Rolston DW. Principles of arti3cial intelligence and expert systems development. New York, NY: McGraw-Hill Book Company; 1988.