cs 415 – a.i

35
CS 415 – A.I. Slide Set 2

Upload: kalei

Post on 22-Feb-2016

40 views

Category:

Documents


0 download

DESCRIPTION

CS 415 – A.I. Slide Set 2. Outline. Last Time AI, an attempted definition Historical foundations Today Overview of application areas An introduction to representation and search. First Material Review. Accurate Relative Localization See website for link to pdf Read by class on Tuesday - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CS 415 – A.I

CS 415 – A.I.

Slide Set 2

Page 2: CS 415 – A.I

Outline

• Last Time– AI, an attempted definition– Historical foundations

• Today– Overview of application areas– An introduction to representation and search

Page 3: CS 415 – A.I

First Material Review

• Accurate Relative Localization– See website for link to pdf

• Read by class on Tuesday– 1 page summary report• Full run-down of what the paper is about• Any thoughts you had about the paper

Page 4: CS 415 – A.I

Turing Test

• Attempts to give an objective notion of intelligence– Humanity is the best and only known standard– Avoids debate about “true” nature of intelligence

• Abstracts out unanswerable questions– What is consciousness? Is the computer conscious?

• Eliminates “bias” against machines– Interrogator can’t see any evidence except text– Abstracts out specific intelligent processes

• No spinning disks, no artificial sounding voices, etc.

Page 5: CS 415 – A.I

Lady Lovelace’s Objection

• Ada Lovelace– After whom the programming language

Ada is named• Computers can only do as they are

instructed, thus they are incapable of original thought– What is originality, but a rehashing of

the old• Certainly, computers can do this

– Genetic Algorithms, etc.– What is the fundamental difference between humans and

computers in this regard• What is the seat of human originality• Humans only know what they’ve been taught – or – “ghost in the

machine”• Programs do not have to be strictly sequential

– Instead, AI programs can be built as rules that can be applied when it is deemed by the computer to be necessary

Page 6: CS 415 – A.I

Argument from Informality of Behavior

• “No set of instructions can prepare a computer for behaving rationally in any possible previously unknown situation.”

• Wrong– Again, computers do not have to act sequentially to

perform tasks– Nor, in fact, do computers have to be strictly discrete.– Also, how flexible are humans to new environments and

so how flexible do computers need to be?

Page 7: CS 415 – A.I

Other Theories and Approaches• So far, only talked about rationalist theories– Define intelligence according to mathematics and logical

consistency• But, post-modernism is diametrically opposed to this

viewpoint– Connectionist Theory

• Intelligence doesn’t have to be rational– Humans don’t always act rationally

• Instead, lets model the biology of the brain– Neural networks– Genetic algorithms

» Knowledge and solutions morph unpredictably and are tested against previous solutions

Page 8: CS 415 – A.I

Emergent Knowledge• Bakeries in New York– Provide almost exactly the correct amount of bread to

New York• no rationalizing on good information

• Stock Market– Prices are set, but investors have little knowledge

• Universities– Answers to hard problems are solved because people work

and interact, even seperately• Web 2.0– Wikipedia– Data Mining

Page 9: CS 415 – A.I

Agents

• How does the knowledge emerge?– Agents that interact with other agents in simple

ways• Each agent is autonomous, and each has a task that

isn’t based upon the system as a whole• Each agent is sensitive to its own environment• Agents form a “society”• The society is structured in some way

– Each agent, working in its own sphere in the society allows the society to produce emergent knowledge

Page 10: CS 415 – A.I

Overview of AI Application Areas

• 2 Major Parts to AI1. Knowledge Representation2. Search

• Game Playing Not just for fun

Well-structured rules, “easily” represented states Show need for heuristics

• Automated Theorem Proving Given any set of known facts and a possibly true

statement, is the statement in question implied? PROLOG (Chapter 15)

Page 11: CS 415 – A.I

• Expert Systems A system that focuses on “domain-specific knowledge” 2 parts

