POSSIBILISTIC EXPERT SYSTEMS AND PROCESS CONTROL UTILIZING FUZZY LOGIC

Abstract: An explicit assumption of continuity is used to generate a fuzzy implication operator, which yields an envelope of possibility for the conclusion. A single fuzzy rule A}B entails an infinite set of possible hypothese A'}B' whose degree of consistency with the original rule is a function of the "distance" between A and A' and the "distance" between B and B'. This distance may be measured geometrically or by set union/intersection. As the distance between A and A' increases, the possibility distribution B* spreads further outside B somewhat like a bell curve, corresponding to common sense reasoning about a continous process. The manner in which this spreading occurs is controlled by parameters encoding assumptions about (a) the maximum possible rate of change of B' with respect to A'(b) the degree of conservatism or speculativeness desired for the reasoning process (c) the degree to which the process is continuous or chaotic.

Description: POSSIBILISTIC EXPERT SYSTEMS AND PROCESS CONTROL UTILIZING FUZZY LOGIC This invention relates to the field of fuzzy logic systems, and more particularly to a method of using fuzzy logic to reason from sparse examples or rules by interpolation and extrapolation for use in process control, and in possibilistic expert systems which assess evidence based on materiality and probability to confirm or disconfirm an assertion. BACKGROUND OF THE INVENTION Generally fuzzy logic systems utilize rules against which inputs are evaluated in order to formulate an output. In the present specification, a rule refers to a fuzzy proposition, which is indicated as A— »B, where A is the rule input and B is the rule output. For example, in the phrase "red cars are liked", the rule input is "red cars" and the rule output is "liked". The input is a fuzzy set that may or may not be identical to the rule input. For example, "green cars" and "orange vans" would be inputs. The output is a conclusion inferred by applying the rule to the input. . The conclusion may or may not be the same as the rule output depending on the input. A rule excludes certain outputs absolutely because it is the result of many observations that lead to a firm conclusion that nothing other than B will occur if A is true. An "example" is defined as "a single observation of B together with A". If situation A recurs, outputs other than B are deemed possible. Existing fuzzy logic systems have limited decision making capabilities and therefore are less likely to emulate a desired system requiring reasoning that is similar to informal human reasoning. These limitations may be described as follows: 1) Existing fuzzy logic implication operators do not generate outputs corresponding to intuitive ideas for the output if the input does not match the rule input exactly. For example, in the case of mismatch between input and rule input, informal logic postulates for the output an envelope of possibility should spread around the rule output, and spread wider as the input becomes less similar to the rule input. This spreading reflects increased uncertainty about the range of possible outputs. If the input is "sort of like the rule input, the output should be "sort of like the rule output, where "sort of means an increased degree of fuzziness and/or a wider support set. One expects outputs closer to the rule output to be more possible than remote outputs. For example, if a vehicle is "orange car", one does not expect "intensely disliked" (an output remote from the rule output "liked") to be just as possible as "somewhat liked" (an output close to the rule output "liked"). Existing fuzzy logic generates basically two types of outputs if the input and rule input do not match exactly, exemplified by a Zadeh implication and a Sugeno implication. In the former, the envelope of possibility has a core idential to the rule output and infinite flat tails whose height is proportional to the mismatch. In the latter, the envelope of possibility does not spread at all but becomes increasingly subnormal as the mismatch increases. 2) Existing fuzzy logic requires a complete set of overlapping rules covering all possible combinations of inputs, whereas human beings can reason from a very sparse set of rules or examples. A complete set of overlapping rules is required for fuzzy logic because only logical operations (as opposed to arithmetical operations) are applied to the inputs to get the output, and logical operations can only be applied to fuzzy sets that intersect to some degree. Existing fuzzy logic can not function with disjoint sets of rules, whereas human beings can function by filling in the blank spaces in a rule input "grid". For example, if you knew "red cars are liked" and "white cars are hated", you would guess that "pink cars elicit indifference". Humans do not need a new rule for this situation. When using the newly created rules, human beings assume that the output is fuzzier than it would be if the input matched the rule input exactly. This increasing fuzziness corresponds to the desired envelope of possibility described in 1). For example, your conclusion about pink cars would not be very certain because you have definite information only about red and white cars. You therefore hedge your conclusion with words to make the conclusion fuzzier and to indicate doubt about the conclusion: "Most likely people are indifferent to pink cars, but it's also somewhat possible they might hate them or love them, I can't be sure" Expert knowledge is currently formulated in fuzzy logic as a complete set of rules. However, in much of informal reasoning, expert knowledge is represented by: a sparse set of examples or rules, knowledge of how to deviate from those rules, and a measure of how far to trust those deviations, all of which is not represented by existing fuzzy logic. 3) Existing fuzzy logic does not smoothly bridge the gap between examples and rules. In current practice, a large number of discrete data points (examples) are sampled, clustering analysis or the application of a neural net follows, and then a complete fuzzy rule set is extracted. A human being, on the other hand, will start reasoning from one example, correct his reasoning on getting a second example, and with no switchover from one mathematical approach to another, continue formulating new rules from however many examples as are available. 4) Existing fuzzy logic does not explicitly encode degrees of continuity and chaos. Human beings assess certain environments as more chaotic than others. In chaotic environments, a small change in the input could lead equally well to a large change in the output or to a small change. In environments where continuity prevails, a small change in the input leads to a change in the output roughly proportional to the change in input, but the proportionality constant is only vaguely known, or only a vague upper limit on its absolute magnitude is known. For example, suppose that the temperature in a certain city is about 20°C and a person wishes to know what the temperature is in another city that is 300 km away. In general, temperature is a continuous function of latitude and longitude, however, if there are mountain ranges, elevation differences, or large bodies of water, discontinuity is possible. If the person thinks that this particular terrain is flat and without bodies of water, he/she would make the assumption of continuity; and the envelope of possible temperatureswill be a fuzzy number centered around 20°C. Experience says that temperatures change at most one or two degrees for every hundred kilometers, therefore, a person would know approximatelyhow far the envelope of possible temperatures would spread outside the original number "about 20 C". If the two cities are at different elevations, then the estimate envelope for the second city may no longer symmetrical around the fuzzy number "about 20C". Five degrees is just as possible as fifteen degrees, which should be represented by the fuzzy logic system. 5) In existing fuzzy measure theory, the concepts of belief and plausibility have been applied only to assertions. Expert opinion and evidence currently consist of assertions, not rules. Assertions are statements of fact such as "This car is red". People however apply these belief and plausibility concepts to new rules entailed from established rules. For example, if the rule "red cars are liked" is true, and there is no other information, then "blue cars are liked" is 100% plausible, since there is no evidence, in the form of a rule about blue cars, that would contradict the entailed proposition "blue cars are liked". However, neither is there evidence to support the entailed proposition "blue cars are liked", hence that proposition is believable to degree zero. Any conclusions drawn from entailed rules should inherit these degrees of belief and plausibility derived from the entailment before they can be used for decision making. 6) Many systems to which fuzzy expert systems are applied have some fractal geometry. Existing fuzzy logic expert systems do not explicitly incorporate the ability to adequately simulate such systems. SUMMARY OF THE INVENTION There is therefore a need for a fuzzy logic system that mitigates at least some of the disadvantages of existing systems while achieving some of the advantages as described above. This invention seeks to provide a solution to the problem in fuzzy logic systems wherein user rule input does not match a rule exactly. Accordingly this invention provides for bridging the gap between non-matching rules and rule inputs by creating envelopes of possibility for an output, the output having different shapes and rates of spreading and wherein the rate of spread is a function of distance between the user input and the rule input. The desired shape of the envelope of possibility is a system parameter determined at set up by an expert, while the similarity between the user input and the rule input may be measured by existing measures or by a novel measure. The rate of spread of the envelope as a function of the dissimilarity between the input and the rule input is determined by the expert. It may also depend on the location of the input in input space or other parameters of the input and the rule input. For multidimensional inputs, that is inputs where more than one attribute is defined for each input, the different dimensions may be weighted differently when calculating the distance between the multidimensional input and the multidimensional rule input, to reflect greater sensitivity of the outpu-. to some of the dimensions of the input. A weight function also makes it possible for one input dimension to "compensate" for another in the generally accepted sense of the word This invention further provides a method to eliminate the requirement for a complete set of overlapping rules. Instead, it is possible to calculate degrees of similarity between disjoint fuzzy sets using a distance function in order to interpolate or extrapolate from sparse examples or rules. Fuzzy limits can be set on the vaguely known possible rate of change of the output and it is possible to reconcile contradictory inputs, and choose the appropriate pattern to interpolate or extrapolate from. This invention further seeks to make it possible for fuzzy logic to smoothly bridge the gap between examples and rules. By providing means to calculate degrees of similarity (or distance) between two fuzzy sets, between two point data examples, between a fuzzy number and a point data example, or between two fuzzy numbers, it is possible to bridge the gap between examples and rules. Existing measures of set intersection or similarity may also be used but for existing measures, interpolation/extrapolation cannot be done if the input does not intersect a rule input. This invention also seeks to make it possible to encode the degree to which chaos or continuity occurs. A new family of fuzzy implications, of which the Zadeh implication is a special case, makes it possible. The degree of chaos or continuity may depend on the location of the input in input space. An output can be continuous in one of the input dimensions but chaotic in another if the inputs are multidimensional. This invention seeks to provide a solution for the problem where the concepts of belief and plausibility are only applied to assertions, not to propositions. Using the kernel of the new fuzzy implication operator, one can arrive at a degree of plausibility an entailed proposition and an envelope of possible conclusions for a given input. Using set intersection or other distance measures, the strength of the chain of evidence and reasoning linking the data to the conclusion can be calculated and thus obtain an envelope of belief. The difference between the envelopes of belief and possibility measures all the vagueness, uncertainty gaps, contradiction, and probabilistic nature of the rules and the input data as well as the mismatch between the inputs and the rule inputs. The degree to which an assertion is proven and the degree to which it is merely possible can be quantified. This invention seeks to provide a method for making use of the fractional dimension or other parameters of fractal systems that current fuzzy systems do not make use of to calculate an envelope of possibility for fractal systems. Using the new fuzzy implication operator with the appropriate kernel and the appropriate new distance measure, the envelope of possibility can be found for a system characterized by a vaguely specified fractal dimension. In accordance with this invention there is provided in an expert system a method for determining an outcome from a set of inputs, the method comprising the steps of determining: a set of parameters by an expert establishing at least one rule using at least two of set of parameters as input and output; according values to each of a selected ones of sets of parameters; computing an envelope of possibility by operating on inputs and selected ones of said sets of parameters (a spreading function or kernel for the implication operator, curve fitting procedure for interpolation/extrapolation, distance functions, weights and weight function); computing a belief envelope; comparing possibility and belief envelopes with predetermined criteria to determine the envelope of possibility is sufficiently narrow; if the system is being used for assessing evidence supporting an assertion, compare possibility and belief envelopes to assertion in question; output based on envelope of possibility must be selected if the system is being used for assessing evidence, either advise user to collect more input data to confirm/disconfirm assertion to the required degree or select output. BRIEF DESCRIPTION OF THE DRAWINGS An embodiment of the present invention will now be described, by way of example only, with reference to the following figure, in which: Figure 1 shows a flowchart that generally describes the overall system flow. Figure 2 shows the algorithm for operation of the system Figure 3 shows the interpolation between the rules and A' in order to obtain B' α Figure 4 shows the expert inputs into the system Figure 5 shows the user inputs into the system Figure 6 shows the distance functions that the expert selects from Figure 7 shows the parameters required that define M P Figure 8 shows the effect of the anti-toppling sub-routine Figure 9a shows a course-grained example of the operation of the system as applied to auditing Figure 9b shows a fine-grained example of the operation of the system as applied to auditing Figure 10 describes crossover Figure 11 shows parameters of the expert defined rules Figure 12 explains left and right covers (for the distance function) Figure 13 shows the generation of distance functions for the complements of convex fuzzy sets Figure 14 shows how B P * is formed from N L (B)* and N R (B)* Figure 15 shows the expert input pre-processing Figure 16 shows how to correct for with local extremum when calculating B' α . Figure 17 shows the user input pre-processing Figure 18 shows how output of the previous block becomes input for the next block Figure 19 shows how the envelopes of possibility and belief are compared to the assertion to be proven. Figure 20 shows existing fuzzy logical operators Figure 21 shows a rule with several outputs Figure 22 shows the possibility distribution that occurs when examples are generalized into rules Figure 23 shows envelopes of possibility Figure 24 shows an example of M P Figure 25 shows alternate cover definition Figure 26 shows standard cover definitions Figure 27 shows the B R '(y, y c ,α) that is used for the standard cover Figure 28 shows how the intercepts (d 0x and d lx ) of M P are defined Figure 29 shows the behavior of M P near dx=0 and dy=0 Figure 30 shows how the function M P near (0,0) is used to encode the rate spread B*(y) around the original output B(y) Figure 31 shows how the intercept d 0x of M P on the d^ axis determines at what value of ά^ the infinite flat tails first appear Figure 32 depicts Theorem 2 Figure 33 shows the form of B'(y, y c , M) for alternate cover definition Figure 34 shows B P *(y) for fractal dependence Figure 35 shows the situation where the expert wishes to represent a linear trend t for a rule Figure 36 shows multidimensional inputs A k Figure 37 shows an ellipsoidal choice for o^ where a concordant set of inputs leads to a narrow envelope of possibility Figure 38 shows how disjunctive rules are broken up Figure 39 shows how rules are organized into blocks Figure 40 shows the interpolation to get [y' Lα , y' Rα ] and W' α Figure 41 shows the definition of A cυ Figure 42 shows the construction of the core and shoulders for B e * for p (1) = p (2) = .5 Figure 43 shows how B e * may be corrected Figure 44 is a further embodiment using effective distance measures. Figure 45 shows the concept of continuous interpolation of implicit rules. Figures 46 to 85 show an example application of the fuzzy logic decision making process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Referring to figure 1 , an overview of a generalized system according to the present invention is shown by numeral 11. The system 11 comprises a predetermined set of parameters 12 defined by an expert (not shown) for the system. Generally the set of parameters are termed expert inputs. The expert inputs 12 are shown in more detail in figure 4. The figure shows the parameters that the expert decides upon and inputs at the time that the system is set up. The expert must set up the set of rules with truth values 56, possibly with associated probabilities as well, a set of examples with associated example factors 402, a set of alpha-cuts 401, the function M P 57 or equivalently a function for making each alpha-cut spread, the distance functions 55, an interpolation method for curve fitting 58 if the expert decides to interpolate rather than use the alternate method, and weights and weighting functions 59, and thresholds for the decisions 403. Direct constraints on the output may be included. These parameters are stored in the system. The parameters are unique to the application and the expert is only an expert in the field for which the application is to be used for. The parameters are necessary inputs for the algorithm and are based on the experience of the expert. The expert must define a set of rules 56 for the application, of which there is a minimum of one. The parameters of the rules themselves are shown in figure 11. They include: a definition of X k and Y, the universes of discourse for the input (input dimensions are indexed by k) and output 112, the probability of each rule output option 113 , the truth value of each rule 114, and a definition of a factor K to be used when examples are generalized into rules 115. It is not necessary for there to be an exact match between the rule outputs of one block of rules and the rule inputs of the next block. For example, it is acceptable to have "red apples are ripe" and "half-ripe apples are cheap" as rules. Figure 21 depicts the situation that occurs if probability is associated with the rule output B, in which case it has at least two rule outputs, denoted by the superscript (σ). Each output option σ is associated with a probability p(B (σ) |A), which may be vague. For example, "cats are usually affectionate" has one rule output "affectionate", with associated fuzzy probability "usually" translated as a fuzzy number centered around 0.2; and a second rule output "not affectionate" with associated fuzzy probability "rarely" translated as unity minus the fuzzy number "about 0.8". There can also be more than two output options, each with an associated probability, for example, "hot weather is sometimes dry, sometimes rainy, and humid the rest of the time". Truth-qualified propositions include phrases to indicate that the proposition is not exactly expressing the true relationship between antecedent and consequent, for example, "That small animals make good pets" is only sort of true. A truth value 0<T(A-»B)<1 is assigned to each rule, which increases the spreading of the output when T(A-»B)<1. If T(A- B)<1, even when the input matches the rule input exactly, the envelope of possibility will spread outside the rule output, and the belief in the conclusion will not be 100%. The example factor, K, is used the same way as T(A- B) to increase blurring or spreading of the envelope of possibility when an example rather than a rule is being processed. Rules are distinguished from examples by their power of exclusion. If an example of B is observed at the same time as an example of A, then if A recurs exactly, it is possible that B will recur too. But it is also possible that something else will occur, most probably something similar to B. On the other hand, if A— »B is a rule of truth value 100%, then if A occurs anything other than B is excluded. As people transform examples of experience into rules by accumulating confidence that nothing other than B will ever follow from A, a fuzzy transition in their judgment of the relationship between A and B occurs. Thus, there is no sharp line of demarcation between rules and examples. A rule is represented by κ=l, an example by 0<κ<l. If κ=l, then there is no generalization beyond B; the only allowed output when A -A is B or its subsets, which is shown in figure 22. On the other hand, if κ<l, then a halo of outputs B' close to B are permitted even when A-A. Knowing vaguely to what degree an output varies as a function of the inputs is generally sufficient for people to generate a rule from a single example. Given the observation (A, B) they will postulate a rule A— > * where B* is a blurred, spread out transform of B. For example, if a tourist in a strange city buys an apple for 50 cents in the local currency and has no other experience with apples in that country, he will form a tentative rule "apples cost about 50 cents". Here he uses previous knowledge from other countries about the variability of apple prices to quantify "about". These two concepts may be expressed mathematically by modifying the technique that creates a spread out envelope of possibility from the rule output, namely replacing d,(A, A') by 1- α-d A, A')) or 1- T(A→B)(l-d,(A, A')): d x (A, A\ κ) = l-κ (l-d x (A, A')) UA, A\ T(A→B) = 1- T(A→B)(l-d x (A, A')), where L^A, A') represents the mismatch between the rule input A and the input A'. The distance functions d, will be described later. Time evolution may be built into the system by putting a timestamp on each example or rule and reducing T(A— B) or K as time passes. With this method, knowledge in the form of examples and well-established rules may be stored on the same footing in the rule base. The values of K may be assigned automatically by the system or manually by the expert to a certain class of inputs for example, fruit, even before any examples or rules for that class of inputs are available to place in the system. Alternately, if precise rather than fuzzy measurements are available, as in the apple price example, values of K could be assigned automatically to new data (A, B), using the cardinality of A and B relative to some stored constants, as a criterion for distinguishing examples from rules. A rule input A of very low cardinality is then assumed to arise from a single example; rule inputs of larger cardinality are assumed to represent samples large enough to define rules. The expert must also select the distance functions 55 to be used, which are shown in more detail in figure 6. The different methods of measuring the distance are determined based on the experience of the expert. An explanation of the different distance functions identified by numeral 62 and their applicability is described below. To understand how the expert chooses distance functions, it is necessary to understand how the possibility distribution is calculated from the kernel M . The function Mp is described in more detail later on. Referring to figure 23, the basic definition for the envelope of possibility of outputs B p *(y) may be defined most generally by an arbitrary t-norm t: B p *(y) =V B, t[B'(y), M p (A'→B' |A→B)] Here M (A'→B' |A→B) is the plausibility of the entailed proposition A'-»B', given A- B. The preferred t-norm is the Zadeh t-norm, t(xl,x2)= min(xl,x2). The symbol V stands for "max" unless stated otherwise. B' is any convex member of the power set of Y. For the algorithm M j s specified as M (d^A, A'), cL/B, B')), or for notational convenience in the following discussion, as M (α , d y ). The minimal requirements for M P are: l) M p (l, < H 2) M p (0, d y )=l if d y =0 =0 otherwise 3) M p (d x , l)=l 4) M ((! < , d y ) is a nondecreasing function of d y 5) M (c , d y ) is a nonincreasing function of d x M (d x , d y ) does not have a limit at (d,, d y )=0. This is an essential feature, not an oversight. Figure 24 shows an example of M P There is no unique way of specifying the distance between sets to get the envelope of possibility. The expert must decide according to context. Different distance measures may be used for M p and belief, with M p having the less restrictive one. The superscripts (B) and (P) will distinguish between them. There is no inconsistency in using different distance measures, so long as d (B) > d (P) . Different distance measures may be used for each dimension of multidimensional inputs. Different measures may be used for input and output. The classical measure of distance for implication operators is set intersection d t (A, A') = 1- |A'nA|/|A'| This is preferred for calculating belief, as opposed to plausibility, since belief increases when the fraction of the input lying within experience (the rule input) increases. . Moreover, unlike other distance measures to be discussed, it is zero when there is no intersection between the rule input and the input. With this choice of d (B) belief will be zero when the output is the result of extrapolation or interpolation outside experience, indicating a break in the direct chain linking the input data through the rules to the conclusion. On the other hand, if the expert decides that extrapolation or interpolation outside experience is worthy of belief to some degree, then another d (B) should be selected. A fractional set intersection is defined as: d If (A, A 1 ) = [1- |A'nA|/|A'| ] / (1 - |A|/|X|) It is arrived at by renormalizing d, (A, A') so that d, (A, X) = 1. Set intersection measures what fraction of the intersection of A and A' is contained in A, rather than the extension of A' outside A, which is desired for estimating the envelope of possibility. The more of A' that lies outside A, and the further away it lies, the more B P *(y) will spread outside B(y). Set intersection fails as a distance measure when A is a point set located at x, denoted by x*, although it has no problems when A' is a point set. In addition, there are computational difficulties associated with solving explicitly for the envelope B P *. Define c(A, A'), the central cover of A and A', as the smallest fuzzy set on X such that both A and A' are entirely contained in it and no alpha-cut consists of more than one segment. Referring to figure 26, right, left and central standard covers will now be described. Unless otherwise stated, covers are assumed to be standard. Referring to figure 25, it is also useful sometimes to define the cover as the smallest convex set such that both A and A' are completely contained in it. This is known as the alternate cover, and it must be used to determine d y to represent fractal systems. If it is not used for d y , then the support of B P *(y) will always be infinite if d x >0 regardless of the choice of M P . A finite support for B p *(y) therefore requires a certain choice for M P together with the alternate definition for the cover in calculating d y . To denote this distinction, subscript c will be replaced by subscript c'. This alternate definition is computationally less convenient but is required for representing fractal behavior. Define A' R (A, A') as the part of A' located to the right of the normal part of A, and A' L (A, A') as the part of A' located to the left of the normal part of A. Define the right and left covers as c R (A, A') = c(A, A' R (A, A') ) c L (A, A') = c(A, AV(A, A') ) Define the absolute cover-distance as d cda (A, A 1 ) = max( |c R (A, A')| - |A|, |c L (A, A')| - |A|) Figure 12 depicts the reason for the introduction of right and left covers. Suppose the relationship between y and x is unknown, but is subject to a fuzzy constraint that limits the maximum possible value of the absolute value of dy/dx near the region in the (x,y) plane corresponding to the rule A-»B. The curved lines in 122, 123, and 124 show some of the functions that satisfy these constraints. It follows that the points in the fuzzy set A' cannot be mapped onto points outside the fuzzy envelope B P *. It also follows that the fuzzy set A' R must be mapped onto the same fuzzy envelope B P * as A' itself if A' is symmetric about A. Since B P * spreads outside B by an amount dependent on α , d x must be defined so that d x (A,A') = d x (A,A' R ) = d x (A,A' L ) whenever |c R (A, A')| - |A| = |c L (A, A')| - |A| This requirement is met by making α^ a function of max(|c R (A, A% c L (A, A')|) It is not met if d,, is simply a function of c(A,A'), hence the need for right and left covers. This d cda (A, A') is an absolute measure. It has the advantage of computational simplicity and is meaningful whether or not A and A' are point sets. Linear and relative normalized distance measures will now be discussed. A set of normalized distances will now be defined in terms of covers. Define the relative cover-distance as d CR (A, A') = max(l - |A|/|c R (A, A')|, 1 - |A|/|c L (A, A')|) Define the alternate relative cover-distance, to be used for fractal systems, as d CRa (A, A') = max(l - |A|/]c R (A, A')|, 1 - |A|/|c L (A, A')|) where the alternative definition of covers (Figure 25) is used for d y , unlike all other cover- distance definitions. Define the linear cover-distance as cover-distance normalized by the cardinality of the universe: d cL (A, A') = d cda (A, A')/|X| Define the fractional linear cover-distance as cover-distance normalized by the cardinality of the complement of A: d cLf (A, A , ) = d C(b (A, A , )/(|X| - |A|) If it is necessary to make sharp distinctions between sets comprising almost all elements of X, then d cLf rather than d cL should be used. For example, if |A|=.95|X| and | A'| = .99|X|, then d cLf will indicate a large distance between A and A', whereas d cdL will indicate they are very close. Define the fractional relative cover-distance as cover-distance normalized by the cardinality of the complement of A: d cRf (A, A') = d cR (A, A') |X|/(|X| - |A|) Measures normalized by |X|-|A| should be used when the expert wants total ignorance about the input (i.e. A-X) to translate total ignorance of the output (i.e. B P *=Y with belief=0). These cover-distances measure the fraction of A' containing new elements of X outside A, elements which are mapped to an unknown region in Y. Although they appear to give a proposition an unlimited zone of influence, in reality, M P can be defined so that once A' is sufficiently distant from A, M P =1 for all B', hence the zone of influence can be made finite. Distance measures can be combined in order to create a smooth bridge between point data (typical of examples) and fuzzy data. The relative distance measure cannot cope with the situation where A is a point set, that is, where A is a set with only one single value. It sets d CR (A, A')=0, regardless of A', if A is a point set. To deal with this problem, a hybrid distance measure is introduced: d hyb (A, A') =(1- λ) d cdL (A, A 1 ) + λd CR (A, A'), where λ = |A|/|X| This makes it possible to reason continuously from point data to logarithmically scaled fuzzy sets. If examples or rules with very narrow fuzzy sets are to be accorded the same zone of influence while relative cover-distance is used, then hybrid distance measure should be used. The complements of convex fuzzy sets, described below, require slightly modified distance functions. Rule inputs and outputs are often expressed in terms of the complements of fuzzy sets, for example, "if latitude θ is not near the equator, then temperature T is not very hot". Hence, it is necessary to define d(N(A), A'), where N(A) is the complement of a fuzzy convex set A. Since N(A) is not necessarily convex, the previous definition of cover-distance cannot be used because it dictates that d=0 for all A'. Referring to figure 13, 132 shows a graph where the curved dotted lines show the relationship between latitude and temperature that are consistent with "if θ is not near the equator then T is not very hot" and a fuzzy constraint on dT/dθ. It is clear from graph 133 that the width of the fuzzy envelope of possible temperatures depends on the smaller of the two distances, d x (N R (A), A') and d x (N L (A), A'). The following distance definition will therefore generally suffice for rule inputs which are complements: d(N(A), A') = t( d(N R (A), A 1 ), d(N L (A), A')) where d is any of the distance measures discussed above. For rule output that is a complement of a convex set, two values are required: d(N(B), B') = ( d c (N R (B), B'), d c (N L (B), B')) Referring to figure 14, diagram 142, consider "if T is very cold then θ must be very far from the equator". Here N L (B) and N R (B) are the two polar caps, and A is "very cold" There are two envelopes of possibility, one spreading around N L (B) and one spreading around N R (B). The reason for keeping two separate values is that the final B P *(y) is formed by a union of the two fuzzy envelopes, N R (B)* and N L (B)*, resulting in a non-convex B P * , which is shown by 143. Hence the basic definition of B P *(y) is modified: B P *(y) = {v B, t[B'(y), s(M p (A'→B' |A→N R (B))]} {v B, t[B'(y), s(M p (A'→B' |A→N L (B))]} = v B, t[B'(y), s[M (A'→B' |A→N R (B)), M p (A'→B' |A→N L (B)]] Each of the two M P require their own distance function, d c (N R (B), B') and d c (N L (B), B'). Here s(xl,x2) is a fuzzy t-conorm. For computation, this result merely signifies that N R (B)* and N L (B)* need to be calculated separately and combined with some fuzzy t-conorm, preferably the Zadeh conorm since it can be done without reconstituting a set from its alpha- cuts. Another parameter that the expert must define is the kernel M P , or equivalently the way in which the envelope of possibility for a given alpha-cut spreads as a function of the distance between the input and the rule input. Once a functional form 76 for M P is chosen then M P is fully defined by S 0 72, S, 73, d,. 0 74, d ] 75 which are the set of parameters depicted in figure 7. The general requirements for M P were discussed earlier as part of the discussion of distance functions. The expert must understand the relationship between the shape of the envelope of possibility and the definition of M P . The following theorem shows how to construct B* P (y) for a given M P . Theorem 1 If the t-norm used in the basic definition of B P *(y) is the Zadeh t-norm, and M P is a continuous function of d y except at d^ = 0, and d y is a cover-distance measure, and the B R '(y, y c ,α) are as defined in figure 27, then the right boundary y Rα of the alpha-cut of the envelope B P *(y) are defined by the largest solution of α=M P (d x , cL/B, B' R (y, y Rα ,α)). The left boundary y Lα is defined analogously using a B' L (y, y c ,α) that extends to the left of B rather than to the right. The figure 27 shows the B R '(y, y c , ) that is used for the standard cover. If the alternate cover is desired, then B R '(y, y c ,α) shown in figure 33 would be used instead. The theorem permits the expert to see how the envelope spreads for a given M P and d . It also permits the expert to select the desired spreading pattern, for example a bell curve with a standard deviation dependent on α , and construct the corresponding M P from it to verify that M P is chaotic or continuous. Referring to figure 28, the functions M P (d x ,d y ) may be characterized by the shapes of the contour lines defined by M(d x ,d y ) = constant and by their intercepts on the d, axis. For those M P for which the contour lines approach the point (0,0) with non-zero first derivatives, these families of curves may be defined by d y = M P " '(S, d x ) where S is the slope of the contour line in the limit as d x -» 0. Since M P can also be inverted to yield d y = d y (M, d x ), it follows that M P is completely characterized when a function f m (S) is defined that assigns a value of M to a contour line characterized by a slope S at the origin. Referring to figure 29, S 0 and S, define the fuzzy limit on the absolute value of the rate of change of d y with respect to α^ in the limit as d x →O. d y /cL ^ <S, is 100% possible, and d y /d x >S 0 is 0% possible. S α determines the rate at which the alpha-cut α = f m (S) of B(y) spreads for d x near zero. Referring to figure 30, it can be seen that the function M P near (0,0) is used to encode the rate of spread of B P *(y) around the original output B(y) as the input A' moves an infinitesimal distance from the rule input A. The intercept d 0x of M P on the ά^ axis determines at what value of α^ the infinite flat tails first appear, as is shown by diagrams 312 and 313 in figure 31. The intercept d lx of M P on the α . axis determines at what value of α the height of the tails becomes unity. Whether M P is chaotic or not is not determined solely by the existence of tails on B P *(y). An explanation as to how M P encodes chaotic systems will be shown as a specific example of M P . If the system is being used to encode policy, then certain characteristics of M P are related to the degree of rigidity or latitude desired for the inteφretation of the policy. If Id x d y M P (d x ,d y ) «1, then almost all actions except the ones spelled out explicitly in the policy or arrived at by inteφolating the policy are forbidden, even when the policy does not cover the situation very well. If this integral is close to unity, then people inteφreting the policy are left pretty much to their own judgement when they are in a situation not exactly covered by the policy. Generally, M P can be made to be dependent on other parameters. This would require additional derivation. If desired, a suitable choice of M P can reproduce some of the currently used implication operators as special cases, for example, the Zadeh implication: B P *(y) = min(l, l+d x + B(y)) M P also encodes the desired amount of chaos or continuity. If A-»B entails A'-»B', it follows that A'—»B' entails further hypotheses A"-»B" even more remote from A-»B, and that these A"→B" entail further hypotheses A'"— B'", ad infinitum. It also follows that there are infinitely many paths from A-»B to A'-»B' through a chain of intermediate hypotheses. Chains of any length n are possible. The strength of the connection between A-»B and A'→B' can be written recursively in terms of the strengths of each intermediate link in the chain: M p (A'→B' |A→B) (n) = min A . max B , t[ M p (A"→B" lA→B)^, M p (A'→B' |A"→B") (0) ] where the t-norm is taken to be the Zadeh t-norm in the discussion of recursion, and M P (A'-»B'| A"→B") (0) is the zeroth order function, referred to earlier as M P . In a chaotic system, it may be possible for A'- B' to be entailed from A— B by one big jump, a "leap of logic", even if it can't be entailed through a chain of intermediate hypotheses, each differing from its predecessor by a small step. The appropriate entailment function for a chaotic system is defined an M (0) P such that M (0) p (d(A, A'), d(B, B')) > M (n) p (d(A, A'), d(B, B'))- This inequality leads to the following conditions on M P for it to be chaotic or continuous or somewhere in between: Theorem 2 Referring to figure 32, define M L as a transformation of M P such that M L (D ,D y ) = M P (d x ,d y ) where D=ln(l-d). If relative cover-distance is used as distance measure, and if M L is nowhere concave (case (f)) then M L (0) = M L (n) = M L (∞) . If M L is linear everywhere (case (a)) or concave everywhere (case (b)), then M L (n) (D x , D y )< M L (0) (D x /n, D y /n), with equality occurring if linear everywhere. (Note that if M P is linear, then M L (D x /n, D y /n)= M L (D x , D y ).) If M L is convex in a finite region of the D x -D y plane enclosing (0,0) and concave elsewhere (case (c)), then either (1) M L (0) = M L (n) = M L (∞) , if (D x ,D y ) lies within the convex region, or (2) if (D x ,D y ) lies outside the convex region, M L (n) is a decreasing function of n for n< some finite value N; for n>N, M L (n) is a constant, which is less than M L (0) '; the further (D x , D y ) is from this convex region, the larger N will be. If M L is concave in a finite region of the D x -D y plane enclosing (0,0) and convex or linear elsewhere (case (d)), then either (1) M L <0) = M L (n) for for n< some finite value N; for n>N, M L (n) decreases as a function of n, if (D x ,D y ) is outside the concave region (2) M L (n) is a decreasing function of n for all n, if (D x ,D y ) is inside the concave region. If M L is convex or linear in an open region that has (0,0) on the boundary (case (e)), and concave in an open region that also has (0,0) on the boundary, then either M L (n) (D x , D y )_< M L (0) (D x /n, D n) or M L (0) = M L (n) , depending on the location of (D x ,D y ) in the convex or concave regions. Theorem 3 If linear cover-distance is used as a distance measure, results analogous to Theorem 2 hold about M^d,, d y ). These theorems guide the expert in selecting an M P that is chaotic in regions close or far from experience. If the expert starts with a given rate of spread, then the theorems can be used to determine whether the corresponding M P is chaotic or not. For example, if leaps of logic to remote possibilities are desired only when the input is remote from experience, then M P should be convex or linear near (0,0) and concave far from (0,0) (case (c)). Given B P *(y), it is possible to construct M P as follows. The following is an example of the construction of B P * from M P with M P chosen to reproduce the type of spreading that is characteristic of a pseudo-random Brownian motion, i.e. fractal behaviour. Given a linear M P , after transformation of coordinates Dx Dy, defined by: M^d y ^ f ln -d y VmO-dJ] and f m (S) = max[0, min[l, (S-S,)/(S 0 -S,)]]. the construction of B P *(y) is most easily illustrated for the case where B(y) is a crisp set defined by B(y)=l for 0<y<W. In this case the unknown is y c as a function of M rather than M as a function of (c d y ). Referring to figure 33, B'(y, y c , M) = 1 - M y/y c if y<y c and y>W = 1 if 0<y<W = 0 otherwise since the alternate definition of cover, shown in figure 25, must be used to reproduce logarithmic spreading. cLXB, B') = (y c -W)(M+l)/2 /[ (y c -W)(M+l)/2 +W ] However, cL B, B') = M " '(M, dj = 1 - (i-cLJ^ 30 - 81 ^ 1 therefore, d y (B, B') can be eliminated to get an implicit relation between y c and M: 1 - i.dje- MX S0 -^ 51 = (^.^( +i)^ /[ (y c -W)(M+l)/2 +W ] which may be solved for explicitly for y c as a function of M: y c /W = [ 2(l-d x ) M < so - S1 >- S0 + M - 1 ] / (M + 1) The ordered pairs (y c (M), M) may be regarded as a parametric representation of the right side of the envelope function (y, B*(y)). The interval [-y c (M)+W/2, y c (M)] can also be identified with the alpha-cut α =M of B*(y). Figure 34 shows B P *(y) and how it defines a fuzzy envelope within which the random walk wanders. Note that B P *(y) no longer simply dilates according to α^ as it does when M (d^, d y ) is linear. The outer boundary of B P *(y) (α^O) spreads much faster as c increases than does the inner core (α=l). The relationship is in fact logarithmic, as d x becomes very large: ln(y c0 /W)/ln(y cl /W) = S 1 /S 0 where y c0 is the smallest value of |y| such that B*(y)=0 and y cl is the largest value of |y| such that B P *(y)=l. Note that y cl /W = (1-d -SI These logarithmic scaling relationships are the basis for the claim regarding the suitability of relative cover-distance for describing fuzzy sets of fractional dimension. The relationship to fractals may be seen as follows by considering fractional Brownian motion (Fractals, Jens Feder, Plenum Press, 1998)as an example. A variable y(t') undergoing such a pseudorandom one-dimensional random walk has a variation of increments given by V(f) ~ (t'-t) 2H where H is the fractional dimension, 0<H<1, and V(f) = < [ y(t') - y(t)] 2 > If the time t'-t elapsed since the last position measurement is equated to c(A,A'), and V(t') i/2 is equated with R(B*), defined as the RMS deviation of the envelope B P *(y) of possible positions at time t', one should therefore find R(B*) ~ c(A,A') H Now R(B*) ~ (l-dj 50 if S, is not wildly very from S 0 . Since 1-d, is defined as A/c(A,A') ~ l/(t'-t), S 0 may be identified with the fractional dimension. If the expert system is used to calculate an envelope of possibility for systems whose behavior resembles a random walk with some long-term correlation with past events, as is characteristic of systems with 1>H>0, then relative cover-distance using the alternate cover definition (figure 25) is clearly the appropriate distance measure, and the linear M L is the right function. Concave M L is not appropriate here because for such Brownian systems, y(t') may wander far from y(t) but does so in a series of small steps, not in large leaps. Concave M L is suitable for systems where discontinuity is a possibility. So far only one rule has been discussed. Curve fitting is required when the system inteφolates/extrapolates between the user input and sparse rules in order to obtain the envelope of possibility. The expert must define the inteφolation method for curve fitting. The choice of curve- fitting procedure depends on the expert's judgment, any knowledge about the relation between input and output, and the degree of sparsity of the rules/examples. For example, a predictive method may be used for the extrapolated part of the curve, while a polynomial fit could be applied for inteφolation. Polynomial or linear regression is also possible, if it is not considered essential to reproduce the rule output exactly when the input matches the rule input exactly. Regression is in fact required if the equations are over- determined, as would occur with an inconsistent rule set. If it known that a certain relation holds approximately between output and input, for example "travel time is inversely proportional to speed", then this relation should be used for curve fitting rather than some arbitrary polynomial. If there is only one data point (rule or example), hence only one rule to be fitted, then the output is constant and equal to the rule output, unless a trend is defined by the expert. If there are insufficient points for fitting, or if the points are not independent, then the curve fit can still be fully specified by adding a requirement to maximize, using Lagrange multipliers, the y-component of the gradient of the surface to be fitted, subject to constraints, namely the sparse rules to be The following example is for two-dimensional input: Three points define a plane in R 3 . Suppose there are only two points v, and y 2 , for fitting where y, = (x„, x 12 , y,) The plane passing through these points must satisfy n • ( v, - v 2 ) = 0, where ή = (n„ n 2 , which is one equation with two unknowns, n, and n 2 . Maximization of jl - n 2 - n 2 subject to the constraint ή • ( v, - y 2 ) = 0 using Lagrange multipliers leads to a unique solution for n . If the expert wishes to represent a linear trend, then instead of maximizing n y , the quantity to maximize would be n -t_, where t defines the trend, shown by figure 35. The expert must also choose a minimum allowed width w α for each alpha-cut for the output. This minimum is applied to the result of inteφolation, not to B P *(y). It is possible for inteφolation to cause crossover or unrealistically narrow outputs. Referring to figure 10, graph 102 shows curve fitting from three rules, for a given alpha cut. Graph 103 depicts the crossover that occurs because y' L > y' R . The w α will be used to deal with this crossover at step 44. Graph 104 shown the curves after the crossover prevention is applied. For inteφolated probabilities, a set of minimum widths for each alpha-cut can also be chosen, or the minimum widths can simply be set to zero. The expert must also decide whether inteφolation or an alternate method should be selected for a set of rules/examples. Inteφolation may be inappropriate when the set of rules actually consists of examples that are scattered and not sparse. If the alternate to inteφolation is chosen, then an envelope of possibility is calculated surrounding each rule output, and the aggregate output envelope is the fuzzy average of these envelopes, with the weight for the example j being l-d x (A j , A', K j ). "Fuzzy average" means that the envelopes are treated as fuzzy numbers on which arithmetic operations are performed. If the alternate method is selected for a particular rule block, and this rule block deals with scattered and/or non-sparse examples, then the same distance function should be used for d (B) and d <P) with cover- distance preferred The expert must choose a set of alpha-cuts 401, since almost all the algorithm's calculations are performed on the alpha-cuts of the inputs and the rules, and B P * is also calculated as alpha-cuts. There must be at least two alpha-cuts (top and bottom), more if greater accuracy is desired. Referring to figure 36, weights and weighting function 59 must also be specified when there are multidimensional inputs. A multidimensional conjunctive rule input A, is defined by A j =π A kJ , where the dimensions of the input are indexed by k and the rule input by j. Weighting is explained as follows. Even when people have only very vague ideas about the functional dependence of an output on several inputs, they can usually say with confidence that some of the inputs are more relevant than others, meaning that the output changes more rapidly as a function of those inputs. For example, without knowing how many dollars an upstairs bathroom adds to the price of a house, one can still say it is less relevant than the house location. These ideas are expressed mathematically by metrics such as this example using an Euclidean metric: α (A j , A')= [ Σ W k d xk < ] 1/< V [ Σ W k ] 1/< ', l <q <∞, 0<W k <l where d xk =d x (A Jk , A' is the distance between the k'th dimension of the rule input j and the k'th dimension of the input. Different distance functions may be assigned to different dimensions. The W k are selected by the expert to reflect the relative sensitivity of the each dimension of the rule input. If W k is small, it means that A k ' is uninfluential or irrelevant. If input k is not very relevant, then not knowing input k exactly should do little to widen the envelope of possibility of the output, q and the W k together with S 0 and S, determine the fuzzy constraint on the maximum allowed rate of change of the output with respect to the input k. There are obvious generalizations of the metric, for example, a rotation of coordinates: d x = [ Σ W km V] 1 ' q , l <q <∞ where the matrix W^, is real and symmetric with positive eigenvalues, and appropriately normalized. The surface in input space corresponding to a constant degree of spread in the possibility envelope is then a rotated ellipsoid centered about the rule input. A very narrow ellipsoid aligned with the diagonal of a hypercube should be used when the inputs represent the same measurement from different sources (e.g. triplicate sensors, opinions on the same issue by several experts), and these inputs are being assessed for concordance, and the output is supposed to be the aggregate of these different sources. If this ellipsoid is chosen, then a concordant set of inputs will lead to a narrow envelope of possibility; if the inputs disagree, there will be a wide envelope of possibility spreading around the average. This is shown in figure 37. To represent certain information, the substitution of max[0, (d xk - W k )/(l-W k ) ] for d^ may be necessary. This equation should be used for a rule of the type "If input k is true or nearly true, and the other inputs are true, then B is true". For example, one may say "A good quarterback must run fast and throw well, but throwing well isn't as critical as running fast, as long as he can run fast, it suffices if his throwing ability is above a certain threshold." This relationship is in accord with the generally accepted idea of "compensation" in the fuzzy literature. It should be clear that an expert can modify the distance function as required to represent information about sensitivity to various dimensions of the input. Multidimensional rules may be expressed in terms of disjunctive inputs, e.g. A, or A 2 implies B. In that case a different function must be used to aggregate the d k . With the help of another distance-aggregating function, distance from a rule with disjunctive input can be formulated. For example, distance from a rule input such as (A, or A 2 ) would be represented most simply as: d^A, or A 2 ) , A')= cL, cL, = ( fA,, A',) d Λ (A 2 , A' 2 ) or some other t-norm. The Zadeh t-norm is unsatisfactory here because of its insensitivity to the larger of the inputs. Variations on this formula can be used to the express subtle caveats characteristic of human reasoning. For example, if one wished to make the output more sensitive to input 2 than to input 1, one can write: d, = d xl min(l, d x2 /(l-W 2 )) Another relationship in which input 2 is more important than input 1 is expressed by: d x = d x2 max[0, (d l - W 2 )/(l-W 1 )] This equation expresses the relationship "If input 2 is true or nearly true, or input 1 is true, then B is true". It should be clear that an expert can modify the distance function as required to represent information about sensitivity to various dimensions of the input. The expert must select a t-norm t (B) for aggregating belief and another t-norm t <P) for calculating an aggregate distance between the input and the rule inputs, this distance to be used for calculating spreading. The Zadeh t-norm is not recommended. t (B) must be at least as conservative as t (P) , meaning that t (B) < t (P) . If the system is to be used for process control where the controller output is a real variable, the expert must specify a defuzzification method for going from B P *(y) to a crisp output. The expert must set thresholds for ignorance, doubt, belief, degree of proof of an assertion G and degree of possibility of that assertion, for telling the user when to stop collecting data. The expert decides what this assertion G is. There may be more than one such assertion, for example guilt or innocence. If the system is used for process control, then these thresholds are not required unless it is a system that can choose whether or not to collect information, such as an autonomous robot. The thresholds are denoted I min , Bel min , H min (G), K^G). The definitions of I, Bel, H and K will be discussed in the section on output postprocessing. The expert must not set limits that are inconsistent with the rules. If some of the rules have low truth values, or some of the rules are in the form of examples, or if there are probabilities involved in the rules, then the envelope of possibility will spread out even if the inputs match the rule inputs exactly; making it impossible to satisfy the criteria. Pre-processing of the expert input is performed in 13. Referring to figure 15, this is where linguistic inputs are translated to fuzzy sets 151. Additional preprocessing is done to determine the parameters for curve fitting for each alpha-cut 152. The curve-fitting procedure described below is executed for each alpha-cut of each probability option σ of the rule set. In 154, the rules are organized hierarchically. A group of rules leading to an output will be called a "block", shown in figure 39, and the block index will be β. Denote the unmodified set of rules of block β by S β . The curve-fitting procedure is repeated for each block that was selected as an inteφolation block. The same set of alpha-cuts is used for all blocks. The range of the output is renormalized in 155 so that no negative values occur. The renormalized values are for internal calculations only, not for display. This step is intended to prevent problems with fuzzy arithmetic when expected values are calculated using fuzzy probabilities. In 156, the maximum number of options for any rule, N σ , is determined. Step 157 breaks up any rules with disjunctive rule inputs into equivalent rules with conjunctive (i.e. convex ) inputs, as shown in figure 38. Remove the disjunctive rules from the set of rules to be used for inteφolation and replace them by the equivalent rules with conjunctive inputs. In step 158, for each rule j, order the output options B j (σ) in increasing order so that B j (σ) < B j σ+1> . If fuzziness prevents makes ordering ambiguous, then it does not matter in what order the ambiguous items are placed. In step 159, for each rule j, add dummy output options until each rule has N σ output options. The dummy options are all identical to the last "real" output option. For example, if a rule j has only two options B j (1) and B j (2) , the dummy options B j (3) , B ; (4) , etc. would all equal B_, (2) . If a rule j has only one output option B j (1) , then the dummy options would all equal B j (1) . After this step there will be N σ output options B j (σ) for each rule. Associate a probability P(B J (σ) |A J ) = 0 to each dummy option. Dummy options and real options are treated on an equal footing in inteφolation. Denote this set of rules with the broken-up disjunctive rules and the dummy output options by S p (,nterp) 501 decomposes all probabilities P(B J (σ) |A | ), rule inputs A, and outputs B j <σ) into alpha-cuts. For rule input j, the vector of the right boundaries of the alpha-cuts is denoted by x jRα and the vector of left alpha-cuts is x jLα . Each component of the vector corresponds to a dimension of the rule input. The centre-of-mass of each rule input's alpha-cut is defined as x Jcα =.5(x jRc + X j α )- For each rule j and output option σ, the alpha-cut is denoted by [y j α (σ) , y jRα (σ) ]- For each probability, the alpha-cut is denoted by [P jLα (σ) , P jRα <σ) ]- In addition, define the half- widths of each output option alpha-cut W jα (σ) =.5(y jRα (σ) - y jLα (σ) ). In 502, if curve-fitting has been selected for this block, for each of the options σ and each alpha-cut, find coefficients to fit the following curves: y Lα (σ) Lα ), y Rα (σ) R« ), W^ , P Lα (σ) U Lα ), P Rα (σ) Rα ). Figure 40 shows fitted curves for y Lα , y Rα , and W α If there are insufficient rules for curve fitting, the procedure with Lagrange multipliers discussed earlier should be followed. The positions and values of local extrema of these curves are calculated and stored in step 503. The inteφolation coefficients are stored and are not updated unless the expert changes the rules. Figure 5 shows the inputs to the system that must be entered by the user, or are the result of measurement if process control. The user answers the questions that are set up by the expert and posed by the software, i.e. an input A' k for each dimension of the input. Shown by 53, the user inputs A' k with associated parameters: qualifiers (e.g. Somewhat, not at all, etc.), degree of independence of dimensions, credibility of information for that dimension, and probabilities. A' k may be a single fuzzy set with 100% probability or it may be several sets A' k (rk) indexed by the input option index r k , with associated fuzzy input probabilities P k (r) summing to unity. The input is required to be expressed as a conjunction if it is multidimensional, i.e. the user cannot enter "small or brown" to describe a cat, it must be "small and brown". The user may be imprecise about the input by using qualifiers. Phrases such as "very", "somewhat", or "about" applied to a fuzzy or crisp set modify the shape of the set, tending to spread or shaφen its boundaries and/or shift it up or down on the real axis. These modifiers can be applied to the input before they are processed by the algorithm. An input may be single or involve several options. If an input, dimension k, has several options, each options, indexed by superscript r k , will have a probability p <rk> associated with it. The definition of these options is by the user, not the expert. For example, the user may say "There is a 25% probability the cat hidden in the bag is small". In such cases, the fuzzy input to the rule "small cats are affectionate" would split into two inputs, "small cat" tagged with a fuzzy 25% probability; and "not-small cat" with a fuzzy 75% probability. The user is free to choose "small" and "not small" as input options for the size dimension. He could have chosen "very snail" and "medium small" instead, the system does not restrict choices. The degree of independence of components is a question that arises for multidimensional input. In practice one often finds that the inputs are not independent as is tacitly assumed here. For example, a rule may state "If the internal auditor says the company is well run, and the external auditor says the company is well run, then the company is well run." Opinions A,' and A 2 ' would be obtained from the two auditors, and then it may be discovered that the outside auditor had recently worked for the company. A measure 0<p<l for the degree of correlation of the two information sources is estimated by the user, and the aggregate of the first and second auditor's opinions would be represented by:L. 2 = (1-p) d^ [well-run, A,'] + p d xl [well-run, X] In the limit p=l, d^ behaves as if information were available from only one of the two auditors, as if the second had said "A 2 '=X, meaning T don't know' ", or that an opinion from him were unavailable. The user must also assign a degree of credibility 0<c k <l to the information source for input dimension k. If no credibility is assigned it is assumed to be unity. This credibility is used in the same way as K and T(A→B) to effectively increase the distance between the input and the rule input. The user inputs 14 are followed by a pre-processing step 15. The user pre-processing is shown in figure 17. Step 171 translates linguistic inputs to fuzzy sets if required. Step 172 initializes the belief for input A' as Bel(A') = t (B) (c, c k ) If A' is direct input from users or sensors rather than output from an earlier block. Step 173 analyzes the rule set S p for occurrences of the situation where the union of two or more A j is entirely contained in any of the A'. A u is the largest such union. A cu is defined as the cover of A^, and B cu as the cover of the corresponding rule outputs. p cu is defined as the cover of the associated fuzzy probabilities. Acu i defined in figure 41. In 174, this new entailed rule A^→ B cu with its probability is added to the rule set S β (d) replacing those rules from which A cu and B cu were constructed. This modified rule set S β (d) . Step 175 creates an indexing scheme, index r, for all the permutations of input options. Then the probabilities p (r) for each of the A' (r) are calculated. For example, if there are two dimensions for the input, and the first dimension has three options, and the second has two options, then there will be six input options altogether. The six input option probabilities are calculated in the obvious way from the probabilities of the individual input options. Step 176 calculates the alpha cuts for the user input options and the input option probabilities. The alpha cuts [x' αL (rk) x' αRk (rk) ] correspond to A' k (rk) . The alpha-cuts for A' (r) are denoted by [x' αL <r) x' αR <r) ] The centres-of-mass for the user input options are x' αc (r) . The alpha- cuts for the input option probabilities are [p' αLk (r) p' αRk (r) ]- The centres-of-mass for the input probability options are p' αck (r) Step 17 in figure 1 is where the calculations take place. The calculation within each block β comprises several steps. Figure 2 shows the calculations from step 17 in more detail. In 25, calculation of the distances cL^ 3 ^ and d J (P)(r) from each of the rule inputs j for each of the input options to get the aggregate distances for (a) belief: cL . (B)(r) (b) spreading: d ™> The distances between the option r of the input d XJ (B)(r) and d XJ p)(r) and rule j are calculated for belief and plausibility distance measures. These distances are calculated using the rule set S b d) defined during input preprocessing. For the distance function cL^u associated with the new rule Acu→ B cu , the method for calculating the distance function must be modified as follows: 1- < (Acu,A')= ( 1 - d (A cu , A')) \A υ \ / | A cu | where d^ is the default distance function. d, (B) = t B (l- d, m (A„ A'), ... 1- d x (B >(A J5 A') ...) d^ B) is the distance between input and rule input j. d , A') = d ^(Aj,, A',), ... 1- d »{A A' ...) where d x uses weights to aggregate the distances d ^'(A^, A' k ) for the dimension k and d xk (B) (A jk , A\) = l-c k '(l-κ k ) d Λ (B) (A jk , A',), if A, k is an example d *<*> (Ajk> A > j = l- Ck '(l-T) d xk (B) (A Jk , A',,), if A. k is a rule of truth value T and c k ' = 1- c k where c k is the credibility of user input k c k ' = 1-Bel k where 1-Bel k is the belief calculated by the block whose output is A' k and d xk (B) is the distance function for dimension k. If inteφolation rather than the alternate method is used, then the d J (P)(r) must also be aggregated over j using the t-norm t (p) defined by the expert user: d x (P)(r) = t (P) ( d xl (P)(r) .. d XJ (P)(r) ...) where the distance functions are modified only by c, K and T, not by Bel, as they are for d x (B)(r) For each alpha-cut and each rule input option r and each rule output option σ, inteφolation, shown in step 26, or the alternate method to get inteφolated outputs B' (rσ) and inteφolated output option probabilities p' (rσ) takes place. The indices (r,σ) will be referred to collectively as the option index. For each alpha-cut and each option, use inteφolation or the alternate method to get the inteφolated probability associated with each output option (r,σ). This will be P' (rσ) = p' (rσ) - p (r) . Step 26 is shown in more detail in figure 3, which will be explained later Taking the inteφolation route, step 27 includes, for each alpha-cut and each option, calculation of the possibility envelopes B P * (rσ) , p* (rσ) . Each B α ' (rσ) is dilated using d x <p)(r) and the function M P or the equivalent rule for spreading as a function of d x to get B α * (rσ) . The same dilation procedure is followed to get p α * (rσ) . For each alpha-cut and each option, calculate the possibility envelope for the probability P* (rσ) of option (r,σ). This will be P* (rσ) = p *(rσ). p (D_ Taking the alternate route, step 28, each B jα <σ) is dilated using to obtain B jα * (rσ) . The probabilities ρ jα * (σ) are likewise obtained by dilation. The B jα * (rσ) and the p jα * (σ) are then averaged by fuzzy arithmetic with (1- d (P)(r) ) as weights to get B α * (rσ) and p α * (σ) and P* (ro) = *(ro). (r) In 30, the belief in the outputs σr is the same for each σ. It depends on the belief in the input A' (r) and the mismatch between input and rule input. Belief in the inteφolation procedure fall as dx (B) increases. Bel p ^ l-cL™ 0 Where d x (B)( r) was defined in step 25. In step 32, all the inputs to the next block have now been calculated. B ι ro) n ' ( rσ ) " D * (rσ) * (rσ) TD ~l(rσ) α i P o ι ° a ■ > V a ■ > D cl When the outputs of one block become the inputs of the next block, the output options (r,σ) of the first block are renamed as the input options of the next block. For a rule block all of whose inputs are "direct" inputs, that is inputs from sensors or from users, as opposed to inputs that are the outputs of previous rule blocks, steps 25 to 32 are executed only once. For all other rule blocks, steps 25 to 32 are executed twice. Figure 18 shows how these concepts are applied to a simple system with two blocks. The first block, 182, has rules {A,→A.,, Bj- B 2 }. Its rule inputs are direct. The second block, 183, { B ,- C,, B 2 - C 2 } has only indirect rule inputs arising from previous blocks. An input A' generates an inteφolated output B' and a possibility envelope B p * when applied to block 182, shown in 184. B' is now used as input for block 183 to get an inteφolation C, shown in 185. B P * is also applied to block 183 to get an inteφolation C" which is dilated to get the possibility envelope C P *, shown by 186. The first time steps 25 to 32 are executed, the inputs will be any direct inputs combined with those calculated by inteφolation only from the previous blocks, in other words anything calculated in steps 25 to 32 with a prime rather than a star. No spreading is performed. The outputs of this calculation will be denoted by B' (rσ) and P' (rσ) The second time, the inputs will be any direct inputs combined with those calculated by inteφolation and spreading from the previous blocks, in other words anything calculated in steps 25 to 32 with a star rather than a prime. The outputs of this calculation will be denoted by B* (rσ) and P* (rσ) . Referring to figure 3, step 26 will now be described in more detail. First, get the alpha-cuts of the input in step 42. If this rule block β is selected for inteφolation, then B' (rσ) and p' (rσ) are calculated by inteφolation using the coefficients determined when the expert inputs were processed in 43. Several problems may result from applying curve fitting - crossover, toppling, missed extrema, and out-of-range values -that must be corrected before the results of step 26 can be used in step 27 or as input to the next block. The anti-crossover subroutine is called up in step 44. Crossover is described in figure 10, graphs 102 and 103. The subroutine is described below for the inteφolated outputs B' (rσ) . It must be applied to the inteφolated probabilities p' (rσ) as well, using a different minimum width also determined by the expert. Using the inteφolated widths W α ' <σr) =W α (σ) (_x' cα (r) ), ymin (σr) = y cα ' (σr) - max(W α ' (σr) , w α ) ymax (σr) = y cα ' (σr) + max(W α ' (σr) , w α ) where y cα ' (σr) = .5(y Lα (σ) ' Lα (r) ) + y Rα (σ> ( -.' Rα (r) )) is the centre-of-mass of the inteφolated alpha-cut and w α are the minimum output set widths defined by the expert. Let y Lα ' <σ > = min(y Lα (σ) (_x' Lα w ) , ymin α ' (σr) ) y Rα ' (σ > = max(y Rα (σ) (_x' Rα (r) ) , ymax α ' (OT >) redefine the alpha-cuts of B' (rσ) . 45 calls the antitoppling subroutine, which redefines the alpha-cuts of B' (rσ) once more. If the inteφolations for each alpha-cut are perfectly consistent, one expects B α ' (rσ> => B rσ) if α<α'. This is necessary in order to ensure that curve for B' α is not skewed, as is shown in figure 8. Anti-toppling, defined by figure 8, shows how this problem is corrected. Antitoppling also must be applied to probabilities. Step 46 deals with missed extrema, another potential problem that is shown in figure 16. If a local extremum of the inteφolation function occurs in the support of A' (r) , then the alpha-cuts of B' (rσ) may not include this extremum and thus be too narrow. Locations and values of extrema were found during expert input processing. In 162, the local extremum lies in A' (r) , but the inteφolated B' (rσ) does not take this into account. B α ,(rσ) should then be extended as follows: If the left boundary of the alpha-cut of B' (rσ) lies above the minimum of y Lα (σ) (_x' Lα (r) ) on the interval defined by A α ' (r) , then replace it by this minimum. If the right boundary of the alpha- cut of alpha-cut of B I(ro) lies below the maximum of y Rα (σ) (_x' Rα (r) ), then replace it by this maximum. This problem with missed extrema also applies to inteφolated probabilities. Graph 163 illustrates how this procedure corrects this problem. In step 47, out-of-bounds is another problem with the B α ' (rσ) that is dealt with. The right and left boundaries are limited to remain inside Y. If both boundaries lie outside Y, then an error message is generated. The expert has made an error with the inteφolation. The inteφolated probabilities also have their alpha-cuts limited to the interval [0,1]. In 49, probabilities obtained by inteφolation should be checked that they still sum to unity after the antitoppling and anticrossover procedures are performed. If the probabilities are fuzzy, then the requirement takes this form: the sum of the left alpha-cuts of each inteφolated probability must be <1 ; sum of the right alpha-cuts of each inteφolated probability must be >1. If the requirement is not satisfied for a certain alpha cut, then an adjustment must be made to restore the condition. If this rule block β is not selected for inteφolation, then B' (rσ) and p l(rσ) are calculated by the alternate method described in the discussion of choices made by the expert, in which there is fuzzy averaging of the rule outputs B j (σ) of each option σ of rule j with the weights (1- which depend on the distance between A ,(r) and the rule input j. There is no concern about crossover and toppling in that case. Note that fuzzy averaging can be done separately for each alpha-cut. Postprocessing of block output takes place in step 18 of figure 1. Postprocessing may occur at any stage of collection of data of input data by the user or the sensors. It is used to assess whether sufficient data has been collected to make a decision. Otherwise the system will advise the user to collect more data and may suggest which data will do most to reduce ambiguity about the conclusion, by means of derivatives or other means. Postprocessing takes two forms. If the system is being used for control, then defuzzification is performed at the final block. If the system is being used to obtain a most plausible conclusion and assess the quality of evidence and rules (the belief) leading to this conclusion, or to assess the evidence for and against an assertion G to be proven, then calculations are made of the degree of possibility of the assertion G, and degree to which the conclusion is proven or the probability that it will occur. Whether the system is being used for process control or evidence analysis, the general state of ignorance about the conclusion, and strength of the chain of belief leading to that conclusion may be calculated optionally after each block and definitely after the final block. These quantities are compared to the thresholds set by the expert, or they may be used only for display. The possibility envelopes B αP * (rσ) for each option together with their fuzzy probabilities p αP * (rσ) may be displayed. The extended possibility envelope B e * is calculated as follows from a core and shoulders. This is shown in figure 42. In the first step, the B P * (rσ> first are averaged (as fuzzy numbers) with their fuzzy probabilities p p * (rσ) to get the alpha-cuts of the expected possibility envelope <B P *>, which will form the core B c *ofB e *. In the second step, the shoulders are constructed from the B α * (rσ) and p' α (rσ) . This is not a construction using fuzzy arithmetic and alpha-cuts like almost all earlier constructions. B α * (rσ) will have to be reconstructed from its alpha-cuts to perform this step. The shoulders are defined as B s *(y) = ∑ p (rσ) B* (rσ) (y) or ∑min[p * (rσ) , B* (rσ) (y)] where p * (rσ) is the defuzzifϊcation p P * (rσ) In the third step, the extended possibility envelope is then calculated from B e * = B s * <B P *> If B e * is not convex, apply a correction, figure 43, to remove the problem. Thus B e * will be centred at the most likely value of the output and have tails whose height reflects the probabilities of the different input and output options. The expected value <B B > of the belief envelope is calculated by fuzzy arithmetic from the probability-weighted average of the B' (rσ) using p (rσ) ' the defuzzified p' <rσ) , as weights. The expected value <Bel> of the belief is calculated from <Bel>= Σ p (rσ) '- Bel (rσ) The belief distribution is then defined as B B *(y) = <Bel> - <B B (y)> An extended belief distribution could also be calculated if desired using the same method as for the extended possibility envelope. The degree of ignorance about the output, the degree of possibility of an assertion G and the degree of proof of an assertion G are calculated as follows. I = ignorance about output. This is the shaded area in graph 192, figure 19. =(|B e *|- |B B *(y)l)/|Y| All the problems with the vague, ambiguous, probabilistic, contradictory, missing data and the vague, sparse, probabilistic rules that do not match the available data are summarized in this number. H(G) = degree of proof of an assertion G. Shown in graph 193, figure 19. = <Bel> • |G n<B B (y)>|/|G <B B (y)>| where the Zadeh t-norm is used for intersection and union. K (G) = degree of possibility of an assertion G = |G nB e *|/|G| These quantities I, H, and K are compared to thresholds set by the expert and are displayed or are used for a decision. The fuzzy probability of G can also be calculated from the B* P (rσ) and p* P (rσ) if desired. Referring back to figure 1, the operation of the system may be described with respect to an audit engagement application as indicated in figures 9a and 9b. The audit engagement process has five distinct phases - accepting the engagement, planning the audit, collecting the evidence, analyzing/inteφreting the evidence, and forming an opinion. Each phase begins with assertions, and/or a hypothesis, and follows the same general steps. The expert inputs 12 are established by an expert based on established audit firm policies, or professional standards (re: assertion/hypothesis). The rules then go through the preprocessing step 13 in order to prepare them for the algorithm. The user inputs 14 are derived from evidence that is collected that is relevant to assertion/hypothesis. These also pass through a pre-processing step 15. In step 17, the user inputs are compared with expert rules using the principles of fuzzy logic. This is the function of the inference engine 17 in the algorithm. The final step is for the system to form opinion based on the degree of support for the truth of the assertion/hypothesis. This is the output of the algorithm in step 19. The first step - accepting the engagement - is used with a case study to illustrate how the algorithm is applied specifically. An offer of engagement triggers an assessment of engagement risk. This process of risk analysis consists of a course-grained analysis, followed by a fine-grained analysis if necessary. An explanation of what the expert rules consist of and how they are established in this specific example follows. The case study auditing firm has (1) general policies about engagement risk based on professional and/or internal standards, and (2) specific policies about business risk factors, e.g., management integrity, scope of audit, competence of auditor, and audit risk, e.g., reliability of entity's records, "control consciousness" of management. These policies or standards translate into expert rules. In addition, the audit firm has formal or informal policies that reflect its risk tolerance, and which fluctuate with its current position. Can it afford to take risk? Can it afford to reject a potentially profitable engagement? This provides a threshold on which to base a decision to accept or reject in Step 19. In this case the risk tolerance is low to moderate. Together, the expert rules about engagement risk, management integrity, scope of audit, competence of auditor, reliability of entity's records, "control consciousness", and threshold of risk tolerance form the preprocessed expert input parameters. An explanation of what the user inputs consist of and how they are established is as follows. The engagement partner, or his/her delegate(s), collects data relevant to engagement, business and audit risk factors identified in the preprocessed inputs. They may use formal or informal inquiries, surveys, opinionaires, or documents etc., based on prescribed questions. The data collected may be linguistic or numerical; precise, imprecise, probabilistic, vague, or ambiguous. It is weighted by the auditor, and becomes the user input. Step 17 performs the same operations regardless of the application, and regardless of what the desired outcome is to be. In this case, because the risk tolerance of the audit firm is low- moderate, the limits are conservative. The inference engine with the new implication operator is used to determine mathematically the degree of proof of "low risk" and the degree of possibility of "high risk". For example, if the envelope of possible engagement risk matches the policy closely, the belief in "low risk" is high, and the possibility of "high risk" is low. This is the output of the machine reasoning. The output 19 of the inference engine can be presented to the auditor graphically or numerically with an explanation, or rationale for the results. In this case the decision to accept, reject, or continue the analysis is left up to the user. The algorithm can also be used to make recommendations based on the outputs. For example, if the degree of proof of "low risk" is above predetermined threshold, and the possibility of "high risk" is below the predetermined threshold the recommendation would be to accept, provided the evidence were strong enough. "Strong evidence" corresponds to a high value of <Bel> and requires the accumulated evidence to be relatively complete, of high credibility, and consistent.. If the degree of proof of "low risk" is below the predetermined threshold, or the possibility of "high risk" is above the predetermined threshold, the recommendation would be to reject, again provided the evidence were strong enough If the evidence is weak, the output is deemed inconclusive and the recommendation would be to collect more data. The algorithm provides a rationale and paper trail to support the recommendations. Figure 9a shows how the algorithm would be applied in the initial stages of decision-making by the audit firm. Initially, opinions would be solicited from a few well-informed individuals about the coφorate entity's reputation (which corresponds to risk assumed by the accounting firm of not getting paid or being otherwise deceived) and the state of the entity's records (which corresponds to the risk assumed by the accounting firm that the audit will take too much time to be profitable or cause the firm to err in its judgment). This collection of a few opinions together with very few rules is called the coarse-grained analysis. If the result of this initial coarse-grained analysis is inconclusive, then more data is collected about the same issues (business risk and audit risk) and more complicated rules are applied. For example, instead of simply soliciting four opinions about the coφorate entity's reputation to get the business risk, factors contributing to business risk are assessed individually: the entity's honesty, the scope of the audit and the competency of the auditor. Similarly, audit risk is dissected into two factors, reliability of records and management control consciousness. For each of these factors, opinions would be solicited and aggregated, just as with the coarse-grained analysis. A more elaborate system of rules relates these contributing factors ultimately to engagement risk. This procedure is called the fine-grained analysis (Figure 9b). Similar decision criteria for the possibility of high risk and the degree of proof of low risk are applied once the accumulated evidence is strong enough to be conclusive. Note that the process is circular. Data collection continues only until a definite conclusion is reached. No more data need be collected once the degree of proof is sufficient, the strength of evidence is sufficient, and the possibility of high risk is below the threshold. If however after as much evidence as is practicable has been collected, and the aggregated evidence is still too weak (low credibility, inconsistent, missing data) then the decision would be to reject rather than proceed towards even finer-grained analysis. The system 11 may be applied to any situation requiring professional judgement where risk is an issue, examples of which are but not limited to performing audits, business decisions involving venture capital, and in gathering and accessing evidence in litigation situations. Autonomous robots capable of searching out the information they need to make decisions and software agents would be other examples. By way of example, the following illustrates the use of the process in risk assessment by an audit company trying to decide whether it should accept an audit engagement (an invitation to audit a coφorate entity). The audit company uses the process implemented in a software package which incoφorates features of the present invention. Figures 46 to 85 inclusive show various stages of a graphical user interface of the package, from initiation to completion of the decision-making process. During this procedure, the interface permits the parameters used in the fuzzy logic process described above to be set. Figures 46 and 47, are introductory screens that introduce a user of the package to the risk assessment software.Figure 48 is an overview of the steps involved in the case study for education of the user. Figures 49, and 50, 51 provide information to the user as to the potential types of folders available, such as new, existing, and archived cases respectively. Figures 52 and 53 demonstrate the opening of an existing audit file and a series of example data fields used to identify the coφorate entity which requested the audit. Figures 54, 55, 56, and 57 provide expository material. They describe the significance of parameters H min , and K^ respectively, as initially referred to in Figure 9a; and of S, and S 0 , referred to in Figures 30 and 9a. Figure 54 illustrates the assertion "G", very low risk, to be proven, by a dotted triangle, as originally referenced in graph 193 (fuzzy set labelled "G") of Figure 19. Figure 56 introduces the envelope of possibility (graph 192, curve labelled B e *.) Figures 58, 59, 60, 61, 62,63, 64 and 65 are where the expert parameters (H,^, K^,,, S 0 and Sj) are actually set. Figures 58 and 59 demonstrate how H min , the required degree of proof as represented by the shaded area, as is set by the expert 11 as the degree of overlap between the dotted triangle (very low risk, which is to be proven) and a solid triangle, which represents the conclusion or envelope of belief drawn from the evidence collected. In Figure 19, graph 193, the belief envelope B B * corresponds to the solid triangle in Figures 58 and 59, and the assertion G to be proven to the dotted triangle in Figures 58 and 59. The strength of conclusion (which depends on the degree of consistency and credibility of all information sources) at this point in setting the parameters is assumed to be one hundred per cent, hence the height of the solid triangle representing the conclusion is unity. "Strength of evidence", "SOC" and "Strength of conclusion" in the software documentation all correspond to the same thing, to <Bel> in the preferred embodiment and to the height of the belief envelope B B * in graph 192. In figure 58, the required degree of proof, is set by slides 202 at a relatively low value of 0.35. Such a low deree of proof corresponds to an envelope of belief, indicated by the solid line in the graph 204, offset to the right, of the assertion to be proven. Where the degree of proof is increased as shown in figure 59, the overlap 206 is larger showing a requirement for a greater concordance between what has to be proven and the conclusion drawn from the evidence. Figures 60, 61, 62 and 63 demonstrate the effect of changing S 0 and S, and the strength of the evidence on the shape of the envelope of possibility (thick black curve). This is done by setting the sliders 208, 210, 212. The effect of strong evidence in simultaneously narrowing the envelope of possibility and increasing the height of the belief envelope, also referred to as the convergence of the envelope of possibility to the envelope of belief, is shown most clearly in Figure 62 . As can be seen from a comparison between figures 60, 61, 62 lowering the degree of speculation for both business risks and audit risk narrows the envelope of possibility while the strength of evidence remains constant. The lower slider controls the how far the tail of the envelope extends, the upper slider how much the top of the envelope broadens. Similarly, increasing the strength of evidence while maintaining the same degree of speculation will also decrease the envelope of possibilities. Figures 64 and 65 show how K^,,, the upper limit on the possibility of very high risk that is acceptable to the audit firm, is set by the expert using the slides 214. As the acceptable degree of high risk is reduced, the allowable portions 216 of the envelope of possibility in the high risk area is reduced. Figure 66 is a summary of the values selected of each of the parameters. These values are recorded to confirm later that the decision was made using parameter values corresponding to the audit firm's policy on accepting audit engagements. Figures 67 to 70 are information screens for the user. Figures 67, 68, and 69 provide a list of requirements and the steps involved in conducting a coarse grained, a fine grained, and both coarse and fine grained analyses respectively, as initially referenced in Figures 9a and 9b. Figures 71, and 72 set out user selectable rules for implementing the risk evaluation on the coarse grained option two. They show two examples of rule selection by the expert of the system 11. Down boxes permit the rule to be selected. Different settings are shown in figures 71 and 72. Figure 72 shows settings corresponding to the audit firm's policy for the rules to be used for a coarse grained analysis. These are the same rules used for calculations displayed on subsequent figures. Figure 73, 74, and 75 illustrate record keeping screens determining contacts and methods involved in the planning stage for collecting evidence for business risk, audit risk, and an overall plan respectively. The data collected is entered using the interface screen in figures 76 to 80. In Figure 76, where no data has yet been entered, the envelope of possibility is the dark solid line across the top of the graph, and the envelope of belief is the solid line across the bottom. Figure 76 therefore shows that when there is no evidence, any conclusion, from very low risk to very high risk, is 100% possible, and that very low risk is proven to degree zero. As data is collected, it is processed and the results displayed graphically at 204. Figures 77 and 78 illustrate the effect of accumulating evidence, i.e. user input, on the two envelopes for business risk. The figures also show corresponding changes in the degree of proof of very low risk, the possibility of very high risk, and the strength of the conclusion. The possibility envelope is narrower in Figure 78 than in Figure 77 because there is more data and this data is relatively consistent. Figure 79 shows the effect of completing all data fields on the envelopes for the audit risk. Figure 80 illustrates engagement risk, calculated from the combination of the business risk and the audit risk of Figures 77 and 78 respectively. Business and audit risk are represented by A,' and A,' in Figure 45. Inconsistency between A,' and A 2 '. corresponds to the relatively small size of the shaded area in Figure 45, which leads to doubt about the engagement risk when the audit and business risks are inconsistent. Figure 81 shows the decision recommended by the software based on the parameters selected and the entered data. It finds the strength of the conclusion is too low, i.e. the evidence is too weak (inconsistent, low credibility), and recommends a fine grained analysis. This recommendation corresponds to the flow chart decision of Figure 9a. Figures 82, 83, and 84 represent a different version of Figures 79, 80, and 81 with the same expert parameters (S 0 , S„ H min , K^ and the same rule set) . However in this case the user inputs different , more consistent and credible evidence, pointing towards much lower risk The resulting effects are: a narrower envelope of possibility centred on very low risk, a minute possibility of very high risk, a higher belief envelope, and increased overlap between the belief envelope and the dotted "Very low risk" triangle . Figure 85 shows a recommendation by the software to accept the audit engagement based on the this different set of evidence. In the expert system 11 of the preferred embodiment, rules 56 are typically chained, i.e. the output of one rule "block" (refer to Figure 39) becomes the input of the next rule block to form a hierarchical structure. It is sometimes expedient to do numerical calculations using the possibility envelope output of a given block as the input to the next block. An alternative embodiment to calculating intermediate envelopes of possibility is to calculate the envelope of possibility at the end of the chain of rules 56 using the distance functions 55 at the beginning of the chain 56 between the input and the rule input. Neither distance functions 55 nor envelopes B p * for the rules in the middle of the chain 56 need be calculated. The intermediate rules 56 between the beginning and end of the chain have the effect of modifying the relationship between input distance 55 and the shape of B P *. Instead of writing B p *(y) =V min[B'(y), M (d x (A, A'), cL/B, B'))], which is the formula used when there are no rules intermediate between A and B, one can write B *(y) =V min[B'(y), M^d^A, A'), d^B, B'))], or equivalently B p *(y) =V min[B'(y), M fd,(A, A), d y (B, B'))], where the difference between the usual d x , d y , or M P and "a series of effective distance functions" cL^, d yeff , or "an effective kernel" M Peff accounts for the effect of having rules 56 intermediate between A and B. Some examples on the use of the above-mentioned effective functions are given for specific chaining situations, for demonstrative puφoses only. Example 1 : Suppose (1) There is a chain with n rules, in which the inputs and outputs match exactly for each rule in the chain, e.g. A→P, P→Q, Q→R,.... , T→U, U→B. (2) M P is linear (see Figure 32a), and the same M P is used for each rule 56 in the chain. Then d xeff =d x (1/n) and d yefT =d (1 n) where d x =d x (A, A') and cL= d B, B'), where n is the number of rules in the chain 56. Example 2: Suppose (1) There is a chain 56 of length two in which inputs and outputs match exactly, e.g. A→P, P→B. (2) M P is linear and is different for the two rules because of different sensitivities of the output to a change in the input, i.e. M P1 is used for A→P and M P2 is used for P→B. (3) A function g(S) is defined such that M P2 (g(S)) = M P1 (S), where S = (cL/cLj. (Since M P is linear, it is a function only of (d y /cLJ.) (4) g(S) is either nondecreasing for all S 3 [0, ∞) or nonincreasing for all S 3 [0, ∞). This condition is used to restrict the occurrence of multiple roots in the implicit equation below. Then (d yeff /d^ ff ) = (d yg /d^A, A')) where d yg is the solution of (d yι / d x (A, A , )) = g(d y (B, B')/ <y. Example 3 : Suppose (1) There is a chain 56 of length two in which inputs and outputs match exactly, e.g. A-→P, P→B. (2) M P is nonlinear and identical for both rules. Then the effective distances d^, d yeff , are no longer calculated from simple geometrical formulas. They can however be found through numerical methods known in the art and will depend on the particular M p chosen by the expert of the system 11. The type of numerical method used may also be influenced by the shapes of A, P, B and where and d y (B,B) lie in the d^-d y plane, dependent upon the chosen application for the system 11. Example 4: (1) M p is linear and identical for each rule 56 in the rule set . (2) There are two pairs of rules 56 with matching inputs and outputs, e.g. "red apples are ripe", "green apples are unripe"; "ripe apples are sweet", "unripe apples are sour", relating to the pH value of the apple to its colour. (3) The cover-distance measure is linear rather than relative. (4) The colour, ripeness, and sweetness variables are are normalized, i.e. the maximum colour = exactly 1 and the minimum colour = exactly zero. (5) The colour lies between red and green. (6) Within each pair or rules, there is no intersection, e.g. "red" and "green" are disjoint; "ripe" and "unripe" are disjoint; "sweet" and "sour" are disjoint. Then the ratio of the effective distances, used to calculate the envelope of possible apple pH directly from the apple's colour, is (d y d e{( ) = (-l+(l+4d colour /d pH ) 1 2 )/2, where min(d x (green, A'), d x (red, A')) and d pH = min(d y (sweet, B'), d y (sour, B')) Example 5 : (1) There is a chain of length two in which the input of rule two and the output of rule one do not match exactly, e.g. A→P,, P→B. (2) The same M P is used for both and it is linear. (3) Linear cover-distance is used. (4) P, and P 2 are disjoint. (5) d (A, A') + d,(B, B') >q, where q=( |c(P„ P 2 )| - |P,| - |P 2 |), and c(P„ P 2 ) is the cover of P, and P 2 (6) d x (A, A 1 ) < d y (B, B'). (7) The ranges of the variables are normalized, i.e. the input and output of each rule lie in [0, !]• Then the ratio of the effective distances, used to calculate the envelope of possibility for the end of the chain is (d yefi /d xeff ) = d y (B, B')/d 22 where d 22 = (q/2){l+[l-4 cL . (A, ) d y (B, B')/q 2 ] 1/2 } provided d 22 >vagueness of the boundary of P 2 which is closest to P ! and q-d 22 > vagueness of the boundary of P, which is closest to P 2 The vagueness of a boundary of a fuzzy set is the difference between the area the fuzzy set would have if the fuzzy boundary were replaced by a crisp boundary at the edge of the fuzzy set, and the actual area. In the Figure 44, a shaded region 200 represents the vagueness of the right and left boundary. It is the role of the expert of the system 11 to decide whether it is more expedient for a particular application to use the above-described effective distances rather than the method described in the preferred embodiment. The method using effective functions can become increasingly complex algebraically, depending on the case chosen. It may be more feasible in this circumstance to use the chaining method of the preferred embodiment. In the preferred embodiment, when there are multiple rules and inteφolation, distance is taken to be the smallest of the distances between the input and the inputs of the (sparse) rule set. To make the expert system reproduce informal reasoning, a further embodiment may be required in rule blocks where informal reasoning indicates that continuous inteφolation of implicit rules between sparse rules in a lower-dimensional subspace of the input space would be appropriate, as shown in Figure 45. The two explicit rules given as shown by the solid lines, are "High Audit Risk and High Business Risk — > High Engagement Risk" and "Low Audit Risk and Low Business Risk →Low Engagement Risk". The input space, as shown by the dashed lines, is two- dimensional, where only two rules are given by way of example only, through which a straight line (not shown) is inteφolated in the three-dimensional space comprising the output and the two input dimensions. The projection of this line onto the input space defines a lower- dimensional subspace S of the input space. Since there are insufficient points to define a plane, the before-mentioned Lagrange multiplier technique is applied to generate an inteφolated output I for an arbitrary fuzzy set in the input space. For a fuzzy input set entirely contained in S, represented in Figure 45 by a straight diagonal line of ghosted dashed rectangles, the expert of the system 11 judges that there should be no spreading of the output envelope around I. The expert thus assumes that an infinite set of implicit, continuously inteφolated rules can be inferred for all fuzzy inputs in S, from the sparse rules. Examples of continuously inteφolated rules would be "Medium Audit Risk and Med Bus Risk →Med Engagement Risk"; "(Medium to very high) Audit Risk and (Medium to very Hi) Audit risk -» (Medium to very high) Engagement risk", etc. When the input lies wholly or partially outside S, the degree of spreading of the output is no longer determined by the distance between the input and the nearest rule input, as described by step 17 of Figure 1 of the preferred embodiment. Instead, the degree of spreading is determined by the distance between the input and S. In the example, the spreading expresses doubt about the engagement risk when the business and audit risk are inconsistent. More generally, the spreading expresses doubt about conclusions in situations different from a narrow inteφolation of limited experience. The arrow labelled cL j , in Figure 45 indicates how the distance function for spreading is calculated. Its horizontal and vertical components can be manipulated with weights or compensation as while using some Euclidean measure to construct α as described in the last step of box 62 in Figure 6 and of Figure 36. When the input lies wholly or partially outside S, belief is no longer calculated as the degree of intersection between the input and the nearest rule input as mentioned in step 17. The expert has decided that if the input lies wholly within S, then the output is 100% believable. Belief is therefore calculated from the intersection of the ghosted rectangles in Figure 45 representing S and the input S. Thus belief in the output declines when the inputs are inconsistent with an inteφolation between the inputs of previous experiences. While the invention has been described in connection with a specific embodiment thereof and in a specific use, various modifications thereof will occur to those skilled in the art without departing from the spirit of the invention. The terms and expressions which have been employed in the specification are used as terms of description and not of limitations, there is no intention in the use of such terms and expressions to exclude any equivalents of the features shown and described or portions thereof, but it is recognized that various modifications are possible within the scope of the invention.

Claims: THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS: 1. A method of evaluating a confidence in an outcome of a fuzzy logic possibilistic system comprising the steps of providng a rule that maps a given input to a predictable output; selecting a plurality of inputs that differ from said given output; establishing a relationship between said given input and said selected inputs; assigning a degree of possibility to possible outcomes resulting from application of said selected ones of inputs to said rule; said degree of possibility being correlated to said relationship established between said given input and said selected input; establishing an envelope of possibility that encompasses each of said possible outcomes resulting from said selected inputs; according to each of said selected inputs a credibility to establish an envelope of belief within said envelope of possibility; comparing said envelope of belief and said envelope of possibility; and determining confidence in an indicated outcome based on difference between said envelopes. 2. A method according to claim 1, wherein a plurality of rules are provided and said envelope of possibility contains possible outcomes from each of said rules. 3. A method according to claim 1, wherein said envelope of possibility is established by consideration of adjacent sets of outcomes. 4. A method according to claim 3, wherein said envelope is established through inteφolation between adjacent sets. 5. A method according to claim 3, wherein said envelope is established through extrapolation between adjacent sets. 6. A method according to claim 1 including a set of examples associated with said rule to provide a plurality of possible outcomes for an input. 7. A method according to claim 1 wherein said relationship is established based on similarity between said selected inputs and said given input of said rule. 8. A method according to any proceeding claim wherein a parameter is applied to limit said outcomes and thereby modify said envelope of possibility. 9. A method according to any proceeding claim wherein a subset of said envelope of belief is established by applying a parameter to qualify said inputs. 10. A method according to any proceeding claim wherein a subset of said envelope of possibility is established by applying a parameter to qualify said outputs. 11. A possibilistic expert system utilizing fuzzy logic rule sets to determine an outcome from a set of inputs including: a set of parameters initially determined by an expert of said system; at least one set of rule inputs and a corresponding set of rule outputs; a plurality of predetermined functions to operate on selected ones of said parameters and said rule inputs; some of said predetermined functions being used to assign a degree of possibility to each of a number of possible outcomes; wherein each of said degree of possibility of each of said possible outcomes are used to establish at least one envelope of possibility containing allowable outcomes from said rule set. 12. A possibilistic expert system according to claim 11 further comprising at least one envelope of belief is established by applying a credibility to said inputs and a plurality of criteria with which said envelope of possibility and said envelope of belief are compared thereto. 13. A possibilistic expert system according to claim 11, wherein said predetermined functions include inteφolation and extrapolation to generate said envelope of possibility from at least two disjoint sets of said possible outcomes. 14. A possibilistic expert system according to claim 12, further comprising a plurality of examples used in conjunction with said sets of said rules. 15. A possibilistic expert system according to claim 11, further comprising a plurality of distance measures to calculate a degree of similarity between said disjoint sets. 16. A possibilistic expert system according to claim 15, wherein said predetermined functions control a shape of said envelope of possibility. 17. A possibilistic expert system according to claim 16, wherein said predetermined functions also control a rate of spreading of each of said envelopes. 18. A possibilistic expert system according to claim 11, wherein said rate of spreading is a function of distance between said set of parameters and said rule input. 19. A possibilistic expert system according to claim 11, further comprising a system of weighting for a plurality of multi-dimensional inputs to promote sensitivity of said output to specific dimensions of said multi-dimensional input. 20. A possibilistic expert system according to claim 19, further comprising the use of at least one fuzzy implication operator to encode the degree of chaos versus continuity present in said system set up by said expert. 21. A possibilistic expert system according to claim 20, wherein a plurality of fractal parameters are used to calculate said envelope of possibility for a fractal system. 22. A method for determining an outcome from a set of inputs in an expert system, said method comprising the steps of: a) determining a set of parameters by the expert for the system; b) establishing at least one rule using at least two of said sets of parameters as input; c) according a value to each of selected ones of sets of parameters; d) computing an envelope of possibility by operating on inputs and said selected ones of parameters by applying a predetermined function thereto; e) computing a belief function by applying a credibility factor to said inputs f) comparing said envelope of possibility and belief function with predetermined criteria; and g) producing an output indicative of a result of said comparison. 23. A method for determining an outcome from a set of inputs in an expert system as defined in claim 22, said predetermined function including: a spreading function, inteφolation and extrapolation.

Inventors: DAAMS JOHANNA MARIA, STROBEL STEWART LORNA, DAAMS, JOHANNA, MARIA, STROBEL STEWART, LORNA
Applicants: DAAMS JOHANNA MARIA, STROBEL STEWART LORNA, DAAMS, JOHANNA, MARIA, STROBEL STEWART, LORNA
Application year: 1999
Main classification: G06F9
IPC codes: G06N5