- 100 Views
- Uploaded on

Download Presentation
## CS621: Artificial Intelligence

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

### CS621: Artificial Intelligence

### Problem-2

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)

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

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)

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

Questions on “department”

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

bought

time

agent

object

student

June

computer

the: definite

in: modifier

a: indefinite

modifier

new

A Semantic GraphThe student bought a new computer in June.

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 - 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

@ 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 schoolAnother Example

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

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 accurate2. 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.

Key points cntd

- 5. It may be OK to get an ALMOST sorted sequence QUICKLY; so see if SA and GA can be used6. SO what is coming out strongly is TIME vs. ACCURACY TRADE-OFF7. ***THE ABOVE HAS TO COME OUT IN YOUR ASSIGNMENT8. What about 8 puzzle? Optimal path is not needed.

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.

Download Presentation

Connecting to Server..