Theoretical understanding of the problem Set of heuristics that can be applied in certain situations

Expert systems are “loaded” with these two parts Problems

Difficult to capture “deep” knowledge in the field Sometimes the expert just knows what he/she knows

Not necessarily robust of flexible Can’t cross-apply knowledge from different fields like humans can

Can’t present deep explanations Difficulty in verification Aren’t flexible in the sense of being able to learn anything new

Specialized systems only

Page 12: CS 415 – A.I

• Understanding Natural Language Make my computer do what I mean, not strictly

what I say Programmer’s dream

But, there isn’t a consistent way to parse language

Meaning is often, if not always, a matter of context and domain

Page 13: CS 415 – A.I

• Modeling Human Performance Make computers act more and more like humans

• Planning and Robotics Start with a robot that can perform certain atomic tasks Now, build it so that it can plan and act in its

environment without previous knowledge of the environment

Hierarchical problem decomposition How does a robot enter a room and find an object

Possible Step? Each step can be rationally decomposed

Page 14: CS 415 – A.I

• Languages and Environments for AI Object-Oriented Programming

C++ and Java Represent Knowledge Representation from the start

LISP and PROLOG Support modular development and better ability for handling

complexity of heuristic search• Machine Learning

Computers asked a question today, will, when asked tomorrow, take the same steps to determine the same answer to the same question

Humans don’t have to do this Need to have computers that remember results in meaningful ways

Text-completion Here are some RNA strands that are known to exist in nature, can this

one exist in nature?

Page 15: CS 415 – A.I

• Neural Nets and Genetic Algorithms Neural Nets

Based on biological nueron networks See pg 29

Genetic Algorithms Solutions “evolve”

• AI and Philosophy Most of the theoretical questions we asked

earlier are also asked by philosophers

Page 16: CS 415 – A.I

What it all means• We cannot solve the unanswered questions that

have been asked for centuries– Not in this class anyway

• However, we can look at the foundational approaches that have gone in to the basics of AI and Robotics– Predicate Calculus– Search Methods– Knowledge Representation– Machine Learning– Reasoning– PROLOG– LISP

Page 17: CS 415 – A.I

Representation and Search

• Representational System – function is to capture the essential features of a problem domain and make the information accessible– Abstraction – being able to efficiently store the features of

the problem domain• Note: the features will undoubtedly change

– Balance trade-offs between efficiency and expressiveness

Page 18: CS 415 – A.I

Representation in Mobile Robotics

• Kinematics – basic study of how mechanisms move– Basic goal: given all the angles and movement,

what is you point in space at this time– 2 Frames of Reference• Global Frame of Reference

– Robot gets through layers of representations (maps, etc)

• Local Frame of Reference– Don't know what the world looks like– Remember how far I've traveled

Page 19: CS 415 – A.I

• Given global frame of reference– If the robot moves how do we keep up with where

we are in space– Kinematic Equations• A system of equations that determines our x,y position

and our rotation (angle Θ) after k control steps• See second page of ARL paper

– Synchro Drive Robots– Also exist for Differential Drive Robots

• Store as a matrix system– Perform matrix operations to transform and solve

Page 20: CS 415 – A.I

• Regardless, everyone should work in the same frame of reference– Homogenous Transform• Do matrix operations to transform from one frame of

reference to another

Page 21: CS 415 – A.I

How far has the robot moved?

• Apply power, robot moves, right?– Power does not relate well to speed

• So, other options:– Check the particular motor velocity (left/right)– Some visual cue for how fast you're going– Encode inside motor• How many 'ticks' has the motor made as it rotated• Use PID, proportional integral derivative

– Integral and derivative → smooths error/gives result

Page 22: CS 415 – A.I

Mapping

• How do we abstract a map?• Efficiency vs Expressiveness–What are the tradeoffs

• Dealing with Errors– Examples: • Synchro Drive• Differential Drive

