580 likes | 731 Views
Representations for Path Finding in Planar Environments. Problemstilling. Hvordan kan et område med forhindringer repræsenteres bedst, med henblik på at finde korteste veje i området?. Repræsentationer. Grid. Visibility Graph. Navigation Mesh. Konstruktion. Grid:. Konstruktion.
E N D
Problemstilling • Hvordan kan et område med forhindringer repræsenteres bedst, med henblik på at finde korteste veje i området?
Repræsentationer Grid Visibility Graph Navigation Mesh
Konstruktion • Grid:
Konstruktion • Visibilitygraph:
Konstruktion • Navigation mesh: Graf Delaunay Triangulation ConstrainedDelaunay Triangulation
Eksperimenter • Labyrinter: Grid Visibility Graph Navigation Mesh
Resultater • Konstruktion af repræsentationer:
Algoritmer til at finde korteste veje i planare omgivelser med forhindringer • Algoritmer til søgning i grafer • Dijkstra’s algoritme • A* • Søgning i repræsentationerne • Grid • Visibilitygraph • Navigation mesh • Channels • Funnel algoritme
Algoritmer til søgning i grafer • To typer af algoritmer: • Single-sourceshortest-paths • Single-pairsshortest-paths • Udførselstid: O(m + n log n) • Bruger en minimums prioritetskø med: • insert O(log n) tid • extract min O(log n) tid • decreasekeyO(1) tid
Algoritmer til søgning i grafer • Dijkstra’s algoritme • Single-sourceshortest-paths algoritme • Bruger funktionen f(v)=g(v) til at estimere prioriteten vefor en knude v. • g(v) = ue + w(u, v)
Algoritmer til søgning i grafer • A* • Single-pairsshortest-paths algoritme • Bruger funktionen f(v)=g(v) +h(v) til at estimere prioriteten for en knude v. • h(v) = euclidianDist(v, goal)
Algoritmer til søgning i grafer • A* heuristik egenskaber • Admissible – h(v) overestimerer aldrig omkostningen for at komme fra v til målet. h(v) ≤ c(v, goal) • Consistent – Når vi går fra v til u ∈succ(v) kan vi ikke komme tættere på målet end afstanden imellem u og v.h(v) ≤ c(v, u) + h(u)
Søgning i repræsentationerne • Byg en connectivity graph: • Knuder: tilstande i repræsentationen • Kanter: transitioner imellem tilstande Grid Visibility Graph Navigation Mesh
Søgning i repræsentationerne • Grids og Visibilitygraphs • Bruger i g(v)den akkumulerede afstand fra startpunktet til v. • I h(v) bruges den Euklidiske afstand til målpunktet • I grid repræsentationen benyttes midtpunktet af cellen når afstande beregnes. • Knuderne i en Visibilitygraph er kan bruges direkte til estimering af afstandene.
Søgning i repræsentationerne Søgning i repræsentationerne • Navigation Mesh • Heuristikker: • Afstand fra midtpunkter på kanterne til målet. • Korteste afstand fra kanten til målet.“The heuristic is calculated as the Euclidean distance between the goal and the closest point to it on this edge. We know this heuristic to be both admissible and consistent [...].” - Demyen & Buro
Navigation Mesh Demyen & Buro Admissible • Heuristikker : Længde: 1.6503 Længde: 1.64836
Navigation Mesh • Channels • Graf søge algoritmen returner ikke den direkte sti, men de trekanter som den går igennem, kaldet en channel.
Navigation Mesh • Funnel algoritme • Finder kortesteveje i simple polygoner. • Udførselstid: O(n), n = antal interne kanter