CS 480 ARTIFICIAL INTELLIGENCE
Computer Science Department
116 I Darwin Hall
Fridays 9 to 12
A survey of techniques that simulate human intelligence.
Topics may include: pattern recognition, general problem
solving, adversarial game-tree search, decision-making, expert
systems, neural networks, fuzzy logic, and genetic algorithms.
Prerequisite: CS 315 or consent of instructor.
•Programming and data structures (CS 315)
• Discrete mathematics (CS 242)
Some background in logic and probability will be helpful, but not
AI covers wide range of topics:
• understanding language
• vision and speech processing
• problem solving, planning
• common sense reasoning.
• combinatorial (searching, A* algorithm etc.)
• logical (prove assertion in formal framework)
• probabilistic (decision tree, Bayesian network)
• machine learning (neural network, evolutionary technique)
• N. Nillsson, AI: A new synthesis.
• Winston, Artificial Intelligence.
Short Quizzes (5 – 10%)
Two Mid-Term tests (20%) – Both tests will be in class and will be about 75
miutes long. The tests will be open book/open notes.
Home Work and Projects (40 - 50%) – There will be some common
programming projects and a final project.
The final project will be done individually. You can choose a problem from a
list that will be provided early in the semester. The project is due the last
week of the semester. You are to write a report summarizing your
contributions to the chosen problem. Some selected project work will be
presented in the department colloquium.
Final Examination (25 - 30%) – The final examination will be comprehensive
and will take place at the scheduled time posted in the web page
http://www.sonoma.edu/university /classsched/ finals_sched.pdf (not
updated for Fall 09 as of August 15, 2009.)
Lecture 1 Outline
• Course overview
• What is AI?
• A brief history
• The state of the art
Slides adapted from Russell and Norvig, AIAMA
• Introduction (chapters 1,2)
• Combinatorial (search) approach to AI (chapters
• Symbolic (logical) approach to AI (chapters 7,8,9)
• Probabilistic approach to AI (chapters 13,14)
• Learning approach to AI (chapters 18,20)
• Natural Language Processing (chapter 22,23)
• Computer vision (Chapter 24)
What is AI?
Authors think AI falls into four categories:
Thinking humanly Thinking rationally
Acting humanly Acting rationally
The textbook advocates "acting rationally"
What is AI?
Before attempting a definition, we will state some
major contemporary applications of AI:
• business: advertising, financial decision making
• web: identifying objects in images, social network
• medical: image classification (belign vs. malignant
tumor), image analysis using functional MRI
• multiple field: language translation, semantic analysis,
speech synthesis, speech to text conversion.
• industrial: vision, robotics
Acting humanly: Turing Test
• Turing (1950) "Computing machinery and intelligence":
• "Can machines think?" "Can machines behave
• Operational test for intelligent behavior: the Imitation Game
• Predicted that by 2000, a machine might have a 30% chance
of fooling a lay person for 5 minutes
• Anticipated all major arguments against AI in following 50
• Suggested major components of AI: knowledge, reasoning,
language understanding, learning
Thinking humanly: cognitive modeling
• 1960s "cognitive revolution": information-
• Requires scientific theories of internal activities of
• How to validate? Requires
1) Predicting and testing behavior of human subjects (top-
2) Direct identification from neurological data (bottom-
• Both approaches (roughly, Cognitive Science and
Thinking rationally: "laws of thought"
• What are correct arguments/thought processes?
• Several Greek schools developed various forms of logic:
notation and rules of derivation for thoughts; may or may
not have proceeded to the idea of mechanization
• Direct line through mathematics and philosophy to
1. Not all intelligent behavior is mediated by logical
2. What is the purpose of thinking? What thoughts should
Acting rationally: rational agent
• Rational behavior: doing the right thing
• The right thing: that which is expected to maximize
goal achievement, given the available information
• Doesn't necessarily involve thinking – e.g., blinking
reflex – but thinking should be in the service of
• Combinatorial search problems
– state space (over which search is performed)
– finite state space (discrete)
– how to move from one state to another (transition
– Games (one player or two players)
– Navigation (robotics)
– Search tree exploration
• Combinatorial search approach
1 2 3 1 2 3
Sliding piece puzzle: 4 6 4 5 6
7 5 8 7 8
Legal moves: slide a piece next to empty slot.
Many AI problems can be modeled as search problems.
A portion of a search tree for the 8-puzzle.
• iterative deepening
• informed search
What are the ways to speed-up DFS?
• Breadth-first search
• heuristic search
• for each node, a heuristic provides an estimate of its
distance from the goal.
• for sliding-piece puzzle, Manhattan distance is one
• estimate for other search problems? (e.g. queen
placement in the
• Symbolic (logical) approach to AI
intelligent problem solving requires reasoning and
Knowledge is represented as a set of logical
assertions A1, …, An, and a conclusion to be drawn
is also expressed as an assertion.
Can we deduce F from A1, …, An?
• Knowledge base = set of sentences in a formal language
• Declarative approach to building an agent (or other
– Tell it what it needs to know
• Then it can Ask itself what to do - answers should follow
from the KB
• Agents can be viewed at the knowledge level
i.e., what they know, regardless of how implemented
The party example
• If Alex goes, then Beki goes: A B
• If Chris goes, then Alex goes: C A
• Beki does not go: not B
• Chris goes: C
Query: Is it possible to satisfy all these conditions?
This is called satisfiability problem.
Example of languages
• Programming languages:
– Formal languages, not ambiguous, but cannot express
partial information. Not expressive enough.
• Natural languages:
– Very expressive but ambiguous: ex: small dogs and cats.
• Good representation language:
– Both formal and can express partial information, can
• Main approach used in AI: Logic-based languages.
• Predicate-logic with Horn clauses
Given P R, and Q ~R
Example: Resolution strategy
Can we deduce ~(P & Q)?
• expert systems (Mycin, dendral are
• logic programming
• automatic theorem proving
Logical deduction in predicate logic
X (Y ((mother(X) child_of(Y,X)) loves(X,Y)))
Can we deduce?
• Probabilistic approach to AI
Knowledge representation models uncertainties.
• H = “Have a headache”
• F = “Coming down with Flu”
• P(H) = 1/10
• P(F) = 1/40
• P(H|F) = ½
Given that you have a headache, what is the probability that you have flu?
This kind of modeling is widely used in various prediction
problems, e.g., in determining the insurance premium for car
Probabilistic approach to AI
Some games are inherently probabilistic.
New applicant: (young, has job, does not own house, good
Will (s)he default? We can build a probabilistic model to answer.
Machine learning approach to AI:
• self-improving algorithms
• solution obtained without explicit programming
• Closer to modeling human intelligence or natural
intelligence (we learn many things by observing even if step
by step procedure absent)
• Neural networks
• Genetic algorithms, evolutionary method
Neuron (very roughly modeled by neurons in human
An algorithm called back propagation algorithm is used to
adjust the weights of neurons based on the discrepancy
between correct output and computed output.
• encoding of the collection of solutions as strings.
• goal is to evolve the “best” solution.
• use cross-over and mutation and iterate.
Example of cross-over and
• Philosophy Logic, methods of reasoning, mind as physical
system foundations of learning, language,
• Mathematics Formal representation and proof algorithms,
computation, (un)decidability, (in)tractability,
• Economics utility, decision theory
• Neuroscience physical substrate for mental activity
• Psychology phenomena of perception and motor control,
• Computer building fast computers
• Control theory design systems that maximize an objective
function over time
• Linguistics knowledge representation, grammar
Abridged history of AI
• 1943 McCulloch & Pitts: Boolean circuit model of brain
• 1950 Turing's "Computing Machinery and Intelligence"
• 1956 Dartmouth meeting: "Artificial Intelligence" adopted
• 1950s Early AI programs, including Samuel's checkers
program, Newell & Simon's Logic Theorist,
Gelernter's Geometry Engine
• 1965 Robinson's complete algorithm for logical reasoning
• 1966—73 AI discovers computational complexity
Neural network research almost disappears
• 1969—79 Early development of knowledge-based systems
• 1980-- AI becomes an industry
• 1986-- Neural networks return to popularity
• 1987-- AI becomes a science, probabilistic techniques
• 1995-- The emergence of intelligent agents
State of the art
• Deep Blue defeated the reigning world chess champion
Garry Kasparov in 1997
• Proved a mathematical conjecture (Robbins conjecture)
unsolved for decades
• No hands across America (driving autonomously 98% of the
time from Pittsburgh to San Diego)
• During the 1991 Gulf War, US forces deployed an AI logistics
planning and scheduling program that involved up to
50,000 vehicles, cargo, and people
• NASA's on-board autonomous planning program controlled
the scheduling of operations for a spacecraft
• Proverb solves crossword puzzles better than most humans