1
EPGY 2011
Computer Science: Artificial Intelligence
Lekan Wang
2
LECTURE 1.1
Introduction to the Course
Introduction to AI
Introduction/Review of Java and Code Design
3
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
4
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
5
Who Are Your Counselors
• (RCs? TAs? RAs?)
• Name
• Academic Background
• CS and AI background
• Why you’re interested in AI, or what you’re
interested in learning
6
Who Are You
• Name
• Why are you here?
• What’s your experience with computer
science?
• Why are you interested in AI?
• Summarize AI in a few sentences.
• Favorite snack foods
7
Who Am I
• Stanford MS CS, BS MS&E
• Coordinated Stanford’s introductory CS
courses (CS106A, CS106B, CS106X, CS106L,
CS198)
• Work at Palantir Technologies
• SUMaC 2004
• Love to teach
• AI tools and concepts are powerful and useful
8
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
9
3 Weeks
• http://lekanwang.com/ai-epgy/wp-admin/
• Lecture – Stuff: 50/45/35
– 2 Breaks
• Lab (Groups of 3) – Problem Sets, “Vignettes,” and Code
– Shouldn’t ever finish
– Collaborative Reviews
• Daily Feedback -- http://goo.gl/uqDzF
• Evening Activities
10
Final Project Timeline
• Week 1: Talk with RCs, me
• End of 2.1: Topic Selection
• Week 2: One-on-Ones with me
• Week 3: Optional one-on-ones
• 3.4: Presentations (15 minutes)
11
3 Weeks
...OF EXPLORATION
12
A Few Rules
Actively Engage and Contribute
Raise Questions
A Room of Equals
13
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
14
What Is AI? – Popular Views
• “The Machines” in The Matrix
• David, others in AI
• Data, The Borg in Star Trek
• Certain droids in Star Wars
• The Master Control Program in Tron
• Cylons in Basttlestar Galactica
• HAL 9000 in 2001: A Space Odyssey
• GLaDOS in Portal
• Cortana in Halo
• Terminator and SkyNet in Terminator
• The Steering Wheel in WALL-E
• Sonny from I, Robot
15
What Is AI? – Maybe?
• Dumber droids in Star Wars
• The Computer in Star Trek
• Watson
• EDI in Mass Effect
• Dr. Know in AI
16
What is AI? – Hmm...
• Chess playing program
• Military Drone/Autopilot
• Self-driving car
• Collision Avoidance System
• Adaptive Transmission
• Yelp/Netflix/iTunes/Facebook recommendations
• Washing Machine
17
AI is the endeavor of building
intelligent artifacts or systems
Uhh...ok...?
18
Strong vs. Weak AI
• John Searle
– Strong: “A physical symbol system can have a mind
and mental states.”
– Weak: “A physical symbol system can act
intelligently.”
• Strong presupposes consciousness
• WTF is consciousness?
19
Approaches to AI
Systems that think like humans Systems the think rationally
Systems that act like humans Systems that act rationally
Russell/Norvig, 5
“The exciting new effort to make
computers think…machines with minds,
in the full and literal sense.”
“The study of the computations that
make it possible to perceive, reason, and
act.”
“The study of how to make computers do
things at which, at the moment, people
are better.”
“A field of study that seeks to explain and
emulate intelligent behavior in terms of
computational processes.”
20
Approaches to AI—Human Simulation “Systems that think like humans.”
21
• Cybernetics
• Ray Kurzweil (Technological Singularity)
• Early neural networks
Approaches to AI—Human Simulation “Systems that think like humans.”
22
Approaches to AI—Logical Machines
• Theorem provers
• Constraint satisfaction problems
• Logic-based systems
“Systems that think rationally.”
23
Approaches to AI—Turing Test “Systems that act like humans.”
• Turing Test
• Eliza, rule based systems
• The Most Human Human
24
Approaches to AI – Rational Agent
• Bulk of modern AI approaches
• Techniques and tools
– Search
– Machine Learning
– Probabilistic Models
– Constraint satisfaction
– Perception/Sensors (Inputs)
– Robotics (Outputs)
“Systems that act rationally.”
25
What a let down...
26
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
27
A Brief History – Early History
• From Control Theory/Operations Research
• (Pong came out in 1972)
• Arthur Samuel’s Checkers Program (ML)
• John McCarthy and Lisp (1958)
• Marvin Minsky
• Extreme optimism!
• Herbert Simon: Computer chess champion in ten years (1957)
28
A Brief History—Slow Progress
• Problems
– Algorithmic complexity
– Logical Systems and Neural Nets inappropriate
– Researchers were naïve as hell
• Reframing of AI – rational agent model
• Expert Systems and Knowledge (1970s)
• Natural Language
29
A Brief History— “Recent Progress”
• Handling Uncertainty
• Rational Agent model
• Probabilistic Methods
• Deep Learning
• Computer Vision
• SVMs
30
So where are we now?
31
What We Will Cover
• Real Tools
• Applications
32
What We Will Cover
• Real Tools
• Applications
33
What We Will Cover
• Real Tools
• Applications
34
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
35
Math and CS Foundations
• Data Structures
• Recursion
• Algorithms
• Complexity
• Proofs
• Probability
36
Knowledge Representation
• Discrete vs. Continuous
• Data structures
• Ontologies
• Trees
• Graphs
• Logic and Logical Inference
37
Search
• Maps and Directions
• Pathfinder
• Motion Planning
• Uninformed Search
• Informed Search
38
CSPs
• Being smarter with constraints
• Planning
39
Machine Learning
• Classification
• Regression
• Clustering
• Evaluation
• Applications
40
Bayes and Markov
• Probabilistic Models
• Uncertainty
• Correlation/Causation
• Modeling Complex Behavior
• Neural Nets
41
Other
• Natural Language Processing
• Autonomous vehicles
• Biocomputation
• Lisp
• Theorem Solvers
42
Introduction
Class Structure
What is AI?
History
Topics and Techniques
Programming Intro
43
Assumptions
• Familiarity with syntax of a modern
programming language (Java, C++, C, Python,
Visual Basic)
• Familiarity with math up to Algebra II
• Minimal exposure to theory of computing and
programming languages
44
Language & Environment
• Java
• Eclipse
45
Code Design
46
Code Style
47
Code Style
• Magic Numbers
• Tabbing and Spacing
• Variable Scoping
• Variable Names
• Unused Variables, Methods, and Warnings
• Control Structures Redundancy
• Commenting!!
• Decomposition!
• “Premature optimization is the root of all evil.” – Donald Knuth
48
Debugging
49
Debugging
• System.out.println()
• assert()
• Eclipse Debugger
50
SGGraphics
51
SGGraphics
• GraphicsProgram – Override
– setup()
– run()
• SGObjects
• MouseListener
• MouseMotionListener
• KeyListener
• ActionListener
• setXXXXDebugMode(boolean)
52
SGGraphics DEMO!
Top Related