Transcript Lecture 2

Lecture 2
Knowledge
Representation
UBI517 Expert Systems
1
Knowledge representation

Epistemology or theory of knowledge is
the branch of philosophy that studies the
nature, methods, limitations, and validity of
knowledge and belief.

In other words, epistemology primarily
addresses the following questions:



"What is knowledge?",
"How is knowledge acquired?", and
"What do people know?"
Wikipedia
UBI 517 Expert Systems
2
Knowledge representation

Epistemology Addresses


The structure used to describe the elements of
knowledge.
The interpretive process required to use the
described knowledge.
UBI 517 Expert Systems
3
Representation Criteria






Transparency
Explicitness
Naturalness
Efficiency
Adequacy
Modularity
UBI 517 Expert Systems
4
Knowledge Representation
Schemes
Mypoulos and Lavesque (1984) classification:
1) Logical representation schemes
First order predicate logic for knowledge
representation (scheme)
Prolog for implementing (media)
2) Procedural representation schemes
Production systems
UBI 517 Expert Systems
5
Knowledge Representation
Schemes
3) Network representation schemes
Capture knowledge as a graph in which the nodes
represent the objects or concepts in the problem
domain and the arcs represent the relations or
associations between them.


Semantic networks
Conceptual graphs
4) Structured representation schemes
Each node is considered as a complex data
structure consisting of named slots with attached
values

Frame-based systems
UBI 517 Expert Systems
6
Formal Logic

Logic provides
A representation of knowledge &
 Automation of the inferencing process


Formal Logic
• Propositional Logic
• Predicate Logic
UBI 517 Expert Systems
7
Propositional Logic

One of the oldest & simplest type of
formal logic

Formal indicates logic is concerned
with form of logical statements as
opposed to meaning
UBI 517 Expert Systems
8
Propositional Logic

Propositional symbols denote propositions or
statements about the world that may be either true
or false.

Examples
It is raining.
raining
It is sunny.
sunny
If it is raining then it is not sunny.
raining sunny
UBI 517 Expert Systems
9
Propositional Logic

The truth table for the implication
connective is shown below.
UBI 517 Expert Systems
10
Propositional Logic
For propositional expressions P, Q, and R:
 P) = P
 (PQ) = (PQ)
 De Morgan's Law: (PQ) = (PQ)
 De Morgan's Law: (PQ) = (PQ)
 distributive law: PQR) = (PQ)PR)
 distributive law: PQR) = (PQ)PR)
 commutative law: (PQ) = (QP)
 commutative law: (PQ) = (QP)
 associative law: PQR) = (PQ) R
 associative law: PQR) = (PQ)R
 contrapositive law: (PQ) = (QP)
UBI 517 Expert Systems
11
Propositional Logic



PREMISE: All X are Y Doesn’t matter if X is
apples, planes or Ships.
PREMISE: Z is a X
Conclusion: Z is a Y Only the form is important.
Separating form from meaning is what gives
logic its power as a tool
Propositional logic is a symbolic logic for
manipulating propositions or logical
variables
Propositions are classified as either T or F.


KBS course is brilliant - (definitely T)
Fish is good to eat - ( uncertain truth as depends on
person)
UBI 517 Expert Systems
12
Propositional Logic



He is tall - (variable involved so can’t assign value.
Also tall is hard concept to define. Can’t be done in
pred. Calculus).
Proposition logic: assign a truth value to statements
Propositional logic provides a mechanism for
assigning a truth value to compound proposition
based on value of individual propositions and
connective involved
Propositional logic connectives
Conjunction
Disjunction
Negation
Material implication
Material equivalence
AND
OR
NOT
If-Then
Equals
UBI 517 Expert Systems
A’
-->

13
Propositional Logic

Prop Logic
can only deal with complete sentences
that is, it can not examine the internal
structure of a statement.
 too simple for complex domains
 no support for inferencing
 doesn’t handle fuzzy concepts


Solution - Predicate Logic
UBI 517 Expert Systems
14
First order predicate logic
Predicate logic was developed in order to analyze
more general cases. Propositional logic is a
subset of predicate logic.

Concerned with internal structure of sentences

Quantifiers - all, some, no - make sentence
more exact.

Wider scope of expression.
UBI 517 Expert Systems
15
First order predicate logic
an alphabet
a formal language
axioms
inference rules
UBI 517 Expert Systems
16
an alphabet







predicates represent the relations within
the domain: man(tom)
variables - Dog, Color
functions - father(CHILD), plus (2, 3)
constants - rover(a_dog), blue(a_color)
connectives - and, or, not, is equivalent
to..
quantifiers - "X, $X :
"x [ PERSON(X)  NEED-AIR(X)]
delimiters
UBI 517 Expert Systems
17
Language
A legally constructed formula in the
language is called a well-formed formula
(wff)
Evaluation is done by the use of truth
tables.
UBI 517 Expert Systems
18
Language
Knowledge engineering When Using Formal Logic
 Develop an understanding of the knowledge.
 Formulate the knowledge as English
statements.
 Break the statements into their component
parts.
 Choose symbols to represent the elements
and relations in each component.
 Build wffs by using the above symbols that
represent the statement.
 Predicate relation is derived by its name and
its arity.
UBI 517 Expert Systems
19
Language
Example:
"Rover is a black dog“
"You will gain weight unless you exercise.“
“If the student’s average grade is greater
than 90%, then the student will get an A
in the course.”
black(rover) dog(rover)
"X [¬exercise(X)  gain_weight(X) ]
"X, "Name [(student(Name)  avrg_grade(Name, X)
 ge(X, 90)  final_grade(Name, “A”) ]
UBI 517 Expert Systems
20
Inference Process
Inference in formal logic is the process of
generating new wffs from existing wffs
through the application of rules of inference.
UBI 517 Expert Systems
21
Inference Process
Conclusion:
 Many English sentences are ambiguous.
 There is often a choice of ways of
representing the knowledge.
 Even in very simple situations a set of
sentences is unlikely to contain all the
information necessary to reason about
the topic at hand.
UBI 517 Expert Systems
22
Inference Process
Logical Inferences
Modus ponens and modus tolens provide
the foundation for making references.
Modus ponens: ((p  q) p) q
If someone is snorkeling then he is wet
"x snorkeling(X)  wet(X)
If we are given that alex is snorkeling
snorkeling (alex)
we can infer wet(alex)
UBI 517 Expert Systems
23
Inference Process
Logical Inferences
Modus tolens: ((p  q) q)  p
If someone is snorkeling then he is wet
"x snorkeling(X)  wet(X)
If we are given that alex is not wet
 wet(alex)
we can infer  snorkeling(alex)
UBI 517 Expert Systems
24
Inference Process
There are three reasoning methods that can
be applied to a set of premises.
1.
2.
3.
Deduction
Abduction
Induction
UBI 517 Expert Systems
25
Inference Process
Deduction is reasoning from known (premises) to
unknown (logical conclusions).
"x, "y, "z larger(x, y)  larger(y, z)  larger(x, z)
If our list of axioms contain the axioms
larger(house, car)
larger(car, cat)
Through deductive reasoning the wff
larger(house, cat)
Can be derived and added to our list of axioms
UBI 517 Expert Systems
26
Inference Process
In Abduction we begin with a conclusion and
procede to derive conditions that would make
the conclusion valid. In other words we try to
find an explanation for the conclusion
It does not guarantee that a true conclusion results.
Therefore it s called unsound rule of inference.
If given A  B and B is true
Abduction allows us to say A is possibly true.
Reasoning under uncertainty.
UBI 517 Expert Systems
27
Inference Process
Induction
Inductive reasoning forms the basis of scientific discovery.
If given p(a) is true
p(b) is true ……..
Then we conclude "x, p(x) is true
If we observe alex over a period of time and note that
whenever he is wet, it turns out that he has gone
snorkeling.
We might induce that
"x, wet(x) snorkeling(x)
Like abduction, induction is also an unsound inference
method.
UBI 517 Expert Systems
28
Inference Process
Monotonic vs non-monotonic reasoning
Deductive reasoning is a monotonic reasoning that produce
as arguments that preserve truth.
Axioms are not allowed to change, since once a fact is known
to be true, it is always true and can never be modified or
retracted.
Most real life problems are non-monotonic
quarter(fourth)
leading(bucks)
"Team [leading(Team)  quarter(fourth)] strategy(Team,
conservative)
We can deduce strategy(bucks, conservative)
What if the state changes to
leading(dolphins)
UBI 517 Expert Systems
29
Inference Process
RESOLUTION attempts to show that the negation
of the statement produces a contradiction with
the known statements.
winter V summer
~winter V cold
 deduce
summer V cold
In the above example if it is winter the first statement is true if
not the second statement is true. From these two we can
deduce the third statement to be true
UBI 517 Expert Systems
30
Inference Process
Conjuctive normal form(Davis, 1960)
The steps to convert to conjuctive normal form:
1. Eliminate by using the fact that a  b is
equivalent to ~a V b
2. Reduce the scope of ~
~(A V B) = ~A B
~(A  B) = ~A V B
DeMorgan's law
~"x P(x) = $x ~P(x)
~$x P(x) = "x ~P(x)
UBI 517 Expert Systems
31
Inference Process
3. Standardize variables so that each
quantifier binds a unique variable.
"x P(x) V "x Q(x) would be converted to
"x P(x) V "y Q(y)
4. Move all quantifiers to the left of the
formula without changing their relative
order.
"x "y P(x) V Q(y)
UBI 517 Expert Systems
32
Inference Process
5. Eliminate existential quantifiers. A
formula that contains an existentially
quantified variable asserts that there is a
value that can be substituted for the
variable that makes the formula true.
$y President(y)
into President(S1)
can be transformed
UBI 517 Expert Systems
33
Inference Process
5. If existential quantifiers occur within the scope of
a universal quantifier then the value that satisfies
the predicate may depend on the values of the
universally quantified variables.
"x $y fatherof(y, x)
"x fatherof(S2(x), x)
can be transformed into
These generated functions are called Skolem
functions.
UBI 517 Expert Systems
34
Inference Process
6. Drop the prefix.
7. Convert the matrix into conjunction of
disjuncts.
8. Call each conjunct a separate clause.
UBI 517 Expert Systems
35
Inference Process
The Unification Algorithm:
The object of the unification procedure is to
discover at least one substitution that
causes two literals to match.
UBI 517 Expert Systems
36
Inference Process
Example:
1. Marcus was a man.
man(marcus)
2. Marcus was a Pompeian.
pompeian(marcus)
3. All Pompeians were Romans.
"x pompeian(X)  roman(X)
4. Caesar is a ruler.
ruler(caesar)
UBI 517 Expert Systems
37
Inference Process
5. All Romans were either loyal to Caesar or hated
him.
"x roman(X)  loyalto(X, casear) v hate(X,
casear)
6. Everyone is loyal to someone.
"X $Y loyalto(X, Y)
7. People only try to assassinate rulers they are not
loyal to.
"X "Y person(X) ruler(Y) 
tryassassinate(X,Y) ~loyalto(X, Y)
8. Marcus tried to assassinate Caesar.
tryassassinate(marcus, caesar)
UBI 517 Expert Systems
38
Inference Process
Proof by resolution:
Given the axioms in clause form:
1. man(Marcus)
2. Pompeian(Marcus)
3. ~Pompeian(x1) V Roman(x1)
4. ruler(Caesar)
5. ~Roman(x2) V loyalto(x2, Caesar) V hate(x2,
Caesar)
6. loyalto(x3, f1(x3))
7. ~person(x4) V ~ruler(y1) V ~tryassassinate(x4,
y1) V ~loyalto(x4, y1)
8. tryassassinate(Marcus, Caesar)
UBI 517 Expert Systems
39
Inference Process
Prove: hate(Marcus, Caesar)
UBI 517 Expert Systems
40
Inference Process
Prove: loyalto(Marcus, Caesar)
UBI 517 Expert Systems
41
Inference Process
Prove: loyalto(Marcus, Caesar) - Continue
Suppose our knowledge base contained the two additional
statements
9. persecute(x, y)  hate(y, x) ~persecute(x5, y2) V hate(y2, x5)
10. hate(x, y)  persecute(y, x)
~hate(x6, y3) V persecute(y3, x6)
UBI 517 Expert Systems
42
Prolog
Prolog is the implementation language
for predicate logic.
Prolog is declarative
Three main features are:
Facts
Rules
Backtracking
If something is not explicitly stated,
Prolog assumes that it is false.
Prolog is non-monotonic where it
deviates from pure predicate logic.
UBI 517 Expert Systems
43
Example
child_of(alex, nicole).
child_of(alina, nicole).
child_of(nicholas, leah).
child_of(philip, leah).
child_of(melanie, cathy).
male(alex).
male(philip).
male(alex).
male(nicholas).
female(alina).
female(leah).
female(nicole).
female(angela).
sisters(nicole, leah).
sisters(X, Z):- child_of(X, Y), child_of(Z, Y),
female(X), female(Z)
UBI 517 Expert Systems
44
Disadvantages of Predicate Logic as a
Basis for Knowledge-Based System

Managing uncertainty



availability of only two levels of truth
– true or false.
certainty factors have been
implemented in Prolog to mitigate
this.
Monotonic versus non-monotonic
reasoning.
UBI 517 Expert Systems
45
Exercises:
Consider the following sentences:
 John likes all kinds of food.
 Apples are food.
 Chicken is food.
 Anything anyone eats and isn't killed by is food.
 Bill eats peanuts and is still alive.
 Sue eats everything Bill eats.
a. Translate these sentences into formulas in predicate logic.
b. Convert the formulas of part a into clause form.
c. Prove that John likes peanuts.
d. Use resolution to answer the question, "What food does Sue
eat?"
UBI 517 Expert Systems
46
Exercises:
Consider the following logic statements:
"x [panther(X)  feline(X)]
"x [house_cat(X)  feline(X)]
"x [house_cat(X)  docile(X)]
"x [feline(X)  carnivore(X)]
"x [carnivore(X)  food(X, meat)]
"x [horse(X)  herbivore(X)]
"x [herbivore(X)  food(X, plants)]
UBI 517 Expert Systems
47
Exercises:
a)Using modus ponens derive all possible relations from the
following facts.
panther(sam)
house_cat(rubble)
lion(leo)
b)Using abduction and the following statement what could kitty
be?
food(kitty, meat)
c)Convert all of the logic statements into clauses
d) Attempt to prove the following statements using resolution:
house_cat(rebel)  food(rebel, meat)
horse(wilber)  food(wilber, meat)
UBI 517 Expert Systems
48