1 / 21

Datenstrukturen und Algorithmen in Open Street Map

Datenstrukturen und Algorithmen in Open Street Map. Modul: Algorithmische Geometire Von: Elisabeth Lehmann 12INB-P. Inhalte. Was ist OpenStreetMap ? Das Konzept Datenstrukturen in OSM Node Way Relation Tags OSM-Format. 4 ) Algorithmen Allgemeine Vorgehensweise

marina
Download Presentation

Datenstrukturen und Algorithmen in Open Street Map

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Datenstrukturen und Algorithmen in Open Street Map Modul: Algorithmische Geometire Von: Elisabeth Lehmann 12INB-P

  2. Inhalte • Was ist OpenStreetMap? • Das Konzept • Datenstrukturen in OSM • Node • Way • Relation • Tags • OSM-Format 4)Algorithmen • Allgemeine Vorgehensweise • Abstraktionsverfahren • Dijkstra-Algorithmus/beidseitiger Dijkstra • HISPA-Algorithmus • A*-Algorithmus • ContractionHierarchies 5) Quellen

  3. 1) Was ist OpenStreetMap? • ein 2004 gegründetes Projekt einer freien Weltkarte • Sammlung von verschiedenen Daten, welche selbst erhoben werden -> darf lizenzkostenfrei eigesetzt und beliebig weiterverarbeitet werden

  4. 2) Das Konzept • das Routing (Wegwahlfunktion) steht im Vordergrund • optisches darstellen von Straßenattributen • Aufgabengebiete für die Funktionalität • geografische Rohdaten • Anwendungsprogrammierung • Rendering • Beispiel: OSMarelmon

  5. 3) Datenstrukturen in OSM a) Node • kleinstes OSM-Objekt • bilden Gerüst der OSM-Karte • Bestimmen zum Beispiel Verläufe von Straßen, Umrisse von Grundstücken, Ecken von Häusern • repräsentieren GPS-Punkte • besitzen ID, Breitengrad und Längengrad, Versionsnummer, Zeitstempel • Changeset-ID enthält letztes Bearbeitungsdatum des Knoten (mit dazugehöriger User-ID)

  6. b) Way • ein Way besteht aus mindestens zwei Knoten • verknüpft diese miteinander • stellen jegliche Arten von Verbindungen zwischen Punkten her (in Array gespeichert) • zum Beispiel Uferverläufe oder Straßen • mit gleichem Knoten als Start-und Endpunkt entstehen Flächen • gleiche Metatags wie Nodes (ohne Breiten-und Längengrad) • einzelnen Knoten als Referenztags eingebunden

  7. <wayid="9714974" version="16" timestamp="2012-06-28T23:41:09Z" changeset ="122312034" uid="1999074" user="perihel"> <ndref="304335953"/> <ndref="1563547869"/ > <ndref="1396523373"/ > <ndref="13878099"/> </way>

  8. c) Relation • größter und umfassendster Datentyp in OSM • erfassen komplexer und abstrakter Formen • Zum Beispiel Abbiegevorschriften Buslinien • besitzt Referenzen (Member genannt)auf Konten, Wege und andere Relationen

  9. <relationid="1239081" version="2" timestamp="2012-06-28T20:41:04Z" changeset ="122312034" uid="1999074" user="perihel"> <member type="node" ref="867397262„ role="stop"/> <member type="node" ref="213127" role="platform"/> <member type="way" ref="19012912" role=""/> <member type="relation" ref="09278124" role=""/> </relation>

  10. d) Tags • Datenstrukturen bieten Metatags und vom Benutzer frei handhabbare Tags • vor dem Endtag wird Benutzer die Möglichkeit geboten, selbst definierte Tags einzufügen • bestehen aus key-value-Paaren • (wobei key angibt, was Relation beschreibt) <tag k="maxspeed:winter" v="60">

  11. e) OSM-Format • Speicherung sämtlicher Daten in OSM XML • Minimal-und Maximalfunktionen können verwendet werden • Reihenfolge der Objekte: • Knoten • Wege • Relationen, deren Referenzen und Tags • einfach lesbar, systemunabhängig, nur Parser muss vorhanden sein • durch Größe der Dateien Kompression nötig • zum Beispiel planet.osmmit 400GB komprimiert, komprimeirt nur 29GB

  12. 4) Algorithmen • viele verschiedene Algorithmen, da unterschiedliche Funktionen angefragt werden • Hauptteil bildet die Routen-Planung • jedoch auch im Bereich der Geschwindigkeitsmessung oder von Höhenunterschieden

  13. a) allgemeines Vorgehen • sammeln der Attribute zu jedem OSM-Objekt • Speichern der Koordinaten des Knoten • Knoten beim Einlesen des Weges gespeichert • Bestimmen des geeignet Weges • ungeeignete Wege verwerfen • zulässige Richtung und Geschwindigkeit bestimmen • Weg bestimmen

  14. b) Abstraktionsverfahren • graphen-ähnliche Darstellung bestehend aus Segment-Node(analog Knoten), Segment (gerichtete Verbindungen), Restriction(nicht nutzbare Verbindungen) • Segment-Nodes und Segments können jedoch nicht einfach als Knoten bzw. Kanten des Graphen verwendet werden -> Restrictions müssen berücksichtigt werden

  15. c) Dijkstra-Algorithmus (1959) • Bestimmung des kürzesten Weges unter Berücksichtigung des Kantengewichts (zum Beispiel der benötigten Zeit) • Problem bei der Routenplanung: die kürzeste Strecke ist nicht unbedingt die schnellste ->mehrere Attribute pro Kante eingefügt (Entfernung [km], sondern auch Zeit [min]) • О(E + V *log(V)) • V=Knotenmenge, E=Kantenmenge

  16. d) HISPA-Heuristik • Hierarchicalshortestpath • sucht kürzesten Weg von zwei Endknoten zu Knoten der obersten Hierarchieebene im Umkreis mit gegebenen Radius • Zum Beispiel von Stadt zu Autobahnkreuz

  17. e) A*-Algorithmus Finde den kürzesten von Arad nach Buadpest

  18. f) ContractionHierarchies • Routing-Algorithmus derzeitige Grundlage für mobile Navigation • bei westeuropäischen Straßennetz etwa 20.000mal schneller als Dijkstra • Suchanfragen in unter 1ms beantwortet • wenn nur Distanz und nicht Route abgefragt wird, verbraucht sogar Datenstruktur weniger Speicherplatz

  19. Quellen • http://www.fim.uni-passau.de/fileadmin/files/lehrstuhl/sauer/geyer/BA_SebastianBrunner_-201308.pdf • ftp://ftp.informatik.uni-stuttgart.de/pub/library/medoc.ustuttgart_fi/DIP-3232/DIP-3232.pdf • http://tobias-knerr.de/bachelorarbeit/Bachelorarbeit.pdf • http://cvpr.uni-muenster.de/teaching/ws05/kiWS05/script/KI-Kap04-2.pdf • http://www.openstreetmap.de/faq.html#was_ist_osm

More Related