CS 497: Section EA
Download
Report
Transcript CS 497: Section EA
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
Language
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
DARPA Grand Challenge
2003-2007
Econometrics Example: A Recession
Model
of
a
country
– What is probability of recession, when a bank(b ) 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)
Revenue[Y]: Revenue of a bank (Y)
m
Social Networks
• Example: school friendships and their effects
Friend(A,B)
Friend(A,C)
1
2
Friend(B,C)
Attr(A)
Measuremt(A)
Attr(B)
Measuremt(B)
Attr(C)
Measuremt(C)
Pr( f ( A, B), f ( A, C ), f ( B, C ), a( A), a( B), a(C ), m( A), m( B), m(C ))
1
1 ( f ( A, B), a( A), a( B)) 2 ( f ( A, C ), a( A), a(C )) 3 ( f ( B, C ), a( B), a(C ))
Z
4 (a( A), d ( A)) 5 (a( B), d ( B)) 6 (a(C ), d (C ))
f (.,.),a(.),m(.)
1...6
shorthand for Friend(., .), Atrr(.), and Measuremt(.)
potential functions
f bob; f tom;
tom
f bob; f joe;
joe
lia
bob
f ann; f lia;
lia
ann
bbob
val
bob
f ann; f val;
bob
bjoe
f bob; f val;
ann
f bob; f ann;
bob
hbob
f bob; f lia;
bob
val
bann
btom
f lia;
ann
val
blia
f val;
bval
lia
hval
hjoe
hlia
htom
hann
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
f val;
joe
f tom; f ann;
ann
tom
Application: Hardware Verification
x1
x2
AND
f1
f3
not
f5
not
x3
AND
f2
OR
f4
Question: Can we set this boolean cirtuit to TRUE?
f5(x1,x2,x3) = a function of the input signal
Application: Hardware Verification
x1
x2
AND
f1
f3
not
f5
not
x3
AND
f2
OR
f4
SAT(f5) ?
Question: Can we set this boolean cirtuit to TRUE?
f5(x1,x2,x3) = f3 f4 = f1 (f2 x3) =
(x1 x2) (x2 x3)
M[x1]=FALSE
M[x2]=FALSE
M[x3]=FALSE
Finding the “best” path between
two points
• Classic computer science problem: many
algorithms, applications
• “best” generally means minimizing some
sort of cost
10
10
cost of
each
edge
pathhas
generally
some
cost associated
sum
etc. of cost with
of it
edges along path
10
source s
10
t sink
Stochastic setting
• Edges fail probabilistically
• Goal: find most reliable path
Directed Acyclic Graph G
edge reliability
t
0.85
s
0.95
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
(discrete) hidden variable
X
t
e3
s
e1
e2
the hidden variable allows us to model correlations and
binary
random
variables:
dependencies between
edge
failures
1 if edge survives, 0 if edge fails
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
Pr[e1 survives | X=1] = 0.9
Pr[e1 fails | X=1] = 0.1
... etc.
X
t
e3
s
e1
e2
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
t
e3
s
e1
e2
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