630 likes | 760 Views
CS344: Artificial Intelligence. Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 12, 13– Predicate Calculus and Knowledge Representation. Logic and inferencing. Vision. NLP. Search Reasoning Learning Knowledge. Expert Systems. Robotics. Planning.
E N D
CS344: Artificial Intelligence Pushpak BhattacharyyaCSE Dept., IIT Bombay Lecture 12, 13– Predicate Calculus and Knowledge Representation
Logic and inferencing Vision NLP • Search • Reasoning • Learning • Knowledge Expert Systems Robotics Planning Obtaining implication of given facts and rules -- Hallmark of intelligence
Inferencing through • Deduction (General to specific) • Induction (Specific to General) • Abduction (Conclusion to hypothesis in absence of any other evidence to contrary) Deduction Given: All men are mortal (rule) Shakespeare is a man (fact) To prove: Shakespeare is mortal (inference) Induction Given: Shakespeare is mortal Newton is mortal (Observation) Dijkstra is mortal To prove: All men are mortal (Generalization)
If there is rain, then there will be no picnic Fact1: There was rain Conclude: There was no picnic Deduction Fact2: There was no picnic Conclude: There was no rain (?) Induction and abduction are fallible forms of reasoning. Their conclusions are susceptible to retraction Two systems of logic 1) Propositional calculus 2) Predicate calculus
Propositions • Stand for facts/assertions • Declarative statements • As opposed to interrogative statements (questions) or imperative statements (request, order) Operators => and ¬ form a minimal set (can express other operations) - Prove it. Tautologies are formulae whose truth value is always T, whatever the assignment is
Model In propositional calculus any formula with n propositions has 2n models (assignments) - Tautologies evaluate to T in all models. Examples: 1) 2) • e Morgan with AND
Semantic Tree/Tableau method of proving tautology Start with the negation of the formula - α - formula α-formula β-formula - β - formula α-formula - α - formula
Example 2: X (α - formula) (α - formulae) α-formula (β - formulae) B C B C Contradictions in all paths
Exercise: Prove the backward implication in the previous example
Inferencing in PC Backward chaining Forward chaining Resolution
Knowledge Procedural Declarative • Declarative knowledge deals with factoid questions (what is the capital of India? Who won the Wimbledon in 2005? Etc.) • Procedural knowledge deals with “How” • Procedural knowledge can be embedded in declarative knowledge
Example: Employee knowledge base Employee record Emp id : 1124 Age : 27 Salary : 10L / annum Tax : Procedure to calculate tax from basic salary, Loans, medical factors, and # of children
past tense bought time agent object student June computer the: definite in: modifier a: indefinite modifier new A Semantic Graph The student bought a new computer in June.
UNL representation Representation of Knowledge Ram is reading the newspaper
UNL: a United Nations project Dave, Parikh and Bhattacharyya, Journal of Machine Translation, 2002 • Started in 1996 • 10 year program • 15 research groups across continents • First goal: generators • Next goal: analysers (needs solving various ambiguity problems) • Current active language groups • UNL_French (GETA-CLIPS, IMAG) • UNL_Hindi (IIT Bombay with additional work on UNL_English) • UNL_Italian (Univ. of Pisa) • UNL_Portugese (Univ of Sao Paolo, Brazil) • UNL_Russian (Institute of Linguistics, Moscow) • UNL_Spanish (UPM, Madrid)
Knowledge Representation UNL Graph - relations read agt obj Ram newspaper
Knowledge Representation UNL Graph - UWs read(icl>interpret) obj agt newspaper(icl>print_media) Ram(iof>person)
Knowledge Representation UNL graph - attributes @entry @present @progress read(icl>interpret) obj agt @def newspaper(icl>print_media) Ram(iof>person) Ram is reading the newspaper
go(icl>move) @ entry @ past agt plt boy(icl>person) @ entry school(icl>institution) here agt plc :01 work(icl>do) The boy who works here went to school Another Example
Predicate Calculus: well known examples • Man is mortal : rule ∀x[man(x) → mortal(x)] • shakespeare is a man man(shakespeare) • To infer shakespeare is mortal mortal(shakespeare)
Forward Chaining/ Inferencing • man(x) → mortal(x) • Dropping the quantifier, implicitly Universal quantification assumed • man(shakespeare) • Goal mortal(shakespeare) • Found in one step • x = shakespeare, unification
Backward Chaining/ Inferencing • man(x) → mortal(x) • Goal mortal(shakespeare) • x = shakespeare • Travel back over and hit the fact asserted • man(shakespeare)
Resolution - Refutation • man(x) → mortal(x) • Convert to clausal form • ~man(shakespeare) mortal(x) • Clauses in the knowledge base • ~man(shakespeare) mortal(x) • man(shakespeare) • mortal(shakespeare)
Resolution – Refutation contd • Negate the goal • ~man(shakespeare) • Get a pair of resolvents
Search in resolution • Heuristics for Resolution Search • Goal Supported Strategy • Always start with the negated goal • Set of support strategy • Always one of the resolvents is the most recently produced resolute
Inferencing in Predicate Calculus • Forward chaining • Given P, , to infer Q • P, match L.H.S of • Assert Q from R.H.S • Backward chaining • Q, Match R.H.S of • assert P • Check if P exists • Resolution – Refutation • Negate goal • Convert all pieces of knowledge into clausal form (disjunction of literals) • See if contradiction indicated by null clause can be derived
P • converted to Draw the resolution tree (actually an inverted tree). Every node is a clausal form and branches are intermediate inference steps.
Terminology • Pair of clauses being resolved is called the Resolvents. The resulting clause is called the Resolute. • Choosing the correct pair of resolvents is a matter of search.
Predicate Calculus • Introduction through an example (Zohar Manna, 1974): • Problem: A, B and C belong to the Himalayan club. Every member in the club is either a mountain climber or a skier or both. A likes whatever B dislikes and dislikes whatever B likes. A likes rain and snow. No mountain climber likes rain. Every skier likes snow. Is there a member who is a mountain climber and not a skier? • Given knowledge has: • Facts • Rules
Predicate Calculus: Example contd. • Let mc denote mountain climber and sk denotes skier. Knowledge representation in the given problem is as follows: • member(A) • member(B) • member(C) • ∀x[member(x) → (mc(x) ∨ sk(x))] • ∀x[mc(x) → ~like(x,rain)] • ∀x[sk(x) → like(x, snow)] • ∀x[like(B, x) → ~like(A, x)] • ∀x[~like(B, x) → like(A, x)] • like(A, rain) • like(A, snow) • Question: ∃x[member(x) ∧ mc(x) ∧ ~sk(x)] • We have to infer the 11th expression from the given 10. • Done through Resolution Refutation.
Club example: Inferencing • member(A) • member(B) • member(C) • Can be written as
member(A) • member(B) • member(C) • Now standardize the variables apart which results in the following
10 7 12 5 4 13 14 2 11 15 16 13 2 17
Assignment • Prove the inferencing in the Himalayan club example with different starting points, producing different resolution trees. • Think of a Prolog implementation of the problem • Prolog Reference (Prolog by Chockshin & Melish)
Problem-2 From predicate calculus
A “department” environment • Dr. X is the HoD of CSE • Y and Z work in CSE • Dr. P is the HoD of ME • Q and R work in ME • Y is married to Q • By Institute policy staffs of the same department cannot marry • All married staff of CSE are insured by LIC • HoD is the boss of all staff in the department
Diagrammatic representation CSE ME Dr. P Dr. X Z Y R Q married
Questions on “department” • Who works in CSE? • Is there a married person in ME? • Is there somebody insured by LIC?
Problem-3 (Zohar Manna, Mathematical Theory of Computation, 1974) From Propositional Calculus
Tourist in a country of truth-sayers and liers • Facts and Rules: In a certain country, people either always speak the truth or always lie. A tourist T comes to a junction in the country and finds an inhabitant S of the country standing there. One of the roads at the junction leads to the capital of the country and the other does not. S can be asked only yes/no questions. • Question: What single yes/no question can T ask of S, so that the direction of the capital is revealed?
Diagrammatic representation Capital S (either always says the truth Or always lies) T (tourist)
Deciding the Propositions: a very difficult step- needs human intelligence • P: Left road leads to capital • Q: S always speaks the truth
Meta Question: What question should the tourist ask • The form of the question • Very difficult: needs human intelligence • The tourist should ask • Is R true? • The answer is “yes” if and only if the left road leads to the capital • The structure of R to be found as a function of P and Q
Get form of R: quite mechanical • From the truth table • R is of the form (P x-nor Q) or (P ≡ Q)
Get R in English/Hindi/Hebrew… • Natural Language Generation: non-trivial • The question the tourist will ask is • Is it true that the left road leads to the capital if and only if you speak the truth? • Exercise: A more well known form of this question asked by the tourist uses the X-OR operator instead of the X-Nor. What changes do you have to incorporate to the solution, to get that answer?