For each method we give the following information:
Antecedents: These act on numeric antecedents.
Consequents: Integer, Float, Angle/Direction, Enum, Ordinal. Others in future, perhaps.
Advanced use: When B (and C etc.) is a PROPORTION the inference is different: it adds that proportion of what is already accumulated. Thus (60 + 50%) gives 90, not 110. If C, D, etc. is a PROPORTION, it takes a proportion of what is already accumulated, not just of A. Thus if A is 60, B is 50%, C is 20 and D is 10% the result is:
Stopping: With multiplication, if an antecedent makes the result zero then no further ones are taken.
Antecedents: These act on numeric antecedents.
Consequents: Integer, Float or Angle/Direction.
Advanced use: The stopping rule can be used to control the order in which questions are asked.
Stopping: With AND, if any antecedent in order A, B, C ... is FALSE, no others are taken. With OR, if any is TRUE, no others are taken.
Antecedents: These act on boolean antecedents. Any other type is converted to boolean if possible before being accumulated into the result.
Consequents: Boolean.
Advanced use: The stopping rule can be used to control the order in which questions are asked.
Antecedents: This acts on a single boolean antecedent, and ignores all others.
Consequents:
Advanced use:
Antecedents: These act on probabilistic antecedents. Proportions are treated as probabilities. Bayesians have their main part treated as a probability. Booleans are converted to probability. Odds are converted to probability in the normal manner, viz. P = O / (1 + O).
Consequents:
Advanced use:
Stopping: Normally there is no stopping rule. But you can define a Lower or Upper Cut-Off to ignore any weak evidence once you are sufficiently confident in the present result. Suppose you have six antecedents and a Lower Cut-Off of 10% on the consequent, and that three of the antecedents have been answered in such a way as to bring the belief in the consequent down to 5%. Then if the other three (unanswered) antecedents have sufficiently weak evidence that however they are answered their combined effect will not bring the final result over 10%, then the consequent is considered answered. So the three remaining antecedents are not searched during the backward chaining process. Conversely for the Upper Cut-Off.
Antecedents: This acts on Bayesian antecedents. Probabilities, proportions and booleans are converted to Bayesian whose a-priori is 0.5 (50%).
Consequents: Bayesian.
Advanced use: Using the Lower and Upper Cut-Offs you can make the knowledge base appear more 'intelligent' and less pedantic. To understand Bayesian accumulation of evidence, read the following. The consequent belief is an accumulation of the antecedent beliefs, for and against. Each antecedent can have a different weight, so that having a red breast is of greater weight (more conclusive) as evidence for the bird being a robin than that the bird is small. Evidence against (such as thick bill) is also indicated by the weights, and in this case the weight would be inverted. The weights are held as parameters of the relationship that joins the antecedent to the consequent. All antecedent relationships must have a UOp of either 'Normal' or 'Negate', and are expected to hold a Bayesian Weight, which is two odds multipliers - four small positive integers in all. One pair should give a ratio >= 1 and the other pair should give a ratio <= 1. The distance these ratios are from 1 the 'stronger' the weight for this antecedent. If belief in the antecedent is total (e.g. 100%) then the full weight found in the relationship is taken and accumulated into the consequent belief. But if the belief is partial then only part of the weight is taken. By "total" we mean either that the antecedent is definitely known to be true (100%) or definitely known to be false (0%). The consequent and each antecedent has an a-priori belief, which is the belief which would be taken if there were no evidence. (The a-priori is often found from the statistical probability of the proposition being true.) The a-priori belief of the consequent is the starting point for accumulation. e.g. The a-priori belief that the bird is a robin might be 10%, and as evidence is accumulated for or against the belief varies from this level. When the proposition is an antecedent of a Bayesian inference then the a-priori is also used to calculate partial weights. If the belief is precisely that of the a-priori then the antecedent has zero weight, no effect. As the belief moves away from the a-priori of the antecedent the amount of the weight taken increases until the whole is taken for a total belief. For details, see the section on Bayesian accumulation.
Stopping: Answered as soon as it is known the result is false, so no further antecedents will be searched during backward chaining.
Antecedents: A: Any. Others: Any convertible to type of A.
Consequents: Boolean.
Advanced use: Owing to the stopping rule, this can be used to control the order in which questions are asked of the user.
Antecedents: A: Any numeric or ordinal. Others: Any convertible to type of A.
Consequents: Boolean.
Advanced use:
Antecedents: A: Any numeric or ordinal. Others: Any convertible to type of A.
Consequents: The result is a Proportion (or Probability or Bayesian).
Advanced use:, esIM_CEQ, esIM_CGT, esIM_CLT, esIM_CNE,
esIM_CGE, esIM_CLE
"Count A =", "Count A >", "Count A <", "Count A <>", "Count A >=", "Count A
<="
Action:
These perform comparisons similar to the above, but count the number
for which the comparison is true.
Antecedents: A: Any numeric or ordinal. Others: Any convertible to type of A.
Consequents: Integer.
Advanced use:
Antecedents: A: String or integer. Others: Must be like A or convertible to A's type.
Consequents: esIM_HAS: Boolean. esIM_CHAS: Integer. esIM_PHAS: Proportion, Probability or Bayesian.
Advanced use:
Antecedents: A: String or integer. Others: Must be like A or convertible to A's type.
Consequents: esIM_HAS: Boolean. esIM_CHAS: Integer. esIM_PHAS: Proportion, Probability or Bayesian.
Advanced use:
Antecedents: Any that can be converted to type of consequent.
Consequents: Any.
Advanced use: With this you can provide sophisticated strategies of questioning the user or otherwise finding out information.
Antecedents: A: Anything that can be converted to integer. Others: Converted to type of consequent.
Consequents: Any.
Advanced use: Note that in backward chaining, it first gets A answered and once its value is found will only backward chain up the appropriate chosen antecedent. In this way you can cut out whole sections of questioning if you wish.
Antecedents: Any.
Consequents: Boolean.
Advanced use:
Antecedents: Any.
Consequents: Integer.
Advanced use: Beware: The consequent is always known and answered.
Antecedents: Any.
Consequents: Integer.
Advanced use:
Antecedents: Any.
Consequents: Integer.
Advanced use:
Antecedents Any.
Consequents: Integer.
Advanced use:
Antecedents: Anything that can be converted to type of consequent.
Consequents: Numeric or string. The antecedents are converted to type of consequent.
Advanced use: These act on numeric or string antecedents. They return the maximum or minimum value.
Antecedents: Most numerics and string.
Consequents: Integer, ENUM or ORDINAL (in which case the answer is 1 if A is max/min, 2 if B, and so on). Or BLOCK, in which case the result is the DSAP of the antecedent block.
Advanced use: The use of BLOCK consequent is expected to become more versatile in future, but at present you can find for instance the name of the block by conversion to string at the next stage.
Antecedents: Numeric.
Consequents: Numeric.
Advanced use:
Antecedents: If the antecedents are not string type then they are converted to string if possible.
Consequents: String.
Advanced use: