Commonsense knowledge

In artificial intelligence research, commonsense knowledge is the collection of facts and information that an ordinary person is expected to know. The commonsense knowledge problem is the ongoing project in the field of knowledge representation (a sub-field of artificial intelligence) to create a commonsense knowledge base: a database containing all the general knowledge that most people possess, represented in a way that it is available to artificial intelligence programs that use natural language or make inferences about the ordinary world. Such a database is a type of ontology of which the most general are called upper ontologies.

The problem is considered to be among the hardest in all of AI research because the breadth and detail of commonsense knowledge is enormous. Any task that requires commonsense knowledge is considered AI-complete: to be done as well as a human being does it, it requires the machine to appear as intelligent as a human being. These tasks include machine translation, object recognition, text mining and many others. To do these tasks perfectly, the machine simply has to know what the text is talking about or what objects it may be looking at, and this is impossible in general unless the machine is familiar with all the same concepts that an ordinary person is familiar with.

Information in a commonsense knowledge base may include, but is not limited to, the following:
 * An ontology of classes and individuals
 * Parts and materials of objects
 * Properties of objects (such as color and size)
 * Functions and uses of objects
 * Locations of objects and layouts of locations
 * Locations of actions and events
 * Durations of actions and events
 * Preconditions of actions and events
 * Effects (postconditions) of actions and events
 * Subjects and objects of actions
 * Behaviors of devices
 * Stereotypical situations or scripts
 * Human goals and needs
 * Emotions
 * Plans and strategies
 * Story themes
 * Contexts

Commonsense knowledge bases

 * Cyc
 * Open Mind Common Sense and ConceptNet
 * ThoughtTreasure
 * WordNet
 * Basic Formal Ontology (BFO)
 * DOLCE and DnS
 * General Formal Ontology
 * Suggested Upper Merged Ontology
 * Mindpixel