CS621: Artificial Intelligence

32
CS621: Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 34– Predicate Calculus and Himalayan Club example (lectures 32 and 33 were on HMM+Viterbi combined AI and NLP)

description

CS621: Artificial Intelligence. Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 34– Predicate Calculus and Himalayan Club example (lectures 32 and 33 were on HMM+Viterbi combined AI and NLP). Resolution - Refutation. man(x) → mortal(x) Convert to clausal form - PowerPoint PPT Presentation

Transcript of CS621: Artificial Intelligence

Page 1: CS621: Artificial Intelligence

CS621: Artificial Intelligence

Pushpak BhattacharyyaCSE Dept., IIT Bombay

Lecture 34– Predicate Calculus and Himalayan Club example

(lectures 32 and 33 were on HMM+Viterbi combined AI and NLP)

Page 2: CS621: Artificial Intelligence

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)

Page 3: CS621: Artificial Intelligence

Resolution – Refutation contd Negate the goal

~man(shakespeare) Get a pair of resolvents

)(~ eshakespearmortal )()(~ eshakespearmortaleshakespearman

)(~ eshakespearman )(~ eshakespearman

Page 4: CS621: Artificial Intelligence

Resolution Tree

1Re solvent 2Re solvent

soluteRe

Page 5: CS621: Artificial Intelligence

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

Page 6: CS621: Artificial Intelligence

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

QP

QP

Page 7: CS621: Artificial Intelligence

1. P

2. converted to

3.

Draw the resolution tree (actually an inverted tree). Every node is a clausal form and branches are intermediate inference steps.

QP QP ~

Q~

Q~

QP ~

P~ P

Page 8: CS621: Artificial Intelligence

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.

Page 9: CS621: Artificial Intelligence

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

Page 10: CS621: Artificial Intelligence

Predicate Calculus: Example contd. Let mc denote mountain climber and sk denotes skier.

Knowledge representation in the given problem is as follows:

1. member(A)2. member(B)3. member(C)4. ∀x[member(x) → (mc(x) ∨ sk(x))]5. ∀x[mc(x) → ~like(x,rain)]6. ∀x[sk(x) → like(x, snow)]7. ∀x[like(B, x) → ~like(A, x)]8. ∀x[~like(B, x) → like(A, x)]9. like(A, rain)10. like(A, snow)11. Question: ∃x[member(x) ∧ mc(x) ∧ ~sk(x)]

We have to infer the 11th expression from the given 10. Done through Resolution Refutation.

Page 11: CS621: Artificial Intelligence

Club example: Inferencing1. member(A)

2. member(B)

3. member(C)

4. – Can be written as –

5. –

6. –

7. –

))]()(()([ xskxmcxmemberx

))]()(()([ xskxmcxmember )()()(~ xskxmcxmember )],()([ snowxlkxskx

),()(~ snowxlkxsk )],(~)([ rainxlkxmcx

),(~)(~ rainxlkxmc )],(~),([ xBlkxAlikex

),(~),(~ xBlkxAlike

Page 12: CS621: Artificial Intelligence

8. –

9.

10.

11. – Negate–

)],(),([~ xBlkxAlkx

),(),( xBlkxAlk

),( rainAlk

),( snowAlk

)](~)()([ xskxmcxmemberx

)]()(~)([~ xskxmcxmemberx

Page 13: CS621: Artificial Intelligence

Now standardize the variables apart which results in the following

1. member(A)

2. member(B)

3. member(C)

4.

5.

6.

7.

8.

9.

10.

11.

)()()(~ 111 xskxmcxmember

),()(~ 22 snowxlkxsk ),(~)(~ 33 rainxlkxmc

),(~),(~ 44 xBlkxAlike

),(),( 55 xBlkxAlk

),( rainAlk

),( snowAlk)]()(~)([~ 666 xskxmcxmemberx

Page 14: CS621: Artificial Intelligence

),(~),(~ 44 xBlkxAlike ),( snowAlk

),(~ snowBlk ),()(~ 22 snowxlkxsk

)()()(~ 111 xskxmcxmember )(~ Bsk

)()(~ BmcBmember )(Bmember

)(Bmc)]()(~)([~ 666 xskxmcxmemberx

)()(~ BskBmember )(~ Bsk

)(~ Bmember )(Bmember

710

12 5

13 4

14 2

1115

16 13

17 2

Page 15: CS621: Artificial Intelligence

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)

Page 16: CS621: Artificial Intelligence

Problem-2

From predicate calculus

Page 17: CS621: Artificial Intelligence

A “department” environment1. Dr. X is the HoD of CSE2. Y and Z work in CSE3. Dr. P is the HoD of ME4. Q and R work in ME5. Y is married to Q6. By Institute policy staffs of the same

department cannot marry7. All married staff of CSE are insured by LIC8. HoD is the boss of all staff in the

department

Page 18: CS621: Artificial Intelligence

Diagrammatic representation

Dr. X

Y Z

Dr. P

Q R

married

CSE ME

Page 19: CS621: Artificial Intelligence

Questions on “department”

Who works in CSE? Is there a married person in ME? Is there somebody insured by LIC?

Page 20: CS621: Artificial Intelligence

Text Knowledge Representation

Page 21: CS621: Artificial Intelligence

A Semantic Graph

in: modifiera: indefinite

the: definite

student

past tense

agent

bought

objecttime

computer

new

June

modifier

The student bought a new computer in June.

Page 22: CS621: Artificial Intelligence

UNL representation

Ram is reading the newspaper

Representation of Knowledge

Page 23: CS621: Artificial Intelligence

UNL: a United Nations project

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)

Dave, Parikh and Bhattacharyya, Journal of Machine Translation, 2002

Page 24: CS621: Artificial Intelligence

Knowledge Representation

Ram

read

newspaper

agt obj

UNL Graph - relations

Page 25: CS621: Artificial Intelligence

Knowledge Representation

Ram(iof>person)

read(icl>interpret)

newspaper(icl>print_media)

UNL Graph - UWs

agt obj

Page 26: CS621: Artificial Intelligence

Knowledge Representation

Ram(iof>person)

read(icl>interpret)

newspaper(icl>print_media)

@entry@present@progress

@def

Ram is reading the newspaper

UNL graph - attributes

agt obj

Page 27: CS621: Artificial Intelligence

The boy who works here went to school

plt

agt@ entry @ past

school(icl>institution)

go(icl>move)

boy(icl>person)

work(icl>do)

here

@ entry

agt plc

:01

Another Example

Page 28: CS621: Artificial Intelligence

What do these examples show? Logic systematizes the reasoning process Helps identify what is

mechanical/routine/automatable Brings to light the steps that only human

intelligence can perform These are especially of foundational and

structural nature (e.g., deciding what propositions to start with)

Algorithmizing reasoning is not trivial

Page 29: CS621: Artificial Intelligence

About the SA/GA assignments

Page 30: CS621: Artificial Intelligence

Key points 1. SA and GA are randomized search algorithms;

     (a) why does one do randomized search?      (b) To QUICKLY find a solution even if the the solution is not FULLY accurate

2. For example, TSP is NP hard; so any algorithm that purports to give the correct tour ALWAYS is going to take exponential amount of time.

3. But it may be alright to get the solution certain percentage of time. Then one can use SA/GA.

4. For sorting , consider getting the sorted sequences for any set of of numbers of any sequence length, say 200,000 numbers.

Page 31: CS621: Artificial Intelligence

Key points cntd

5. It may be OK to get an ALMOST sorted sequence QUICKLY; so see if SA and GA can be used

6. SO what is coming out strongly is TIME vs. ACCURACY TRADE-OFF

7. ***THE ABOVE HAS TO COME OUT IN YOUR ASSIGNMENT

8. What about 8 puzzle? Optimal path is not needed.

Page 32: CS621: Artificial Intelligence

Key points cntd 9. But you HAVE TO demonstrate randomness. That means Ther

are times when the goal state will not be reached;

10. The above will be the case when randomness is INTRODUCED in the system by making the tempearure HIGH.

11. Thus a key point of the assignment is the EFFECT OF HIGH TEMPERATURE on the system.

12. Another point about the next state: make sure you pick it up RANDOMLY and not deterministically.

13. Think about the connection between BFS and random search. The former will guarantee finding the goal state, the latter not. But there may be gain in time complexity.