Presentation - Bi-directional A-star search

21
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

Transcript of Presentation - Bi-directional A-star search

Page 1: Presentation - Bi-directional A-star search

CMPUT 657Heuristic Search

Final Project Presentation

Topic A new Bi-directional A* search with Shorter Post

Processing on 8/15 puzzle

Presented ByMohamad Saiful Islam

Page 2: Presentation - Bi-directional A-star search

Outline

Bi – Directional A* Search Balanced Algorithm New Bi-Directional A* Problem Domain Experimental Results Conclusion / Discussion

Page 3: Presentation - Bi-directional A-star search

Bi-Directional A* Search

Bi-Directional Search [1]O Two simultaneous search processes starting from two

end points, root and goalO Pohl [2] applied this to Dijkstra and A*

Two PhasesO Main Phase: Two searches continue untill a meeting

point is foundO 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

Page 4: Presentation - Bi-directional A-star search

Bi-Directional A* Search

AdvantageO 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

O bd Obd /2

Page 5: Presentation - Bi-directional A-star search

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 HeuristicsO Bi-Directional A* using balanced heuristic considered to

be most effecient shortest path algorithms [4, 5, 6]

h u , h u

d ' u ,v =d u , v h v −hu

h u h u =constant

h u =0

Page 6: Presentation - Bi-directional A-star search

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=g m g m

w∉S∪S

P≥L

Page 7: Presentation - Bi-directional A-star search

New Bi-directional Algorithm

Let u is a node that will be added to the closed list and the path through this node is PO If then length of P is not smaller than LO 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

g u F−hu≥L

Page 8: Presentation - Bi-directional A-star search

New Bi-directional Algorithm

1: for all v∈V do

2: g v=∞

3: end for

4: S=∅

5: L=∞

6: g s =0 //s becomes LABELED

7: boolean cand− found=true

8: while cand− found=true do

Page 9: Presentation - Bi-directional A-star search

New Bi-directional Algorithm

9: C={v∣v is labelled∧g v h v −h t L} //C set of all candidates

10: cand− found= false

11: while C≠∅∧cand− found= false do

12: uo=argmin{g v h v ∣v∈C }

13: if uo∉ S∧g uo F−h uo≥L then

14: C=C−{uo} // uo becomes REJECTED

15: else

16: cand− found=true // a suitable candidate is found

Trimming

Explicit Condition

Node not in opposite closed list

Page 10: Presentation - Bi-directional A-star search

17: end if

18: end while

19: if cand− found=true then

20: S=S{uo} // uo becomes SCANNED

21: F=g uohuo

22: if uo∉ S then

23: for all edges uo , v ∈E with v LABELED∨UNREACHED do

24: if g vg uod uo , v then

Nipping = Doubly scanned nodes can not Expand more new nodes

Page 11: Presentation - Bi-directional A-star search

25: g v=g uod uo , v //v becomes relabeled

26: pred v=uo

27: L=min {L ,g v g v }

28: end if

29: end for

30: end if

31: end if

32: end while

Page 12: Presentation - Bi-directional A-star search

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

Page 13: Presentation - Bi-directional A-star search

Experimental Result

Heuristics Uni-directional

O Number of mis-placed tilesO Manhattan DistanceO Manhattan Distance + Linear Conflict

Third one performs the best [8] so used in the Bi-Directional search as the base heuristic

Page 14: Presentation - Bi-directional A-star search

Experimental Result

Bi-directional Symmetric

O

Balanced O

h v =v , t , hv = v , t = s , v u , v =under estimate of d u , v

h v =12{v ,t − s , v }

h v =12{ s , v −v , t }

Page 15: Presentation - Bi-directional A-star search

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

# S

tate

s

Page 16: Presentation - Bi-directional A-star search

Experimental Result

5 10 15 20 25 30 35

0

20000

40000

60000

80000

100000

120000

140000

160000

180000

Number of unique states generated

MisplacedManhattanBalancedSymmetric

Solution Length

# S

tate

s

Page 17: Presentation - Bi-directional A-star search

Experimental ResultNumber States Number of Unique States Solution

Length

Misplac-ed

Manha-ttan

Balanced

Symme-tric

Misplaced Manhattan Balanced Symmetric

31189 5167 3557 855 27295 4814 3350 731 24

121498 12012 9323 2670 94075 11115 8676 2255 28

76238 3644 6555 518 63014 3452 6133 492 26

65565 7501 5615 2516 54493 6889 5258 2264 26

65750 9936 5514 1576 54794 9155 5160 1447 26

49548 6370 6024 1547 42021 5897 5632 1418 25

51165 11538 5957 1796 43087 10417 5574 1516 25

67277 8878 5663 1745 55841 8171 5305 1449 26

65715 5667 5400 1039 54647 5320 5066 896 26

49704 3680 5487 935 42520 3448 5139 872 25

Page 18: Presentation - Bi-directional A-star search

Experimental Result

Manhattan Symmetric

# States # Unique States # States # Unique States Solution Length

332474 313769 64963 52145 32

571221 526604 66103 52928 33

432482 407974 27726 22569 34

334703 310299 30438 26108 35

671954 625793 136149 110414 36

211219 199339 16620 12934 37

96297 80029 38

18102 15356 39

59120 48104 40

Page 19: Presentation - Bi-directional A-star search

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

Page 20: Presentation - Bi-directional A-star search

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

Page 21: Presentation - Bi-directional A-star search

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.