problem solving and search - cau ai labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 ·...

101
Problem Solving and Search School of Computer Science & Engineering Chung-Ang University Artificial Intelligence Dae-Won Kim

Upload: others

Post on 05-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem Solving and Search

School of Computer Science & Engineering Chung-Ang University

Artificial Intelligence

Dae-Won Kim

Page 2: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Outline

• Problem-solving agents

• Problem types

• Problem formulation

• Example problems

• Basic search algorithms

Page 3: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem-Solving Agents

Page 4: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 5: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

On holiday In Romania;

currently in Arad.

Flight leaves tomorrow for Bucharest.

Page 6: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Goal: be in Bucharest

Page 7: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Solution: sequence of cities

Page 8: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Solution: ???

Performance measure: ???

Page 9: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem formulation:

states – various cities

actions – drive between cities

Page 10: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 11: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem Formulation: How To

vs. Problem Modeling

Page 12: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A problem is defined by four items:

• Initial state

• Successor function:

set of action-state pairs

• Goal test

• Path cost

Page 13: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A solution is a sequence of actions leading from the initial state to a goal state.

Consider a solution in algorithm

Page 14: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem Formulation: Romania

Page 15: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Initial state:

• Successor function:

• Goal test:

• Path cost:

Page 16: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Initial state: x = “at Arad”

• Successor function:

S = {<AradZerind,Zerind>, …}

• Goal test: x = “at Bucharest”

• Path cost: sum of distances

Page 17: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem Formulation: Vacuum Cleaner

Page 18: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• States:

• Actions:

• Goal test:

• Path cost:

Page 19: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• States: integer dirt and robot locations

• Actions: left, right, suck, stay

• Goal test: no dirt

• Path cost: 1 per action (0 for stay)

Page 20: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem Formulation: Robot Assembly

Page 21: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• States: real-valued coordinates of joint angles

• Actions: continuous motions of robot joints

• Goal test: complete assembly

• Path cost: time to execute

Page 22: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Problem Formulation: The 8-Puzzle

Page 23: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• States ?

• Actions ?

• Goal test ?

• Path cost ?

Page 24: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

How to achieve the goal state through the complex state space from the initial state?

Page 25: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Answer: Tree Search Algorithms

Page 26: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Idea: exploration of state space by generating successors of already-explored states (expanding states)

Page 27: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 28: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Implementation: States vs. Nodes

Page 29: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A state is (a representation of) a physical configuration

Page 30: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A node is data structure constituting part of a search tree includes parents, children, depth, path cost.

Page 31: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A search strategy is defined by picking the order of node expansion.

Page 32: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Strategies are evaluated along the following dimensions:

• Completeness

• Time complexity

• Space complexity

• Optimality

Page 33: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Uninformed Search Strategies

Page 34: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Uninformed search strategies use only the information available in the problem definition.

• Breadth-first search

• Uniform-cost search

• Depth-first search

• Depth-limited search

• Iterative deepening search

Page 35: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Breath-First Search

Page 36: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Expand shallowest unexpanded node.

Implementation: FIFO queue

Page 37: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete?

• Time complexity?

• Space complexity?

• Optimal?

Page 38: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete? Yes (if b is finite)

• Time complexity? O(bd+1)

• Space complexity? O(bd+1)

• Optimal? Yes (if cost = 1 per step)

Page 39: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Uniform-Cost Search

Expand least-cost unexpanded node

using queue ordered by path cost

Equivalent to BFS if step costs equal.

Page 40: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Depth-First Search

Page 41: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Expand deepest unexpanded node.

Implementation: LIFO queue

Page 42: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete?

• Time complexity?

• Space complexity?

• Optimal?

Page 43: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete? No (infinite-depth, loops)

• Time complexity? O(bm)

• Space complexity? O(bm)

• Optimal? No

Page 44: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Depth-Limited Search

= DFS with depth limit (L).

i.e., nodes at depth (L) have no successors

Page 45: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Iterative Deepening Search

Page 46: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 47: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 48: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete?

• Time complexity?

• Space complexity?

• Optimal?

Page 49: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete? Yes

• Time complexity? O(bd)

• Space complexity? O(bd)

• Optimal? Yes (if step cost = 1)

Page 50: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 51: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Informed Search Methods : The Basics

School of Computer Science & Engineering Chung-Ang University

Artificial Intelligence

Dae-Won Kim

Page 52: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Outline

• Best-first search

• Greedy search

• A* search

• Brach and Bound

Page 53: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A strategy is defined by picking the order of node expansion.

Page 54: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Informed search strategy can find solutions more efficiently than an uninformed search.

Page 55: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

It uses problem-specific knowledge beyond the definition of the problem itself.

Page 56: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Best-First Search

Page 57: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Idea: use an evaluation function for each node.

Page 58: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Estimate the “desirability” of each node

• Expand most desirable unexpanded node

Page 59: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Special cases:

• Greedy search

• A* search

• Branch and Bound

Page 60: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Romania Example with Step Costs

Page 61: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 62: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Greedy Search

Page 63: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

We need an evaluation function : heuristic function h(n)

Page 64: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

h(n) = estimate of cost from n to the closest goal

Page 65: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

h(n) = straight-line distance from n to Bucharest

Page 66: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Greedy search expands the node that appears to be closest to goal.

Page 67: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 68: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 69: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 70: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 71: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Properties of greedy search

Page 72: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete?

• Time complexity?

• Space complexity?

• Optimal?

Page 73: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete? No (can get stuck in loops)

Yes (in finite space with repeated-state checking)

• Time complexity? O(bm), A good heuristic is needed.

• Space complexity? O(bm), Keeps all nodes in memory.

• Optimal? No

Page 74: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

What is A* Search?

Page 75: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Idea: avoid expanding paths that are already expensive.

Page 76: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Evaluation function: f(n) = g(n) + h(n)

Page 77: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• g(n) = cost so far to reach n

• h(n) = estimated cost to goal from n

• f(n) = estimated total cost through n to goal

Page 78: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

A* search uses an admissible heuristic. Thus, it is optimal.

Page 79: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• h(n) h*(n) where h*(n) is the true cost from n.

• h(n) 0, so h(Goal) = 0.

Page 80: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

e.g., hstraight(n) never overestimates the actual distance.

Page 81: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Romania Example with A* Search

Page 82: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 83: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 84: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 85: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 86: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 87: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University
Page 88: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Properties of A* Search

Page 89: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete?

• Time complexity?

• Space complexity?

• Optimal?

Page 90: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• Complete? Yes

• Time complexity? Exponential in [relative error in h x length of sol.]

• Space complexity? Keeps all nodes in memory.

• Optimal? Yes

Page 91: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Q: Explain why A* is optimal?

Page 92: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Admissible Heuristics for the 8-puzzle

Page 93: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Guess a h-function : f = g + h

Page 94: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

h1(n) = number of misplaced tiles

h1(n) = 6

Page 95: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

h2(n) = total Manhattan distance

h2(n) = 4 + 0 + 3 + 3 + 1 + 0 + 2 + 1 = 14

Page 96: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Admissible Heuristics & Dominance

Page 97: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

If h2(n) > h1(n) for all n, then h2 dominates h1 and is better for search.

Page 98: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

• IDS = 50,000,000,000 nodes

• A*(h1) = 39,135 nodes

• A*(h2) = 1,641 nodes

Page 99: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Q: How to find good heuristics?

Page 100: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

Admissible heuristics can be derived from the exact solution cost of a relaxed version of the problem.

Page 101: Problem Solving and Search - CAU AI Labai.cau.ac.kr/teaching/ai-2014/02.pdf · 2014-09-11 · Problem Solving and Search School of Computer Science & Engineering Chung-Ang University

The optimal solution cost of a relaxed problem is no greater than the optimal solution cost of the real problem.