Intro to AI - UMD Department of Computer Science

Download Report

Transcript Intro to AI - UMD Department of Computer Science

Introduction to AI
Russell and Norvig:
Chapter 1
CMSC421 – Fall 2006
Meta-Intro
Personnel: Myself, two TAs: Galileo Namata
and Vivek Sehgal
Answers to some important questions:





What are the prerequisites for this course?
How can I do well in this course?
What are the course logistics?
How do we stay awake in the late afternoon… ?
What will we learn in this class?
What are the prerequisites?
Assume you know how to program. In
addition, you should know:

basic algorithms, data structures and
computational complexity
 i.e., searching graphs (DFS, BFS)
 lists, trees, graphs, etc.
 Difference between an O(n) and an O(2n) algorithm

basic logic
 Truth table for x OR y, x AND y, x IMPLIES y

basic probability
 P(A v B) = P(A) + P(B) – P(A & B)
 P(A | B) = P(A & B) / P(B)
How do I do well in this course?
Attend class
Participate in class
Do reading

Suggestion: 1) Set aside 20 minutes to skim chapter before
lecture. 2) After lecture, go back and read the text in depth.
Start written assignments early

Assignments are not designed to be done the night before
they are due
Start programming assignments EARLY
Do practice problems to study for exams
Form study groups. Working together (not copying)
is highly encouraged**
** More on this in a few slides
What are the course logistics?
Web Page:

http://www.cs.umd.edu/class/fall2006/cmsc421/
Mailing list:

http://mailman.cs.umd.edu/mailman/listinfo/cmsc
421_2006
Forum:

https://forum.cs.umd.edu/forumdisplay.php?f=43
How do we stay awake?
and learn something, !
Course Ettiquette:




Arrive to class on time; if you must leave during class,
please try to limit the disruption/distraction
No cell phones, no side discussions
No laptops during lectures
Participate, Participate, Participate
 ask questions – if you don’t understand the material, probably
there is someone else who does not either!
 some in class exercises

Feedback:
 please provide feedback
 there will be several opportunities, but also feel free to just
come talk to me!
Summary Meta-Intro
Answers to some important questions:





What are the prerequisites for this course?
How can I do well in this course?
What are the course logistics?
How do we stay awake in the late
afternoon… ?
What will we learn in this class?
What is AI?
Class Exercise #0, part A:



On the 3x5 card you’ve been given, write
down what your definition of AI
You may also want to copy your definition
to your notes, because you’ll be turning
the card in (anonymously, no worries!)
We will collect these definitions in 3
minutes!
Found on the Web …
AI
is the simulation of intelligent human
Intelligent
processes
behavior
AI is the reproduction of the methods
or
Computer
results of human reasoning or intuition
AI is the study of mental faculties through the
use computational methods
Using computational models to simulate
intelligent behavior
Humans
Machines to emulate
humans
Why AI?
Cognitive Science: As a way to understand how
natural minds and mental phenomena work

e.g., visual perception, memory, learning, language, etc.
Philosophy: As a way to explore some basic and
interesting (and important) philosophical questions

e.g., the mind body problem, what is consciousness, etc.
Engineering: To get machines to do a wider variety of
useful things

e.g., understand spoken natural language, recognize individual
people in visual scenes, find the best travel plan for your
vacation, etc.
AI Characterizations
Discipline that systematizes and automates
intellectual tasks to create machines that:
Think like humans
Think rationally
Act like humans
Act rationally
#1: Act Like Humans
Behaviorist approach
Not interested in how you get results,
just the similarity to what human results
Exemplified by the Turing Test (Alan
Turing, 1950).
Turing Test
Interrogator interacts with a computer and a
person via a teletype.
Computer passes the Turing test if
interrogator cannot determine which is which.
Loebner contest: Modern version of Turing
Test, held annually, with a $100,000 prize.
http://www.loebner.net/Prizef/loebner-prize.html
 Participants include a set of humans and a set of
