Probabilistic logic network

A probabilistic logic network (PLN) is a conceptual, mathematical and computational approach to uncertain inference. It was inspired by logic programming and it uses probabilities in place of crisp (true/false) truth values, and fractional uncertainty in place of crisp known/unknown values. In order to carry out effective reasoning in real-world circumstances, artificial intelligence software handles uncertainty. Previous approaches to uncertain inference do not have the breadth of scope required to provide an integrated treatment of the disparate forms of cognitively critical uncertainty as they manifest themselves within the various forms of pragmatic inference. Going beyond prior probabilistic approaches to uncertain inference, PLN encompasses uncertain logic with such ideas as induction, abduction, analogy, fuzziness and speculation, and reasoning about time and causality.

PLN was developed by Ben Goertzel, Matt Ikle, Izabela Lyon Freire Goertzel, and Ari Heljakka for use as a cognitive algorithm used by MindAgents within the OpenCog Core. PLN was developed originally for use within the Novamente Cognition Engine.

Goal
The basic goal of a PLN is to provide accurate probabilistic inference in a way that is compatible with both term logic and predicate logic and scales up to operate in real-time on large dynamic knowledge bases.

The goal underlying the theoretical development of PLN has been the creation of practical software systems carrying out complex inferences based on uncertain knowledge and drawing uncertain conclusions. PLN has been designed to allow basic probabilistic inference to interact with other kinds of inference such as intensional inference, fuzzy inference, and higher-order inference using quantifiers, variables, and combinators, and be a more convenient approach than Bayesian networks (or other conventional approaches) for the purpose of interfacing basic probabilistic inference with these other sorts of inference. In addition, the inference rules are formulated in such a way as to avoid the paradoxes of Dempster–Shafer theory.

Implementation
PLN begins with a term logic foundation and then adds on elements of probabilistic and combinatory logic, as well as some aspects of predicate logic and autoepistemic logic, to form a complete inference system, tailored for easy integration with software components embodying other (not explicitly logical) aspects of intelligence.

PLN represents truth values as intervals, but with different semantics than in imprecise probability theory. In addition to the interpretation of truth in a probabilistic fashion, a truth value in PLN also has an associated amount of certainty. This generalizes the notion of truth values used in autoepistemic logic, where truth values are either known or unknown and when known, are either true or false.

The current version of PLN has been used in narrow-AI applications such as the inference of biological hypotheses from knowledge extracted from biological texts via language processing, and to assist the reinforcement learning of an embodied agent, in a simple virtual world, as it is taught to play "fetch".