unit3

Download as pdf or txt
Download as pdf or txt
You are on page 1of 44

ARTIFICIAL INTELLIGENCE

Artificial Intelligence(AI)

UNIT-3
KNOWLEDGE
REPRESENTATION

Monika Dubey (Asst. Professor)


Department of Computer Science & Engineering
United College of Engineering & Research,
Prayagraj
KNOWLEDGE REPRESENTATION:TOPICS

First order Predicate Logic

Prolog Programming, Unification

Forward Chaining, Backward Chaining, Resolution

Knowledge Representation

Ontological Engineering, categories and objects, events

Mental event and mental objects


Reasoning system for categories

Reasoning with default Information.


KNOWLEDGE REPRESENTATION

•Knowledge representation and reasoning (KR, KRR) is the part of


Artificial intelligence which concerned with AI agents thinking and how
thinking contributes to intelligent behavior of agents.

•It is responsible for representing information about the real world so that a
computer can understand and can utilize this knowledge to solve the
complex real world problems such as diagnosis a medical condition or
communicating with humans in natural language.

•It is also a way which describes how we can represent knowledge in


artificial intelligence. Knowledge representation is not just storing data
into some database, but it also enables an intelligent machine to learn
from that knowledge and experiences so that it can behave intelligently
like a human.
Following are the kind of knowledge which needs to be represented in
AI systems:

Object: All the facts about objects in our world domain. E.g., Guitars
contains strings, trumpets are brass instruments.

Events: Events are the actions which occur in our world.

Performance: It describe behavior which involves knowledge about


how to do things.

Meta-knowledge: It is knowledge about what we know.


Facts: Facts are the truths about the real world and what we
represent.

Knowledge-Base: The central component of the


knowledge-based agents is the knowledge base. It is
represented as KB. The Knowledgebase is a group of the
Sentences (Here, sentences are used as a technical term and
not identical with the English language).

Knowledge: Knowledge is awareness or familiarity gained


by experiences of facts, data, and situations. Following are
the types of knowledge in artificial intelligence:
Objectives of KR&R

Cognitive Adequacy: The representation should be able to mimic human


cognitive processes.

Inferential Adequacy: The system should be able to derive new


knowledge from existing information.

Expressive Power: The representation should be rich enough to express


domain knowledge without ambiguity.

Efficiency: The reasoning algorithms should be computationally


efficient.
Types of Reasoning
❑ Deductive Reasoning: Drawing specific conclusions
from general principles. For example, if all men are
mortal and Socrates is a man, then Socrates is mortal.

❑ Inductive Reasoning: Making generalizations based


on specific observations. For example, if the sun has
risen every day, it will rise tomorrow.

❑ Abductive Reasoning: Finding the best explanation for


a set of observations. For example, if the ground is wet,
it might have rained.

❑ Analogical Reasoning: Solving problems by analogy,


based on the similarity to past situations.

❑ Probabilistic Reasoning: Dealing with uncertainty by


using statistical methods.
Types of knowledge:

Declarative Knowledge:
•Declarative knowledge is to know about something.
•It includes concepts, facts, and objects.
•It is also called descriptive knowledge and expressed in declarative sentences.
•It is simpler than procedural language.

2. Procedural Knowledge
•It is also known as imperative knowledge.
•Procedural knowledge is a type of knowledge which is responsible for
knowing how to do something.
•It can be directly applied to any task.
•It includes rules, strategies, procedures, agendas, etc.
•Procedural knowledge depends on the task on which it can be applied.
Meta-knowledge:
Knowledge about the other types of knowledge is called Meta-knowledge.

4. Heuristic knowledge:
•Heuristic knowledge is representing knowledge of some experts in a filed or
subject.
•Heuristic knowledge is rules of thumb based on previous experiences,
awareness of approaches, and which are good to work but not guaranteed.

5. Structural knowledge:
•Structural knowledge is basic knowledge to problem-solving.
•It describes relationships between various concepts such as kind of, part of,
and grouping of something.
•It describes the relationship that exists between concepts or objects.
Approaches to knowledge representation:

Simple relational knowledge:


It is the simplest way of storing facts which uses the relational method, and
each fact about a set of the object is set out systematically in columns.
This approach of knowledge representation is famous in database systems
where the relationship between different entities is represented.

This approach has little opportunity for inference.


Inheritable knowledge:

•In the inheritable knowledge approach, all data must be stored into a hierarchy of
classes.
•All classes should be arranged in a generalized form or a hierarchal manner. In
this approach, we apply inheritance property. Elements inherit values from other
members of a class.
•This approach contains inheritable knowledge which shows a relation between
instance and class, and it is called instance relation.
•Every individual frame can represent the collection of attributes and its value. In
this approach, objects and values are represented in Boxed nodes.
•We use Arrows which point from objects to their values.
Inferential knowledge:
•Inferential knowledge approach represents knowledge in the
form of formal logics.
•This approach can be used to derive more facts.
•It guaranteed correctness.