computers and a set of judges.
 Scoring: Rank from least human to most human.
 Highest median rank wins $2000.
 If better than a human, win $100,000. (Nobody
yet…)
#2: Think Like Humans
•Exemplified
How the by
computer performs functions
•General
does matter
Problem Solver (Newell and Simon)
•Neural
networks
Comparison
of the traces of the
•Reinforcement
learning
reasoning steps
Cognitive science  testable theories of
But:
the workings of the human mind
• some early research conflated algorithm
performance => like human (and vice-versa)
• Do we want to duplicate human imperfections?
#3: Thinking rationally
Exemplified by "laws of thought"
Aristotle:
what
are
correct
Problems:
processes?
1. arguments/thought
Not easy to translate informal
real world problem
into
formal terms
(problem
formulation
is difficult)
Several
Greek
schools
developed
2. various
While mayforms
be able of
to solve
problem inand
logicthe
: notation
principal (i.e. decidable), in practice, may not get
rules
of inderivation
thoughts
the
answer
a reasonablefor
amount
of time
(computationally
intractable)
Direct line through
mathematics and
philosophy to modern AI
#4: Acting Rationally
Rational behavior: do the right thing
Always make the best decision given
what is available
(knowledge,
•Connection
to economics,
operationaltime,
research,
resources)
and
control theory
•ButPerfect
ignoresknowledge,
role of consciousness,
unlimitedemotions,
resources
fear
dying reasoning
on intelligence
 oflogical
