Knowledge Representation: Overview

Chapter 10 — Knowledge Representation Book: Artificial Intelligence: A Modern Approach (Russell & Norvig, 4th ed) Pages: 331–372


The Knowledge Representation Problem

An intelligent agent needs to represent knowledge about: - Categories and objects: what things exist and how they’re classified - Actions and events: what can happen and when - Time: the temporal structure of events - Mental objects: beliefs, desires, intentions of agents - The physical world: quantities, materials, shapes

Chapter 10 builds a general ontology — a framework for representing these in FOL.


Ontological Engineering

An ontology is a formal specification of a conceptualization: the objects, categories, relations, and axioms in a domain.

Upper ontology (top-level): categories that span all domains: - Objects (physical, abstract) - Events (processes in time) - Properties (intrinsic/extrinsic) - Relations (binary, ternary…)

Concrete ontologies: WordNet, Cyc, OpenCyc, OWL/RDF (Semantic Web).


The Upper Ontology (Figure 10.1 in AIMA)

Thing
├── Object
│   ├── Physical Object
│   │   ├── Animate Object (Person, Animal)
│   │   └── Inanimate Object (Rock, Table)
│   └── Abstract Object (Number, Property, Set)
└── Event (process extended in time)
    ├── Action
    └── Process

Key predicate: Instance(obj, category) — obj is an instance of category. Key predicate: Subclass(c1, c2) — every instance of c1 is an instance of c2.


Categories and Objects

Natural Kinds

Some categories have natural membership criteria: - Apple: round, red/green, sweet, from an apple tree - Difficulty: natural kinds have prototypical features, not strict necessary-and-sufficient conditions

FOL handles strict definitions; default logic or prototypical reasoning handles natural kinds.

Measures and Quantities

Dimensions and units encoded as functions:

Length(Empire_State_Building) = Meters(443)
Mass(John) = Kilograms(75)

Operations on measures:

∀d,u1,u2 Convert(Meters(d), Feet) = Feet(d · 3.281)

Substances vs. Individuals

Substance representation — TypeOf predicate:

TypeOf(RingX, Gold)

Substances support part-of reasoning (mereology):

∀x,y TypeOf(x, Gold) ∧ PartOf(y, x) → TypeOf(y, Gold)

Summary

Knowledge representation ties formal logic to the commonsense world. The key challenge is the frame problem and qualification problem: - Frame problem: how to represent what does NOT change after an action - Qualification problem: how to avoid listing all preconditions of an action

These are addressed in full by the situation calculus and event calculus (next file).