Page 23: CS 415 – A.I

Accurate Relative Localization Using Odometry

• Drawing Maps– Depends on relative localization• Can't escape the use of odometry

– Have error built in• Overcoming Error

1.Odometry error modeling2.Error Parameters estimation3.Covariance matrix estimation 1 and 2 – systematic errors 3 – non-systematic errors

Page 24: CS 415 – A.I

Systematic Errors

• Define these for the robot based on the appropriate error model for the drive type– Differential Drive → given in the literature• Borenstein paper

– Synchro Drive → given in this paper• Major source: wheel misalignment

– Major source of distortion for theta (angular velocity): drag AND rotate the robot

– Provable by geometric analysis of kinematic equation

Page 25: CS 415 – A.I

Non-systematic Errors

• PC (POSTECH CMU)-method– 1st get the error model – 2nd use PC-method to generate error parameters

and covariance matrix• Based on sensor-based navigation through the

Generalized Voronoi Graph (GVG)– Voronoi extensively covered in literature– Creates a well-understood path based on obstacles– Robot drives it forward (FOP) and backward (BOP)

• 2 diff odom paths, same real-world path

Page 26: CS 415 – A.I

• Give an initial CFOP and CBOP based on error model and initial error parameters guess

• Then, find the error parameters that minimize error between CFOP and CBOP– Steepest descent method

• Now, build an error covariance matrix based on 3 assumptions and worst-case analysis

Page 27: CS 415 – A.I

A little error, uncorrected, tends to flourish

• See Fig 8– Note: one possible approach, reset the odometry

before the error gets too bad• See Fig 9• See Fig 12• See Fig 13

Page 28: CS 415 – A.I

Representation/Search - Considerations

• Real-time Systems– Is it schedulable

• Has a lot to do with efficiency/expressiveness– How are we storing things (fast to slow)

• I/O• Memory • Registers• Cache

– What Language are we using (fast to slow)• Assembly• C• C++• Java• Python

Page 29: CS 415 – A.I

Other Forms of Representation• Example: A robot might be stacking elements from a

table on top of one another• Might give the following predicates (state facts about

our domain):clear(c)clear(a)ontable(a)ontable(b)on(c,b)cube(b)cube(a)pyramid(c)

• Might also define a set of rules which relate to these predicates For all X if there does not exist any Y where on(Y,X) than this implies clear(X)

Page 30: CS 415 – A.I

Using Predicate Calculus• Predicates can also be more advancedhassize(bluebird,small)hascovering(bird,feathers)hascolor(bluebird,blue)hasproperty(bird,flies)isa(bluebird,bird)isa(bird,vertebrae)• Predicates are not functions in the sense of higher-level

languages, nor should you think of them in terms of programming– There is no set of predicate functions– Any predicate can be defined

• They are strictly useful for representing knowledge in conjunction with rules

Page 31: CS 415 – A.I

Search

• What are the possible moves?– The computer knows because of the knowledge

representation• All moves are either stored or can be inferred from the

stored knowledge and set of rules.

• What is the best move?– This is the domain of search– Example: Tic Tac Toe

Page 32: CS 415 – A.I
Page 33: CS 415 – A.I
Page 34: CS 415 – A.I

Limitations of State-Space Search

• Not sufficient to automate intelligent behavior– How big is the state-space for chess?• 10120 different board configurations

– Larger than # molecules in the universe– Larger than the number of seconds since the “big bang”

– How big is the state-space for human language?• Untold possibilities

• State-Space Representation and Search is an important tool only

Page 35: CS 415 – A.I

Exhaustive Search vs. Heuristic Search

• Exhaustive Search– Brute force attempting all possible combinations

till an optimized solution is found• Heuristic Search– Humans don’t use exhaustive search– Instead, we use rules of thumb based on what

seems most “promising”– Heuristic – a strategy for selectively searching a

state space ---- Examples?