Shortest Paths Introduction to Algorithms Shortest Paths CSE 680 Prof. Roger Crawfis.
Online Computation of Euclidean Shortest Paths in Two ...
Transcript of Online Computation of Euclidean Shortest Paths in Two ...
![Page 1: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/1.jpg)
References
Online Computation of Euclidean Shortest Pathsin Two Dimensions
ICAPS 2020
Ryan Hechenberger, Peter J Stuckey, Daniel Harabor,Pierre Le Bodic, Muhammad Aamir Cheema
Monash University
1 / 21
![Page 2: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/2.jpg)
References
Euclidean Shortest Path
I Pathfinding on theEuclidean plane
I Takes as input start s,target t and a set ofpolygonal obstacles P
I Find shortest path from s tot without crossing throughany obstacles P
I Distance is based off theEuclidean distance√
(x2 − x1)2 + (y2 − y1)2
2 / 21
![Page 3: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/3.jpg)
References
Euclidean Shortest Path
I Pathfinding on theEuclidean plane
I Takes as input start s,target t and a set ofpolygonal obstacles P
I Find shortest path from s tot without crossing throughany obstacles P
I Distance is based off theEuclidean distance√
(x2 − x1)2 + (y2 − y1)2
s
t
2 / 21
![Page 4: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/4.jpg)
References
Euclidean Shortest Path
I Pathfinding on theEuclidean plane
I Takes as input start s,target t and a set ofpolygonal obstacles P
I Find shortest path from s tot without crossing throughany obstacles P
I Distance is based off theEuclidean distance√
(x2 − x1)2 + (y2 − y1)2
s
t
2 / 21
![Page 5: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/5.jpg)
References
Euclidean Shortest Path
I Pathfinding on theEuclidean plane
I Takes as input start s,target t and a set ofpolygonal obstacles P
I Find shortest path from s tot without crossing throughany obstacles P
I Distance is based off theEuclidean distance√
(x2 − x1)2 + (y2 − y1)2
s
t
2 / 21
![Page 6: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/6.jpg)
References
Visibility Graph
I Visibility graphs can solvethe Euclidean shortest path(Lozano-Perez et al. 1979)
I Generates graph G = (V ,E )where V is polygon verticesand E is edges that are freeof all obstacles
I A full visibility graph usesV 2 edges complexity
3 / 21
![Page 7: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/7.jpg)
References
Visibility Graph
I Visibility graphs can solvethe Euclidean shortest path(Lozano-Perez et al. 1979)
I Generates graph G = (V ,E )where V is polygon verticesand E is edges that are freeof all obstacles
I A full visibility graph usesV 2 edges complexity
3 / 21
![Page 8: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/8.jpg)
References
Visibility Graph
I Visibility graphs can solvethe Euclidean shortest path(Lozano-Perez et al. 1979)
I Generates graph G = (V ,E )where V is polygon verticesand E is edges that are freeof all obstacles
I A full visibility graph usesV 2 edges complexity
3 / 21
![Page 9: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/9.jpg)
References
Sparse Visibility Graph
I A variant of the visibilitygraph (Oh et al., SoCS2017)
I Keeps only edges that canform a shortest path
I Greatly reduces the densityof edges
4 / 21
![Page 10: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/10.jpg)
References
Sparse Visibility Graph
I A variant of the visibilitygraph (Oh et al., SoCS2017)
I Keeps only edges that canform a shortest path
I Greatly reduces the densityof edges
4 / 21
![Page 11: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/11.jpg)
References
Sparse Visibility Graph
I A variant of the visibilitygraph (Oh et al., SoCS2017)
I Keeps only edges that canform a shortest path
I Greatly reduces the densityof edges
4 / 21
![Page 12: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/12.jpg)
References
Navigation Mesh
I Inverts the search spacefrom a set ofnon-traversable obstacles totraversable convex regions
I Has a state-of-the-art solverPolyanya (Cui et al., IJCAI2017)
I Requires less memory andare easier to construct thanvisibility graphs
I Like visibility graphs, doesnot solve the problemdirectly
5 / 21
![Page 13: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/13.jpg)
References
Navigation Mesh
I Inverts the search spacefrom a set ofnon-traversable obstacles totraversable convex regions
I Has a state-of-the-art solverPolyanya (Cui et al., IJCAI2017)
I Requires less memory andare easier to construct thanvisibility graphs
I Like visibility graphs, doesnot solve the problemdirectly
5 / 21
![Page 14: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/14.jpg)
References
Navigation Mesh
I Inverts the search spacefrom a set ofnon-traversable obstacles totraversable convex regions
I Has a state-of-the-art solverPolyanya (Cui et al., IJCAI2017)
I Requires less memory andare easier to construct thanvisibility graphs
I Like visibility graphs, doesnot solve the problemdirectly
5 / 21
![Page 15: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/15.jpg)
References
Navigation Mesh
I Inverts the search spacefrom a set ofnon-traversable obstacles totraversable convex regions
I Has a state-of-the-art solverPolyanya (Cui et al., IJCAI2017)
I Requires less memory andare easier to construct thanvisibility graphs
I Like visibility graphs, doesnot solve the problemdirectly
5 / 21
![Page 16: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/16.jpg)
References
Introducing RayScan
I An online method for solving the Euclidean shortest path
I Works as an on-the-fly partial visibility graph on a A* search
I Generates edges for each expanding node; they can bediscarded after being pushed to the priority queue
6 / 21
![Page 17: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/17.jpg)
References
Introducing RayScan
I An online method for solving the Euclidean shortest path
I Works as an on-the-fly partial visibility graph on a A* search
I Generates edges for each expanding node; they can bediscarded after being pushed to the priority queue
6 / 21
![Page 18: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/18.jpg)
References
Introducing RayScan
I An online method for solving the Euclidean shortest path
I Works as an on-the-fly partial visibility graph on a A* search
I Generates edges for each expanding node; they can bediscarded after being pushed to the priority queue
6 / 21
![Page 19: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/19.jpg)
References
RayScan ConceptsShooting Rays Direct the Search
I Expand start node s
I Shoot a ray towards targetpoint t
I If point is visible, it is asuccessor
I Direct line-of-sight from s tot is the simplest case
s
t
7 / 21
![Page 20: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/20.jpg)
References
RayScan ConceptsShooting Rays Direct the Search
I Expand start node s
I Shoot a ray towards targetpoint t
I If point is visible, it is asuccessor
I Direct line-of-sight from s tot is the simplest case
s
t
7 / 21
![Page 21: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/21.jpg)
References
RayScan ConceptsShooting Rays Direct the Search
I Expand start node s
I Shoot a ray towards targetpoint t
I If point is visible, it is asuccessor
I Direct line-of-sight from s tot is the simplest case
s
t
7 / 21
![Page 22: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/22.jpg)
References
RayScan ConceptsShooting Rays Direct the Search
I Expand start node s
I Shoot a ray towards targetpoint t
I If point is visible, it is asuccessor
I Direct line-of-sight from s tot is the simplest case s
t
7 / 21
![Page 23: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/23.jpg)
References
RayScan ConceptsScanning
I Target t is not visible fromstart s
I First obstacle blockingtarget needs to be navigatedaround
I Scanning is a core conceptto find methods ofnavigating aroundobstruction
I Find turning point a and bscanning CCW/CW that wecan bend around
s
t
8 / 21
![Page 24: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/24.jpg)
References
RayScan ConceptsScanning
I Target t is not visible fromstart s
I First obstacle blockingtarget needs to be navigatedaround
I Scanning is a core conceptto find methods ofnavigating aroundobstruction
I Find turning point a and bscanning CCW/CW that wecan bend around
s
t
8 / 21
![Page 25: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/25.jpg)
References
RayScan ConceptsScanning
I Target t is not visible fromstart s
I First obstacle blockingtarget needs to be navigatedaround
I Scanning is a core conceptto find methods ofnavigating aroundobstruction
I Find turning point a and bscanning CCW/CW that wecan bend around
a
b
s
t
8 / 21
![Page 26: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/26.jpg)
References
RayScan ConceptsScanning
I Target t is not visible fromstart s
I First obstacle blockingtarget needs to be navigatedaround
I Scanning is a core conceptto find methods ofnavigating aroundobstruction
I Find turning point a and bscanning CCW/CW that wecan bend around
a
b
s
t
8 / 21
![Page 27: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/27.jpg)
References
RayScan ConceptsRecursion
I Turning point a is visiblefrom s
I Turning point b is blockedfrom s
I The ray shot to b directs thesearch to find successorsthat may lead to it
I Recurse the scan CCW/CWfrom obstruction intersection
I Successors c and d is found
a
b
s
t
9 / 21
![Page 28: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/28.jpg)
References
RayScan ConceptsRecursion
I Turning point a is visiblefrom s
I Turning point b is blockedfrom s
I The ray shot to b directs thesearch to find successorsthat may lead to it
I Recurse the scan CCW/CWfrom obstruction intersection
I Successors c and d is found
a
b
s
t
9 / 21
![Page 29: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/29.jpg)
References
RayScan ConceptsRecursion
I Turning point a is visiblefrom s
I Turning point b is blockedfrom s
I The ray shot to b directs thesearch to find successorsthat may lead to it
I Recurse the scan CCW/CWfrom obstruction intersection
I Successors c and d is found
a
b
s
t
9 / 21
![Page 30: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/30.jpg)
References
RayScan ConceptsRecursion
I Turning point a is visiblefrom s
I Turning point b is blockedfrom s
I The ray shot to b directs thesearch to find successorsthat may lead to it
I Recurse the scan CCW/CWfrom obstruction intersection
I Successors c and d is found
a
b
d
c
s
t
9 / 21
![Page 31: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/31.jpg)
References
RayScan ConceptsRecursion
I Turning point a is visiblefrom s
I Turning point b is blockedfrom s
I The ray shot to b directs thesearch to find successorsthat may lead to it
I Recurse the scan CCW/CWfrom obstruction intersection
I Successors c and d is found
a
b
d
c
s
t
9 / 21
![Page 32: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/32.jpg)
References
RayScan ConceptsAngled Sectors
I Scan is restricted to a regioncalled the angled sector
I Once the scan leaves theangled sector, it ends
I When recursing a scanCW/CCW, angled sector isalso split
I After finding c , the angledsector gets splits
I The CCW scan uses thegreen split
a
b
d
c
s
t
10 / 21
![Page 33: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/33.jpg)
References
RayScan ConceptsAngled Sectors
I Scan is restricted to a regioncalled the angled sector
I Once the scan leaves theangled sector, it ends
I When recursing a scanCW/CCW, angled sector isalso split
I After finding c , the angledsector gets splits
I The CCW scan uses thegreen split
a
b
d
c
s
t
10 / 21
![Page 34: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/34.jpg)
References
RayScan ConceptsAngled Sectors
I Scan is restricted to a regioncalled the angled sector
I Once the scan leaves theangled sector, it ends
I When recursing a scanCW/CCW, angled sector isalso split
I After finding c , the angledsector gets splits
I The CCW scan uses thegreen split
a
b
d
c
s
t
10 / 21
![Page 35: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/35.jpg)
References
RayScan ConceptsAngled Sectors
I Scan is restricted to a regioncalled the angled sector
I Once the scan leaves theangled sector, it ends
I When recursing a scanCW/CCW, angled sector isalso split
I After finding c , the angledsector gets splits
I The CCW scan uses thegreen split
a
b
d
c
s
t
10 / 21
![Page 36: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/36.jpg)
References
RayScan ConceptsAngled Sectors
I Scan is restricted to a regioncalled the angled sector
I Once the scan leaves theangled sector, it ends
I When recursing a scanCW/CCW, angled sector isalso split
I After finding c , the angledsector gets splits
I The CCW scan uses thegreen split
a
b
d
c
s
t
10 / 21
![Page 37: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/37.jpg)
References
RayScan ConceptsNext Expansion
I A* search expands thesmallest f -value a
I Each expanding node has aspecial angled sector knownas the projection field
I All successor must fallwithin this field to ensuretaut (bends around corner)
a
s
t
11 / 21
![Page 38: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/38.jpg)
References
RayScan ConceptsNext Expansion
I A* search expands thesmallest f -value a
I Each expanding node has aspecial angled sector knownas the projection field
I All successor must fallwithin this field to ensuretaut (bends around corner)
a
s
t
11 / 21
![Page 39: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/39.jpg)
References
RayScan ConceptsNext Expansion
I A* search expands thesmallest f -value a
I Each expanding node has aspecial angled sector knownas the projection field
I All successor must fallwithin this field to ensuretaut (bends around corner)
a
s
t
11 / 21
![Page 40: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/40.jpg)
References
RayScan ConceptsEnd Search
I Expanding a, target t iswithin the projection field
I Shoot ray to t
I Target is visible, successor isadded
I Expansion of node endssince target is found
I If using a Euclidean heuristicvalue, search ends here
a
s
t
12 / 21
![Page 41: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/41.jpg)
References
RayScan ConceptsEnd Search
I Expanding a, target t iswithin the projection field
I Shoot ray to t
I Target is visible, successor isadded
I Expansion of node endssince target is found
I If using a Euclidean heuristicvalue, search ends here
a
s
t
12 / 21
![Page 42: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/42.jpg)
References
RayScan ConceptsEnd Search
I Expanding a, target t iswithin the projection field
I Shoot ray to t
I Target is visible, successor isadded
I Expansion of node endssince target is found
I If using a Euclidean heuristicvalue, search ends here
a
s
t
12 / 21
![Page 43: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/43.jpg)
References
RayScan ConceptsEnd Search
I Expanding a, target t iswithin the projection field
I Shoot ray to t
I Target is visible, successor isadded
I Expansion of node endssince target is found
I If using a Euclidean heuristicvalue, search ends here
a
s
t
12 / 21
![Page 44: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/44.jpg)
References
RayScan ConceptsEnd Search
I Expanding a, target t iswithin the projection field
I Shoot ray to t
I Target is visible, successor isadded
I Expansion of node endssince target is found
I If using a Euclidean heuristicvalue, search ends here s
t
12 / 21
![Page 45: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/45.jpg)
References
RayScan ConceptsSkipped Successors
I Multiple squares are notconsidered
I Moving target t behind asquare makes it relevant
I Since rays direct the search,this reduces the successorsand number of rays shot
s
t
13 / 21
![Page 46: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/46.jpg)
References
RayScan ConceptsSkipped Successors
I Multiple squares are notconsidered
I Moving target t behind asquare makes it relevant
I Since rays direct the search,this reduces the successorsand number of rays shot
s
t
13 / 21
![Page 47: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/47.jpg)
References
RayScan ConceptsSkipped Successors
I Multiple squares are notconsidered
I Moving target t behind asquare makes it relevant
I Since rays direct the search,this reduces the successorsand number of rays shot
s
t
13 / 21
![Page 48: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/48.jpg)
References
Comparisions to Visibility GraphsRayScan
I Applying RayScan to alarger scenario
I Diagram shows RayScansearch successors
I Red line is the shortest path
I Blue lines are othersuccessors found during thesearch
s
t
14 / 21
![Page 49: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/49.jpg)
References
Comparisions to Visibility GraphsRayScan
I Applying RayScan to alarger scenario
I Diagram shows RayScansearch successors
I Red line is the shortest path
I Blue lines are othersuccessors found during thesearch
s
t
14 / 21
![Page 50: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/50.jpg)
References
Comparisions to Visibility GraphsRayScan
I Applying RayScan to alarger scenario
I Diagram shows RayScansearch successors
I Red line is the shortest path
I Blue lines are othersuccessors found during thesearch
s
t
14 / 21
![Page 51: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/51.jpg)
References
Comparisions to Visibility GraphsRayScan
I Applying RayScan to alarger scenario
I Diagram shows RayScansearch successors
I Red line is the shortest path
I Blue lines are othersuccessors found during thesearch s
t
14 / 21
![Page 52: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/52.jpg)
References
Comparisions to Visibility GraphsSparse Visibility Graph
I Blue lines show the edges ofthe sparse visibility graph
I Red lines show the edgesexpanded during an A*search
I RayScan generates edgesfound on the sparse visibilitygraphs on-the-fly
s
t
15 / 21
![Page 53: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/53.jpg)
References
Comparisions to Visibility GraphsSparse Visibility Graph
I Blue lines show the edges ofthe sparse visibility graph
I Red lines show the edgesexpanded during an A*search
I RayScan generates edgesfound on the sparse visibilitygraphs on-the-fly
s
t
15 / 21
![Page 54: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/54.jpg)
References
Comparisions to Visibility GraphsSparse Visibility Graph
I Blue lines show the edges ofthe sparse visibility graph
I Red lines show the edgesexpanded during an A*search
I RayScan generates edgesfound on the sparse visibilitygraphs on-the-fly s
t
15 / 21
![Page 55: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/55.jpg)
References
Comparisions to Visibility GraphsSparse Visibility Graph Compare
s
t
s
t
16 / 21
![Page 56: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/56.jpg)
References
Comparisions to Visibility GraphsVisibility Graph with Projection Field
I The projection field conceptcan be applied to visibilitygraph on A*
I Add only the successors ofA* within the projectionfield
I The search proceedssimilarly to RayScan withthis change
I This is referred as taut A*by Oh et al. (2017)
s
t
17 / 21
![Page 57: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/57.jpg)
References
Comparisions to Visibility GraphsVisibility Graph with Projection Field
I The projection field conceptcan be applied to visibilitygraph on A*
I Add only the successors ofA* within the projectionfield
I The search proceedssimilarly to RayScan withthis change
I This is referred as taut A*by Oh et al. (2017)
s
t
17 / 21
![Page 58: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/58.jpg)
References
Comparisions to Visibility GraphsVisibility Graph with Projection Field
I The projection field conceptcan be applied to visibilitygraph on A*
I Add only the successors ofA* within the projectionfield
I The search proceedssimilarly to RayScan withthis change
I This is referred as taut A*by Oh et al. (2017)
s
t
17 / 21
![Page 59: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/59.jpg)
References
Comparisions to Visibility GraphsVisibility Graph with Projection Field
I The projection field conceptcan be applied to visibilitygraph on A*
I Add only the successors ofA* within the projectionfield
I The search proceedssimilarly to RayScan withthis change
I This is referred as taut A*by Oh et al. (2017)
s
t
17 / 21
![Page 60: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/60.jpg)
References
Comparisions to Visibility GraphsVisibility Graph with Projection Field Compare
s
t
s
t
18 / 21
![Page 61: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/61.jpg)
References
Comparisions to Visibility GraphsVisibility Graph with Projection Field Compare
s
t
s
t
18 / 21
![Page 62: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/62.jpg)
References
Results Presented in Paper
I Testing against Moving AILab pathfinding benchmarks(Sturtevant 2012)
I Comparing RayScan againstPolyanya
I Bresenham is RayScan usinga Bresenham line for the rayshooting (Bresenham 1965)
I Oracle uses a free rayshooter
Starcraft Aurora Map
0 1 2 30
2
4
6
8
Polyanya (ms)
RA
YS
CA
N(m
s)
BresenhamOracley = x
19 / 21
![Page 63: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/63.jpg)
References
Results Presented in Paper
I Testing against Moving AILab pathfinding benchmarks(Sturtevant 2012)
I Comparing RayScan againstPolyanya
I Bresenham is RayScan usinga Bresenham line for the rayshooting (Bresenham 1965)
I Oracle uses a free rayshooter
Starcraft Aurora Map
0 1 2 30
2
4
6
8
Polyanya (ms)
RA
YS
CA
N(m
s)
BresenhamOracley = x
19 / 21
![Page 64: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/64.jpg)
References
Results Presented in Paper
I Testing against Moving AILab pathfinding benchmarks(Sturtevant 2012)
I Comparing RayScan againstPolyanya
I Bresenham is RayScan usinga Bresenham line for the rayshooting (Bresenham 1965)
I Oracle uses a free rayshooter
Starcraft Aurora Map
0 1 2 30
2
4
6
8
Polyanya (ms)
RA
YS
CA
N(m
s)
BresenhamOracley = x
19 / 21
![Page 65: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/65.jpg)
References
Results Presented in Paper
I Testing against Moving AILab pathfinding benchmarks(Sturtevant 2012)
I Comparing RayScan againstPolyanya
I Bresenham is RayScan usinga Bresenham line for the rayshooting (Bresenham 1965)
I Oracle uses a free rayshooter
Starcraft Aurora Map
0 1 2 30
2
4
6
8
Polyanya (ms)
RA
YS
CA
N(m
s)
BresenhamOracley = x
19 / 21
![Page 66: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/66.jpg)
References
Recap
I RayScan works directly on the environment
I Well suited to single instance or dynamically changing maps
I Performance dependent on ray shooter (i.e. more than halfruntime is shooting rays)
20 / 21
![Page 67: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/67.jpg)
References
Recap
I RayScan works directly on the environment
I Well suited to single instance or dynamically changing maps
I Performance dependent on ray shooter (i.e. more than halfruntime is shooting rays)
20 / 21
![Page 68: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/68.jpg)
References
Recap
I RayScan works directly on the environment
I Well suited to single instance or dynamically changing maps
I Performance dependent on ray shooter (i.e. more than halfruntime is shooting rays)
20 / 21
![Page 69: Online Computation of Euclidean Shortest Paths in Two ...](https://reader030.fdocuments.us/reader030/viewer/2022012021/61689880d394e9041f70f592/html5/thumbnails/69.jpg)
References
References
Lozano-Perez, T., & Wesley, M. A. (1979). An algorithm for planning collision-freepaths among polyhedral obstacles. Communications of the ACM, 22(10),560–570.
Oh, S., & Leong, H. W. (2017). Edge n-level sparse visibility graphs: Fast optimalany-angle pathfinding using hierarchical taut paths. Proceedings of theTenth International Symposium on Combinatorial Search (SoCS 2017).
Cui, M. L., Harabor, D., & Grastien, A. (2017). Compromise-free pathfinding on anavigation mesh. Proceedings of the 26th International Joint Conference onArtificial Intelligence, 496–502.
Sturtevant, N. (2012). Benchmarks for grid-based pathfinding. Transactions onComputational Intelligence and AI in Games, 4(2), 144–148.http://web.cs.du.edu/∼sturtevant/papers/benchmarks.pdf
Bresenham, J. E. (1965). Algorithm for computer control of a digital plotter. IBMSystems journal, 4(1), 25–30.
21 / 21