Example: Let's suppose there are two statements:


Marcus is a man
All men are mortal
Then it can represent as;

man(Marcus)
∀x = man (x) ----------> mortal (x)s
Procedural knowledge:
•Procedural knowledge approach uses small programs and codes
which describes how to do specific things, and how to proceed.

•In this approach, one important rule is used which is If-Then


rule.

•In this knowledge, we can use various coding languages such as


LISP language and Prolog language.

•We can easily represent heuristic or domain-specific knowledge


using this approach. But it is not necessary that we can
represent all cases in this approach.
Requirements for knowledge Representation system:

1. Representational Accuracy:
KR system should have the ability to represent all kind of required
knowledge.

2. Inferential Adequacy:
KR system should have ability to manipulate the representational
structures to produce new knowledge corresponding to existing
structure.

3. Inferential Efficiency:
The ability to direct the inferential knowledge mechanism into the most
productive directions by storing appropriate guides.

4. Acquisitional efficiency- The ability to acquire the new knowledge


easily using automatic methods.
Techniques of knowledge representation

There are mainly four ways of knowledge representation which are given as
follows:
Logical Representation
Semantic Network Representation
Frame Representation
Production Rules
Fig: Knowledge representation Technique
Logical Representation
•Logical representation is a language with some concrete rules which deals
with propositions and has no ambiguity in representation.
•Logical representation means drawing a conclusion based on various
conditions.
•This representation lays down some important communication rules.
•It consists of precisely defined syntax and semantics which supports the
sound inference.
•Each sentence can be translated into logics using syntax and semantics.

Syntax:
•Syntaxes are the rules which decide how we can construct legal sentences
in the logic.
•It determines which symbol we can use in knowledge representation.
•How to write those symbols.
Semantics:
•Semantics are the rules by which we can interpret the sentence in the
logic.
•Semantic also involves assigning a meaning to each sentence.

Logical representation can be categorized into mainly two logics:


Propositional Logics
Predicate logics
Advantages of logical representation:
•Logical representation enables us to do logical reasoning.
•Logical representation is the basis for the programming languages.

Disadvantages of logical Representation:


•Logical representations have some restrictions and are challenging
to work with.
•Logical representation technique may not be very natural, and
inference may not be so efficient.
•Semantic Network Representation

•Semantic networks are alternative of predicate logic for knowledge


representation. In Semantic networks, we can represent our
knowledge in the form of graphical networks.

•This network consists of nodes representing objects and arcs which


describe the relationship between those objects.

•Semantic networks can categorize the object in different forms and


can also link those objects.

•Semantic networks are easy to understand and can be easily


extended.
•This representation consist of mainly two types of relations:
•IS-A relation (Inheritance)
•Kind-of-relation

•Example: Following are some statements which we need to


represent in the form of nodes and arcs.

Statements:
•Jerry is a cat.
•Jerry is a mammal
•Jerry is owned by Priya.
•Jerry is brown colored.
•All Mammals are animal.
In the above diagram, we have represented the different type of
knowledge in the form of nodes and arcs. Each object is
connected with another object by some relation.
Drawbacks in Semantic representation:

•Semantic networks take more computational time at runtime as we


need to traverse the complete network tree to answer some
questions.
•It might be possible in the worst case scenario that after traversing
the entire tree, we find that the solution does not exist in this
network.
•Semantic networks try to model human-like memory (Which has
1015 neurons and links) to store the information, but in practice,
it is not possible to build such a vast semantic network.

•These types of representations are inadequate as they do not have


any equivalent quantifier, e.g., for all, for some, none, etc.
•Semantic networks do not have any standard definition for the
link names.

•These networks are not intelligent and depend on the creator of


the system.
.
Advantages of Semantic network:
•Semantic networks are a natural representation of knowledge.
•Semantic networks convey meaning in a transparent manner.
•These networks are simple and easily understandable
Frame Representation

A frame is a record like structure which consists of a collection of


attributes and its values to describe an entity in the world.

Frames are the AI data structure which divides knowledge into


substructures by representing stereotypes situations.

It consists of a collection of slots and slot values. These slots may


be of any type and sizes. Slots have names and values which are
called facets.

Facets: The various aspects of a slot is known as Facets. Facets are


features of frames which enable us to put constraints on the
frames.
Example: IF-NEEDED facts are called when data of any
particular slot is needed. A frame may consist of any number of
slots, and a slot may include any number of facets and facets may
have any number of values. A frame is also known as slot-filter
knowledge representation in artificial intelligence.

Frames are derived from semantic networks and later evolved


into our modern-day classes and objects. A single frame is not
much useful. Frames system consist of a collection of frames
which are connected. In the frame, knowledge about an object or
event can be stored together in the knowledge base. The frame is
a type of technology which is widely used in various applications
including Natural language processing and machine visions.
Advantages of frame representation:
•The frame knowledge representation makes the programming
easier by grouping the related data.
•The frame representation is comparably flexible and used by
many applications in AI.
•It is very easy to add slots for new attribute and relations.
•It is easy to include default data and to search for missing
values.
•Frame representation is easy to understand and visualize.
Disadvantages of frame representation:
•In frame system inference mechanism is not be easily
processed.
•Inference mechanism cannot be smoothly proceeded by frame
representation.
•Frame representation has a much generalized approach.
Production Rules

Production rules system consist of (condition, action) pairs


which mean, "If condition then action".

It has mainly three parts:


The set of production rules
Working Memory
The recognize-act-cycle

•In production rules agent checks for the condition and if the
condition exists then production rule fires and corresponding
action is carried out.
• The condition part of the rule determines which rule may be
applied to a problem. And the action part carries out the
associated problem-solving steps.
•This complete process is called a recognize-act cycle.

•The working memory contains the description of the current


state of problems-solving and rule can write knowledge to the
working memory. This knowledge match and may fire other
rules.
•If there is a new situation (state) generates, then multiple
production rules will be fired together, this is called conflict
set. In this situation, the agent needs to select a rule from
these sets, and it is called a conflict resolution.
Example:
IF (at bus stop AND bus arrives) THEN action (get into the bus)
IF (on the bus AND paid AND empty seat) THEN action (sit down).
IF (on bus AND unpaid) THEN action (pay charges).
IF (bus arrives at destination) THEN action (get down from the bus).
Advantages of Production rule:
The production rules are expressed in natural language.
The production rules are highly modular, so we can easily
remove, add or modify an individual rule.

Disadvantages of Production rule:


Production rule system does not exhibit any learning
capabilities, as it does not store the result of the problem
for the future uses.

During the execution of the program, many rules may be


active hence rule-based production systems are inefficient.
First-Order logic:

First-order logic is also known as Predicate logic or First-order predicate logic (FOI).
First-order logic is a powerful language that develops information about the objects in a
more easy way and can also express the relationship between those objects.

It is an extension to propositional logic.

FOL is sufficiently expressive to represent the natural language statements in a concise


way.

First-order logic (like natural language) does not only assume that the world contains
facts like propositional logic but also assumes the following things in the world:

Objects: A, B, people, numbers, colors, wars, theories, squares, pits, wumpus, ......
Relations: It can be unary relation such as: red, round, is adjacent, or n-any relation
such as: the sister of, brother of, has color, comes between
Function: Father of, best friend, third inning of, end of, ......
As a natural language, first-order logic also has
two main parts: Syntax
Semantics
What is Unification?
•Unification is a process of making two different logical atomic expressions identical by finding a
substitution. Unification depends on the substitution process.
•It takes two literals as input and makes them identical using substitution.
•Let Ψ1 and Ψ2 be two atomic sentences and 𝜎 be a unifier such that, Ψ1𝜎 = Ψ2𝜎, then it can be
expressed as UNIFY(Ψ1, Ψ2).
•Example: Find the MGU for Unify{King(x), King(John)}
Let Ψ1 = King(x), Ψ2 = King(John),
Substitution θ = {John/x} is a unifier for these atoms and applying this substitution, and both
expressions will be identical.
•Substitution θ = {John/x} is a unifier for these atoms and applying this substitution,
and both expressions will be identical.
•The UNIFY algorithm is used for unification, which takes two atomic sentences and
returns a unifier for those sentences (If any exist).
•Unification is a key component of all first-order inference algorithms.
•It returns fail if the expressions do not match with each other.
•The substitution variables are called Most General Unifier or MGU.
•E.g. Let's say there are two different expressions, P(x, y), and P(a, f(z)).
•In this example, we need to make both above statements identical to each other. For
this, we will perform the substitution.
Substitute x with a, and y with f(z) in the first expression, and it will be represented
as a/x and f(z)/y.
With both the substitutions, the first expression will be identical to the second expression and
the substitution set will be: [a/x, f(z)/y].

Conditions for Unification:


Following are some basic conditions for unification:
•Predicate symbol must be same, atoms or expression with different predicate symbol can
never be unified.
•Number of Arguments in both expressions must be identical.
•Unification will fail if there are two similar variables present in the same expression.
•Implementation of the Algorithm
•Step.1: Initialize the substitution set to be empty.
•Step.2: Recursively unify atomic sentences:
•Check for Identical expression match.
•If one expression is a variable vi, and the other is a term ti which does not contain variable
vi, then:
•Substitute ti / vi in the existing substitutions
•Add ti /vi to the substitution setlist.
•If both the expressions are functions, then function name must be similar, and the number
of arguments must be the same in both the expression.
Question
2.) Given the expressions F(a, G(b, c)) and F(x, G(d, e)), find the MGU for these
complex expressions.

You might also like