WHAT IS AN ONTOLOGY?
An ontology is an explicit formal specification of the terms that are used to represent an agent's world (Gruber, 1993).
In an ontology, definitions associate names of entities in the agent's world (e.g., classes of objects, individual objects, relations, hypotheses, problems) with human-readable text and formal axioms. The text describes what a name means. The axioms constrain the interpretation and use of a term. Examples of terms from the ontology of the PhD advisor assessment agent include student, PhD student, professor, course, and publication. The PhD advisor assessment agent is a Disciple agent that helps a PhD student in selecting a PhD advisor based on a detailed analysis of several factors, including professional reputation, learning experience of an advisor's students, responsiveness to students, support offered to students, and quality of the results of previous students (see Section 3.3). This agent will be used to illustrate the various ontology issues discussed in this chapter.
The ontology is a hierarchical representation of the objects from the application domain. It includes both descriptions of the different types of objects (called concepts or classes, such as professor or course) and descriptions of individual objects (called instances or individuals, such as CS580), together with the properties of each object and the relationships between objects.
The underlying idea of the ontological representation is to represent knowledge in the form of a graph (similar to a concept map) in which the nodes represent objects, situations, or events, and the arcs represent the relationships between them, as illustrated in Figure 5.1.
The ontology plays a crucial role in cognitive assistants, being at the basis of knowledge representation, user–agent communication, problem solving, knowledge acquisition, and learning.
First, the ontology provides the basic representational constituents for all the elements of the knowledge base, such as the hypotheses, the hypothesis reduction rules, and the solution synthesis rules. It also allows the representation of partially learned knowledge, based on the plausible version space concept (Tecuci, 1998), as discussed in Section 7.6.
Second, the agent's ontology enables the agent to communicate with the user and with other agents by declaring the terms that the agent understands. Consequently, the ontology enables knowledge sharing and reuse among agents that share a common vocabulary that they understand.