+ All Categories
Home > Documents > CS730/830: IntroAIruml/cs730/slides/lecture-3-heuristics.pdf · CS730/830: IntroAI Recap...

CS730/830: IntroAIruml/cs730/slides/lecture-3-heuristics.pdf · CS730/830: IntroAI Recap...

Date post: 10-Mar-2018
Category:
Upload: phungthu
View: 225 times
Download: 1 times
Share this document with a friend
27
CS 730/830: Intro AI Recap Heuristic Search Wheeler Ruml (UNH) Lecture 3, CS 730 – 1 / 22 2 handouts: slides, asst 2
Transcript

CS 730/830: Intro AI

Recap

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 1 / 22

2 handouts: slides, asst 2

EOLQs

Recap

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 2 / 22

Recap

Recap

■ Problem Solving

■ DeGroot Results

■ Comparison

■ Are We Done?

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 3 / 22

Formalizing Problem Solving

Recap

■ Problem Solving

■ DeGroot Results

■ Comparison

■ Are We Done?

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 4 / 22

State: hypothetical world stateOperators: actions that modify worldGoal: desired state or test

(Herbert Simon and Allen Newell, “Computer simulation ofhuman thinking and problem solving”, 1961)

DeGroot Results

Recap

■ Problem Solving

■ DeGroot Results

■ Comparison

■ Are We Done?

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 5 / 22

Is iterative deepening real?

Comparison

Recap

■ Problem Solving

■ DeGroot Results

■ Comparison

■ Are We Done?

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 6 / 22

Algorithm Time Space Complete Admissible

Depth-first bm bm If m ≥ d NoBreadth-first bd bd Yes If ops cost 1Uniform-cost bd bd Yes YesIDDFS bd bd Yes Yes

branching factor bmaximum depth msolution depth d

Are We Done?

Recap

■ Problem Solving

■ DeGroot Results

■ Comparison

■ Are We Done?

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 7 / 22

Are We Done?

Recap

■ Problem Solving

■ DeGroot Results

■ Comparison

■ Are We Done?

Heuristic Search

Wheeler Ruml (UNH) Lecture 3, CS 730 – 7 / 22

Heuristic Search

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 8 / 22

UCS Behavior

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 9 / 22

UCS Behavior

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 9 / 22

UCS Behavior

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 9 / 22

Heuristic Evaluation

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 10 / 22

Heureka!

— Archimedes

Heuristic knowledge is useful, but not necessarily correct.

Heuristic algorithms use heuristic knowledge to solve a problem.

A heuristic function takes a state and returns a lower bound onthe cost-to-go to reach a goal.

(Newell and Ernst, 1965; Lin, 1965)

A* Search

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 11 / 22

Consider estimated final path cost! f(n) = g(n) + h(n)

Q ← an ordered list containing just the initial state.Loop

If Q is empty,then return failure.

Node ← Pop(Q).If Node is a goal,

then return Node (or path to it)else

Children ← Expand (Node).Merge Children into Q, keeping sorted by f(n). ←

An Example: the 8-puzzle

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 12 / 22

h(n) = number of tiles out of place. (The blank is not a tile.)

Start state:2 8 31 6 47 ⊔ 5

Goal state:1 2 38 ⊔ 47 6 5

Please draw the tree resulting from the first two node expansions.

Why Fewer Nodes?

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 13 / 22

Why Fewer Nodes?

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 13 / 22

Why Fewer Nodes?

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 13 / 22

UCS Behavior

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 14 / 22

A* Behavior

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 15 / 22

Break

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 16 / 22

■ asst 1■ asst 2■ Tianyi Gu■ UNH AI group: Wednesdays 3-4pm in Kingsbury N233.

Google ’UNH AI wiki’.■ projects!■ UROP

Evaluating A*

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 17 / 22

Assume branching factor b and solution at depth d.

Completeness:Time:Space:

Admissibility:

Admissibility of A*

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 18 / 22

If h is admissible, other solutions at least as expensive!

1. Suppose p is on path to better solution b.2. f(p) = g(p) + h(p) ≤ f(b) = g(b)3. But g(s) = f(s) ≤ f(p).4. So g(s) ≤ g(b).

Optimality of A*

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 19 / 22

1. For admissible h, f can be made non-decreasing.2. A* expands nodes in order of non-decreasing f .3. Must examine all nodes with f < f∗.

Heuristics

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 20 / 22

Simplified problem must give lower bound on original!

1. Relaxation: fewer and/or weaker constraints

■ Sometime efficient closed form

2. Abstraction: simplify token identity

■ Smaller search space

Want highest value

■ If h1(n) ≤ h2(n) for all n, h2 dominates h1

Need fast computation

Admissibility

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 21 / 22

how to prove heuristic h admissible for problem P :

1. identify a simplified problem P ′

2. show h is optimal for P ′

3. show that P ′ easier than P

optimal solution for instance i′ of P ′ is ≤optimal sol for instance i of P

4. since h gives optimal values for P ′, it is therefore admissiblefor P

EOLQs

Recap

Heuristic Search

■ UCS Behavior

■ Terminology

■ A* Search

■ 8-puzzle

■ Why Fewer?

■ UCS Behavior

■ A* Behavior

■ Break

■ Evaluating A*

■ Admissibility

■ Optimality of A*

■ Heuristics

■ Admissibility

■ EOLQs

Wheeler Ruml (UNH) Lecture 3, CS 730 – 22 / 22

Please write down the most pressing question you have aboutthe course material covered so far and put it in the box on yourway out.Thanks!


Recommended