From OpenCog
Jump to: navigation, search

A Node representing any concept.

A ConceptNode has a TruthValue, composed of at least a strength and a confidence value, which are both values between 0 and 1.

The strength indicates the occurence of a concept within the context of experience. The confidence indicates how sure the agent or system is of this value. These values are used by PLN to perform probabilistic reasoning.

For example, imagine an empty AtomSpace and a newborn agent that begins observing the world for the first time. If the first two things it sees are a man and a donkey, it may define the following concepts (in Scheme notation)

ConceptNode "Man" (stv 0.5 0.001)
ConceptNode "Donkey" (stv 0.5 0.001)

Since the agent has only observed two concepts in it's universe, it will think half (0.5) of the universe consists of Men and half (0.5) of the universe consists of Donkeys.

Because the agent has not made a lot of observations yet, it may assign a low Confidence to these values.

A special case is a SemeNode, used for concepts obtained through natural language input.

Defining new ConceptNodes

New ConceptNodes can be defined in terms of existing ones, by using the EquivalenceLink together with the SatisfyingSetScopeLink. So, for example, the node

 ConceptNode "the-set-of-all-things-that-breathe-air"

can be defined by asserting that the following is true:

   ConceptNode "the-set-of-things-that-breath-air"
     VariableNode "$X"
       PredicateNode "breathe"
         VariableNode "$X"
         ConceptNode "air"

This defines a new ConceptNode "the-set-of-things-that-breath-air" in terms of two previously existing ConceptNodes: those for "breath" and "air".

PLN Semantics

In PLN a ConceptNode corresponds to a fuzzy set. The degree to which an element belongs to a ConceptNode can be represented by a MemberLink.

Also, the truth value of a ConceptNode actually corresponds to how much the universe extensionally inherits from it, that is

ConceptNode A <TV>

is equivalent to

SubsetLink <TV>