CS541 Artificial Intelligence

deadmancrossingraceAI and Robotics

Nov 13, 2013 (3 years and 10 months ago)

98 views

CS541 Artificial Intelligence

Lecture I: Introduction and Intelligent Agent

Self
-
introduction


Prof. Gang Hua



Associate Professor in Computer Science


Stevens Institute of Technology



Research Staff Member (07/2010

08/201
1
)


IBM T J. Watson Research Center



Senior Researcher (08/20
09

0
7
/2010)


Nokia Research Center Hollywood



Scientist (07/2006

08/2009)


Microsoft Live Labs Research



Ph.D. in ECE, Northwestern University, 06/2006

华刚

Course Information (1)


CS541

Artificial Intelligence


Term
: Fall
2012


Instructor
: Prof. Gang Hua


Class time
:
Wednesday 6:15pm

8:40pm


Location
:
Babbio

Center/Room 210


Office Hour
:
Wednesday 4:00pm

5:00pm
by
appointment


Office
:
Lieb
/Room305


Course Assistant
: Yizhou Lin


Course Website
:


http://www.cs.stevens.edu/~ghua/ghweb/ cs541_artificial_intelligence_fall_2012.htm

Course Information (2)


Text Book
:


Stuart Russell and Peter
Norvig
, “Artificial Intelligence: A Modern
Approach”,
Third Edition
, Prentice Hall, December 11, 2009
(Required)


Grading
:


Class Participation: 10%


5 Homework: 50% (including a midterm project)


Final Project & Presentation: 40%

Schedule

Week

Date

Topic

Reading

Homework**

1

08/29/2012

Introduction & Intelligent Agent

Ch 1 & 2

N/A

2

09/05/2012

Search: search strategy and heuristic search

Ch 3 & 4s

HW1 (Search)

3

09/12/2012

Search: Constraint Satisfaction & Adversarial Search

Ch 4s & 5 & 6


Teaming Due

4

09/19/2012

Logic: Logic Agent & First Order Logic

Ch 7 & 8s

HW1 due, Midterm Project


(Game)

5

09/26/2012

Logic: Inference on First Order Logic

Ch 8s & 9



6

10/03/2012

No class






7

10/10/2012

Uncertainty and Bayesian Network


Ch 13 & Ch14s


HW2 (Logic)

8

10/17/2012

Midterm Presentation



Midterm Project Due

9

10/24/2012

Inference in Baysian Network

Ch 14s

HW2 Due, HW3 (Probabilistic Reasoning)

10

10/31/2012

Probabilistic Reasoning over Time

Ch 15



11

11/07/2012

Machine Learning




HW3 due,

12

11/14/2012

Markov Decision Process

Ch 18 & 20

HW4 (Probabilistic Reasoning Over Time)


13

11/21/2012

No class

Ch 16



14

11/29/2012

Reinforcement learning

Ch 21

HW4 due

15

12/05/2012

Final Project Presentation



Final Project Due

Rules


Need to be absent from class?


1 point per class: please send notification and justification at
least 2 days before the class


Late submission of homework?


The maximum grade you can get from your late homework
decreases 50% per day


Zero tolerance on plagiarism
!!


You receive zero grade

Introduction
&
Intelligent Agent

Prof. Gang
Hua


Department
of Computer Science

Stevens Institute of Technology

ghua@stevens.edu

Introduction

to

Artificial

Intelligence

Chapter 1

What is AI?

Systems thinking humanly

Systems

thinking rationally

Systems acting humanly

Systems acting rationally

Acting humanly: Turing Test


Turing (1950) "Computing machinery and intelligence":


"Can machines think?"


"Can machines behave intelligently?"


Operational test for intelligent behavior: the Imitation Game







Predicted that by 2000, a machine might have a 30% chance of fooling a layperson for 5
minutes


Anticipated all major arguments against AI in following 50 years


Suggested major components of AI:
knowledge
,
reasoning
,
language

understanding
,
learning
,


Total Turing test: adding
vision

and
robotics


Problem: Turing test is not reproducible, constructive, or amenable to
mathematical analysis


Thinking humanly: cognitive modeling


1960
"
cognitive revolution
"
: information
-
processing psychology
replaced prevailing orthodoxy of behaviorism


Requires scientific theories of internal activities of the brain


What levels of abstraction?
"
Knowledge
"

or

"
circuits
"
?


How to validate? Requires


Predicting and testing behavior of human subjects (top
-
down)


Direct identification from neurological data (bottom
-
up)


Both approaches (roughly, Cognitive Science and Cognitive
Neuroscience) are now distinct from AI


Both share one principal direction with AI:


The available theories do not explain anything resembling human
-
level
general intelligence

Thinking rationally: "laws of thought"


Aristotle: what are correct arguments/thought processes?


Several Greek schools developed various forms of logic:


notation and rules of derivation for thoughts;


They may or may not have proceeded to the idea of
mechanization


Direct line through mathematics and philosophy to modern AI


Problems:


Not all intelligent behavior is mediated by logical deliberation


What is the purpose of thinking?


What thoughts should I have out of all the thoughts (logical or
otherwise) that I could have?


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 rational
action




Aristotle (
Nicomachean

Ethics):


Every art and every inquiry, and similarly every action and
pursuit, is thought to aim at some good


Rational agents


An
agent

is an entity that perceives and
acts


This course is about designing rational
agents


Abstractly, an agent is a function from percept histories to
actions:




For any given class of environments and tasks, we seek the agent (or
class of agents) with the best
performance


Caveat: computational limitations make perfect rationality
unachievable



design best
program

for given machine resources


AI prehistory


Philosophy


Logic
, methods of reasoning, mind as physical
system,
foundations of learning,
language, rationality


Mathematics




Formal
representation and proof
algorithms, computation
, (un)decidability, (
in)tractability, probability


Economics


Utility
, decision theory


Neuroscience


Physical
substrate for mental activity


Psychology


Phenomena
of perception and motor
control, experimental
techniques


Computer

engineering


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


1952

69

Look,
Ma, no hands!


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

74

AI discovers computational complexity



Neural network research almost disappears


1969

79

Early development of knowledge
-
based systems


1980

88

Expert systems industry boom


1988

93

Expert systems industry busts: "AI Winter"


1985

95

Neural networks return to popularity


1988


Resurgence of probability; AI becomes science


1995



The emergence of intelligent
agents


2003


Human
-
level AI back on the agenda

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


iRobot
corporated

in 2000: Roomba &
Scooba


Google cars
automatically are driving
in the city to collect
stree
-
tview

images


Watson whips
Brad
Rutter

and
Ken Jennings

in Jeopardy in 2011!

DeepBlue

& Watson (
DeepQA
)


DeepBlue


Watson (
DeepQA
)

Intelligent Agent

Chapter 2

Outline


Agents and environments


Rationality: what is a rational agent?


PEAS (Performance measure, Environment,

Actuators
,
Sensors)


Environment types


Agent types

Agents


An
agent

is anything that can be viewed as
perceiving

its
environment

through
sensors

and
acting

upon that
environment through
actuators



Human agent: eyes, ears, and other organs for
sensors;
hands, legs
, mouth, and other body parts for
actuators



Robotic agent: cameras and infrared range finders for
sensors; various
motors for
actuators

Agents and environments


The
agent

function

maps from percept histories to actions
:




The
agent

program

runs on the physical
architecture

to
produce
f



agent = architecture +
program

Vacuum
-
cleaner world


Percepts
: location and contents, e.g., [
A,Dirty
]



Actions
:
Left
,
Right
,
Suck
,
NoOp

Rational
agents (1)


An agent should strive to "do the right thing", based on what it
can perceive and the actions it can perform. The right action is
the one that will cause the agent to be most
successful



Performance measure: An objective criterion for success of an
agent's
behavior



E.g
., performance measure of a vacuum
-
cleaner agent could
be:


Amount of dirt cleaned up in time T?


Amount of dirt cleaned up minus the amount of electricity
consumed in time T?


Amount of time taken to clean a fixed region?

Rational
agents (2)


Rational

Agent
: For each possible percept sequence, a
rational agent should select an action that is expected to
maximize its performance measure, given the evidence
provided by the percept sequence and whatever built
-
in
knowledge the agent has
.

Rational
agents (3)


Rationality is distinct from omniscience (all
-
knowing with
infinite knowledge
)



Agents can perform actions in order to modify future
percepts so as to obtain useful information (information
gathering, exploration
)



An agent is
autonomous

if its behavior is determined by
its own experience (with ability to learn and adapt
)

PEAS (1)


PEAS: Performance measure, Environment, Actuators,
Sensors



To design a rational agent, we must
first specify the
task
environment



Consider
, e.g., the task of designing
an automated
taxi
driver
:


Performance measure
??


Environment
??


Actuators
??


Sensors
??

PEAS (2)


To design a rational agent, we must first specify the task
environment



Consider
, e.g., the task of designing an automated taxi
driver:


