Name:
X.500 ID:
Midterm 1 – Answer Key
100 points
CSci 4511, Thursday March 3, 2011
Closed book, notes, laptop, cell phone, calculator. 1 page of notes
Unless the question specifically asks for more detail, you may use short answers.
1.
4 points
State the solution path and cost found by breadthfirst search
(
not
uniform cost search).
S
Æ
A
Æ
D
Æ
G
Cost: 3
Costs in breadthfirst search is the number of steps
i think some students confused “solution path” with
“what nodes will it search”
2.
4 points
In what sense is IDA* preferable to A*?
Uses less memory
Several people mentioned that it’s interruptible. i don’t think that’s what Korff, the guy
who invented it, had in mind when he made it, but it was obviously a big deal in the chess
problem so that answer was also worth full credit
3.
6 points
Name one reason why you would use depthfirst search. Name a reason why you would not.
Pro: Uses less memory, good choice for short, fat problems
Con: Not optimal, gets caught on loops, does not work on problems with infinite depth,
wrong choice for tall skinny problems
A lot of people brought up variable assignment problems. If you said it finds answers faster
than BFS in the best case and the same as BFS in the worst, you got full credit. If you said
it works better than BFS for those problems but don’t say why, you lost points. If you said
it works on problems where the solution depth is know (not “it works better”, just “it
works”), you lost a lot of points
4.
4 points
You are at a node where g(n)=10 and h(n)=10. This node is on the optimal path. What is the
actual cost (C*) of the path through that node to the solution? If this is a trick question, say why.
S
A
B
C
10
1
D
E
F
G
H
1
20
8
5
12
6
4
3
This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentWe have no idea what the actual cost is. All we know is that it’s at least 20, but since h(n)
can be an underestimate and g(n) is perfect, f(n) can also be an underestimate
5.
1 point each
Are these heuristics admissible (T/F)? Note: C(n, goal) is the true cost from the node to the goal.
a.
h1(n)=0
T
b.
h2(n)=g(n)
F
c.
h3(n)= random(0, C(n, goal))
T
d.
h4(n)=2C(n, goal)
F
e.
h5(n)=½C(n, goal)
T
Most people got this with the exception of 5b, g(n). As you get closer to the solution, g
grows and h shrinks. If you used g(n) as
your heuristic, h(n) gets bigger as
you get closer
to the goal, which is the wrong direction. Suppose you’re on a path C*=20. If you’re at the
start of the path, you might have g(n)=5, h(n)=15. Near the end of the path, g(n)=15,
h(n)=5. If you used h(n)=g(n) then near the end of the path the remaining cost is 5you’re
your estimate is 15, 3 times the actual cost and clearly not admissible. And what happens
with that inadmissible heuristic? You’d have f(n)=g(n)+h(n) = 15+15 = 30 which is > C*, so
the solution would be below where it should be and a nonoptimal solution might be found
first. It also has the effect of pushing A* away from the goal, not towards it
6.
4 points
The open list contains 101 nodes. One is the goal, f(goal)=45. Of the remaining 100 nodes, 10
have the cost f(n)=10, 10 have f(n)=20, 10 have f(n)=30, etc. all the way to 10 nodes with
f(n)=100. Of these, only 8 nodes are on the optimal path. Including the goal node, how many of
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '10
 ABDELSALAM
 Search algorithm

Click to edit the document details