CS344: Introduction To Artificial Intelligence: Pushpak Bhattacharyya

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 32

CS344 : Introduction to Artificial

Intelligence

Pushpak Bhattacharyya
CSE Dept.,
IIT Bombay

Lecture 1 - Introduction
Persons involved
 Faculty instructor: Dr. Pushpak
Bhattacharyya (www.cse.iitb.ac.in/~pb)
 TAs: Annervaz (annervaz@cse), Avishek
(avis@cse), Sapan (sapan@cse)
 Course home page (to be created)
 www.cse.iitb.ac.in/~cs344-2008
 Venue, Webcast etc.: Rahul Deshmukh,
Sachin and others
Areas of AI and their inter-
dependencies
Knowledge
Search Logic Representation

Machine
Planning
Learning

Expert
NLP Vision Robotics Systems
Resources
 Main Text:
 Artificial Intelligence: A Modern Approach by Russell & Norvik,
Pearson, 2003.
 Other Main References:
 Principles of AI - Nilsson
 AI - Rich & Knight
 Knowledge Based Systems – Mark Stefik
 Journals
 AI, AI Magazine, IEEE Expert,
 Area Specific Journals e.g, Computational Linguistics
 Conferences
 IJCAI, AAAI
Allied Disciplines
Philosophy Knowledge Rep., Logic, Foundation of
AI (is AI possible?)
Maths Search, Analysis of search algos, logic
Economics Expert Systems, Decision Theory,
Principles of Rational Behavior
Psychology Behavioristic insights into AI programs
Brain Science Learning, Neural Nets
Physics Learning, Information Theory & AI,
Entropy, Robotics
Computer Sc. & Engg. Systems for AI
Topics to be covered
 Search
 General Graph Search, A*
 Iterative Deepening, α-β pruning, probabilistic methods
 Logic
 Formal System
 Propositional Calculus, Predicate Calculus
 Inductive Logic Programming
 Knowledge Representation
 Predicate calculus, Semantic Net, Frame
 Script, Conceptual Dependency, Uncertainty
Other Material
 Classical Machine Learning
 Learning from examples
 Decision Trees
 Analogical Learning
 Explanation Based Learning
 Computer Vision
 AI methods in Computer Vision
 Planning
 Rule Based
 Stochastic
Seminars and Projects to be done:
suggested areas
 Web and AI
 Robotic Algorithms
 Prediction, Forecasting
 Brain Science and AI
 Computer Games

Seminar: part of cs344 evaluation


Project: part of cs386 evaluation
Search

Search is present everywhere


Planning
 (a) which block to pick, (b) which to stack, (c) which to unstack, (d)
whether to stack a block or (e) whether to unstack an already stacked
block. These options have to be searched in order to arrive at the right
sequence of actions.

C
B
A B C A
Table
Vision
 A search needs to be carried out to find which point in the image of L
corresponds to which point in R. Naively carried out, this can become
an O(n2) process where n is the number of points in the retinal
images.

R L
Two eye
system

World
Robot Path Planning
 searching amongst the options of moving Left, Right, Up or Down.
Additionally, each movement has an associated cost representing the
relative difficulty of each movement. The search then will have to find
the optimal, i.e., the least cost path.

O2
R
Robot
O1
Path

D
Natural Language Processing
 search among many combinations of parts of speech on the way to
deciphering the meaning. This applies to every level of processing-
syntax, semantics, pragmatics and discourse.

The man would like to play.

Prepositio Verb Noun


Noun Verb n Verb
Expert Systems
Search among rules, many of which can apply to a
situation:

If-conditions
the infection is primary-bacteremia
AND the site of the culture is one of the sterile sites
AND the suspected portal of entry is the gastrointestinal tract
THEN
there is suggestive evidence (0.7) that infection is bacteroid

(from MYCIN)
Algorithmics of Search
General Graph search Algorithm
S

1 3 10

Graph G = (V,E)
A B C

5 4 6

D E

3
2 7

F G
1) Open List : S (Ø, 0) 6) OL : E(B,7), F(D,8), G(D, 9)
Closed list : Ø CL : S, A, B, C, D

2) OL : A(S,1), B(S,3), C(S,10) 7) OL : F(D,8), G(D,9)


CL : S CL : S, A, B, C, D, E

3) OL : B , C
(S,3) (S,10)
,D (A,6) 8) OL : G(D,9)
CL : S, A CL : S, A, B, C, D, E, F

4) OL : C(S,10), D(A,6), E(B,7) 9) OL : Ø