(#3)
Imperfect knowledge, limited resources
 (limited) rationality
AI Characterizations
Discipline that systematizes and automates
intellectual tasks to create machines that:
#2: Think like humans
#3: Think rationally
#1: Act like humans
#4: Act rationally
What is AI?
Class Exercise #0, part B:



Hopefully you have received the AI definition from
another student in the course.
Break into groups of 4 people
In your groups:
 Start by giving a quick introduction: name, year, etc.
 On the additional blank card each group has been given,
write each person in the groups name and email
 Each person has a card; read the card to the group, and
the group should decide the category:
#2: Think like humans
#3: Think rationally
#1: Act like humans
#4: Act rationally
Bits of History
1956: The name “Artificial Intelligence”
was coined by John McCarthy. (Would
“computational rationality” have been
better?)
Early period (50’s to late 60’s):
Basic principles and generality




General problem solving
Theorem proving
Games
Formal calculus
Bits of History
1969-1971: Shakey the
robot (Fikes, Hart, Nilsson)
Logic-based planning
(STRIPS)
Motion planning (visibility
graph)
Inductive learning (PLANEX)
Computer vision
Bits of History
Knowledge-is-Power period (late 60’s to
mid 80’s):


Focus on narrow tasks require expertise
Encoding of expertise in rule form:
If:
the car has off-highway tires and
4-wheel drive and
high ground clearance
Then: the car can traverse difficult terrain (0.8)



Knowledge engineering
5th generation computer project
CYC system (Lenat)
Bits of History
AI becomes an industry (80’s – present):






Expert systems: Digital Equipment,
Teknowledge, Intellicorp, Du Pont, oil
industry, …
Lisp machines: LMI, Symbolics, …
Constraint programming: ILOG
Robotics: Machine Intelligence Corporation,
Adept, GMF (Fanuc), ABB, …
Speech understanding
Information Retrieval – Google, …
Predictions and Reality … (1/3)
In the 60’s, a famous AI professor from MIT
said: “At the end of the summer, we will have
developed an electronic eye”
As of 2002, there is still no general computer
vision system capable of understanding
complex dynamic scenes
But computer systems routinely perform road
traffic monitoring, facial recognition, some
medical image analysis, part inspection, etc…
Predictions and Reality … (2/3)
In 1958, Herbert Simon (CMU) predicted
that within 10 years a computer would
be Chess champion
This prediction became true in 1998
Today, computers have won over world
champions in several games, including
Checkers, Othello, and Chess, but still do
not do well in Go
Predictions and Reality … (3/3)
In the 70’s, many believed that computer-controlled
robots would soon be everywhere from manufacturing
plants to home
Today, some industries (automobile, electronics) are
highly robotized, but home robots are still a thing of
the future
But robots have rolled on Mars, others are performing
brain and heart surgery, and humanoid robots are
operational and available for rent (see:
http://world.honda.com/news/2001/c011112.html)
State of the Art
Drive safely along a curving mountain road
Drive safely along US 1
Buy a week’s worth of groceries on the web
Buy a week’s worth of groceries at your local Giant
Play a decent game of bridge
Write an intentionally funny story
Give competent legal advice in a specialized area of law
Translate spoken English into spoken Swedish in real time
Converse successfully with another person for an hour
Play a decent game of ping-pong
Unload any dishwasher and put everything away
Explore the Martian landscape
Explore downtown Washington
Why is AI Hard?
Simple syntactic manipulation is not
enough
•Machine Translation
•Big project in 1957 following Sputnik launch
•Translation of Russian documents
•‘The spirit is willing but the flesh is weak’
•‘The vodka is strong but the meat is rotten’
Eliza
ELIZA: A program that simulated a psychotherapist
interacting with a patient
Coded at MIT during 1964-1966 by Joel Weizenbaum.
First script was DOCTOR.


The script was a simple collection of syntactic patterns not unlike
regular expressions
Each pattern had an associated reply which might include bits of
the input (after simple transformations (my  your)
Weizenbaum was shocked at reactions:



Psychiatrists thought it had potential.
People unequivocally anthropomorphized.
Many thought it solved the NL problem.
Try typing Meta-x doctor in Emacs.
Recent Loebner Prize winner, http://www.alicebot.org/
Colby’s PARRY
Kenneth Colby
modeled a paranoid
using the same
techniques circa
1968.
PARRY has basic
emotions. If it gets
angry, its replies
become more hostile.
In a Turing test,
expert psychiatrists
were unable to
distinguish PARRY’s
ramblings from those
of real paranoids.
H: Good afternoon. My name is
Doctor Jones.
P: Pleased to meet you.
H: How are you?
P: All right I guess.
H: Could you tell me your name?
P: Pat Smith.
H: I though you might have some
problems.
P: I've been upset lately.
H: By what?
P: People get on my nerves
sometimes.
H: Tell me more.
P: Do you know anything about
bookies?
...
Parry
meets
Eliza…
P:
E:
P:
E:
P:
E:
P:
E:
P:
I don't understand your motives.
Why don't you understand my motives?
Shouldn't I be?
Why do you say that just now?
That's just the way it is.
Suppose that's the way it were not.
So?
I am not sure I understand you fully.
You harp on the same questions too
much.
E: What does that similarity suggest to
you?
P: I don't get you.
E: Do you wish that you did get I?
Why is AI Hard?
Computational intractability
•AI goal defined before notion of NP-completeness
•people thought to solve larger problems we
simply need larger/faster computers
•didn’t
understand
notion
exponential
ALL
of the
algorithms the
we will
studyof
will
be computational
intractable
growth (NP-complete as best) in the WORST case …
How does the fact that we are dealing with the REAL
WORLD make solving these computationally challenging
problems feasible IN PRACTICE?
CMSC 421
We will focus on the rational agents
(“engineering”) paradigm
Make computers act more intelligently
Three major components:



representation
reasoning
learning
Course overview
Introduction and Agents (chapters 1,2)
Search (chapters 3,4,5,6)
Logic (chapters 7,8,9)
Planning (chapters 11,12)
Uncertainty (chapters 13,14,15,16,17)
Learning (chapters 18,20,21)
Learning Goals for Class
You will learn a bunch of tools that are useful
for building useful, adaptive software… to
solve fun and challenging problems
These tools will be useful for you whether
you go into AI research (basics that anyone
should know) or any other discipline (oh, hey,
that looks like the planning problems we
studied way back in cmsc421)
Help you separate hype from what’s easily
achievable using existing tools (and avoid
reinventing them!)