CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010

advertisement
CS 440 / ECE 448
Introduction to Artificial Intelligence
Spring 2010
Instructor: Eyal Amir
Grad TAs: Wen Pu, Yonatan Bisk
Undergrad TAs: Sam Johnson, Nikhil Johri
Artificial Intelligence (AI)
Natural
Language
Reasoning
Vision
Knowledge
Decision
Making
Learning
Robotics
AI Applications
Econometrics
Natural
Languag
Medicin
Reasoning
Databases
Vision
Networks
Knowledge
Decision
Autonomous
Making
Vehicles
Social
Learning
Science
Robotics
Electronic
Commerce
Today
Artificial Intelligence Applications
Artificial Intelligence Basics
What you think you know
Logic
Probabilities
AI
Search
What is Artificial Intelligence?
Examples:
Game playing? (chess)
Robots? (Roomba)
Learning? (Amazon)
Autonomous space crafts? (NASA)
What should AI have?
Saw in Yonatan’s Presentation
Robotics
Vision
A little bit of Natural-Language Processing
Game Playing: Chess
May 1997
2006: Anthony Cozzie’s (UIUC) ZAPPA wins
World Computer-Chess Championship
Decision Making: Scrabble
Daily Illini
Feb 2007:
Winning computer
program created
by graduate
student beats world
champion Scrabble
player
(Graduate Student =
Mark Richards)
Collaborative Filtering
Classification
Planning
Robotics 1971: Shakey
Mobile Robots 2001
DARPA Grand Challenge
2003-2007
Econometrics Example: A Recession
Model of a country
What is probability of recession, when a bank(bm) goes into
bankruptcy?
Recession: Recession of a country in [0,1]
Market[X]: Quarterly market (X) index
Loss[X,Y]: Loss of a bank (Y) in a market (X)
Social Networks
Example: school friendships and their effects
Friend(A,B)
Attr(A)
Measuremt(A)
Friend(A,C)
Attr(B)
Measuremt(B)
Friend(B,C)
Attr(C)
Measuremt(C)
shorthand for Friend(., .), Atrr(.), and Measuremt(.)
potential func-tions
f bob f tom;
f bo
b;
joe
;
tom
f joe;
bob
f bob f ann;
bo
b
;
ann
f bo
f lia;
b;
lia
bo
b
f ann; f lia;
lia
f bo
ann
f ann; f val;
bob
val
b;
val
f val;
bo
b
ann
f lia;
f val;
val
hbo
bbo
bjo
bto
ban
bli
bva
b
b
e
m
n
a
l
lia
hval
hjoe
hlia
htom
f joe; f ann;
ann
f joe;
tom
f tom;
joe
f joe;
joe
lia
f tom; f lia;
lia
tom
f lia;
f joe;
joe
val
f tom; f val;
val
tom
hann
f val;
joe
f tom; f ann;
ann
tom
Application: Hardware Verification
x
1
x
f
AND
1
2
n
ot
x
3
f
n
ot
3
f
AND
f
5
2
OR
f
4
Question: Can we set this boolean cirtuit to TRUE?
f5(x1,x2,x3) = a function of the input signal
Application: Hardware Verification
x
1
x
f
AND
1
2
n
ot
f
n
ot
3
f
AND
f
5
2
OR
SAT(f5)
3
4
? TRUE?
Question: Can we set this boolean cirtuit to
x
f5(x1,x2,x3) = f3 f4 = f1
=
(x1 x2) ( x2 x3)
f
(f2
x3)
M[x1]
=FALSE
M[x2]
Finding the “best” path between
two points
Classic computer science problem: many
algorithms, applications
“best” generally means minimizing some
sort of cost
1
0
sourc
e
s
1
0
1
0
cost ofedge
each
pathhas
generally
some
cost associated
sum
etc. of cost with
of
it
edges
along path
1
0
t sin
k
Stochastic setting
Edges fail probabilistically
Goal: find most reliable path
Directed Acyclic Graph
G
edge reliability
0.8
5
s
0.9
5
t
0.
9
path reliability = 0.95 x 0.9 x 0.85 = 0.73
assumption:
independent!!!
not very
realistic...
Stochastic setting
Consider a richer structure using a
graphical model
X
(discrete) hidden
variable
e
s
e
1
e
3
2
the hidden variable allows us to model correlations and
dependencies between
edge
failures
binary
random
variables:
1 if edge survives, 0 if edge
fails
t
Stochastic setting
Specified:
prior probability on X
conditional probabilities for each edge
Pr[X=1] =
0.4
Pr[X=2] =
0.1
Pr[X=3] =
0.2
Pr[X=4] =
0.3
s
e
1
Pr[e1 survives | X=1] =
0.9
Pr[e1 fails | X=1] = 0.1
... etc.
X
e
e
2
3
t
Stochastic setting
Graphical model defines joint distribution:
Pr[X,e1,e2,e3,...]
= Pr[X] Pr[e1|X] Pr[e2|X]...
Reliability of path is marginal Pr[e1,e2,e3]
Can compute by summing...
X
e
s
e
1
e
2
3
t
Many applications
Just to name a few:
Network QoS routing [citations]
routers fail
stochastically
links fail
stochastically
Failures are typically correlated: if two machines run the same version of
unpatched Windows, and one gets infected by a virus...
Many applications
Just to name a few:
Network QoS routing [citations]
Parsing w/ weighted FSAs
FSA where edges have probabilities assigned to
them
(from Smith + Eisner ACL’05 best
paper)
Many applications
Just to name a few:
Network QoS routing
Parsing w/ weighted FSAs
Robot navigation
e.g., DARPA Grand
Challenge
Motivation of AI
Autonomous computers
Embedded computers
Programming by telling
Human-like capabilities – vision, natural
language, motion and manipulation
Applications: learning, media, www,
manipulation, verification, robots, cars,
help for disabled, dangerous tasks
Long-Term Goals
Computers that can accept advice
Programs that process rich information
about the everyday world
Programs that can replace experts
Computer programs that can decide on
actions: control, planning,
experimentation
Programs that combine knowledge of
different types and sources
Programs that learn
Short-Term Goals
Knowledge & reasoning – acquire,
represent, use, answer questions
Planning & decision making
Diagnosis & analysis
Learning, pattern recognition
Inferring state of the world from sensors
Vision
Natural-language text
What This Course Covers
Major techniques in artificial intelligence
Search in large spaces and game search
Logical reasoning
Planning and sequential decision making
Knowledge representation - logic &
probability
Probabilistic reasoning
Machine Learning
Robotic control, Stimulus-Response
Machine Vision
What you should know
Matrix Algebra
Probability and Statistics
Logic
Data structures
C++, Java, Python, or Matlab
What You Will Know
Matlab
Building and reasoning with complex
probabilistic and logical knowledge
Build autonomous agents
Create vision/sensing routines for simple
detection, identification, and tracking
Create programs that make decisions
autonomously or semi-autonomously
Administration
Office Hours, Late policy, homework
deadlines, syllabus, and how to make a
home-cooked meal – check the website:
http://www.cs.uiuc.edu/class/cs440
Download