Lecture 1
Lecture 1
Memory Program/Data
(Script) CPU (SAM)
Searle’s Question
• You were able to solve the problem of communicating with
the person/user and thus you/the room passes the Turing Test
• But did you understand the Chinese messages being
communicated?
– since you do not speak Chinese, you did not understand the symbols in
the question, the answer, or the storage
– can we say that you actually used any intelligence?
• By analogy, since you did not understand the symbols that
you interacted with, neither does the computer understand
the symbols that it interacts with (input, output, program
code, data)
• He defines to categories of AI:
– strong AI – the pursuit of machine intelligence
– weak AI – the pursuit of machines solving problems in an intelligent
way
Where is the Intelligence
Coming From?
• The System’s Response:
– the hardware by itself is not intelligent, but a
combination of the hardware, software and storage is
intelligent
– in a similar vein, we might say that a human brain that
has had no opportunity to learn anything cannot be
intelligent, it is just the hardware
• The Robot Response:
– a computer is void of senses and therefore symbols are
meaningless to it, but a robot with sensors can tie its
symbols to its senses and thus understand symbols
• The Brain Simulator Response:
– if we program a computer to mimic the brain (e.g., with
a neural network) then the computer will have the same
ability to understand as a human brain
Two AI Assumptions
• We can understand and model cognition without
understanding the underlying mechanism
– it is the model of cognition that is important not the physical
mechanism that implements it
– if true, we should be able to create cognition (mind) out of a
computer or a brain or other devices such as mechanical
devices
• this is the assumption made by symbolic AI researchers
• Cognition will emerge from the proper mechanism
– the right device, fed with the right inputs, can learn and
perform the problem solving that we, as observers, call
intelligence
– cognition will arise as the result (or side effect) of the
hardware
• this is the assumption made by connectionist AI researchers
• Notice that while the two assumptions differ, neither is
necessarily mutually exclusive and both support the idea
A Brief History of AI: 1950s
• Computers were thought of as an electronic brains
• Term “Artificial Intelligence” coined by John McCarthy
– John McCarthy also created Lisp in the late 1950s
• Alan Turing defines intelligence as passing the Imitation
Game (Turing Test)
• AI research largely revolves around toy domains
– Computers of the era didn’t have enough power or memory to
solve useful problems
– Problems being researched include
• games (e.g., checkers)
• primitive machine translation
• blocks world (planning and natural language understanding within the
toy domain)
• early neural networks researched: the perceptron
• automated theorem proving and mathematics problem solving
The 1960s
• AI attempts to move beyond toy domains
• Syntactic knowledge alone does not work, domain
knowledge required
– Early machine translation could translate English to Russian
(“the spirit is willing but the flesh is weak” becomes “the
vodka is good but the meat is spoiled”)
• Earliest expert system created: Dendral
• Perceptron research comes to a grinding halt when it is
proved that a perceptron cannot learn the XOR operator
• US sponsored research into AI targets specific areas –
not including machine translation
• Weizenbaum creates Eliza to demonstrate the futility of
AI
1970s
• AI researchers address real-world problems and solutions through
expert (knowledge-based) systems
– Medical diagnosis
– Speech recognition
– Planning
– Design
• Uncertainty handling implemented
– Fuzzy logic
– Certainty factors
– Bayesian probabilities
• AI begins to get noticed due to these successes
– AI research increased
– AI labs sprouting up everywhere
– AI shells (tools) created
– AI machines available for Lisp programming
• Criticism: AI systems are too brittle, AI systems take too much
time and effort to create, AI systems do not learn
1980s: AI Winter
• Funding dries up leading to the AI Winter
– Too many expectations were not met
– Expert systems took too long to develop, too much money to
invest, the results did not pay off
• Neural Networks to the rescue!
– Expert systems took programming, and took dozens of man-
years of efforts to develop, but if we could get the computer
to learn how to solve the problem…
– Multi-layered back-propagation networks got around the
problems of perceptrons
– Neural network research heavily funded because it promised
to solve the problems that symbolic AI could not
• By 1990, funding for neural network research was
slowly disappearing as well
– Neural networks had their own problems and largely could
not solve a majority of the AI problems being investigated
– Panic! How can AI continue without funding?
1990s: ALife
• The dumbest smart thing you can do is staying alive
– We start over – lets not create intelligence, lets just create
“life” and slowly build towards intelligence
• Alife is the lower bound of AI
– Alife includes
• evolutionary learning techniques (genetic algorithms)
• artificial neural networks for additional forms of learning
• perception, motor control and adaptive systems
• modeling the environment
– Problems: genetic algorithms are useful in solving some
optimization problems and some search-based problems,
but not very useful for expert problems
– Perceptual problems are among the most difficult being
solved, very slow progress
Today: The New (Old) AI
• AI researchers today are not doing “AI”, they are doing
– Intelligent agents, multi-agent systems/collaboration, ontologies
– Machine learning and data mining
– Adaptive and perceptual systems
– Robotics, path planning
– Search engines, filtering, recommendation systems
• Areas of current research interest
– NLU/Information Retrieval, Speech Recognition
– Planning/Design, Diagnosis/Interpretation
– Sensor Interpretation, Perception, Visual Understanding
– Robotics
• Approaches
– Knowledge-based
– Ontologies
– Probabilistic (HMM, Bayesian Nets)
– Neural Networks, Fuzzy Logic, Genetic Algorithms
So What Does AI Do?
• Most AI research has fallen into one of two categories
– Select a specific problem to solve
• study the problem (perhaps how humans solve it)
• come up with the proper representation for any knowledge needed to
solve the problem
• acquire and codify that knowledge
• build a problem solving system
– Select a category of problem or cognitive activity (e.g.,
learning, natural language understanding)
• theorize a way to solve the given problem
• build systems based on the model behind your theory as experiments
• modify as needed
• Both approaches require
– one or more representational forms for the knowledge
– some way to select proper knowledge, that is, search
Knowledge Representations
• One large distinction between an AI system and a
normal piece of software is that an AI system
must reason using worldly knowledge
– What types of knowledge?
• Facts
• Axioms
• Statements (which may or may not be true)
• Rules
• Cases
• Experiences
• Associations (which may not be truth preserving)
• Descriptions
• Probabilities and Statistics
Types of Representations
• Early systems used either
– semantic networks or predicate calculus to represent knowledge
– or used simple search spaces if the domain/problem had very limited
amounts of knowledge (e.g., simple planning as in blocks world)
• With the early expert systems in the 70s, a significant shift took
place to production systems, which combined representation and
process (chaining) and even uncertainty handling (certainty factors)
– later, frames (an early version of OOP) were introduced
• Problem-specific approaches were introduced such as scripts and
CDs for language representation
• In the 1980s, there was a shift from rules to model-based
approaches
• Since the 1990s, Bayesian networks and hidden Markov Models
have become popular
• First, we will take a brief look at some of the representations
Search Spaces
• Given a problem expressed as a state space (whether
explicitly or implicitly)
• Formally, we define a search space as [N, A, S, GD]
– N = set of nodes or states of a graph
– A = set of arcs (edges) between nodes that correspond to the
steps in the problem (the legal actions or operators)
– S = a nonempty subset of N that represents start states
– GD = a nonempty subset of N that represents goal states
• Our problem becomes one of traversing the graph from a
node in S to a node in GD
• Example:
– 3 missionaries and 3 cannibals are on one side of the river with
a boat that can take exactly 2 people across the river
• how can we move the 3 missionaries and 3 cannibals across the
river such that the cannibals never outnumber the missionaries on
either side of the river (lest the cannibals start eating the
missionaries!)
M/C Solution
• We can represent a state as a 6-item tuple:
(a, b, c, d, e, f)
– a/b = number of missionaries/cannibals on left shore
– c/d = number of missionaries/cannibals in boat
– e/f = number of missionaries/cannibals on right shore
– where a + b + c + d + e + f = 6
– a >= b (unless a = 0), c >= d (unless c = 0), and e >= f
(unless e = 0)
• Legal operations (moves) are
– 0, 1, 2 missionaries get into boat
– 0, 1, 2 missionaries get out of boat
– 0, 1, 2 cannibals get into boat
– 0, 1, 2 missionaries get out of boat
– boat sails from left shore to right shore
– boat sails from right shore to left shore
Search Spaces and Types of Search
• The search space consists of all possible states of the problem
as it is being solved
– A search space is often viewed as a tree and can very well consist of
an exponential number of nodes making the search process
intractable
– Search spaces might be pre-enumerated or generated during the
search process
– Some search algorithms may search the entire space until a solution
is found, others will only search parts of the space, possibly
selecting where to search through a heuristic
• Search spaces include
– Game trees like the tic-tac-toe game
– Decision trees (see next slides)
– Combinations of rules to select in a production system
– Networks of various forms (see next slides)
Search Algorithms and Representations
• Breadth-first • Production systems
• Depth-first – If-then rules
• Best-first (Heuristic Search) – Predicate calculus rules
• – Operators
A*
• Hill Climbing • Semantic networks
• Limiting the number of Plies • Frames
• Minimax • Scripts
• Alpha-Beta Pruning • Knowledge groups
• Adding Constraints • Models, cases
• Genetic Algorithms • Agents
• Forward vs Backward • Ontologies
Chaining
Relationships
• We often know stuff about objects (whether physical or
abstract)
– These objects have attributes (components, values) and/or
relationships with other things
• One way to represent knowledge is to enumerate the
objects and describe them through their attributes and
relationships
• Common forms of such relationship representations are
– semantic networks – a network consists of nodes which are
objects and values, and edges (links/arcs) which are annotated to
include how the nodes are related
– predicate calculus – predicates are often relationships and
arguments for the predicates are objects
– frames – in essence, objects (from object-oriented programming)
where attributes are the data members and the values are the
specific values stored in those members – in some cases, they are
pointers to other objects
Representations With Relationships
We equip our system with rules such as the below rule to reason
over how to draw conclusions and manipulate this block’s world