outline introduction & logistics textbook: russell and norvig chapters 3, 4 and 5. notion of a...

43
Outline • Introduction & Logistics • Textbook: Russell and Norvig chapters 3, 4 and 5. • Notion of a Problem Space • Search Techniques • Constraint Satisfaction Techniques • Game Search; Video: Kasparov vs. Deep Blue

Post on 21-Dec-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Outline

• Introduction & Logistics

• Textbook: Russell and Norvig chapters 3, 4 and 5.

• Notion of a Problem Space

• Search Techniques

• Constraint Satisfaction Techniques

• Game Search; Video: Kasparov vs. Deep Blue

Page 2: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Logistics:• Q. Yang [email protected]• TA: Janet Hsiao [email protected]• Readings

– Required: Textbook by Russell & Norvig and Witten and Eibe

– Recommended: various papers

• Grading: – Problem Set 10%

– Exams 60%

– Final Project (Group) 30%

Page 3: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Defining Intelligence?

Page 4: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

4

Artificial Intelligence• Planning (To get a good job I should get an MS/CSE…)

• Diagnosis (My car won’t start, but I know it has gas…)

• Design (Space Shuttle, Boeing 777, Pentium)

• Communicate (Language + Social reasoning)

• Theorem Proving (Fermat’s Last Theorem)

• Perceive/Act (Vision, Manipulation)

• Game Playing (Kasparov vs. Deep Blue)

• Create Art (MacBeth, Mona Lisa, Taj Mahal)• Learn to ...

Page 5: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

AI as Science• Origin & Laws of the Physical Universe

• Origin & Laws of Biological Life

• Nature of Intelligent Thought

AI as Engineering• Softbots & Intelligent User Interfaces

• Mobile Robots … Immobots

• Machine Learning Algorithms; Data Mining

• Medical Expert Systems...

Page 6: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

AI Theory

• For example, Machine Learning– Given tree structured instance space with n attributes,

you need• 4 log(2/) + 16n log(13/ examples

AI Practice

• Game Playing • Pattern Classification: Character Recognition, …• Machine Learning: Data Mining, Web Agents• Perception – Vision, Speech

Page 7: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Course Topics by Week• Search (1 and 2-person) & Constraint Satisfaction• KR&R 1: Logic representation & Theorem Proving• KR&R 2: Planning and Diagnosis• Machine Learning 1: Supervised Learning• Machine Learning 2: Unsupervised Learning• Natural Language Processing• Applications• Final Project Demo

• Sept 11, 2000

Page 8: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Search (one solution)• Brute force

– DFS, BFS, iterative deepening, iterative broadening

• Heuristic– Best first, beam, hill climbing, simulated annealing, limited discrepancy

• Optimizing– Branch & bound, A*, IDA*, SMA*

• Adversary Search– Minimax, alpha-beta, conspiracy search

• Constraint Satisfaction– As search, preprocessing, backjumping, forward checking, dynamic variable ordering

Page 9: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Search (Internet and Databases)

• Look for all solutions• Must be efficient• Often uses indexing• Also uses heuristics (e.g., Google )• More than search itself

– NLP can be important– Scale up to thousands of users– Caching is often used

Page 10: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Outline• Defining a Search Space• Types of Search

– Blind– Heuristic– Optimization– Adversary Search– Constraint Satisfaction

• Analysis– Completeness– Time & Space Complexity

Page 11: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

11

Specifying a search problem?

• What are states (nodes in graph)?

• What are the operators (arcs between nodes)?

• Initial state?

• Goal test?

• [Cost?, Heuristics?, Constraints?]

E.g., Eight Puzzle

1 2 3

7 8

4 5 67 2 3

8 5

4 1 6

Page 12: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

12

Towers of Hanoi

• What are states (nodes in graph)?

• What are the operators (arcs between nodes)?

• Initial state?

• Goal test?

a b c

Page 13: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Water Jug

You are given two jugs, a 4-gallon one and a 3-gallon one. Neither has nay measure markers on it. There is a pump that can be used to fill the jugs with water.

How can you get exactly 2 gallons of water into the 4-gallon jug?

Page 14: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

14

Planning

• What is Search Space?– What are states?– What are arcs?

• What is Initial State?

• What is Goal?

• Path Cost?

• Heuristic?

ac

b

cba

PickUp(Block)PutDown(Block)

Page 15: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

15

Missionaries and Cannibals

m m m

c c c

• .• What are states (nodes in graph)?• What are the operators (arcs between nodes)?• Initial state?• Goal test?• 2 Representations

Page 16: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

16

Search Strategies

• Blind Search– Depth first search– Breadth first search– Iterative deepening search– Iterative broadening search

• Heuristic Search• Optimizing Search• Constraint Satisfaction

Page 17: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

General-Search(problem, Queuing-FN) returns a solution, or failure

Page 73 of Russell and Norvig

• Nodes <- Make-Queue(Make-Node(Initial-State(problem)));

• Loop do– If nodes is empty then return failure;

– Node <- Remove-Front (nodes);

– If Goal-Test(problem) applied to State(node) succeeds then return node;

– Nodes = Queuing-Fn(nodes, Expand(node, Operators(problem)));

• End Loop

Page 18: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Heuristic Search

• A heuristic function is:– Function from a state to a real number

• Low number means state is close to goal• High number means state is far from the goal

– Every node has a function f(node)!

Designing a good heuristic is very important!

(And hard)

More on this in a bit...

Page 19: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Depth First Search

a

b

d e

c

f g h

• Maintain stack of nodes to visit ( f(node)=– Nodes = Queuing-Fn(nodes, Expand(node, Operators(problem)));

• Evaluation– Complete?

– Time Complexity?

– Space Complexity?Not for infinite spaces

O(b^d)

O(d)

Page 20: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Breadth First Search

a

b c

d e f g h

• Maintain queue of nodes to visit ( f(node)=– Nodes = Queuing-Fn(nodes, Expand(node, Operators(problem)));

• Evaluation– Complete?

– Time Complexity?

– Space Complexity?Yes

O(b^d)

O(b^d)

Page 21: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Iterative Deepening Search

• DFS with limit; incrementally grow limit (page79)

a

b c

Page 22: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Iterative Deepening Search

• DFS with limit; incrementally grow limit• Evaluation

– Complete?

– Time Complexity?

– Space Complexity?Yes

O(b^d)

O(d) b

d e

c

f g h

a

Page 23: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

A* Search

• Idea– Best first search with admissible heuristic

• ( f(node)=– Plus keep checking until all possibilities look worse

• Evaluation– Finds optimal solution?

– Time Complexity?

– Space Complexity?

Yes

O(b^d)

O(b^d)

Underestimates cost ofany solution which can reached from node

Page 24: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Admissable Heuristics

• f(x) = g(x) + h(x)

• g: cost so far

• h: underestimate of remaining costs

a

b

c

d

e

f12

8

15

10

8

14 20

7 2 3

8 5

4 1 6

For transportation planning?

For eight puzzle?

Page 25: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

A* Optimality

• If A* finds a node, then it is a optimal goal node

• Proof by contradiction…

Page 26: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Importance of Heuristics

D IDS A*(h1) A*(h2) 2 10 6 6 4 112 13 12 6 680 20 18 8 6384 39 2510 47127 93 3912 364404 227 7314 3473941 539 11318 3056 36324 39135 1641

• h1 = number of tiles in the wrong place

• h2 = sum of distances of tiles from correct loc

7 2 3

8 5

4 1 6

Page 27: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Constraint Satisfaction

• Chronological Backtracking (BT)

• Backjumping (BJ)

• Conflict-Directed Backjumping (CBJ)

• Forward checking (FC)

• Dynamic variable ordering heuristics

• Preprocessing Strategies

Page 28: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Chinese Constraint Network

Soup

Total Cost< $30

ChickenDish

Vegetable

RiceSeafood

Pork Dish

Appetizer

Must beHot&Sour

No Peanuts

No Peanuts

NotChow Mein

Not BothSpicy

Page 29: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

CSPs in the real world

• Scheduling Space Shuttle Repair

• Transportation Planning

• Computer Configuration

• Diagnosis

Page 30: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Recognizing Trihedral Objects

• Trihedral objects: all vertices are intersections of three planes.• Labeling: with +, - and ->• Enumerating all labels:

• Using constraint satisfaction to find correct labels– NP hard in general– CSP gives good solutions

Page 31: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Binary Constraint Network• Set of n variables: x1 … xn

• Value domains for each variable: D1 … Dn

• Set of binary constraints (also known as relations)– Rij Di Dj

– Specifies which values of xi are consistent w/ those of xj

• Partial assignment of values with a tuple of pairs– {...(x,a)…} means variable x gets value a...– Consistent if all constraints satisfied on all vars in tuple– Tuple = full solution if consistent & all vars included

• Tuple {(xi, ai) … (xj, aj)} consistent w/ a set of vars {xm … xn} iff am … an such that this tuple is consistent: {(xi, ai) … (xj, aj), (xm, am) … (xn, an)} }

Page 32: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

N Queens• Variables = board columns

• Domain values = rows

• Rij = {(ai, aj) : (ai aj) (|i-j| |ai-aj|)– e.g. R12 = {(1,3), (1,4), (2,4), (3,1), (4,1), (4,2)}

Q

Q

Q

• {(x1, 2), (x2, 4), (x3, 1)} consistent with (x4)• Shorthand: “{2, 4, 1} consistent with x4”

Page 33: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

33

CSP as a search problem?

• What are states (nodes in graph)?

• What are the operators (arcs between nodes)?

• Initial state?

• Goal test?

Q

Q

Q

Page 34: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Chronological Backtracking (BT)(e.g., depth first search)

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

1

2

34

5

6

Consistency check performed in the order in which vars were instantiated

If c-check fails, try next value of current varIf no more values, backtrack to most recent var

Page 35: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Preprocessing Strategies

• Even FC-CBJ is O(b^d) time worst case• Sometimes useful to spend polynomial time preprocessing

to achieve local consistency before doing exponential search• Arc consistency

– Consider all pairs of vars

– Can any values be eliminated from a domain ala FC

– Propagate

– O(d^2) time where d= number of vars

Page 36: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Forward Checking (FC)

• Perform Consistency Check Forward

• Whenever assign var a value– Prune inconsistent values from – As-yet unvisited variables– Backtrack if domain of any var ever collapses

Q

Q

Q

Q

Q

FC only visits consistent nodes but not all such nodes skips (2, 5, 3, 4) which CBJ visitsBut FC can’t detect that (2, 5, 3) inconsistent with {x5, x6 }

Page 37: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Dynamic variable ordering

• In the N-queens examples we assumed– First x1 then x2 then ...

• But this order not required– Any order ok with respect to completeness– A good order leads to huge speedup

• A good heuristic:– Choose variable w/ minimum remaining values

• This is easy if one is doing FC

Page 38: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Hill Climbing (p112)

• Current <- Make-Node(Initial-State(problem));

• LoopNext successor of Current with highest f-value

If f(Next) < f(Current), then return Current;

Current Next;

End loop

Page 39: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Simulated Annealing

• Current Make-Node(Initial-State(problem));• For t =1 to infinity, do

– T schedule(t);

– If T=0 then return Current;

– Next random-selected successor of Current;

– E f(Next) - f(Current);

– If E>0 then Current Next

– Else• Current Next only with probability TEe /

Note: T decreases with time t; E is the energy functionNote: more random moves at beginning, fewer later…

Page 40: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Game Tree Search (java applet)

• Two person games: min (adversary) and max (me!)• Max wants to win by expanding all possible moves of min, and looks for

the ‘best’ branch • There is a utility function e(n) attached to each terminal node • Values of utility function propagates upward

– Max: chooses the max value of all children– Min: chooses the min value of all children

• Tic-Tac-Toe– MAX = “X”, MIN = “O”– e (leaf node) = Total-Open-Paths(MAX) – Total-Open-Paths(MIN)– e (leaf node) = +/- infinity for winning nodes– e (MAX node) = MAX {e(succ nodes)}; e(MIN node) = MIN {}

Page 41: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Search TreeStart node

-2

1

X X X X XO

O O OO

6-5=1 5-5=0 ?

MIN

X

XX

?

MAX

1 0 -1

-1

Page 42: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Tricks

• Alpha value: for MAX nodes, is a current lower bound on its evaluation function (it never goes down for MAX)

• Beta value: for MIN nodes, is a current upper bound on its evaluation function (it never goes up for MIN)

• Rule 1: – if MAX is parent, MIN is a child and– (alpha(MAX) > = beta(MIN),– then terminate search on MIN

• Rule 2: – if MIN is parent, MAX is a child, and – (alpha(MAX) > = beta(MIN),– Then terminate search on MAX

Page 43: Outline Introduction & Logistics Textbook: Russell and Norvig chapters 3, 4 and 5. Notion of a Problem Space Search Techniques Constraint Satisfaction

Watch Video