Reasoning with Uncertainty
Though there are various kinds of uncertainty in all aspects of a reasoning system (such as term, statement, inference rule, and inference process), the "reasoning with uncertainty" (or "reasoning under uncertainty") research in AI has been focused on the uncertainty of truth value, that is, to allow and process truth values other than "true" and "false".
Generally speaking, to develop a system that reasons with uncertainty means to provide the following:
Nonmonotonic logics are used to formalize plausible reasoning, such as the following inference step:
Birds typically fly. Tweety is a bird. -------------------------- Tweety (presumably) flies.Such arguments are characteristic of commonsense reasoning, where default rules are applied when case-specific information is not available.
The conclusion of nonmonotonic argument may not be correct. For example, if Tweety is a penguin, it is incorrect to conclude that Tweety flies. Nonmonotonic reasoning often requires jumping to a conclusion and subsequently retracting that conclusion as further information becomes available.
All systems of nonmonotonic reasoning are concerned with the issue of consistency. Inconsistency is resolved by removing the relevant conclusion(s) derived previously by default rules. Simply speaking, the truth value of propositions in a nonmonotonic logic can be classified into the following types:
A related issue is belief revision. Revising a knowledge base often follows the principle of minimal change: one conserves as much information as possible.
One approach towards this problem is "truth maintenance system", in which a "justification" for each proposition is stored, so that when some propositions are rejected, some others may need to be removed, too.
Major problems in these approaches: conflicts in defaults and computational efficiency.
Example: "Nixon Diamond".
Justification: though no conclusion is absolutely true, the one with the highest probability is preferred. Under certain assumptions, probability theory gives the optimum solutions.
To extend the basic Boolean connectives to probabily functions:
Bayes' Theorem is often used to update a system's belief according to new information: P(H|E) = P(E|H) * P(H) / P(E).
Bayesian Networks are directed acyclic graphs in which the nodes represent variables of interest and the links represent informational or causal dependencies among the variables. The strength of dependency is represented by conditional probabilities. Compared to other approaches of probabilistic reasoning, Bayesian network is more efficient, though its actual computational cost is still high for complicated problems.
Applications: diagnostic systems, such as Office Assistant in Microsoft Office.
Limitation of this kind of approach: truth can be unknown, but probability must be known. For a practical application, the necessary data need to be collected and processed to get the required probability values. Also, the calculation must be fast enough.
Considering the uncertainty in probability judgments, some people go further to study imprecise probability and evidence-based confidence.
Examples of fuzzy concepts: "young", "furniture", "most", "cloudy", and so on.
According to fuzzy logic, whether an instance belongs to a concept is usually a matter of "yes/no", but a matter of degree. Fuzzy logic uses a degree of membership, which is a real number in [0, 1].
A major difference between this number and probability is: the uncertainty in fuzzy concepts usually does not get reduced with the coming of new information. Compare the following two cases:
The major applications of fuzzy logic so far are in control systems, where expert knowledge is coded into fuzzy rules. Example: Fuzzy Anti-lock Brake Systems (ABS).
Issues: