[go: up one dir, main page]

0% found this document useful (0 votes)
21 views29 pages

Chapter 03 Part II

Chapter 3 discusses Knowledge Representation and Reasoning (KRR) in artificial intelligence, which enables machines to understand and utilize knowledge to solve real-world problems. It outlines various types of knowledge, approaches to representation, and the architecture of knowledge-based agents, emphasizing the importance of a knowledge base and inference system for intelligent behavior. The chapter also details different techniques for knowledge representation, including logical, semantic networks, frames, and production rules, each with its advantages and disadvantages.

Uploaded by

hiluf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views29 pages

Chapter 03 Part II

Chapter 3 discusses Knowledge Representation and Reasoning (KRR) in artificial intelligence, which enables machines to understand and utilize knowledge to solve real-world problems. It outlines various types of knowledge, approaches to representation, and the architecture of knowledge-based agents, emphasizing the importance of a knowledge base and inference system for intelligent behavior. The chapter also details different techniques for knowledge representation, including logical, semantic networks, frames, and production rules, each with its advantages and disadvantages.

Uploaded by

hiluf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Chapter 3

Knowledge Representation and Reasoning


3.1 What is Knowledge Representation?
Humans are best at understanding, reasoning, and interpreting knowledge. Human knows things, which is
knowledge and as per their knowledge they perform various actions in the real world. But, how machines do all
these things comes under knowledge representation and reasoning. Hence, we can describe Knowledge
representation as following:
o 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.
o 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.
o 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.
What to Represent:
Following are the kind of knowledge which needs to be represented in AI systems:
o Object: All the facts about objects in our world domain. Eg. Guitars contains strings, trumpets are brass instruments.
o Events: Events are the actions which occur in our world.
o Performance: It describes behavior which involves knowledge about how to do things.
o Meta-knowledge: It is knowledge about what we know.
o Facts: Facts are the truths about the real world and what we represent.
o 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
AD
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:
Types of knowledge
Following are the various types of knowledge:

1. Declarative Knowledge:
oDeclarative knowledge is to know about something.
oIt includes concepts, facts, and objects.
oIt is also called descriptive knowledge and expressed in declarative sentences.
oIt is simpler than procedural language.
2. Procedural Knowledge: It is also known as imperative knowledge.
o Procedural knowledge is a type of knowledge which is responsible for knowing how to do something.
o It can be directly applied to any task.
Introduction to AI Compiled by: Tesfaye M. 1
o It includes rules, strategies, procedures, agendas, etc.
o Procedural knowledge depends on the task on which it can be applied.
3. 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 field or subject.
oHeuristic 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.
o It describes relationships between various concepts such as kind of, part of, and grouping of something.
o It describes the relationship that exists between concepts or objects.

The Relation between Knowledge and Intelligence:


Knowledge of real-worlds plays a vital role in intelligence and same for creating artificial intelligence.
Knowledge plays an important role in demonstrating intelligent behavior in AI agents. An agent is only able to
accurately act on some input when he has some knowledge or experience about that input.
Let's suppose if you met some person who is speaking in a language which you don't know, then how you will
able to act on that. The same thing applies to the intelligent behavior of the agents.
As we can see in below diagram, there is one decision maker which act by sensing the environment and using
knowledge. But if the knowledge part will not present then, it cannot display intelligent behavior.

AD
AI knowledge Cycle:
An Artificial Intelligence system has the following components for displaying intelligent behavior:
o Perception
o Learning
o Knowledge Representation and Reasoning
o Planning
o Execution

The above diagram is showing how an AI system can interact with the real world and what components help it
to show intelligence. AI system has perception component by which it retrieves information from its
environment. It can be visual, audio or another form of sensory input. The learning component is responsible for
learning from data captured by perception component. In the complete cycle, the main components are
knowledge representation and reasoning. These two components are involved in showing the intelligence in
machine-like humans. These two components are independent with each other but also coupled together. The
planning and execution depend on analysis of Knowledge representation and reasoning.
Approaches to Knowledge Representation:
There are mainly four approaches to knowledge representation, which are given below:

Introduction to AI Compiled by: Tesfaye M. 2


1. Simple Relational Knowledge:
o 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.
o This approach of knowledge representation is famous in database systems where the relationship between
different entities is represented.
o This approach has little opportunity for inference.

Example: The following is the simple relational knowledge representation.


Player Weight Age
Player1 65 23
Player2 58 18
Player3 75 24

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

3. Inferential knowledge:
o
Inferential knowledge approach represents knowledge in the form of formal logics.
o
This approach can be used to derive more facts.
o
It guaranteed correctness.
Example: Let's suppose there are two statements:
a. Abebe is a man
b. All men are mortal
Then it can represent as: man(Abebe)
∀x = man (x) ----------> mortal (x)s
4. Procedural Knowledge:
o Procedural knowledge approach uses small programs and codes which describes how to do specific
things, and how to proceed.
o In this approach, one important rule is used which is If-Then rule.
o In this knowledge, we can use various coding languages such as LISP and Prolog languages.
o We can easily represent heuristic or domain-specific knowledge using this approach.
o But it is not necessary that we can represent all cases in this approach.
Requirements for Knowledge Representation System:
A good knowledge representation system must possess the following properties.
AD

1. Representational Accuracy: KR system should have the ability to represent all kind of required knowledge.
Introduction to AI Compiled by: Tesfaye M. 3
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:
1. Logical Representation
2. Semantic Network Representation
3. ]Frame Representation
4. Production Rules

1. 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:
o Syntaxes are the rules which decide how we can construct legal sentences in the logic.
o It determines which symbol we can use in knowledge representation.
o How to write those symbols.
Semantics:
o Semantics are the rules by which we can interpret the sentence in the logic.
o Semantic also involves assigning a meaning to each sentence.
Logical representation can be categorized into mainly two logics:
a. Propositional Logics
b. Predicate logics
Advantages of Logical Representation:
1. Logical representation enables us to do logical reasoning.
2. Logical representation is the basis for the programming languages.
Disadvantages of Logical Representation:
1. Logical representations have some restrictions and are challenging to work with.
2. Logical representation technique may not be very natural, and inference may not be so efficient.
2. 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.
Introduction to AI Compiled by: Tesfaye M. 4
This representation consists of mainly two types of relations:
a. IS-A relation (Inheritance)
b. Kind-of-relation
Example: Following are some statements which we need to represent in the form of nodes and arcs.
Statements:
a. Jerry is a cat. b. Jerry is a mammal c. Jerry is owned by Priya.
d. Jerry is brown colored. e. 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:
1. 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.
2. 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.
3. These types of representations are inadequate as they do not have any equivalent quantifier, e.g., for all,
for some, none, etc.
4. Semantic networks do not have any standard definition for the link names.
5. These networks are not intelligent and depend on the creator of the system.
Advantages of Semantic network:
1. Semantic networks are a natural representation of knowledge.
2. Semantic networks convey meaning in a transparent manner.
3. These networks are simple and easily understandable.
3. 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 consists 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.
Example: 1, Let's take an example of a frame for a book
Slots Filters
Title Artificial Intelligence
Genre Computer Science
Introduction to AI Compiled by: Tesfaye M. 5
Author Peter Norvig
Edition Third Edition
Year 1996
Page 1152

Example 2, Let's suppose we are taking an entity, Peter. Peter is an engineer as a profession, and his age is 25,
he lives in city London, and the country is England. So following is the frame representation for this:

Slots Filter
Name Peter
Profession Doctor
Age 25
Marital status Single
Weight 78
Advantages of Frame Representation:
1. The frame knowledge representation makes the programming easier by grouping the related data.
2. The frame representation is comparably flexible and used by many applications in AI.
3. It is very easy to add slots for new attribute and relations.
4. It is easy to include default data and to search for missing values.
5. Frame representation is easy to understand and visualize.
Disadvantages of Frame Representation:
1. In frame system inference mechanism is not be easily processed.
2. Inference mechanism cannot be smoothly proceeded by frame representation.
3. Frame representation has a much generalized approach.
A4. Production Rules
Production rules system consist of (condition, action) pairs which mean, "If condition then action". It has
mainly three parts:
o The set of production rules
o Working Memory
o 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:
o IF (at bus stop AND bus arrives) THEN action (get into the bus)
o IF (on the bus AND paid AND empty seat) THEN action (sit down).
o IF (on bus AND unpaid) THEN action (pay charges).
o IF (bus arrives at destination) THEN action (get down from the bus).
Advantages of Production rule:
1. The production rules are expressed in natural language.
2. The production rules are highly modular, so we can easily remove, add or modify an individual rule.

Introduction to AI Compiled by: Tesfaye M. 6


Disadvantages of Production rule:
1. Production rule system does not exhibit any learning capabilities, as it does not store the result of the
problem for the future uses.
2. During the execution of the program, many rules may be active hence rule-based production systems are
inefficient.
3.2 Knowledge-Based Agent in Artificial intelligence
o An intelligent agent needs knowledge about the real world for taking decisions and reasoning to act
efficiently.
o Knowledge-based agents are those agents who have the capability of maintaining an internal state of
knowledge, reason over that knowledge, update their knowledge after observations and take actions. These
agents can represent the world with some formal representation and act intelligently.
o Knowledge-based agents are composed of two main parts:
o Knowledge-base and Inference system.
A knowledge-based agent must able to do the following:
o An agent should be able to represent states, actions, etc.
o An agent should be able to incorporate new percepts
o An agent can update the internal representation of the world
o An agent can deduce the internal representation of the world
o An agent can deduce appropriate actions.=

The architecture of knowledge-based agent:

The above diagram is representing a generalized architecture for a knowledge-based agent. The knowledge-
based agent(KBA) take input from the environment by perceiving the environment. The input is taken by the
inference engine of the agent and which also communicate with KB to decide as per the knowledge store in KB.
The learning element of KBA regularly updates the KB by learning new knowledge.
Knowledge Base: Knowledge-base is a central component of a knowledge-based agent, it is also known as
KB. It is a collection of sentences (here 'sentence' is a technical term and it is not identical to sentence in
English). These sentences are expressed in a language which is called a knowledge representation language.
The Knowledge-base of KBA stores fact about the world.
Why Use a knowledge base?
Knowledge-base is required for updating knowledge for an agent to learn with experiences and take action as
per the knowledge.
Inference System
Inference means deriving new sentences from old. Inference system allows us to add a new sentence to the
knowledge base. A sentence is a proposition about the world. Inference system applies logical rules to the KB to
deduce new information.
Inference system generates new facts so that an agent can update the KB. An inference system works mainly in
two rules given as Forward Chaining and Backward Chaining

Introduction to AI Compiled by: Tesfaye M. 7


Operations Performed by KBA
Following are three operations which are performed by KBA in order to show the intelligent behavior:
1. TELL: Operation tells the knowledge base what it perceives from the environment.
2. ASK: This operation asks the knowledge base what action it should perform.
3. Perform: It performs the selected action.
Various levels of knowledge-based agent:
A knowledge-based agent can be viewed at different levels which are given below:
1. Knowledge level
Knowledge level is the first level of knowledge-based agent, and in this level, we need to specify what the agent
knows, and what the agent goals are. With these specifications, we can fix its behavior. For example, suppose
an automated taxi agent needs to go from a station A to station B, and he knows the way from A to B, so this
comes at the knowledge level.
2. Logical Level:
At this level, we understand that how the knowledge representation of knowledge is stored. At this level,
sentences are encoded into different logics. At the logical level, an encoding of knowledge into logical
sentences occurs. At the logical level we can expect to the automated taxi agent to reach to the destination B.
3. Implementation level:
This is the physical representation of logic and knowledge. At the implementation level agent perform actions
as per logical and knowledge level. At this level, an automated taxi agent actually implement his knowledge and
logic so that he can reach to the destination.
AD

Approaches to Designing a Knowledge-Based Agent:


There are mainly two approaches to build a knowledge-based agent:
1. Declarative Approach: In this approach, we can create a knowledge-based agent by initializing with an
empty knowledge base and telling the agent all the sentences with which we want to start with.
2. Procedural Approach: In the procedural approach, we directly encode desired behavior as a program code.
Which means we just need to write a program that already encodes the desired behavior or agent.
However, in the real world, a successful agent can be built by combining both declarative and procedural
approaches, and declarative knowledge can often be compiled into more efficient procedural code.

3.3 Propositional Logic in Artificial Intelligence


Propositional logic (PL) is the simplest form of logic where all the statements are made by propositions. A
proposition is a declarative statement which is either true or false. It is a technique of knowledge representation
in logical and mathematical form.
Example:
a) It is Sunday.
b) The Sun rises from West (False proposition)
c) 3+3= 7(False proposition)
d) 5 is a prime number.
Following are some basic facts about propositional logic:
o Propositional logic is also called Boolean logic as it works on 0 and 1.
o In propositional logic, we use symbolic variables to represent the logic, and we can use any symbol for a
representing a proposition such as A, B, C, P, Q, R, etc.
o Propositions can be either true or false, but it cannot be both.
o Propositional logic consists of an object, relations or function, and logical connectives.
o These connectives are also called logical operators.
o The propositions and connectives are the basic elements of the propositional logic.
o Connectives can be said as a logical operator which connects two sentences.
o A proposition formula which is always true is called tautology, and it is also called a valid sentence.
o A proposition formula which is always false is called Contradiction.
Introduction to AI Compiled by: Tesfaye M. 8
o Statements which are questions, commands, or opinions are not propositions such as "Where is
Rohini", "How are you", "What is your name", are not propositions.
Syntax of Propositional Logic:
The syntax of propositional logic defines the allowable sentences for the knowledge representation. There are
two types of Propositions:
a. Atomic Propositions
b. Compound propositions
o Atomic Proposition: Atomic propositions are the simple propositions. It consists of a single proposition
symbol. These are the sentences which must be either true or false.
Example:
a) 2+2 is 4, it is an atomic proposition as it is a true fact.
b) "The Sun is cold" is also a proposition as it is a false fact.
o Compound proposition: Compound propositions are constructed by combining simpler or atomic
propositions, using parenthesis and logical connectives.
Precedence of connectives:
Just like arithmetic operators, there is a precedence order for propositional connectors or logical operators. This order
should be followed while evaluating a propositional problem. Following is the list of the precedence order for operators:
Precedence Operators
First Precedence Parenthesis
Second Precedence Negation
Third Precedence Conjunction(AND)
Fourth Precedence Disjunction(OR)
Fifth Precedence Implication
Six Precedence Biconditional

Logical Equivalence:
Logical equivalence is one of the features of propositional logic. Two propositions are said to be logically
equivalent if and only if the columns in the truth table are identical to each other.
Let's take two propositions A and B, so for logical equivalence, we can write it as A⇔B. In below truth table
we can see that column for ¬A∨ B and A→B, are identical hence A is Equivalent to B

Properties of Operators:
Commutativity:
P∧ Q= Q ∧ P, or P ∨ Q = Q ∨ P.
Associativity:
(P ∧ Q) ∧ R= P ∧ (Q ∧ R), or (P ∨ Q) ∨ R= P ∨ (Q ∨ R)

Identity element:
P ∧ True = P, or P ∨ True= True.
Distributive: P∧ (Q ∨ R) = (P ∧ Q) ∨ (P ∧ R). or P ∨ (Q ∧ R) = (P ∨ Q) ∧ (P ∨ R).
DE Morgan's Law:
¬ (P ∧ Q) = (¬P) ∨ (¬Q) or ¬ (P ∨ Q) = (¬ P) ∧ (¬Q).
Double-negation elimination:
¬ (¬P) = P.
Limitations of Propositional logic:
o We cannot represent relations like ALL, some, or none with propositional logic. Example:
a. All the girls are intelligent.
Introduction to AI Compiled by: Tesfaye M. 9
b. Some apples are sweet.
o Propositional logic has limited expressive power.
o In propositional logic, we cannot describe statements in terms of their properties or logical relationships.
Rules of Inference in Artificial intelligence
Inference:
In artificial intelligence, we need intelligent computers which can create new logic from old logic or by
evidence, so generating the conclusions from evidence and facts is termed as Inference.
Inference rules:
Inference rules are the templates for generating valid arguments. Inference rules are applied to derive proofs in
artificial intelligence, and the proof is a sequence of the conclusion that leads to the desired goal.
In inference rules, the implication among all the connectives plays an important role. Following are some
terminologies related to inference rules:
o Implication: It is one of the logical connectives which can be represented as P → Q. It is a Boolean
expression.
o Converse: The converse of implication, which means the right-hand side proposition goes to the left-
hand side and vice-versa. It can be written as Q → P.
o Contrapositive: The negation of converse is termed as contrapositive, and it can be represented as ¬ Q
→ ¬ P.
o Inverse: The negation of implication is called inverse. It can be represented as ¬ P → ¬ Q.

Types of Inference rules:


1. Modus Ponens:
The Modus Ponens rule is one of the most important rules of inference, and it states that if P and P → Q is true,
then we can infer that Q will be true. It can be represented as:

Example:
Statement-1: "If I am sleepy then I go to bed" ==> P→ Q
Statement-2: "I am sleepy" ==> P
Conclusion: "I go to bed." ==> Q.
Hence, we can say that, if P→ Q is true and P is true then Q will be true.
Proof by Truth table:

2. Modus Tollens:
The Modus Tollens rule state that if P→ Q is true and ¬ Q is true, then ¬ P will also true. It can be represented
as:

Statement-1: "If I am sleepy then I go to bed" ==> P→ Q


Statement-2: "I do not go to the bed."==> ~Q
Statement-3: Which infers that "I am not sleepy" => ~P
Proof by Truth table:

Introduction to AI Compiled by: Tesfaye M. 10


3. Hypothetical Syllogism:
The Hypothetical Syllogism rule state that if P→R is true whenever P→Q is true, and Q→R is true. It can be
represented as the following notation:
Example:
Statement-1: If you have my home key then you can unlock my home. P→Q
Statement-2: If you can unlock my home then you can take my money. Q→R
Conclusion: If you have my home key then you can take my money. P→R
Proof by truth table:

4. Disjunctive Syllogism:
The Disjunctive syllogism rule state that if P∨Q is true, and ¬P is true, then Q will be true. It can be represented
as:
AD

Example:
Statement-1: Today is Sunday or Monday. ==>P∨Q
Statement-2: Today is not Sunday. ==> ¬P
Conclusion: Today is Monday. ==> Q
Proof by truth-table:

5. Addition:
The Addition rule is one the common inference rule, and it states that If P is true, then P∨Q will be true.

Example:
AD
Statement: I have a vanilla ice-cream. ==> P
Statement-2: I have Chocolate ice-cream.
Conclusion: I have vanilla or chocolate ice-cream. ==> (P∨Q)
Proof by Truth-Table:

6. Simplification:
The simplification rule state that if P∧ Q is true, then Q or P will also be true. It can be represented as:

Introduction to AI Compiled by: Tesfaye M. 11


Proof by Truth-Table:

7. Resolution:
The Resolution rule state that if P∨Q and ¬ P∧R is true, then Q∨R will also be true. It can be represented as

Proof by Truth-Table:

The Wumpus World in Artificial intelligence


Wumpus World:
The Wumpus world is a simple world example to illustrate the worth of a knowledge-based agent and to
represent knowledge representation. It was inspired by a video game Hunt the Wumpus by Gregory Yob in 1973.
The Wumpus world is a cave which has 4/4 rooms connected with passageways. So there are total 16 rooms
which are connected with each other. We have a knowledge-based agent who will go forward in this world. The
cave has a room with a beast which is called Wumpus, who eats anyone who enters the room. The Wumpus can
be shot by the agent, but the agent has a single arrow. In the Wumpus world, there are some Pits rooms which
are bottomless, and if agent falls in Pits, then he will be stuck there forever. The exciting thing with this cave is
that in one room there is a possibility of finding a heap of gold. So the agent goal is to find the gold and climb
out the cave without fallen into Pits or eaten by Wumpus. The agent will get a reward if he comes out with gold,
and he will get a penalty if eaten by Wumpus or falls in the pit.
Following is a sample diagram for representing the Wumpus world. It is showing some rooms with Pits, one
room with Wumpus and one agent at (1, 1) square location of the world.

There are also some components which can help the agent to navigate the cave. These components are
given as follows:
a. The rooms adjacent to the Wumpus room are smelly, so that it would have some stench.
b. The room adjacent to PITs has a breeze, so if the agent reaches near to PIT, then he will perceive the
breeze.
c. There will be glitter in the room if and only if the room has gold.
d. The Wumpus can be killed by the agent if the agent is facing to it, and Wumpus will emit a horrible
scream which can be heard anywhere in the cave.
PEAS description of Wumpus world:
To explain the Wumpus world we have given PEAS description as below:
Performance measure:
o +1000 reward points if the agent comes out of the cave with the gold.
o -1000 points penalty for being eaten by the Wumpus or falling into the pit.

Introduction to AI Compiled by: Tesfaye M. 12


o -1 for each action, and -10 for using an arrow.
o The game ends if either agent dies or came out of the cave.
Environment:
o A 4*4 grid of rooms.
o The agent initially in room square [1, 1], facing toward the right.
o Location of Wumpus and gold are chosen randomly except the first square [1,1].
o Each square of the cave can be a pit with probability 0.2 except the first square.
AD
Actuators:
o Left turn,
o Right turn
o Move forward
o Grab
o Release
o Shoot.
Sensors:
o The agent will perceive the stench if he is in the room adjacent to the Wumpus. (Not diagonally).
o The agent will perceive breeze if he is in the room directly adjacent to the Pit.
o The agent will perceive the glitter in the room where the gold is present.
o The agent will perceive the bump if he walks into a wall.
o When the Wumpus is shot, it emits a horrible scream which can be perceived anywhere in the cave.
o These percepts can be represented as five element list, in which we will have different indicators for
each sensor.
o Example if agent perceives stench, breeze, but no glitter, no bump, and no scream then it can be
represented as:
[Stench, Breeze, None, None, None].
The Wumpus World Properties:
o Partially observable: The Wumpus world is partially observable because the agent can only perceive
the close environment such as an adjacent room.
o Deterministic: It is deterministic, as the result and outcome of the world are already known.
o Sequential: The order is important, so it is sequential.
o Static: It is static as Wumpus and Pits are not moving.
o Discrete: The environment is discrete.
o One agent: The environment is a single agent as we have one agent only and Wumpus is not considered
as an agent.
Exploring the Wumpus world:
Now we will explore the Wumpus world and will determine how the agent will find its goal by applying logical
reasoning.
Agent's First step: Initially, the agent is in the first room or on the square [1,1], and we already know that this
room is safe for the agent, so to represent on the below diagram (a) that room is safe we will add symbol OK.
Symbol A is used to represent agent, symbol B for the breeze, G for Glitter or gold, V for the visited room, P
for pits, W for Wumpus.
At Room [1,1] agent does not feel any breeze or any Stench which means the adjacent squares are also OK.

Introduction to AI Compiled by: Tesfaye M. 13


Agent's second Step: Now agent needs to move forward, so it will either move to [1, 2], or [2,1]. Let's suppose
agent moves to the room [2, 1], at this room agent perceives some breeze which means Pit is around this room.
The pit can be in [3, 1], or [2,2], so we will add symbol P? to say that, is this Pit room?
Now agent will stop and think and will not make any harmful move. The agent will go back to the [1, 1] room.
The room [1,1], and [2,1] are visited by the agent, so we will use symbol V to represent the visited squares.
Agent's third step: At the third step, now agent will move to the room [1,2] which is OK. In the room [1,2]
agent perceives a stench which means there must be a Wumpus nearby. But Wumpus cannot be in the room
[1,1] as by rules of the game, and also not in [2,2] (Agent had not detected any stench when he was at [2,1]).
Therefore agent infers that Wumpus is in the room [1,3], and in current state, there is no breeze which means in
[2,2] there is no Pit and no Wumpus. So it is safe, and we will mark it OK, and the agent moves further in [2,2].

Agent's fourth step:


At room [2,2], here no stench and no breezes present so let's suppose agent decides to move to [2,3]. At room
[2,3] agent perceives glitter, so it should grab the gold and climb out of the cave.

Knowledge-base for Wumpus world


As in the previous topic we have learned about the wumpus world and how a knowledge-based agent evolves
the world. Now in this topic, we will create a knowledge base for the wumpus world, and will derive some
proves for the Wumpus-world using propositional logic.
The agent starts visiting from first square [1, 1], and we already know that this room is safe for the agent. To
build a knowledge base for wumpus world, we will use some rules and atomic propositions. We need symbol [i,
j] for each location in the wumpus world, where i is for the location of rows, and j for column location.

Atomic proposition variable for Wumpus world:


o Let Pi,j be true if there is a Pit in the room [i, j].

o Let Bi,j be true if agent perceives breeze in [i, j], (dead or alive).
o Let Wi,j be true if there is wumpus in the square[i, j].
o Let Si,j be true if agent perceives stench in the square [i, j].
o Let Vi,j be true if that square[i, j] is visited.
o Let Gi,j be true if there is gold (and glitter) in the square [i, j].
o Let OKi,j be true if the room is safe.
Some Propositional Rules for the wumpus world:

Introduction to AI Compiled by: Tesfaye M. 14


Representation of Knowledgebase for Wumpus world:
Following is the Simple KB for wumpus world when an agent moves from room [1, 1], to room [2,1]:

Here in the first row, we have mentioned propositional variables for room[1,1], which is showing that room
does not have wumpus(¬ W11), no stench (¬S11), no Pit(¬P11), no breeze(¬B11), no gold (¬G11), visited (V11),
and the room is Safe(OK11).
In the second row, we have mentioned propositional variables for room [1,2], which is showing that there is no
wumpus, stench and breeze are unknown as an agent has not visited room [1,2], no Pit, not visited yet, and the
room is safe.
In the third row we have mentioned propositional variable for room [2,1], which is showing that there is no
wumpus(¬ W21), no stench (¬S21), no Pit (¬P21), Perceives breeze(B21), no glitter(¬G21), visited (V21), and
room is safe (OK21).
Prove that Wumpus is in the room (1, 3)
We can prove that wumpus is in the room (1, 3) using propositional rules which we have derived for the
wumpus world and using inference rule.
o Apply Modus Ponens with ¬S11 and R1:
AD
We will firstly apply MP rule with R1 which is ¬S11 → ¬ W11 ^ ¬ W12 ^ ¬ W21, and ¬S11 which will give the
output ¬ W11 ^ W12 ^ W12.

o Apply And-Elimination Rule:

After applying And-elimination rule to ¬ W11 ∧ ¬ W12 ∧ ¬ W21, we will get three statements:
¬ W11, ¬ W12, and ¬W21.
o Apply Modus Ponens to ¬S21, and R2:
Now we will apply Modus Ponens to ¬S21 and R2 which is ¬S21 → ¬ W21 ∧¬ W22 ∧ ¬ W31, which will give the
Output as ¬ W21 ∧ ¬ W22 ∧¬ W31

o Apply And -Elimination rule:

Introduction to AI Compiled by: Tesfaye M. 15


Now again apply And-elimination rule to ¬ W21 ∧ ¬ W22 ∧¬ W31, We will get three statements:
¬ W21, ¬ W22, and ¬ W31.
o Apply MP to S12 and R4:
Apply Modus Ponens to S12 and R4 which is S12 → W13 ∨. W12 ∨. W22 ∨.W11, we will get the output as W13∨
W12 ∨ W22 ∨.W11.

o Apply Unit resolution on W13 ∨ W12 ∨ W22 ∨W11 and ¬ W11 :

After applying Unit resolution formula on W13 ∨ W12 ∨ W22 ∨W11 and ¬ W11 we will get W13 ∨ W12 ∨ W22.

o Apply Unit resolution on W13 ∨ W12 ∨ W22 and ¬ W22 :

After applying Unit resolution on W13 ∨ W12 ∨ W22, and ¬W22, we will get W13 ∨ W12 as output.

o Apply Unit Resolution on W13 ∨ W12 and ¬ W12 :

After Applying Unit resolution on W13 ∨ W12 and ¬ W12, we will get W13 as an output; hence it is proved that
the Wumpus is in the room [1, 3].

3.4 First-Order Logic in Artificial intelligence


In the topic of Propositional logic (PL), we have seen that how to represent statements using propositional
logic. But unfortunately, in propositional logic, we can only represent the facts, which are either true or false.
PL is not sufficient to represent the complex sentences or natural language statements.
The propositional logic has very limited expressive power.
Here are the weaknesses of propositional logic.
• Hard to identify “individuals” (e.g., Abebe, 3)
• Can’t directly talk about properties of individuals or relations between individuals (e.g., “Abebe is tall”)
• Generalizations, patterns, regularities can’t easily be represented (e.g., “All triangles have 3 sides”)
Consider the following sentence, which we cannot be represented using Propositional logic.
o "Some humans are intelligent", or "Abebe likes football."
To represent the above statements, PL is not sufficient, so we required some more powerful logic such as First-
Order Logic (FOL).

Introduction to AI Compiled by: Tesfaye M. 16


First-Order Logic (FOL):
 First-orderlogic is another way of knowledge representation in artificial intelligence. It is an extension to
propositional logic.
 FOL is sufficiently expressive enough to represent the natural language statements in a concise way.
 First-order logic is also known as Predicate logic or First-order predicate logic. 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.
 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 and Semantics.
Syntax of First-Order Logic:
The syntax of FOL determines which collection of symbols is a logical expression in first-order logic. The basic
syntactic elements of first-order logic are symbols. We write statements in short-hand notation in FOL.
Basic Elements of First-order logic: The following are the basic elements of FOL syntax:
Constant 1, 2, A, John, cat,....
Variables x, y, z, a, b,....
Predicates Brother, Father, >,....
Function sqrt, LeftLegOf, ....
Connectives ∧, ∨, ¬, ⇒, ⇔
Equality ==
Quantifier ∀, ∃

Atomic sentences: are the most basic sentences of first-order logic. These sentences are formed from a
predicate symbol followed by a parenthesis with a sequence of terms.
o We can represent atomic sentences as Predicate (term1, term2, ......, term n).
Example: Abebe and Taye bare brothers: => Brothers(Abebe, Taye).
Chinky is a cat: => cat (Chinky).
Complex Sentences: are made by combining atomic sentences using connectives.
First-order logic statements can be divided into two parts:
 Subject: Subject is the main part of the statement.
 Predicate: A predicate can be defined as a relation which binds two atoms together in a statement.
Consider the statement: "X is an integer.", it consists of two parts, the first part X is the subject of the
statement and second part "is an integer," is known as a predicate.

3.4.1 Quantifiers in First-order logic:


 A quantifier is a language element which generates quantification, and quantification specifies the quantity of
specimen in the universe of discourse.
 These are the symbols that permit to determine or identify the range and scope of the variable in the logical
expression. There are two types of quantifier:
A. Universal Quantifier (for all, everyone, everything) B. Existential Quantifier (for some, at least one)
Universal Quantifier: is a symbol of logical representation, which specifies that the statement within its range
is true for everything or every instance of a particular thing. The Universal quantifier is represented by a symbol
∀, which resembles an inverted A.

Introduction to AI Compiled by: Tesfaye M. 17


If x is a variable, then ∀x is read as: For all x, For each x, For every x.
Example: All men drink coffee.
Let a variable x which refers to a man so all x can be represented in UOD as below:

∀x men(x) → drink (x, coffee). It will be read as: There are all x where x is a man who drink coffee.
Existential Quantifiers: are the types of quantifiers, which express that the statement within its scope is
true for at least one instance of something. It is denoted by the logical operator ∃, which resembles as inverted
E. When it is used with a predicate variable then it is called as an existential quantifier. If x is a variable, then
existential quantifier will be ∃x or ∃(x). It will be read as: There exists a 'x', For some 'x', For at least one 'x'
Example: Some boys are intelligent.

∃x: boys(x) ∧ intelligent(x), will be read as: There are some x where x is a boy who is intelligent.
Points to remember:
 The main connective for universal quantifier ∀ is implication →.
 The main connective for existential quantifier ∃ is and ∧.
Properties of Quantifiers:
 In universal quantifier, ∀x∀y is similar to ∀y∀x.
 In Existential quantifier, ∃x∃y is similar to ∃y∃x.
 ∃x∀y is not similar to ∀y∃x.

Some Examples of FOL using quantifiers:


1. All birds fly. In this example the predicate is "fly(bird)." And since there are all birds who fly so it will be
represented as follows. ∀x bird(x) →fly(x).
2. Every man respects his parent. In this example, the predicate is "respect(x, y)," where x=man, and y= parent.
Since there is every man so will use ∀, and it will be represented as follows:
∀x man(x) → respects (x, parent).
3. Some boys play cricket. In this example, the predicate is "play(x, y)," where x= boys, and y= game. Since
there are some boys so we will use ∃, and it will be represented as: ∃x boys(x) → play(x, cricket).
4. Not all students like both Mathematics and Science. In this example, the predicate is "like(x, y)," where x=
student, and y= subject. Since there are not all students, so we will use ∀ with negation, so following
representation for this: ¬∀ (x) [ student(x) → like(x, Mathematics) ∧ like(x, Science)].
5. Only one student failed in Mathematics. In this example, the predicate is "failed(x, y)," where x= student,
and y= subject. Since there is only one student who failed in Mathematics, so we will use following
representation for this:
∃(x) [ student(x) → failed (x, Mathematics) ∧∀ (y) [¬(x==y) ∧ student(y) → ¬failed (x, Mathematics)].

Introduction to AI Compiled by: Tesfaye M. 18


3.4.2 Free and Bound Variables:
The quantifiers interact with variables which appear in a suitable way. There are two types of variables in First-
order logic which are given:
Free Variable: A variable is said to be a free variable in a formula if it occurs outside the scope of the quantifier.
Example: ∀x ∃(y)[P (x, y, z)], where z is a free variable.
Bound Variable: A variable is said to be a bound variable in a formula if it occurs within the scope of the quantifier.
Example: ∀x [A (x) B( y)], here x and y are the bound variables.

3.4.3 Knowledge Engineering in First-order logic


What is knowledge Engineering?
The process of constructing a knowledgebase in first-order logic is called knowledge Engineering.
In knowledge Engineering, someone who investigates a particular domain, learns important concept of that
domain, and generates a formal representation of the objects is known as Knowledge Engineer.
We will see to understand the Knowledge engineering process in an electronic circuit domain. This approach is
mainly suitable for creating special-purpose knowledge base.
The Knowledge-Engineering Process
The following are some main steps of the knowledge-engineering process. Using these steps, we will develop a
knowledge base which will allow us to reason about digital circuit (One-bit full adder) which is given below.

1. Identify the task: The first step of the process is to identify the task, and for the digital circuit, there are
various reasoning tasks.
At the first level or highest level, we will examine the functionality of the circuit:
o Does the circuit add properly?
o What will be the output of gate A2, if all the inputs are high?
At the second level, we will examine the circuit structure details such as:
o Which gate is connected to the first input terminal?
o Does the circuit have feedback loops?
2. Assemble the Relevant Knowledge: In the second step, we will assemble the relevant knowledge which is
required for digital circuits. So for digital circuits, we have the following required knowledge:
o Logic circuits are made up of wires and gates.
o Signal flows through wires to the input terminal of the gate, and each gate produces the corresponding
output which flows further.
o In this logic circuit, there are four types of gates used: AND, OR, XOR, and NOT.
o All these gates have one output terminal and two input terminals (except NOT gate, it has one input terminal).
3. Decide on Vocabulary: The next step of the process is to select functions, predicate, and constants to
represent the circuits, terminals, signals, and gates. Firstly we will distinguish the gates from each other and
from other objects. Each gate is represented as an object which is named by a constant such as, Gate(X1). The
functionality of each gate is determined by its type, which is taken as constants such as AND, OR, XOR, or
NOT. Circuits will be identified by a predicate: Circuit (C1). For the terminal, we will use
predicate: Terminal(x).
For gate input, we will use the function In(1, X1) for denoting the first input terminal of the gate, and for output
terminal we will use Out (1, X1).
The function Arity(c, i, j) is used to denote that circuit c has i input, j output.
The connectivity between gates can be represented by predicate Connect(Out(1, X1), In(1, X1)).
We use a unary predicate On (t), which is true if the signal at a terminal is on.
Introduction to AI Compiled by: Tesfaye M. 19
4. Encode general knowledge about the domain: To encode the general knowledge about the logic circuit, we
need some following rules:
o If two terminals are connected then they have the same input signal, it can be represented as:
∀ t1, t2 Terminal (t1) ∧ Terminal (t2) ∧ Connect (t1, t2) → Signal (t1) = Signal (2).
o Signal at every terminal will have either value 0 or 1, it will be represented as:
∀ t Terminal (t) →Signal (t) = 1 ∨Signal (t) = 0.
o Connect predicates are commutative:
∀ t1, t2 Connect(t1, t2) → Connect (t2, t1).
o Representation of types of gates:
∀ g Gate(g) ∧ r = Type(g) → r = OR ∨r = AND ∨r = XOR ∨r = NOT.
o Output of AND gate will be zero if and only if any of its input is zero.
∀ g Gate(g) ∧ Type(g) = AND →Signal (Out(1, g))= 0 ⇔ ∃n Signal (In(n, g))= 0.
o Output of OR gate is 1 if and only if any of its input is 1:
∀ g Gate(g) ∧ Type(g) = OR → Signal (Out(1, g))= 1 ⇔ ∃n Signal (In(n, g))= 1
o Output of XOR gate is 1 if and only if its inputs are different:
∀ g Gate(g) ∧ Type(g) = XOR → Signal (Out(1, g)) = 1 ⇔ Signal (In(1, g)) ≠ Signal (In(2, g)).
o Output of NOT gate is invert of its input:
∀ g Gate(g) ∧ Type(g) = NOT → Signal (In(1, g)) ≠ Signal (Out(1, g)).
o All the gates in the above circuit have two inputs and one output (except NOT gate).
∀ g Gate(g) ∧ Type(g) = NOT → Arity(g, 1, 1)
∀ g Gate(g) ∧ r =Type(g) ∧ (r= AND ∨r= OR ∨r= XOR) → Arity (g, 2, 1).
o All gates are logic circuits:
∀ g Gate(g) → Circuit (g).
5. Encode a description of the problem instance: Now we encode problem of circuit C1, firstly we
categorize the circuit and its gate components. This step is easy if ontology about the problem is already
thought. This step involves the writing simple atomics sentences of instances of concepts, which is known as
ontology.
For the given circuit C1, we can encode the problem instance in atomic sentences as below:
Since in the circuit there are two XOR, two AND, and one OR gate so atomic sentences for these gates will be:
1. For XOR gate: Type(x1)= XOR, Type(X2) = XOR
2. For AND gate: Type(A1) = AND, Type(A2)= AND
3. For OR gate: Type (O1) = OR.
And then represent the connections between all the gates.
6. Pose queries to the inference procedure and get answers: In this step, we will find all the possible set
of values of all the terminal for the adder circuit. The first query will be: What should be the combination of
input which would generate the first output of circuit C1, as 0 and a second output to be 1?
1. ∃ i1, i2, i3 Signal (In(1, C1))=i1 ∧ Signal (In(2, C1))=i2 ∧ Signal (In(3, C1))= i3
2. ∧ Signal (Out(1, C1)) =0 ∧ Signal (Out(2, C1))=1
7. Debug the knowledge base: Now we will debug the knowledge base, and this is the last step of the
complete process. In this step, we will try to debug the issues of knowledge base.
In the knowledge base, we may have omitted assertions like 1 ≠ 0.
3.4.4 Inference in First-Order Logic
Inference in First-Order Logic is used to deduce new facts or sentences from existing sentences. Before
understanding the FOL inference rule, let's understand some basic terminologies used in FOL.
Substitution: is a fundamental operation performed on terms and formulas. It occurs in all inference systems in
first-order logic. The substitution is complex in the presence of quantifiers in FOL. If we write F[a/x], so it
refers to substitute a constant "a" in place of variable "x".

Introduction to AI Compiled by: Tesfaye M. 20


Equality: First-Order logic does not only use predicate and terms for making atomic sentences but also uses
another way, which is equality in FOL. For this, we can use equality symbols which specify that the two terms
refer to the same object. Example: Brother (Abebe) = Kebede
As in the above example, the object referred by the Brother (Abebe) is similar to the object referred by Kebede.
The equality symbol can also be used with negation to represent that two terms are not the same objects.
Example: ¬(x=y) which is equivalent to x ≠y.
3.4.5 FOL Inference Rules for Quantifier:
As propositional logic we also have inference rules in first-order logic, so following are some basic inference
rules in FOL:
1. Universal Generalization
2. Universal Instantiation
3. Existential Instantiation
4. Existential Introduction
1. Universal Generalization: Universal generalization is a valid inference rule which states that if premise P(c)
is true for any arbitrary element c in the universe of discourse, then we can have a conclusion as ∀ x P(x).

 It can be represented as: .


 This rule can be used if we want to show that every element has a similar property.
 In this rule, x must not appear as a free variable.
Example: Let's represent, P(c): "A byte contains 8 bits", so for ∀ x P(x) "All bytes contain 8 bits.", it will also be true.
2. Universal Instantiation: Universal instantiation is also called as universal elimination or UI is a valid
inference rule. It can be applied multiple times to add new sentences.
 The new KB is logically equivalent to the previous KB.
 As per UI, we can infer any sentence obtained by substituting a ground term for the variable.
 The UI rule state that we can infer any sentence P(c) by substituting a ground term c (a constant within
domain x) from ∀ x P(x) for any object in the universe of discourse.

o It can be represented as: .


Example: 1. If "Every person like ice-cream"=> ∀x P(x) so we can infer that "John likes ice-cream" => P(c)
Example: 2. Let's take a famous example, "All kings who are greedy are Evil." So let our knowledgebase
contains this detail as in the form of FOL: ∀x king(x) ∧ greedy (x) → Evil (x),
So from this information, we can infer any of the following statements using Universal Instantiation:
 King(John) ∧ Greedy (John) → Evil (John),
 King(Richard) ∧ Greedy (Richard) → Evil (Richard),
 King(Father(John)) ∧ Greedy (Father(John)) → Evil (Father(John)),

3. Existential Instantiation: Existential instantiation is also called as Existential Elimination, which is a valid
inference rule in first-order logic.
 It can be applied only once to replace the existential sentence.
 The new KB is not logically equivalent to old KB, but it will be satisfiable if old KB was satisfiable.
 This rule states that one can infer P(c) from the formula given in the form of ∃x P(x) for a new constant
symbol c.
 The restriction with this rule is that c used in the rule must be a new term for which P(c ) is true.

oIt can be represented as:


Example: From the given sentence: ∃x Crown(x) ∧ OnHead(x, John), So we can infer: Crown(K) ∧
OnHead( K, John), as long as K does not appear in the knowledgebase.
 The above used K is a constant symbol, which is called Skolem constant.
 The Existential instantiation is a special case of Skolemization process.

Introduction to AI Compiled by: Tesfaye M. 21


4. Existential introduction: An existential introduction is also known as an existential generalization, which is
a valid inference rule in first-order logic.
o This rule states that if there is some element c in the universe of discourse which has a property P, then
we can infer that there exists something in the universe which has the property P.

o It can be represented as:


o Example: Let's say that,
"Abebe got good marks in English."
"Therefore, someone got good marks in English."
Generalized Modus Ponens Rule: For the inference process in FOL, we have a single inference rule which is
called Generalized Modus Ponens. It is lifted version of Modus ponens.
Generalized Modus Ponens can be summarized as," P implies Q and P is asserted to be true, therefore Q must
be True." According to Modus Ponens, for atomic sentences pi, pi', q. Where there is a substitution θ such that
SUBST (θ, pi',) = SUBST(θ, pi), it can be represented as:

Example: We will use this rule for Kings are evil, so we will find some x such that x is king, and x is greedy so
we can infer that x is evil.
1.Here let say, p1' is king(John) p1 is king(x)
2.p2' is Greedy(y) p2 is Greedy(x)
3.θ is {x/John, y/John} q is evil(x)
4.SUBST(θ,q).

3.4.6 Resolution in FOL

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.
Resolution is a theorem proving technique that proceeds by building refutation proofs, i.e., proofs by
contradictions. It was invented by a Mathematician John Alan Robinson in the year 1965.
Resolution is used, if there are various statements are given, and we need to prove a conclusion of those
statements. Unification is a key concept in proofs by resolutions. Resolution is a single inference rule which can
efficiently operate on the Conjunctive Normal Form(CNF) or Clausal Form.
Clause: Disjunction of literals (an atomic sentence) is called a clause. It is also known as a unit clause.
Conjunctive Normal Form: A sentence represented as a conjunction of clauses is said to be conjunctive
normal form or CNF.
The Resolution Inference Rule:
The resolution rule for first-order logic is simply a lifted version of the propositional rule. Resolution can
resolve two clauses if they contain complementary literals, which are assumed to be standardized apart so that
they share no variables.

Where li and mj are complementary literals. This rule is also called the binary resolution rule because it only
resolves exactly two literals.
Example: We can resolve two clauses which are given below:
[Animal (g(x) V Loves (f(x), x)] and [¬ Loves(a, b) V ¬Kills(a, b)]
Introduction to AI Compiled by: Tesfaye M. 22
Where the two complimentary literals are: Loves (f(x), x) and ¬ Loves (a, b)
These literals can be unified with unifier θ= [a/f(x), and b/x] , and it will generate a resolvent clause:
[Animal (g(x) V ¬ Kills(f(x), x)].
Steps for Resolution:
1. Conversion of facts into first-order logic.
2. Convert FOL statements into CNF
3. Negate the statement which needs to prove (proof by contradiction)
4. Draw resolution graph (unification).
To better understand all the above steps, we will take an example in which we will apply resolution.
Example:
a. John likes all kind of food.
b. Apple and vegetable are food
c. Anything anyone eats and not killed is food.
d. Anil eats peanuts and still alive
e. Harry eats everything that Anil eats.
Prove by resolution that:
f. John likes peanuts.
Step-1: Conversion of Facts into FOL
In the first step we will convert all the given statements into its first order logic.

Step-2: Conversion of FOL into CNF


In First order logic resolution, it is required to convert the FOL into CNF as CNF form makes easier for
resolution proofs.
AD
o Eliminate all implication (→) and rewrite
a. ∀x ¬ food(x) V likes(John, x)
b. food(Apple) Λ food(vegetables)
c. ∀x ∀y ¬ [eats(x, y) Λ ¬ killed(x)] V food(y)
d. eats (Anil, Peanuts) Λ alive(Anil)
e. ∀x ¬ eats(Anil, x) V eats(Harry, x)
f. ∀x¬ [¬ killed(x) ] V alive(x)
g. ∀x ¬ alive(x) V ¬ killed(x)
h. likes(John, Peanuts).
o Move negation (¬)inwards and rewrite
. ∀x ¬ food(x) V likes(John, x)
a. food(Apple) Λ food(vegetables)
b. ∀x ∀y ¬ eats(x, y) V killed(x) V food(y)
c. eats (Anil, Peanuts) Λ alive(Anil)
Introduction to AI Compiled by: Tesfaye M. 23
d. ∀x ¬ eats(Anil, x) V eats(Harry, x)
e. ∀x ¬killed(x) ] V alive(x)
f. ∀x ¬ alive(x) V ¬ killed(x)
g. likes(John, Peanuts).
o Rename variables or standardize variables
. ∀x ¬ food(x) V likes(John, x)
a. food(Apple) Λ food(vegetables)
b. ∀y ∀z ¬ eats(y, z) V killed(y) V food(z)
c. eats (Anil, Peanuts) Λ alive(Anil)
d. ∀w¬ eats(Anil, w) V eats(Harry, w)
e. ∀g ¬killed(g) ] V alive(g)
f. ∀k ¬ alive(k) V ¬ killed(k)
g. likes(John, Peanuts).
Eliminate existential instantiation quantifier by elimination.
In this step, we will eliminate existential quantifier ∃, and this process is known as Skolemization. But in this
example problem since there is no existential quantifier so all the statements will remain same in this step.
Drop Universal quantifiers.
In this step we will drop all universal quantifier since all the statements are not implicitly quantified so we don't
need it.
h. ¬ food(x) V likes(John, x)
i. food(Apple)
j. food(vegetables)
k. ¬ eats(y, z) V killed(y) V food(z)
l. eats (Anil, Peanuts)
m. alive(Anil)
n. ¬ eats(Anil, w) V eats(Harry, w)
o. killed(g) V alive(g)
p. ¬ alive(k) V ¬ killed(k)
q. likes(John, Peanuts).
Distribute conjunction ∧ over disjunction ¬.
This step will not make any change in this problem.
Step-3: Negate the statement to be proved
In this statement, we will apply negation to the conclusion statements, which will be written as ¬likes(John, Peanuts)
Step-4: Draw Resolution graph:
Now in this step, we will solve the problem by resolution tree using substitution. For the above problem, it will
be given as follows:

Hence the negation of the conclusion has been proved as a complete contradiction with the given set of
statements.
Explanation of Resolution Graph:
 In the first step of resolution graph, ¬likes(John, Peanuts) , and likes(John, x) get resolved(canceled) by
substitution of {Peanuts/x}, and we are left with ¬ food(Peanuts)

Introduction to AI Compiled by: Tesfaye M. 24


 In the second step of the resolution graph, ¬ food(Peanuts) , and food(z) get resolved (canceled) by
substitution of { Peanuts/z}, and we are left with ¬ eats(y, Peanuts) V killed(y) .
 In the third step of the resolution graph, ¬ eats(y, Peanuts) and eats (Anil, Peanuts) get resolved by
substitution {Anil/y}, and we are left with Killed(Anil) .
 In the fourth step of the resolution graph, Killed(Anil) and ¬ killed(k) get resolve by substitution {Anil/k},
and we are left with ¬ alive(Anil) .
 In the last step of the resolution graph ¬ alive(Anil) and alive(Anil) get resolved.

3.4.7 Forward Chaining and Backward Chaining in AI


In artificial intelligence, forward and backward chaining is one of the important topics, but before
understanding forward and backward chaining let’s first understand that from where these two terms came.
Inference Engine: The inference engine is the component of the intelligent system in artificial intelligence,
which applies logical rules to the knowledgebase to infer new information from known facts. The first inference
engine was part of the expert system. Inference engine commonly proceeds in two modes, which are: Forward
chaining and Backward chaining.
Horn Clause and Definite clause:
Horn clause and definite clause are the forms of sentences, which enables knowledgebase to use a more
restricted and efficient inference algorithm. Logical inference algorithms use forward and backward chaining
approaches, which require KB in the form of the first-order definite clause.
Definite clause: A clause which is a disjunction of literals with exactly one positive literal is known as a
definite clause or strict horn clause.
Horn clause: A clause which is a disjunction of literals with at most one positive literal is known as horn
clause. Hence all the definite clauses are horn clauses.
Example: (¬ p V ¬ q V k). It has only one positive literal k.
It is equivalent to p ∧ q → k.
A. Forward Chaining
Forward chaining is also known as a forward deduction or forward reasoning method when using an inference
engine. Forward chaining is a form of reasoning which start with atomic sentences in the knowledgebase and
applies inference rules (Modus Ponens) in the forward direction to extract more data until a goal is reached. The
Forward-chaining algorithm starts from known facts, triggers all rules whose premises are satisfied, and add
their conclusion to the known facts. This process repeats until the problem is solved.
Properties of Forward Chaining:
 It is a down-up approach, as it moves from bottom to top.
 It is a process of making a conclusion based on known facts or data, by starting from the initial state and
reaches the goal state.
 Forward-chaining approach is also called as data-driven as we reach to the goal using available data.
 Forward -chaining approach is commonly used in the expert system, such a business, and production rule systems.
AD
B. Backward Chaining:
Backward-chaining is also known as a backward deduction or backward reasoning method when using an
inference engine. A backward chaining algorithm is a form of reasoning which starts with the goal and works
backward chaining through rules to find known facts that support the goal.
Properties of Backward Chaining:
 It is known as a top-down approach.
 Backward-chaining is based on modus ponens inference rule.
 In backward chaining, the goal is broken into sub-goals to prove the facts true.
 It is called a goal-driven approach, as a list of goals decides which rules are selected and used.

Introduction to AI Compiled by: Tesfaye M. 25


 Backward -chaining algorithm is used in game theory, automated theorem proving tools, inference engines,
proof assistants, and various AI applications.
 The backward-chaining method mostly used a depth-first searching strategy for proof.

3.5 Reasoning in Artificial intelligence


In previous topics, we have learned various ways of knowledge representation in artificial intelligence. Now, we
will learn the various ways to reason on this knowledge using different logical schemes.
Reasoning:
The reasoning is the mental process of deriving logical conclusion and making predictions from available
knowledge, facts, and beliefs. Or we can say, "Reasoning is a way to infer facts from existing data." It is a
general process of thinking rationally, to find valid conclusions. In artificial intelligence, the reasoning is
essential so that the machine can also think rationally as a human brain, and can perform like a human.
Types of Reasoning
In artificial intelligence, reasoning can be divided into the following categories:
 Deductive reasoning
 Inductive reasoning
 Abductive reasoning
 Common Sense Reasoning
 Monotonic Reasoning
 Non-monotonic Reasoning

1. Deductive reasoning:
Deductive reasoning is deducing new information from logically related known information. It is the form of
valid reasoning, which means the argument's conclusion must be true when the premises are true. Deductive
reasoning is a type of propositional logic in AI, and it requires various rules and facts. It is sometimes referred
to as top-down reasoning, and contradictory to inductive reasoning. In deductive reasoning, the truth of the
premises guarantees the truth of the conclusion. Deductive reasoning mostly starts from the general premises to
the specific conclusion, which can be explained as below example.
Example:
Premise-1: All human eats veggies
Premise-2: Abebe is human.
Conclusion: Abebe eats veggies.
The general process of deductive reasoning is given below:

2. Inductive Reasoning:
Inductive reasoning is a form of reasoning to arrive at a conclusion using limited sets of facts by the process of
generalization. It starts with the series of specific facts or data and reaches to a general statement or conclusion.
Inductive reasoning is a type of propositional logic, which is also known as cause-effect reasoning or bottom-up
reasoning. In inductive reasoning, we use historical data or various premises to generate a generic rule for
which premises support the conclusion. Here, premises provide probable supports to the conclusion, so the truth
of premises does not guarantee the truth of the conclusion.
Example: Premise: All of the pigeons we have seen in the zoo are white.
Conclusion: Therefore, we can expect all the pigeons to be white.

Introduction to AI Compiled by: Tesfaye M. 26


3. Abductive Reasoning:
Abductive reasoning is a form of logical reasoning which starts with single or multiple observations then seeks
to find the most likely explanation or conclusion for the observation. Abductive reasoning is an extension of
deductive reasoning, but in abductive reasoning, the premises do not guarantee the conclusion.
Example: Implication: Cricket ground is wet if it is raining
Axiom: Cricket ground is wet. Conclusion, It is raining.
4. Common Sense Reasoning
Common sense reasoning is an informal form of reasoning, which can be gained through experiences. Common
Sense reasoning simulates the human ability to make presumptions about events which occurs on every day. It
relies on good judgment rather than exact logic and operates on heuristic knowledge and heuristic rules.
Example: 1) One person can be at one place at a time. 2) If I put my hand in a fire, then it will burn.
The above two statements are the examples of common sense reasoning which a human mind can easily
understand and assume.

5. Monotonic Reasoning
In monotonic reasoning, once the conclusion is taken, then it will remain the same even if we add some other
information to existing information in our knowledgebase. In monotonic reasoning, adding knowledge does not
decrease the set of prepositions that can be derived. To solve monotonic problems, we can derive the valid
conclusion from the available facts only, and it will not be affected by new facts.
Monotonic reasoning is not useful for the real-time systems as in real time, facts get changed, so we cannot use
monotonic reasoning. Monotonic reasoning is used in conventional reasoning systems, and a logic-based system
is monotonic. Any theorem proving is an example of monotonic reasoning.
Example: Earth revolves around the Sun.
It is a true fact, and it cannot be changed even if we add another sentence in knowledgebase like, "The moon
revolves around the earth" Or "Earth is not round," etc.
Advantages of Monotonic Reasoning:
 In monotonic reasoning, each old proof will always remain valid.
 If we deduce some facts from available facts, then it will remain valid for always.
Disadvantages of Monotonic Reasoning:
 We cannot represent the real world scenarios using Monotonic reasoning.
 Hypothesis knowledge cannot be expressed with monotonic reasoning, which means facts should be true.
 Since we can only derive conclusions from the old proofs, so new knowledge from the real world cannot be added.
6. Non-monotonic Reasoning
In Non-monotonic reasoning, some conclusions may be invalidated if we add some more information to our
knowledgebase. Logic will be said as non-monotonic if some conclusions can be invalidated by adding more
knowledge into our knowledgebase. Non-monotonic reasoning deals with incomplete and uncertain models.
"Human perceptions for various things in daily life, "is a general example of non-monotonic reasoning.
Example: Let suppose the knowledge base contains the following knowledge:
 Birds can fly
 Penguins cannot fly
 Pitty is a bird
So from the above sentences, we can conclude that Pitty can fly. However, if we add one another sentence into
knowledgebase "Pitty is a penguin", which concludes "Pitty cannot fly", so it invalidates the above conclusion.
Advantages of Non-monotonic reasoning:
o For real-world systems such as Robot navigation, we can use non-monotonic reasoning.
o In Non-monotonic reasoning, we can choose probabilistic facts or can make assumptions.
Disadvantages of Non-monotonic Reasoning:
o In non-monotonic reasoning, the old facts may be invalidated by adding new sentences.
o It cannot be used for theorem proving.

Introduction to AI Compiled by: Tesfaye M. 27


Difference between Inductive and Deductive Reasoning
Reasoning in artificial intelligence has two important forms:- Inductive reasoning and Deductive reasoning.
Both reasoning forms have premises and conclusions, but both reasoning are contradictory to each other.
Following is a list for comparison between inductive and deductive reasoning:
 Deductive reasoning uses available facts, information, or knowledge to deduce a valid conclusion, whereas
inductive reasoning involves making a generalization from specific facts, and observations.
 Deductive reasoning uses a top-down approach, whereas inductive reasoning uses a bottom-up approach.
 Deductive reasoning moves from generalized statement to a valid conclusion, whereas Inductive reasoning
moves from specific observation to a generalization.
 In deductive reasoning, the conclusions are certain, whereas, in Inductive reasoning, the conclusions are probabilistic.
 Deductive arguments can be valid or invalid, which means if premises are true, the conclusion must be true, whereas
inductive argument can be strong or weak, which means conclusion may be false even if premises are true.
The differences between inductive and deductive can be explained using the below diagram on the basis of
arguments:

Comparison Chart:
Basis for Deductive Reasoning Inductive Reasoning
comparison
Definition Deductive reasoning is the form of valid reasoning, Inductive reasoning arrives at a conclusion by the
to deduce new information or conclusion from process of generalization using specific facts or
known related facts and information. data.
Approach Deductive reasoning follows a top-down approach. Inductive reasoning follows a bottom-up approach.
Starts from Deductive reasoning starts from Premises. Inductive reasoning starts from the Conclusion.
Validity In deductive reasoning conclusion must be true if the In inductive reasoning, the truth of premises does
premises are true. not guarantee the truth of conclusions.
Usage Use of deductive reasoning is difficult, as we need Use of inductive reasoning is fast and easy, as we
facts which must be true. need evidence instead of true facts. We often use
it in our daily life.
Process Theory→ hypothesis→ patterns→confirmation. Observations-→patterns→hypothesis→Theory.
Argument In deductive reasoning, arguments may be valid or invalid. In inductive reasoning, arguments may be weak or
strong.
Structure Deductive reasoning reaches from general facts to specific Inductive reasoning reaches from specific facts to
facts. general facts.

Probabilistic Reasoning in Artificial Intelligence


Uncertainty: Till now, we have learned knowledge representation using first-order logic and propositional
logic with certainty, which means we were sure about the predicates. With this knowledge representation, we
might write A→B, which means if A is true then B is true, but consider a situation where we are not sure about
whether A is true or not then we cannot express this statement, this situation is called uncertainty.
So to represent uncertain knowledge, where we are not sure about the predicates, we need uncertain reasoning
or probabilistic reasoning.
Causes of uncertainty:
Following are some leading causes of uncertainty to occur in the real world.
1. Information occurred from unreliable sources. 2. Experimental Errors
Introduction to AI Compiled by: Tesfaye M. 28
1. Equipment fault 4. Temperature variation 5. Climate change.
Probabilistic Reasoning: is a way of knowledge representation where we apply the concept of probability
to indicate the uncertainty in knowledge. In probabilistic reasoning, we combine probability theory with logic to
handle the uncertainty. We use probability in probabilistic reasoning because it provides a way to handle the
uncertainty that is the result of someone's laziness and ignorance.
In the real world, there are lots of scenarios, where the certainty of something is not confirmed, such as "It will
rain today," "behavior of someone for some situations," "A match between two teams or two players." These are
probable sentences for which we can assume that it will happen but not sure about it, so here we use
probabilistic reasoning.
Need of Probabilistic Reasoning in AI:
 When there are unpredictable outcomes.
 When specifications or possibilities of predicates becomes too large to handle.
 When an unknown error occurs during an experiment.
In probabilistic reasoning, there are two ways to solve problems with uncertain knowledge:

1) Bayes' rule And


2) Bayesian Statistics

Introduction to AI Compiled by: Tesfaye M. 29

You might also like