EPGY 2011 Computer Science: Artificial Intelligence Lekan...

Post on 24-Jan-2021

3 views 0 download

Transcript of EPGY 2011 Computer Science: Artificial Intelligence Lekan...

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!