Artificial Intelligence
Prof.E.Sreenivasa Reddy
Principal
University College of Engineering
Acharya Nagarjuna University
CS 561, Lecture 1
Why study AI?
Search engines
Labor
Science
Medicine/
Diagnosis
Appliances What
else?
CS 561, Lecture 1
Honda Humanoid Robot
Walk
Turn
Stair
s
http://world.honda.com/robot/
CS 561, Lecture 1
Sony AIBO
http://www.aibo.com
CS 561, Lecture 1
Natural Language Question
Answering
http://www.ai.mit.edu/projects/infolab/http://aimovie.warnerbros.com
CS 561, Lecture 1
Robot Teams
USC robotics Lab
What is intelligence
Data
Information
Knowledge
Intelligence
How intelligence is developed
Learning
Experience
Reasoning
Intelligence vs Artificial Intelligence
Intelligence is a property/ability attributed to people, such as to
know, to think, to talk, to learn, to understand.
Intelligence = Knowledge + ability to perceive, feel, comprehend,
process, communicate, judge, learn.
Artificial Intelligence is an interdisciplinary field aiming at
developing techniques and tools for solving problems that people at
good at.
What is Artificial Intelligence ?
making computers that think?
the automation of activities we associate with human thinking, like
decision making, learning ... ?
the art of creating machines that perform functions that require
intelligence when performed by people ?
the study of mental faculties through the use of computational models ?
What is Artificial Intelligence ?
the study of computations that make it possible to perceive, reason
and act ?
a field of study that seeks to explain and emulate intelligent
behaviour in terms of computational processes ?
a branch of computer science that is concerned with the
automation of intelligent behaviour ?
anything in Computing Science that we don't yet know how to do
properly ? (!)
What is Artificial Intelligence ?
Systems that act
rationally
Systems that think
like humans
Systems that think
rationally
Systems that act
like humans
THOUGHT
BEHAVIOUR
HUMAN RATIONAL
Systems that act like humans:
Turing Test
“The art of creating machines that perform functions that
require intelligence when performed by people.” (Kurzweil)
“The study of how to make computers do things at which, at
the moment, people are better.” (Rich and Knight)
Systems that act like humans
You enter a room which has a computer terminal. You have a fixed period of time to type what you want into the terminal, and study the replies. At the other end of the line is either a human being or a computer system.
If it is a computer system, and at the end of the period you cannot reliably determine whether it is a system or a human, then the system is deemed to be intelligent.
?
Systems that act like humans
The Turing Test approach
a human questioner cannot tell if
there is a computer or a human answering his question, via teletype
(remote communication)
The computer must behave intelligently
Intelligent behavior
to achieve human-level performance in all cognitive tasks
Systems that act like humans
These cognitive tasks include:
Natural language processing
for communication with human
Knowledge representation
to store information effectively & efficiently
Automated reasoning
to retrieve & answer questions using the stored information
Machine learning
to adapt to new circumstances
The total Turing Test
Includes two more issues:
Computer vision
to perceive objects (seeing)
Robotics
to move objects (acting)
What is Artificial Intelligence ?
Systems that act
rationally
Systems that think
like humans
Systems that think
rationally
Systems that act
like humans
THOUGHT
BEHAVIOUR
HUMAN RATIONAL
Systems that think like humans:
cognitive modeling
Humans as observed from ‘inside’
How do we know how humans think? Introspection vs. psychological experiments
Cognitive Science
“The exciting new effort to make computers think … machines with minds in the full and literal sense” (Haugeland)
“[The automation of] activities that we associate with human thinking, activities such as decision-making, problem solving, learning …” (Bellman)
What is Artificial Intelligence ?
Systems that act
rationally
Systems that think
like humans
Systems that think
rationally
Systems that act
like humans
THOUGHT
BEHAVIOUR
HUMAN RATIONAL
Systems that think ‘rationally’
"laws of thought"
Humans are not always ‘rational’
Rational - defined in terms of logic?
Logic can’t express everything (e.g. uncertainty)
Logical approach is often not feasible in terms of computation time (needs ‘guidance’)
“The study of mental facilities through the use of computational models” (Charniak and McDermott)
“The study of the computations that make it possible to perceive, reason, and act” (Winston)
What is Artificial Intelligence ?
Systems that act
rationally
Systems that think
like humans
Systems that think
rationally
Systems that act
like humans
THOUGHT
BEHAVIOUR
HUMAN RATIONAL
Systems that act rationally:
“Rational agent”
Rational behavior: doing the right thing
The right thing: that which is expected to maximize goal achievement, given the available information
Giving answers to questions is ‘acting’.
I don't care whether a system:
replicates human thought processes
makes the same decisions as humans
uses purely logical reasoning
Systems that act rationally
Logic only part of a rational agent, not all of
rationality
Sometimes logic cannot reason a correct conclusion
At that time, some specific (in domain) human knowledge or
information is used
Thus, it covers more generally different situations of
problems
Compensate the incorrectly reasoned conclusion
Systems that act rationally
Study AI as rational agent –
2 advantages:
It is more general than using logic only
Because: LOGIC + Domain knowledge
It allows extension of the approach with more scientific
methodologies
Rational agents
An agent is an entity that perceives and acts
This course is about designing rational agents
Abstractly, an agent is a function from percept histories to actions:
[f: P* A]
For any given class of environments and tasks, we seek the agent (or class of agents) with the best performance
Caveat: computational limitations make perfect rationality unachievable design best program for given machine resources
Artificial
Produced by human art or effort, rather than originating
naturally.
Intelligence
is the ability to acquire knowledge and use it" [Pigford
and Baur]
So AI was defined as:
AI is the study of ideas that enable computers to be intelligent.
AI is the part of computer science concerned with design of
computer systems that exhibit human intelligence(From the
Concise Oxford Dictionary)
From the above two definitions, we can see that AI has two
major roles:
Study the intelligent part concerned with humans.
Represent those actions using computers.
An Intelligent Agent
Knowledge
representation
reasoningplanning
learning
inputNatural lang.
visioneffectors
Goals of AI
To make computers more useful by letting them take over
dangerous or tedious tasks from human
Understand principles of human intelligence
The Foundation of AI
Philosophy
At that time, the study of human intelligence began with no
formal expression
Initiate the idea of mind as a machine and its internal operations
The Foundation of AI Mathematics formalizes the three main area of AI: computation,
logic, and probability
Computation leads to analysis of the problems that can be computed complexity theory
Probability contributes the “degree of belief ” to handle uncertaintyin AI
Decision theory combines probability theory and utility theory (bias)
The Foundation of AI
Psychology
How do humans think and act?
The study of human reasoning and acting
Provides reasoning models for AI
Strengthen the ideas
humans and other animals can be considered as information processing
machines
The Foundation of AI Computer Engineering
How to build an efficient computer?
Provides the artifact that makes AI application possible
The power of computer makes computation of large and difficult problems more easily
AI has also contributed its own work to computer science, including: time-sharing, the linked list data type, OOP, etc.
The Foundation of AI
Control theory and Cybernetics
How can artifacts operate under their own control?
The artifacts adjust their actions
To do better for the environment over time
Based on an objective function and feedback from the environment
Not limited only to linear systems but also other problems
as language, vision, and planning, etc.
The Foundation of AI
Linguistics
For understanding natural languages
different approaches has been adopted from the linguistic work
Formal languages
Syntactic and semantic analysis
Knowledge representation
The main topics in AIArtificial intelligence can be considered under a number of headings:
Search (includes Game Playing).
Representing Knowledge and Reasoning with it.
Planning.
Learning.
Natural language processing.
Expert Systems.
Interacting with the Environment (e.g. Vision, Speech recognition, Robotics)
We won’t have time in this course to consider all of these.
more powerful and more useful computers
new and improved interfaces
solving new problems
better handling of information
relieves information overload
conversion of information into knowledge
Some Advantages of Artificial
Intelligence
The Disadvantages
increased costs
difficulty with software development - slow and expensive
few experienced programmers
few practical products have reached the market as yet.
Search Search is the fundamental technique of AI.
Possible answers, decisions or courses of action are structured into an abstract space, which we then search.
Search is either "blind" or “uninformed":
blind we move through the space without worrying about what is coming next, but
recognising the answer if we see it
informed we guess what is ahead, and use that information to decide where to look
next.
We may want to search for the first answer that satisfies our goal, or we may want
to keep searching until we find the best answer.
Knowledge Representation & Reasoning The second most important concept in AI
If we are going to act rationally in our environment, then we must have some way of
describing that environment and drawing inferences from that representation.
how do we describe what we know about the world ?
how do we describe it concisely ?
how do we describe it so that we can get hold of the right piece of knowledge
when we need it ?
how do we generate new pieces of knowledge ?
how do we deal with uncertain knowledge ?
Knowledge
Declarative Procedural
• Declarative knowledge deals with factoid questions
(what is the capital of India? Etc.)
• Procedural knowledge deals with “How”
• Procedural knowledge can be embedded in
declarative knowledge
Planning
Given a set of goals, construct a sequence of actions that achieves those goals:
often very large search space
but most parts of the world are independent of most other parts
often start with goals and connect them to actions
no necessary connection between order of planning and order of execution
what happens if the world changes as we execute the plan and/or our
actions don’t produce the expected results?
Learning
If a system is going to act truly appropriately, then it must be
able to change its actions in the light of experience:
how do we generate new facts from old ?
how do we generate new concepts ?
how do we learn to distinguish different situations
in new environments ?
Interacting with the Environment
In order to enable intelligent behaviour, we will have to interact with our environment.
Properly intelligent systems may be expected to: accept sensory input
vision, sound, … interact with humans
understand language, recognise speech, generate text, speech and graphics, …
modify the environment
robotics
History of AI AI has a long history
Ancient Greece
Aristotle
Historical Figures Contributed
Ramon Lull
Al Khowarazmi
Leonardo da Vinci
David Hume
George Boole
Charles Babbage
John von Neuman
As old as electronic computers themselves (c1940)
The ‘von Neuman’ Architecture
History of AI Origins
The Dartmouth conference: 1956 John McCarthy (Stanford)
Marvin Minsky (MIT)
Herbert Simon (CMU)
Allen Newell (CMU)
Arthur Samuel (IBM)
The Turing Test (1950)
“Machines who Think”
By Pamela McCorckindale
Periods in AI
Early period - 1950’s & 60’s
Game playing brute force (calculate your way out)
Theorem proving symbol manipulation
Biological models neural nets
Symbolic application period - 70’s
Early expert systems, use of knowledge
Commercial period - 80’s
boom in knowledge/ rule bases
Periods in AI cont’d
? period - 90’s and New Millenium
Real-world applications, modelling, better evidence, use of theory, ......?
Topics: data mining, formal models, GA’s, fuzzy logic, agents, neural nets, autonomous systems
Applications visual recognition of traffic
medical diagnosis
directory enquiries
power plant control
automatic cars
Fashions in AIProgress goes in stages, following funding booms and crises: Some examples:
1. Machine translation of languages
1950’s to 1966 - Syntactic translators
1966 - all US funding cancelled
1980 - commercial translators available
2. Neural Networks
1943 - first AI work by McCulloch & Pitts
1950’s & 60’s - Minsky’s book on “Perceptrons” stops nearly all work on nets
1986 - rediscovery of solutions leads to massive growth in neural nets research
The UK had its own funding freeze in 1973 when the Lighthill report reduced AI work severely -
Lesson: Don’t claim too much for your discipline!!!!
Look for similar stop/go effects in fields like genetic algorithms and evolutionary computing. This is a
very active modern area dating back to the work of Friedberg in 1958.
Symbolic and Sub-symbolic AI
Symbolic AI is concerned with describing and manipulating our
knowledge of the world as explicit symbols, where these symbols
have clear relationships to entities in the real world.
Sub-symbolic AI (e.g. neural-nets) is more concerned with
obtaining the correct response to an input stimulus without
‘looking inside the box’ to see if parts of the mechanism can be
associated with discrete real world objects.
This course is concerned with symbolic AI.
Symbolic vs. Subsymbolic AI
Subsymbolic AI: Model
intelligence at a level similar to
the neuron. Let such things as
knowledge and planning emerge.
Symbolic AI: Model such
things as knowledge and
planning in data structures that
make sense to the
programmers that build them.
(blueberry (isa fruit)
(shape round)
(color purple)
(size .4 inch))
Consider what might be involved in
building a “smart” computer….
What are the “components” that might be useful?
Fast hardware?
Foolproof software?
Chess-playing at grandmaster level?
Speech interaction?
speech synthesis
speech recognition
speech understanding
Image recognition and understanding ?
Learning?
Planning and decision-making?
Can we build hardware as complex
as the brain? How complicated is our brain?
a neuron, or nerve cell, is the basic information processing unit
estimated to be on the order of 10 12 neurons in a human brain
many more synapses (10 14) connecting these neurons
cycle time: 10 -3 seconds (1 millisecond)
How complex can we make computers?
106 or more transistors per CPU
supercomputer: hundreds of CPUs, 10 9 bits of RAM
cycle times: order of 10 - 8 seconds
Conclusion
YES: in the near future we can have computers with as many basic processing
elements as our brain, but with
far fewer interconnections (wires or synapses) than the brain
much faster updates than the brain
but building hardware is very different from making a computer behave like a brain!
Must an Intelligent System be
Foolproof? A “foolproof ” system is one that never makes an error:
Types of possible computer errors
hardware errors, e.g., memory errors
software errors, e.g., coding bugs
“human-like” errors
Clearly, hardware and software errors are possible in practice
what about “human-like” errors?
An intelligent system can make errors and still be intelligent
humans are not right all of the time
we learn and adapt from making mistakes
e.g., consider learning to surf or ski
we improve by taking risks and falling
an intelligent system can learn in the same way
Conclusion:
Can Computers Talk? This is known as “speech synthesis”
translate text to phonetic form
e.g., “fictitious” -> fik-tish-es
use pronunciation rules to map phonemes to actual sound
e.g., “tish” -> sequence of basic audio sounds
Difficulties
sounds made by this “lookup” approach sound unnatural
sounds are not independent
e.g., “act” and “action”
modern systems (e.g., at AT&T) can handle this pretty well
a harder problem is emphasis, emotion, etc
humans understand what they are saying
machines don’t: so they sound unnatural
Conclusion: NO, for complete sentences, but YES for individual words
Can Computers Recognize
Speech? Speech Recognition:
mapping sounds from a microphone into a list of words.
Hard problem: noise, more than one person talking,
occlusion, speech variability,..
Even if we recognize each word, we may not understand its meaning.
Recognizing single words from a small vocabulary systems can do this with high accuracy (order of 99%)
e.g., directory inquiries
limited vocabulary (area codes, city names)
computer tries to recognize you first, if unsuccessful hands you over to a
human operator
saves millions of dollars a year for the phone companies
Recognizing human speech (ctd.)
Recognizing normal speech is much more difficult
speech is continuous: where are the boundaries between words?
e.g., “John’s car has a flat tire”
large vocabularies
can be many thousands of possible words
we can use context to help figure out what someone said
try telling a waiter in a restaurant:
“I would like some dream and sugar in my coffee”
background noise, other speakers, accents, colds, etc
on normal speech, modern systems are only about 60% accurate
Conclusion: NO, normal speech is too complex to accurately recognize, but YES for
restricted problems
(e.g., recent software for PC use by IBM, Dragon systems, etc)
Can Computers Understand
speech?
Understanding is different to recognition:
“Time flies like an arrow”
assume the computer can recognize all the words
but how could it understand it?
1. time passes quickly like an arrow?
2. command: time the flies the way an arrow times the flies
3. command: only time those flies which are like an arrow
4. “time-flies” are fond of arrows
only 1. makes any sense, but how could a computer figure this out?
clearly humans use a lot of implicit commonsense knowledge in
communication
Conclusion: NO, much of what we say is beyond the
capabilities of a computer to understand at present
Can Computers Learn and Adapt ? Learning and Adaptation
consider a computer learning to drive on the freeway
we could code lots of rules about what to do
or we could let it drive and steer it back on course when it heads
for the embankment
systems like this are under development (e.g., Daimler Benz)
e.g., RALPH at CMU
in mid 90’s it drove 98% of the way from Pittsburgh to San Diego
without any human assistance
machine learning allows computers to learn to do things
without explicit programming
Conclusion: YES, computers can learn and adapt, when
presented with information in the appropriate way
Recognition v. Understanding (like Speech)
Recognition and Understanding of Objects in a scene
look around this room
you can effortlessly recognize objects
human brain can map 2d visual image to 3d “map”
Why is visual recognition a hard problem?
Can Computers “see”?
Can Computers plan and make
decisions? Intelligence
involves solving problems and making decisions and plans
e.g., you want to visit your cousin in Boston
you need to decide on dates, flights
you need to get to the airport, etc
involves a sequence of decisions, plans, and actions
What makes planning hard?
the world is not predictable:
your flight is canceled or there’s a backup on the 405
there are a potentially huge number of details
do you consider all flights? all dates?
no: commonsense constrains your solutions
AI systems are only successful in constrained planning problems
Conclusion: NO, real-world planning and decision-making is still beyond the capabilities
of modern computers
exception: very well-defined, constrained problems: mission planning for satelites.
Summary of State of AI Systems in
Practice Speech synthesis, recognition and understanding
very useful for limited vocabulary applications
unconstrained speech understanding is still too hard
Computer vision
works for constrained problems (hand-written zip-codes)
understanding real-world, natural scenes is still too hard
Learning
adaptive systems are used in many applications: have their limits
Planning and Reasoning
only works for constrained problems: e.g., chess
real-world is too complex for general systems
Overall:
many components of intelligent systems are “doable”
Intelligent Systems in Your
Everyday Life
Post Office
automatic address recognition and sorting of mail
Banks
automatic check readers, signature verification systems
automated loan application classification
Telephone Companies
automatic voice recognition for directory inquiries
automatic fraud detection,
classification of phone numbers into groups
Credit Card Companies
automated fraud detection, automated screening of applications
AI Applications: Consumer
Marketing
Have you ever used any kind of credit/ATM/store card while
shopping?
if so, you have very likely been “input” to an AI algorithm
All of this information is recorded digitally
Companies like Nielsen gather this information weekly and
search for patterns
general changes in consumer behavior
tracking responses to new products
identifying customer segments: targeted marketing, e.g., they
find out that consumers with sports cars who buy textbooks
respond well to offers of new credit cards.
Currently a very hot area in marketing
How do they do this?
AI Applications: Identification
Technologies
ID cards
e.g., ATM cards
can be a nuisance and security risk:
cards can be lost, stolen, passwords forgotten, etc
Biometric Identification
walk up to a locked door
camera
fingerprint device
microphone
computer uses your biometric signature for identification
face, eyes, fingerprints, voice pattern
AI Applications: Predicting the
Stock Market
The Prediction Problem
given the past, predict the future
very difficult problem!
we can use learning algorithms to learn a predictive model from historical data
prob(increase at day t+1 | values at day t, t-1,t-2....,t-
k)
such models are routinely used by banks and financial traders to manage portfolios worth millions of
dollars
?
?
time in days
Value of
the Stock
AI-Applications: Machine Translation Language problems in international business
e.g., at a meeting of Japanese, Korean, Vietnamese and Swedish investors, no common
language
or: you are shipping your software manuals to 127 countries
solution; hire translators to translate
would be much cheaper if a machine could do this!
How hard is automated translation
very difficult!
e.g., English to Russian
“The spirit is willing but the flesh is weak” (English)
“the vodka is good but the meat is rotten” (Russian)
not only must the words be translated, but their meaning also!
Nonetheless....
commercial systems can do alot of the work very well (e.g.,restricted vocabularies in
software documentation)
algorithms which combine dictionaries, grammar models, etc.
see for example babelfish.altavista.com
AI Applications
Autonomous Planning &
Scheduling:
Autonomous rovers.
AI Applications
Autonomous Planning & Scheduling:
Telescope scheduling
AI Applications
Autonomous Planning & Scheduling:
Analysis of data:
AI Applications
Medicine:
Image guided surgery
AI Applications
Medicine:
Image analysis and enhancement
AI Applications
Transportation:
Autonomous
vehicle control:
AI Applications
Transportation:
Pedestrian detection:
AI Applications
Games:
AI Applications
Games:
AI Applications
Robotic toys: