Knowledge Representation
Knowledge
• In order to solve the complex problems encountered in
AI, one generally needs a large amount of knowledge,
and suitable mechanisms for representing and
manipulating all that knowledge.
• Knowledge can take many forms. Some simple
examples are:
John has an umbrella
It is raining
An umbrella stops you getting wet when it’s raining
An umbrella will only stop you getting wet if it is used
properly
Umbrellas are not so useful when it is very windy
Knowledge
Thus in solving problems in AI we must represent
knowledge and there are two entities to deal
with:
1. Facts
2. Representation of the facts
• These entities can be structured at two levels:
1. The knowledge level
2. The symbol level
What is a Knowledge Representation?
• Knowledge representation (KR) is the study of
– how knowledge and facts about the world can be represented, and
– what kinds of reasoning can be done with that knowledge.
• The objective of a knowledge representation is to express
knowledge in a computer tractable form, so that it can be used to
enable our AI agents to perform well.
• Important KR questions one has to consider:
– representational adequacy,
– representational quality,
– computational cost of related inferences,
– representation of default, common sense, or uncertain information.
Knowledge Representation
• A knowledge representation language is defined by two
aspects:
1. Syntax The syntax of a language defines which
configurations of the components of the language
constitute valid sentences.
2. Semantics The semantics defines which facts in the world
the sentences refer to, and hence the statement about
the world that each sentence makes.
• Suppose the language is arithmetic, then
‘x’, ‘≥’ and ‘y’ are components (or symbols or words) of the
language the syntax says that ‘x ≥ y’ is a valid sentence in the
language, but ‘≥≥ x y’ is not; the semantics say that ‘x ≥ y’ is
false if y is bigger than x, and true otherwise
How can knowledge be represented?
• Symbolic Methods
Declarative Languages
Imperative Languages
Hybrid Languages
Rules
Frames
Semantic Networks…
• Non Symbolic Methods
Neural Networks
Genetic Algorithms
General goal of knowledge
representation
• To develop formalisms for providing high-level
descriptions of the world that can be
effectively used to build intelligent
applications
Knowledge-based agent
• Knowledge base (KB):
– A set of sentences that describe the world and its behaviour
in some formal (representational) language
– Typically domain specific
• Inference engine:
– A set of procedures that use the representational language
to infer new facts from known ones or answer a variety of KB
queries. Inferences typically require search.
– Typically domain independent
Mapping between Facts and
Representations
Mapping between Facts and
Representations
Properties of Knowledge
Representation Systems
• Representational Adequacy
• Inferential Adequacy
• Inferential Efficiency
• Acquisitional Efficiency
• Till date no single system optimises all of the
above.
Approaches to Knowledge
Representation/Techniques
• Simple Relational Knowledge (Databases)
– Simple way to store facts.
– Each fact about a set of objects is kept
systematically in columns.
– Little opportunity for inference.
– Knowledge basis for inference engines.
– Player_infor(‘hank aaron’, ‘6-0’, 180,right-right)
Player Height Weight Bats-Throws
Ted Williams 6-2 215 Left-left
Hank Aaron 6-0 180 Right-Right
Inheritable Knowledge
Corresponds to :
• A set of attributes and
• Associated values
That together describe objects of the
knowledge base
• One of the most useful form of inference is:
property inheritance
Person Right
isa Handed
Adult- Male 6-0
height
isa
Bats
Baseball
Equal to handed .252
Player
isa Batting Average
Hank Aron
• This structure is known as a slot and filler
structure, semantic network or a collection of
frames.
Inferential knowledge
• Knowledge about mechanisms that can be used to
infer new knowledge from the knowledge base.
• Represent knowledge as formal logic.
• Examples: deduction, resolution, ...
• ∀X,Y: student(X) ∧ course(Y) ∧score(X, Y) <
3→failed(X,Y)
• A set of strict rules
– Can be used to derive more facts.
– Truths of new statements can be verified.
– Guaranteed correctness.
– Popular in AI systems. E.g automated theorem proving
Procedural knowledge
• “what to do when”
• Basic idea- Knowledge encoded in some
procedures
– Small programs that know how to do specific
things, how to proceed.