cs 440: introduction to arti cial intelligence...what you need to know de ning arti cial...

30
What you need to know Defining Artificial Intelligence Course Topics Final Note CS 440: Introduction to Artificial Intelligence Lecture 1, Sep 2, 2010 Matthew Stone September 2, 2010 Matthew Stone CS 440: Introduction to Artificial Intelligence

Upload: others

Post on 25-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

CS 440: Introduction to Artificial IntelligenceLecture 1, Sep 2, 2010

Matthew Stone

September 2, 2010

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 2: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

What you need to know

Fun, practical classTextbooks are well-reviewed O’Reilly guides designed to teachcomputer professionals useful and important techniques.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 3: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

AI for Game Developers

David M. Bourg, Glenn Seemann

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 4: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Programming Collective Intelligence

Toby Segaran

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 5: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Getting the books

Will be at bookstore soon.Also available on Amazon (Bourg & Seemann $22, Segaran $26).Also available electronically through O’Reilly Safari digital library($20/month subscription).

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 6: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Programming in Java

Four projects

I They won’t be easy, and you might need help

I But you’ll understand something new and importantafter you finish them

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 7: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Academic in focus

Emphasis on careful thinking

I Most important and difficult question in the course:How can I tell if my program works?

Lots of connections

I To more advanced computer science

I To other scientific fields—linguistics, psychology, philosophy, neuroscience

I To other technical fields—statistics, information science, engineering

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 8: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Course Organization

Lecture

I Big picture

I Focuses on techniques, ideas, background, etc.

Recitations

I Hands on

I Led by Tarek El-Gaaly

I Focuses on skills, programming, exercises, etc.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 9: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Course Organization

A few details still being worked out

I Office hours— mine will likely be Monday

I Sakai site— with syllabus, reading, lectures, technical infoYou will be added automatically as soon as it’s up

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 10: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Plan for today

More details about the course topicMore details about course activitiesBy the end of the class you should have a clear idea of three points

I What makes something AI

I Why it’s easier to do AI now than ever

I What the class will be like

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 11: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

So what is AI?

The name comes with a lot of baggage

I academic history

I popular culture

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 12: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

AI in science fiction

HAL Still from 2001 Terminator Still from Terminator 3

C3P0 and R2D2 Still from Star Wars Data Star Trek TNG

David Still from AI (2001)Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 13: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

So what is AI?

The name comes with a lot of baggage

I academic history

I popular culture

I we’ll return to this

The usual definition is

I “creating systems that do things that would requireintelligence if done by a person”

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 14: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Not such a good description these days

Example of state-of-the-art AI

I http://berkeley.edu/news/media/releases/2010/04/02_robot%20.shtml

This would not be an intellectual achievement if a person did it.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 15: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

What is AI?

A better definition is

I “techniques for writing programs to carry out tasks that wecan’t specify exactly in advance”

Why is laundry robot like this?

I we don’t know where the laundry will be

I we only discover how to move the arm, gripper, etc., after webuild it

I physics says where you can pick up fabric, how it folds, etc.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 16: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

What are the alternatives to preprogramming behavior?

Perception

I Give the system the ability to understand the situation inwhich it has to act.

Problem solving

I Give the system strategies that it can use to create its ownresponse to an unexpected situation.

Learning

I Design the system to tune the steps that it carries out basedon experience that it has that was not available to theprogrammer.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 17: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

This class covers some concrete, useful strategies

A toolbox for writing powerful, general, versatile programs

I understanding the world

I acting in the world

I solving problems

I learning from experience

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 18: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Acting in the world

Introduce “agents”—a general way of thinking about complexgeneral programsGet a sense of how AI problems of perception, planning, learning,action fit together.Project: Create and analyze a “flocking” simulation of simplecreatures

I A common strategy for animating “non-player characters” invideo games

I Foundations of simulations in psychology, economics, and“artificial life”

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 19: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Household robotics

Roomba 500 (2007)”[the new model] will be able to sense when it’s about to hit a wall, so it’ll slow down and not whack itself into it.”—dvice.com

www.irobot.com

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 20: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Solving problems

Introduce the ideas of problems, solutions, and search.Understand how to encode and optimize search algorithms to workeffectively.Project (plan): Path planning for Pac-Man

I Real connection to navigation and control applications

I Also used for many other optimization problems

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 21: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Computer chess

Picture from 2009 world computer chess competition in Mainz, Germany From rybkachess.com

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 22: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Learning and Perception

Introduce the problem of classification: relating a new example toprevious experience.Describe models based on statistics and based on similarity.Project (plan): Movie recommendation

I Inspired by the technology actually used by Netflix to makerecommendations

I Good example of the role of data in new AI applications

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 23: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Recommendations

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 24: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Combining Learning and Problem Solving

Understand how to use AI tools in a larger applicationLearn more about the strengths and limitations of differenttechniquesProject (plan): Work in small groups on a larger problemSelected from a short menu, likely including

I Play chess

I Play a video game (Pac-Man, Super Mario)

I Learn and recognize patterns in web data

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 25: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Google translate

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 26: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Google query processing

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 27: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

Speech recognition

Actual transcript: Hi Matthew. It sounds like we... missed paths and it’s probably my fault. My email’s been

defunct and I had the wrong number for you. Um, but maybe we can - I’ll see you in a second, and we can meet in

New York. Okay bye.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 28: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

This class is a work in progress

AI is traditionally a research class

I These classes teach you how to read, critique, develop andtest new methods

Why?

I Because nothing really worked.

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 29: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

The challenge of AI implementations

The problem was that real applications were expensive

I Need a lot of compute power

I Need a lot of data

I Need ”practical know-how” to put it all together

That made the class kind of depressing

I Difficult ideas

I Difficult programming

I Lame results

Matthew Stone CS 440: Introduction to Artificial Intelligence

Page 30: CS 440: Introduction to Arti cial Intelligence...What you need to know De ning Arti cial Intelligence Course Topics Final Note AI for Game Developers David M. Bourg, Glenn Seemann

What you need to knowDefining Artificial Intelligence

Course TopicsFinal Note

This class is a work in progress

Things have changed

I Computers are faster— no surprise there

I Lots of data is available— web, sharing

I More know-how— e.g., toolkits for learning

Matthew Stone CS 440: Introduction to Artificial Intelligence