Knowledge Representation: 1) Semantic Net
Knowledge Representation: 1) Semantic Net
There are many methods can be used for knowledge representation and they
can be described as follows:-
1- Semantic net.
2- Conceptual graph.
3- Frames
5- Resolution.
1) Semantic Net
It is consist of a set of nodes and arcs , each node is represented as a
rectangle to describe the objects, the concepts and the events. The arcs are
used to connect the nodes and they divided to three parts which are (Is),(Is
a), (Can), and (Has a).
Example1: Computer has much part like a CPU and the computer divided
into two types, the first one is the mainframe and the second is the personal
computer, Mainframe has line printer with large sheet but the personal
computer has laser printer, IBM as example to the mainframe and PIII and
PIV as example to the personal computer.
56
Example2: Create the semantic network for the following facts
(Note: You must append new indirect facts if they exist):
1- A trout is a fish.
2- A fish has gills.
3- A fish has fins.
4- Fish is food.
5- Fish is animal.
Solution:
There is a fact must be added that is “A trout has gills” because all
the fishes have gills. The semantic network is shown below:
57
2) Conceptual Graphs:
Conceptual Graphs is a logical formalism that includes classes, relations,
individuals and quantifiers. This formalism is based on semantic networks,
but it has direct translation to the language of first order predicate logic,
from which it takes its semantics. The main feature is standardized graphical
representation that like in the case of semantic networks allows human to get
quick overview of what the graph means. Conceptual graph is a bipartite
orientated graph where instances of concepts are displayed as rectangle and
conceptual relations are displayed as ellipse. Oriented edges then link these
vertices and denote the existence and orientation of relation. A relation can
have more than one edges, in which case edges are numbered.
58
Example 2: The dog scratch its ear with its paw.
3) Frame:
Consideration of the use of cases suggests how we can tighten up on the
semantic net notation to give something which is more consistent, known as
the frame notation. In the place of an arbitrary number of arcs leading from
a node there are a fixed number of slots representing attributes of an
object.
59
Every object is a member or instance of a class, which it may be thought
of as linking to with an is_a link as we saw before. The class indicates the
number of slots that an object has, and the name of each slot. In the case of a
giving object, for instance, the class of giving objects will indicate that it
has at least three slots: the donor, the recipient and the gift. There
may be further slots indicated as necessary in the class, such as ones to
give the time and location of the action. The time slot may be considered a
formalization of the tense of the verb in a sentence.
In our example we have a general class of birds, and all birds have
attributes flying, feathered and color. The attributes flying and feathered are
Boolean values and are fixed to true at this level, which means that for
all birds the attribute flying is true and the attribute feathered is true.
The attribute color, though defined at this level is not filled, which
means that though all birds have a color, their color varies. Two
subclasses of birds, pet_canaries and ravens are defined. Both have the
color slot filled in, pet_canaries with yellow, ravens with black. The class
pet_canaries has an additional slot, owner, meaning that all pet canaries
have an owner, though it is not filled at this level since it is obviously not
the case that all pet canaries have the same owner. We can therefore say that
any instance of the class pet_canary has attributes color yellow, feathered
true, flying true, and owner, the last of these varying among instances.
Any instance of class raven has color black, feathered true, flying true,
but no attribute owner. The two instances of pet_canary shown, Tweety and
Cheepy have owners John and Mary who are separate instances of the class
person, for simplicity no attributes have been given for class person.
The instance of pet_canary Cheepy has an attribute which is restricted to
itself, vet (since not all pet canaries have their own vet), which is a link
to another person instance, but in this case we have subclass of
person, vet. The frame diagram for this is:
60
We can define a general set of rules for making inferences on this sort of
frame system. We can say that an object is an instance of a class if it is a
member of that class, or if it is a member of a class which is a subclass
of that class. A class is a subclass of another class if it is a kind of that
class, or if it is a kind of some other class which is a subclass of
that class. An object has a particular attribute if it has that attribute
itself, or if it is an instance of a class that has that attribute.
61