1. CMPUT 657
Heuristic Search
Final Project Presentation
Topic
A new Bi-directional A* search with Shorter Post
Processing on 8/15 puzzle
Presented By
Mohamad Saiful Islam
2. Outline
Bi – Directional A* Search
Balanced Algorithm
New Bi-Directional A*
Problem Domain
Experimental Results
Conclusion / Discussion
3. Bi-Directional A* Search
Bi-Directional Search [1]
O Two simultaneous search processes starting from two
end points, root and goal
O Pohl [2] applied this to Dijkstra and A*
Two Phases
O Main Phase: Two searches continue untill a meeting
point is found
O Post Phase: Make sure that path found is truely the
optimal one
Post phase is needed as the first meeting point does
not gurantee optimal path
4. Bi-Directional A* Search
Advantage
O A* space complexity two bi-dir search each
O Total much smaller than A*
Pohl's [2] Conjecture – Bi-Directional A* can miss
the meeitng point, causing number of nodes
searched twice as big as A* [Missile Metaphor]
Kaindl et. al [3] proved that the conjecture was
wrong, deviced an efficient implementation
Obd
Obd/2
5. Balanced Heuristics
Two search processes need two heuristics
O
If A* reduces to Dijkstra
Ikeda et. al[4] proved that A* becomes Dijkstra when
distance d is replaced by d' where
O
O So Bi-Directional A* becomes bi-directional Dijkstra
when
O
O Balanced Heuristics
O Bi-Directional A* using balanced heuristic considered to
be most effecient shortest path algorithms [4, 5, 6]
hu, hu
d'u,v=du,vhv−hu
huhu=constant
hu=0
6. New Bi-Directional Algorithm
Node m scanned on both sides,
For a node , the path from source to
destination through w is P
Proved using the propety of Balanced heuristics
So in post-phase, nodes that are only in the closed list
of opposite side are needed to be examined
Bi-directional A* with balanced heuristics thus refrains
from examining huge number of nodes in post-
processing phase
L=gmgm
w∉S∪S
P ≥L
7. New Bi-directional Algorithm
Let u is a node that will be added to the closed list and
the path through this node is P
O If then length of P is not smaller than L
O Then u can be rejected
O Proved using the propety of Balanced heuristics
Algorithm using this in-equality can be relaxed from
using balanced heuristincs but they maintain the
short post phases of balanced heuristics
New Algorithm proposed by Pijls at el[7] and
implemented in this project
guF−hu≥L
8. New Bi-directional Algorithm
1:forall v∈V do
2: gv=∞
3:endfor
4: S=∅
5: L=∞
6: gs=0 //sbecomesLABELED
7:boolean cand−found=true
8:while cand−found=true do
9. New Bi-directional Algorithm
9: C={v∣vislabelled∧gvhv−htL} //Cset ofall candidates
10: cand− found= false
11: while C≠∅∧cand− found=false do
12: uo=argmin{gvhv∣v∈C}
13: if uo∉S∧guoF−huo≥L then
14: C=C−{uo} // uo becomesREJECTED
15: else
16: cand−found=true //asuitablecandidateisfound
Trimming
Explicit Condition
Node not in opposite
closed list
10. 17: endif
18: endwhile
19: if cand−found=true then
20: S=S{uo} // uo becomesSCANNED
21: F=guohuo
22: if uo∉S then
23: forall edgesuo,v∈E with vLABELED∨UNREACHED do
24: if gvguoduo ,v then
Nipping = Doubly scanned nodes
can not Expand more new nodes
11. 25: gv=guoduo ,v //vbecomesrelabeled
26: predv=uo
27: L=min{L,gvgv}
28: endif
29: end for
30: end if
31: endif
32:endwhile
12. Problem Domain
8/15 puzzle problem
O Class of sliding puzzle problem
8 puzzle
O States, 181,440 unique states
15 puzzle
O 10,461,394,944,000 unique states
Most of the puzzle instances are hard to solve using A*
3.1×103
13. Experimental Result
Heuristics
Uni-directional
O Number of mis-placed tiles
O Manhattan Distance
O Manhattan Distance + Linear Conflict
Third one performs the best [8] so used in the
Bi-Directional search as the base heuristic
14. Experimental Result
Bi-directional
Symmetric
O
Balanced
O
hv=v ,t , hv=v ,t =s ,v
u ,v=under estimate of du ,v
hv=
1
2
{v ,t −s ,v}
hv=
1
2
{s ,v−v ,t}
15. Experimental Result
5 10 15 20 25 30 35
0
50000
100000
150000
200000
250000
300000
Number of States Generated
Misplaced Manhattan Balanced Symmetric
Solution Length
#States
16. Experimental Result
5 10 15 20 25 30 35
0
20000
40000
60000
80000
100000
120000
140000
160000
180000
Number of unique states generated
Misplaced
Manhattan
Balanced
Symmetric
Solution Length
#States
19. Conclusion
Bi-Directional Search better than Uni-
Directional Search
Symmetric Heuristics works better than
Balanced Heuristic
Optimal Results
Future work
O New Heuristics (landmark heuristic in Shortest
Path)
O New Domain
20. References
[1] T.A.J. Nicholson, Finding the shortest route between two points in
a network, Computer Journal 9 (1966) 275–289.
[2] I. Pohl, Bi-directional search, Machine Intelligence 6 (1971) 124–
140.
[3] H. Kaindl, G. Kainz, Bidirectional heuristic search reconsidered, Journal
of Artificial Intelligence 38 (1) (1989) 95–109.
[4] T.K. Ikeda, M. Hsu, H. Inai, S. Nishimura, H. Shimoura, T. Hashimoto,
K.Tenmoku, K. Mitoh, A fast algorithm for finding better routes by AI
search techniques, in: Proceedings Vehicle Navigation and Information
Systems Conference, IEEE, 1994.
[5] A.V. Goldberg, C. Harrelson, Computing the shortest path: A* search
meets graph theory, in: 16th Annual ACM–SIAM Symposium on Discrete
Algorithms (SODA’05), 2005.
[6] G.A. Klunder, H.N. Post, The shortest path problem on large scale real
road networks, Networks 48 (4) (2006) 182–194
[7] W. Pijls, H. Post, A new bidirectional search algorithm with shortened
postprocessing, European Journal of Operational Research 198 (2009) 363–
369
21. References Cont..
[8] O. Hansson, A. Mayer, and M. Yung, "Criticizing Solutions to Relaxed
Models Yields Powerful Admissible Heuristics," Information Sciences, Vol.
63, Issue 3, pp. 207-227, 1992.