CL: S, A, B CL : S, A, B, C, D, E,
F, G
5) OL : D(A,6), E(B,7)
CL : S, A, B , C
GGS Data Structures

Key data structures : Open List, Closed list

Nodes from open list are taken in some order, expanded and children
are put into open list and parent is put into closed list.

Assumption: Monotone restriction is satisfied. That is the estimated cost
of reaching the goal node for a particular node is no more than the cost
of reaching a child and the estimated cost of reaching the goal from the
child
S

n1
C(n1,n2) h(n1 ) C (n1 , n2 )  h(n2 )
h(n1) n2

h(n2)

g
GGS

OL is a queue OL is stack
(BFS) (DFS) OL is accessed by using
a functions f= g+h
(Algorithm A)

BFS, DFS – Uninformed / Brute Force Search methods


Algorithm A
 A function f is maintained with each node
f(n) = g(n) + h(n), n is the node in the open list
 Node chosen for expansion is the one with least
f value
 For BFS: h = 0, g = number of edges in the
path to S
 For DFS: h = 0, g =
Algorithm A*
 One of the most important advances in AI
 g(n) = least cost path to n from S found so far
 h(n) <= h*(n) where h*(n) is the actual cost of
optimal path to G(node to be found) from n
“Optimism leads to optimality”
S

g(n)

h(n)
G
Search building blocks

State Space : Graph of states (Express
constraints and parameters of the problem)

Operators : Transformations applied to the states.
 Start state : S (Search starts from here)
0

Goal state : {G} - Search terminates here.

Cost : Effort involved in using an operator.

Optimal path : Least cost path
Examples
Problem 1 : 8 – puzzle

4 3 6 1 2 3

2 1 8 4 5 6

7 5 7 8

S G
Tile movement
0 represented as the movement of the blank
space.
Operators:
L : Blank moves left
C(L) = C(R) = C(U) = C(D) = 1
R : Blank moves right
U : Blank moves up
D : Blank moves down
Problem 2: Missionaries and Cannibals
R

boat River
boat
L

Missionaries Cannibals
Missionaries Cannibals
Constraints

The boat can carry at most 2 people

On no bank should the cannibals outnumber the missionaries
State : <#M, #C, P>
#M = Number of missionaries on bank L
#C = Number of cannibals on bank L
P = Position of the boat

S0 = <3, 3, L>
G = < 0, 0, R >

Operations
M2 = Two missionaries take boat
M1 = One missionary takes boat
C2 = Two cannibals take boat
C1 = One cannibal takes boat
MC = One missionary and one cannibal takes boat
<3,3,L>

C2 MC

<3,1,R <2,2,R
> >

<3,3,L>

Partial search
tree
Problem 3

B B B W W W

G: States where no B is to the left of any W


Operators:
1) A tile jumps over another tile into a blank tile with cost
2
2) A tile translates into a blank space with cost 1

All the three problems mentioned


above are to be solved using A*
A*
A* Algorithm – Definition and
Properties
 f(n) = g(n) + h(n)
S s
 The node with the least value
of f is chosen from the OL.
g(n)
 f*(n) = g*(n) + h*(n),
where,
g*(n) = actual cost of the n
optimal path (s, n)
h*(n) = actual cost of optimal h(n)
path (n, g)
goal
 g(n) ≥ g*(n)

 By definition, h(n) ≤ h*(n) State space graph G


8-puzzle: heuristics
Example: 8 puzzle

1 6 7 1 2 3
2 1 4 4 3 2 4 5 6
7 8 3
5 8 7 8
s5 6 n g

h*(n) = actual no. of moves to transform n to g h*

1.h1(n) = no. of tiles displaced from their destined h2

position. h1
2.h2(n) = sum of Manhattan distances of tiles from
their destined position.
Comparison
h1(n) ≤ h*(n) and h1(n) ≤ h*(n)
Missionaries and Cannibals
Problem
 3 missionaries (m) and 3 cannibals (c)
on the left side of the river and only
one boat is available for crossing over
to the right side. At any time the boat
can carry at most 2 persons and under
no circumstance the number of
cannibals can be more than the number
of missionaries on any bank
Missionaries and Cannibals
Problem: heuristics

 Start state: <3, 3, L>


 Goal state: <0, 0, R>
 h1(n) = (no. of m + no. of c) / 2, on the
left side
 h2(n) = no. of m + no. of c – 1
 h1(n) ≤ h*(n) and h1(n) ≤ h*(n)

You might also like