Performance
measure
: Safe, fast, legal, comfortable trip,
maximize profits


Environment
: Roads, other traffic, pedestrians, customers


Actuators
: Steering wheel, accelerator, brake, signal, horn


Sensors
: Cameras, sonar, speedometer, GPS, odometer, engine
sensors,
keyboard

PEAS (3)


Agent
:
Internet shopping agent



Performance measure
:
price, quality, appropriateness,
efficiency



Environment
:
current and future WWW sites, vendors,
shippers



Actuators
:
display to user, follow URL, fill in form



Sensors
:
HTML pages (
text
,
graphics
, scripts)

PEAS (4)


Agent
: Part
-
picking robot



Performance
measure
: Percentage of parts in correct
bins



Environment
: Conveyor belt with parts, bins



Actuators
: Jointed arm and hand



Sensors
: Camera, joint angle sensors

PEAS (5)


Agent
: Interactive English tutor



Performance
measure
: Maximize student's score on
test



Environment
: Set of students



Actuators
: Screen display (exercises, suggestions,
corrections)



Sensors
: Keyboard

Environment
types (1)


Fully observable

(vs. partially observable): An agent's sensors give it
access to the complete state of the environment at each point in
time
.



Deterministic

(vs. stochastic): The next state of the environment is
completely determined by the current state and the action executed
by the agent. (If the environment is deterministic except for the
actions of other agents, then the environment is
strategic
)



Episodic
(vs. sequential): The agent's experience is divided into
atomic "episodes" (each episode consists of the agent perceiving and
then performing a single action), and the choice of action in each
episode depends only on the episode itself
.

Environment
types (2)


Static
(vs. dynamic): The environment is unchanged while an agent is
deliberating. (The environment is
semidynamic

if the environment itself
does not change with the passage of time but the agent's performance
score does
)



Discrete

(vs. continuous): A limited number of distinct, clearly defined
percepts and actions
.



Single agent

(vs.
multiagent
): An agent operating by itself in an
environment
.

Environment
types (3)

Solitaire

Backgammon

Internet Shopping

Taxi

Observable?

Yes

Yes

No

No

Deterministic?

Yes

No

Partly

No

Episodic?

No

No

No

No

Static?

Yes

Semi

Semi

No

Discrete?

Yes

Yes

Yes

No

Single Agent?

Yes

No

Yes (except

auction)

No


The environment type largely determines the agent design


The real world is (of course) partially observable, stochastic, sequential,
dynamic, continuous, multi
-
agent


Agent functions and programs


An agent is completely specified by the
agent function

mapping percept sequences to actions


One agent function (or a small equivalence class) is
rational


Aim
: find a way to implement the rational agent function
concisely

Table
-
lookup agent


Drawbacks
:


Huge table


Take a long time to build the table


No
autonomy


Even with learning, need a long time to learn the
table

A vacuum
-
cleaner agent


What is the
right

function?


Can it be implemented in a small agent program?

Agent types


Four basic
types (with increasing generality):


Simple reflex agents


Model
-
based
reflex agents


Goal
-
based
agents


Utility
-
based agents


All of them can be transformed into
learning agent

Simple reflex agents


The action to be selected only depends on the most recent percept, not a sequence


These
agents are stateless devices which do not have memory of past world states

Model
-
based reflex agents


Have internal state which is used to keep track of past states of the world


Can assist an agent deal with some of the unobserved aspects of the current state

Goal
-
based agents




Agent can act differently depending on what the final state should look like


E.g., automated taxi driver will act differently depending on where the passenger wants to go

Utility
-
based agents


An agent's utility function is an internalization of the external performance measure


They may differ if the environment is not completely observable or deterministic

Learning agents


Learning agent cuts across all of the other types of agents: any kind of agent can learn

iRobot


Roomba

Demo

Summary


Agents interact with environments through actuators and sensors


The agent function describes what the agent does in all
circumstances


The performance measure evaluates the environment sequence


A perfectly rational agent maximizes expected performance


Agent programs implement (some) agent functions


PEAS descriptions
define

task

environments


Environments are categorized along several dimensions:


Observable? Deterministic? Episodic? Static? Discrete? Single
-
agent?


Several basic agent architectures exist:


Reflex, Reflex with state, goal
-
based, utility
-
based

Candidate projects


Midterm Project:


Mastermind (midterm)


http://en.wikipedia.org/wiki/Mastermind_%28board_game%29


Final Projects:


Reversi

(Othello)


http://en.wikipedia.org/wiki/Reversi