DE102013008936B4 - Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz - Google Patents

Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz Download PDF

Info

Publication number
DE102013008936B4
DE102013008936B4 DE102013008936.0A DE102013008936A DE102013008936B4 DE 102013008936 B4 DE102013008936 B4 DE 102013008936B4 DE 102013008936 A DE102013008936 A DE 102013008936A DE 102013008936 B4 DE102013008936 B4 DE 102013008936B4
Authority
DE
Germany
Prior art keywords
substructure
traffic route
geometric
boundary
adjacent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102013008936.0A
Other languages
English (en)
Other versions
DE102013008936A1 (de
Inventor
Cüneyt Kaya
Rainer Lange
Matthias Harries
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Esolutions De GmbH
Original Assignee
eSolutions GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by eSolutions GmbH filed Critical eSolutions GmbH
Priority to DE102013008936.0A priority Critical patent/DE102013008936B4/de
Priority to DE202013012762.7U priority patent/DE202013012762U1/de
Publication of DE102013008936A1 publication Critical patent/DE102013008936A1/de
Application granted granted Critical
Publication of DE102013008936B4 publication Critical patent/DE102013008936B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/3867Geometry of map features, e.g. shape points, polygons or for simplified maps
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09FDISPLAYING; ADVERTISING; SIGNS; LABELS OR NAME-PLATES; SEALS
    • G09F15/00Boards, hoardings, pillars, or like structures for notices, placards, posters, or the like
    • G09F15/0006Boards, hoardings, pillars, or like structures for notices, placards, posters, or the like planar structures comprising one or more panels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09FDISPLAYING; ADVERTISING; SIGNS; LABELS OR NAME-PLATES; SEALS
    • G09F15/00Boards, hoardings, pillars, or like structures for notices, placards, posters, or the like
    • G09F15/0068Modular articulated structures, e.g. stands, and articulation means therefor
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09FDISPLAYING; ADVERTISING; SIGNS; LABELS OR NAME-PLATES; SEALS
    • G09F15/00Boards, hoardings, pillars, or like structures for notices, placards, posters, or the like
    • G09F15/02Bills, posters, or the like therefor
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09FDISPLAYING; ADVERTISING; SIGNS; LABELS OR NAME-PLATES; SEALS
    • G09F21/00Mobile visual advertising
    • G09F21/04Mobile visual advertising by land vehicles
    • G09F21/048Advertisement panels on sides, front or back of vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Geometry (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

Verfahren zum Erstellen einer Datenstruktur zur Verwendung durch einen Algorithmus, der Pfade in einem Verkehrswegenetz ermittelt, wobei aneinandergrenzende geometrische Strukturen, die jeweils durch mindestens drei Strukturgrenzen definiert sind, auf das Verkehrswegenetz gelegt sind, wobei das Verfahren umfasst:Ermitteln (305) mindestens einer geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten, wobei ein Verkehrswegschnittpunkt ein Schnittpunkt zwischen einer Strukturgrenze und einem Verkehrsweg ist;Ermitteln (310), ob bei der mindestens einen geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten mindestens ein Verkehrswegschnittpunktpaar nicht durch einen Verkehrsweg verbunden ist;Unterteilen (315) der mindestens einen geometrischen Struktur in Unterstrukturen, wobei jede Unterstruktur mindesten drei Unterstrukturgrenzen aufweist, wobei das Unterteilen der mindestens einen geometrischen Struktur in Unterstrukturen auf geometrische Strukturen mit mindestens einem Verkehrswegschnittpunktpaar, das nicht durch einen Verkehrsweg verbunden ist, beschränkt ist;Ermitteln (320) von ersten Unterstrukturinformationen (425) für die mindestens eine unterteilte geometrische Struktur, wobei die ersten Unterstrukturinformationen anzeigen, über welche der Unterstrukturgrenzen einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt; undSpeichern der ersten Unterstrukturinformationen (425) in einer Datenstruktur.

Description

  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft ein Verfahren zum Erstellen einer Datenstruktur zur Verwendung durch einen in einem Verkehrswegenetz Pfade ermittelnden Algorithmus, die Datenstruktur als solches, ein Verfahren zum Ermitteln von Pfaden in dem Verkehrswegenetz mit Hilfe dieser Datenstruktur sowie eine Vorrichtung zur Ausführung eines der Verfahren. Insbesondere betrifft die vorliegende Offenbarung eine Datenstruktur für ein Verkehrswegenetz, über das aneinander grenzende geometrische Strukturen gelegt sind.
  • Hintergrund
  • Bestimmte Algorithmen, wie sie in Navigationsgeräten eingesetzt werden, bieten die Möglichkeit, bestimmte Pfade in einem Verkehrswegenetz zu ermitteln. Beispielsweise kann von einer Startposition zu einer Zielposition ein Pfad durch das Verkehrswegenetz ermittelt werden. Eine andere Anwendung solcher Algorithmen bietet die Möglichkeit, eine Restreichweite eines Fahrzeugs in einer Kartenansicht darzustellen. In beiden Fällen ermitteln die Algorithmen von der Startposition aus Pfade durch das Verkehrswegenetz unter Berücksichtigung einer bestimmten Kostenfunktion. Im ersten Fall wird mindestens ein Pfad zur Zielposition gesucht, während im zweiten Fall alle Pfade um die Startposition herum ermittelt werden, die mit einer Restenergie des Fahrzeugs erreicht werden können.
  • Häufig wird bei der Pfadermittlung ein Routengraph eingesetzt, dessen Knotenpunkte mit den Knoten im Verkehrswegenetz übereinstimmen und dessen Kanten (bzw. Kantengewichte) die Kosten einer Durchfahrung des Verkehrswegs von einem Verkehrswegenetzknoten zum nächsten widerspiegeln. Ein Algorithmus, der mit solch einem Routengraph arbeitet, ist zum Beispiel der Dijkstra-Algorithmus. In die Kostenfunktion fließen systemseitig festgelegte. oder benutzerdefinierte Vorgaben ein, wie zum Beispiel die kürzeste Strecke, schnellste Strecke, energieeffizienteste Strecke, bevorzugte Straßenklassen etc., um den entsprechenden Pfad durch das Verkehrswegenetz zu ermitteln.
  • Die DE 10 2011 104 258 A1 geht darauf ein, dass insbesondere für die Restreichweitenberechnung dieser Ansatz verhältnismäßig aufwendig ist. Bei einer hohen Restenergie müssen nämlich sehr viele Verkehrswege für die Pfadermittlung durch den Algorithmus berücksichtigt werden. Ein Ansatz zur Vereinfachung dieser Berechnung ist ein Unterteilen des Verkehrswegenetzes in bestimmte Flächensegmente.
  • Bei der Verwendung solcher Flächensegmente definiert jede Seite bzw. Kante dieser Flächensegmente einen Knoten in einem Routengraph. Als Kantengewichte werden Durchfahrungsinformationen oder Energiekosten zwischen den Seiten eines Flächensegments angegeben, die in die Kostenfunktion des Algorithmus (zum Beispiel wieder der Dijkstra-Algorithmus) einfließen können. Wenn mehrere Verkehrswege von einer Seite zu einer anderen Seite eines Flächensegments führen, kann ein Durchschnittswert der Kosten dieser Verkehrswege als Kantengewicht zur Durchfahrung des Flächensegments herangezogen werden.
  • WO 2012/065726 A1 betrifft eine Reichweiten-und/oder Verbrauchsberechnung für ein Fahrzeug. Dabei werden digitale Karten in Flächensegmente in Form von rechteckigen Kacheln zerlegt. Die Energiekosten pro Flächensegment werden vorberechnet und dem jeweiligen Flächensegment zugeordnet. Dazu werden alle Schnittpunkte von Straßen mit Grenzen eines Flächensegments berechnet und die Kosten berechnet, um von einem Schnittpunkt zu allen anderen zu gelangen. Zudem werden Kosten pro Durchfahrtrichtung ermittelt.
  • EP 1 548 686 B1 betrifft ein Kartendatenprodukt, wobei Kartendaten aus Kartenanzeigedaten und Routenberechnungsdaten bestehen. Die Kartendaten werden in verschiedenen Ebenen in Blöcke und Netze aufgeteilt, wobei jede Ebene einem bestimmten Skalierungsfaktor entspricht. Die Routenberechnungsdaten werden in Bezug auf die einzelnen Netze verwaltet. Dabei werden die Routenberechnungsdaten für Netzsätze bestehend aus mehreren Kernnetzen. sowie darum angeordneten Referenznetzen verwaltet. Eine Abspeicherung dieser Netzsätze in nacheinander folgender Reihenfolge erlaubt ein schnelleres Auslesen durch, zum Beispiel, ein DVD-Laufwerk.
  • DE 10 2005 029 334 A1 betrifft ein Verfahren zum Ermitteln einer von einem Fahrzeug zu befahrenden Wegstrecke. Dabei werden um eine Startposition und um eine Zielposition je ein Gitter gelegt und zwischen diesen Gittern eine Vorzugstrajektorie. Durch die Definition von Vorzugstrajektorien werden die Gesamtdatenmenge sowie der daraus resultierende Rechenaufwand reduziert.
  • US 6 167 332 A betrifft ein Verfahren und eine Vorrichtung zur Optimierung eines Betriebs eines selbst-gesteuerten Fahrzeugs. Das Fahrzeug erkennt die Charakteristik des ihn umgebenden Terrains mittels Sensoren. Mit diesen Sensoren wird eine Karte der Umgebung erzeugt. Darüber wird ein Gitter gelegt, welches einen Bereich von Zellen über der Terrain-Karte erstellt. Dabei wird die Zellgröße des Gitternetzes so ausgewählt, dass sie ausreichend klein ist, um eine ausreichende Unterscheidung der lokalen Bedingungen und Merkmale des Terrains zu bieten. Aus dem Zellbereich wird ein Graph mit gewichteten Kanten erzeugt, wobei verbindende Kanten eine Verbindung zwischen benachbarten Zellen, die direkt erreicht werden können, repräsentieren.
  • US 2010/0292913 A1 betrifft ein Speichermedium, auf dem geographische Daten zusammen mit Karteneinheiten gespeichert sind. Eine Karteneinheit entspricht einem geographischen Gebiet, das durch Längen- und Breitengrade definiert ist. Karteneinheiten verschiedener Ordnung werden eingesetzt, um geographische Daten eines bestimmten Typs für jede Ordnung zu speichern. Beispielsweise können Straßentypen gemäß einer ersten und einer zweiten Ordnung abgespeichert werden, während U-Bahn-Haltestellen und Parkplätze in einer dritten und vierten hierarchischen Ordnung abgespeichert werden.
  • US 2010/0106403 A1 betrifft ein System, das navigationsbezogene Merkmale für Endbenutzer in einer geographischen Region bereitstellt. Dafür empfängt ein Benutzerendgerät geographische Daten von einem Navigationsservice-Server. Die heruntertadbaren geographischen Daten sind in Kartenkacheln gruppiert. Eine Datengruppierung zugehörig zu einer Kartenkachel enthält eine Vielzahl von individuellen Datensätzen, die die geographischen Merkmale innerhalb des Kartenkachelareals repräsentieren. Nach der Eingabe eines Ziels werden die Startposition und das Ziel an den Serviceprovider übermittelt, welcher daraufhin eine Route von der aktuellen Position zu dem Ziel berechnet. Der Serviceprovider übermittelt einen oder mehrere Kartenkachelausfahrpunkte entlang der Route, welche Punkte sind, die entlang der Route von der aktuellen Position des mobilen Endgeräts noch innerhalb einer entsprechenden Kärtenkachel am weitesten entfernt ist.
  • US 2011/0301837 A1 betrifft das Auffinden einer optimalen Route in einem Straßennetz auf Basis von vorverarbeiteten Straßensegmentdaten. Dafür wird für jedes Straßensegment ein Rang ermittelt und gespeichert, wobei ein Rang einer maximalen Anzahl von Kacheln entspricht, in denen ein optimaler Pfad durch das Straßennetz verläuft, und wobei das jeweilige Straßensegment Teil des optimalen Pfades ist. Hierfür werden Kacheln über das Straßennetz gelegt und ausgehend von einer Kachel, die das Straßensegment, dessen Rang ermittelt werden soll, enthält, eine Kacheldistanz des optimalen Pfades ermittelt. Die Kacheldistanz entspricht der Anzahl Iterationen, wie viele „Ringe“ von die Ausgangskachel umgebenden Kacheln ermittelt werden können, sodass die optimale Route noch in einer durch Zusammenfassung aller Kachelringe vergrößerten Kachel liegt. Zum späteren Auffinden einer Route in dem Straßennetz zwischen einem Startpunkt und einem Endpunkt können anschließend nur Straßensegmente betrachtet werden (herausgefiltert werden), die einen bestimmten (Mindest-) Rang aufweisen.
  • Kurzer Abriss
  • Der vorliegenden Offenbarung liegt die Aufgabe zugrunde, eine Datenstruktur für einen Routengraph bereitzustellen, auf deren Grundlage eine präzisere Ermittlung von Pfaden durch das Verkehrswegenetz ohne große Einbußen bei der Geschwindigkeit der Pfadberechnung möglich ist.
  • Diese Aufgabe wird durch die Erfindung gemäß der unabhängigen Ansprüche gelöst. Die abhängigen Ansprüche definieren bevorzugte Ausführungsformen der Erfindung.
  • Gemäß einem Aspekt zum besseren Verständnis der vorliegenden Offenbarung wird ein Verfahren zum Erstellen einer Datenstruktur beschrieben. Das Verfahren dient der Verwendung durch einen Algorithmus, der Pfade in einem Verkehrswegenetz ermittelt, wobei aneinandergrenzende geometrische Strukturen, die jeweils durch mindestens drei Strukturgrenzendefiniert sind, auf das Verkehrswegenetz gelegt sind. Das Verfahren umfasst ein Unterteilen der mindestens einen geometrischen Struktur in Unterstrukturen, wobei jede Unterstruktur mindestens drei Unterstrukturgrenzen aufweist, ein Ermitteln von ersten Unterstrukturinformationen für die mindestens eine unterteilte geometrische Struktur, wobei die ersten Unterstrukturinformationen anzeigen, über welche der Unterstrukturgrenzen einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt, und ein Speichern der ersten Unterstrukturinformationen in einer Datenstruktur.
  • In einer Implementierung umfasst das Verfahren auch ein Ermitteln von zweiten Unterstrukturinformationen für die mindestens eine unterteilte geometrische Struktur, wobei die zweiten Unterstrukturinformationen anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt, und ein Speichern der ermittelten zweiten Unterstrukturinformationen in der Datenstruktur.
  • Zusätzlich können die zweiten Unterstrukturinformationen ausgehend von einer bestimmten Unterstruktur ermittelt werden. Dabei werden eine oder mehrere Unterstrukturgrenzen, über welche ein Verkehrsweg ausgehend von der bestimmten Unterstruktur aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt, ermittelt.
  • Dabei kann das Speichern der ersten und/oder zweiten Unterstrukturinformationen in Abhängigkeit der zugehörigen geometrischen Struktur erfolgen. Alternativ oder zusätzlich hierzu können die ersten und/oder zweiten Unterstrukturinformationen in Abhängigkeit der zugehörigen Unterstruktur gespeichert werden.
  • Das Verfahren umfasst des Weiteren ein Ermitteln mindestens einer geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten, wobei ein Verkehrswegschnittpunkt ein Schnittpunkt zwischen einer Strukturgrenze und einem Verkehrsweg ist, und ein Ermitteln, ob bei der mindestens einen geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten mindestens ein Verkehrswegschnittpunktpaar nicht durch einen Verkehrsweg verbunden ist.
  • Dabei ist das Unterteilen der mindestens einen geometrischen Struktur in Unterstrukturen auf geometrische Strukturen mit mindestens einem Verkehrswegschnittpunktpaar, das nicht durch einen Verkehrsweg verbunden ist, beschränkt. Die Überprüfung, ob Verkehrswegschnittpunktpaare durch einen Verkehrsweg verbunden sind, kann dabei auf Verkehrswege beschränkt sein, die durch die zugehörige geometrische Struktur verlaufen. Alternativ hierzu können aber auch Verkehrswege berücksichtigt werden, die zumindest teilweise nicht durch die zugehörige geometrische Struktur verlaufen.
  • In einer weiteren Implementierungsmöglichkeit erfolgt das Unterteilen derart, dass innerhalb keiner der resultierenden Unterstrukturen jegliche zwei Schnittpunkte zwischen einer Unterstrukturgrenze und einem Verkehrsweg nicht über mindestens einen Verkehrsweg miteinander verbunden sind.
  • Ferner kann das Unterteilen einer geometrischen Struktur in Unterstrukturen ein Unterteilen der geometrischen Struktur entlang von Längengraden und Breitengraden und/oder ein Unterteilen der geometrischen Struktur entlang von Symmetrieachsen und/oder ein Unterteilen der geometrischen Struktur in gleich große Unterstrukturen umfassen.
  • In einer Implementierung sind die geometrische Struktur und die Unterstrukturen jeweils als Polygon ausgebildet und die Strukturgrenze und die Unterstrukturgrenze jeweils als Polygonkante ausgebildet.
  • Zusätzlich kann das Unterteilen einer geometrischen Struktur in Unterstrukturen derart erfolgen, dass Verkehrswegschnittpunkte auf unterschiedlichen Polygonkanten einer Unterstruktur liegen.
  • Alternativ oder zusätzlich hierzu kann ein ganzzahliges Vielfaches einer Seitenlänge der Unterstruktur einer Seitenlänge der unterteilten geometrischen Struktur entsprechen.
  • Ebenfalls alternativ oder zusätzlich hierzu kann das Ermitteln von Unterstrukturinformationen ein Ermitteln, welche der Polygonkanten einer Unterstruktur einen Verkehrswegschnittpunkt aufweist, umfassen, wobei die ersten Unterstrukturinformationen kennzeichnen, dass über die ermittelten Polygonkanten ein Verkehrsweg verläuft.
  • Weiterhin alternativ oder zusätzlich hierzu kann das Speichern ein Speichern eines einzelnen Bit-Werts für eine Polygonkante umfassen, wobei der Bit-Wert angibt, dass über die zugehörige Polygonkante ein Verkehrsweg verläuft oder nicht.
  • In einer weiteren Implementierungsmöglichkeit umfasst das Verfahren ein Ermitteln eines oder mehrerer Pfade von einem Anfangsverkehrswegschnittpunkt zu einem Endverkehrswegschnittpunkt, wobei ein Anfangsverkehrswegschnittpunkt ein Schnittpunkt zwischen einer ersten Strukturgrenze und einem Verkehrsweg ist und ein Endverkehrswegschnittpunkt ein Schnittpunkt zwischen einer zweiten Strukturgrenze und einem Verkehrsweg ist, und wobei die erste und die zweite Strukturgrenze unterschiedliche Strukturgrenzen sind. Dabei umfasst das Verfahren ferner ein Gruppieren aller Pfade, deren Anfangsverkehrswegschnittpunkt und Endverkehrswegschnittpunkt jeweils auf derselben Strukturgrenze liegen, und ein Berechnen von Durchfahrungsinformationen für jede Gruppe von Pfaden einer geometrischen Struktur.
  • Dabei kann das Ermitteln einer oder mehrerer Pfade alle Kombinationen von Verkehrswegschnittpunktpaaren einer geometrischen Struktur berücksichtigen.
  • Alternativ oder zusätzlich hierzu kann das Berechnen von Durchfahrungsinformationen ein Berechnen, für jede Gruppe, einer durchschnittlichen Länge, eines durchschnittlichen Höhenunterschieds und/oder eines durchschnittlichen Energieverbrauchs umfassen.
  • Gemäß einem weiteren Aspekt zum besseren Verständnis der vorliegenden Offenbarung wird eine Datenstruktur zur Verwendung durch einen Algorithmus, der Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz ermittelt, beschrieben. Dabei ist mindestens eine geometrische Struktur in Unterstrukturen unterteilt. Die Datenstruktur umfasst mindestens einen Strukturdatensatz, der Strukturidentifizierungsdaten umfasst, welche eine geometrische Struktur identifizieren. Die Datenstruktur umfasst ferner mindestens einen Unterstrukturdatensatz; der Strukturidentifizierungsdaten umfasst, die eine geometrische Struktur identifizieren, die in Unterstrukturen unterteilt ist, und erste Unterstrukturinformationen für die unterteilte geometrische Struktur, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur hinausführt.
  • Der Unterstrukturdatensatz kann ferner zweite Unterstrukturinformationen für die unterteilte geometrischen Struktur, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt, umfassen.
  • Alternativ oder zusätzlich hierzu kann der Strukturdatensatz ferner Durchfahrungsdaten ausgehend von jeder Strukturgrenze, die von einem Verkehrsweg geschnitten wird, umfassen. Dabei enthalten die Durchfahrungsdaten Durchfahrungsinformationen zur Durchfahrung bis zu einer der anderen Strukturgrenzen.
  • Ebenfalls alternativ oder zusätzlich hierzu können die ersten und/oder zweiten Unterstrukturinformationen Unterstrukturdaten in einer vorgegebenen Anordnung enthalten, wobei durch die vorgegebene Anordnung die zugehörige Unterstruktur und Unterstrukturgrenze identifizierbar ist.
  • In einer Implementierung umfasst die Datenstruktur Grenzüberlappungsinformationen, die mindestens eine Unterstrukturgrenze, die auf einer Strukturgrenze liegt, und die zugehörige Strukturgrenze angeben.
  • Die Datenstruktur kann nach dem oben beschriebenen Verfahren ersteiit worden sein.
  • Gemäß einem weiteren Aspekt zum besseren Verständnis der vorliegenden Offenbarung wird ein Verfahren zum iterativen Ermitteln eines oder mehrerer Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz beschrieben. Dabei ist mindestens eine geometrische Struktur in Unterstrukturen unterteilt. Das Verfahren umfasst die folgenden Schritte:
    1. a) Ermitteln einer geometrischen Startstruktur, in der eine Startposition eines Pfads in dem Verkehrswegenetz liegt;
    2. b) Ermitteln mindestens einer angrenzenden geometrischen Struktur, in die ein Verkehrsweg aus der Startstruktur führt;
    3. c) Ermitteln, wenn zu einer angrenzenden geometrischen Struktur Unterstrukturen existieren, einer Unterstruktureingangsgrenze zugehörig zu der angrenzenden geometrischen Struktur, wobei der Verkehrsweg über die Unterstruktureingangsgrenze führt;
    4. d) Ermitteln mindestens einer Unterstrukturausgangsgrenze zugehörig zu der angrenzenden geometrischen Struktur, wobei über die Unterstrukturausgangsgrenze ein Verkehrsweg in eine weitere angrenzende geometrische Struktur führt;
    5. e) Ermitteln mindestens einer weiteren angrenzenden geometrischen Struktur, die an die mindestens eine ermittelte Unterstrukturausgangsgrenze angrenzt;
    6. f) Festlegen der mindestens einen weiteren angrenzenden geometrischen Struktur als jeweils neue Startstruktur; und
    7. g) Wiederholen der Schritte b) bis f) für die mindestens eine neue Startstruktur bis eine Iterationsgrenze erreicht ist.
  • In einer Implementierung umfasst das Verfahren nach dem Schritt b) ein Ermitteln, ob für mindestens eine angrenzende geometrische Struktur Unterstrukturen existieren. Dabei wird, wenn für eine angrenzende geometrische Struktur Unterstrukturen existieren, mit Schritt c) fortgefahren, und, wenn für eine angrenzende geometrische Struktur keine Unterstrukturen existieren, ein Ermitteln mindestens einer Strukturausgangsgrenze zugehörig zu der angrenzenden geometrischen Struktur durchgeführt wird. Dabei führt über die Strukturausgangsgrenze ein Verkehrsweg in eine weitere angrenzende geometrische Struktur. Anschließend springt das Verfahren zu Schritt f).
  • Alternativ oder zusätzlich hierzu umfasst der Schritt d) einen Schritt d1) eines Ermitteins mindestens einer Unterstrukturgrenze zugehörig zu der Unterstruktur, in die der Verkehrsweg führt, wobei über die mindestens eine Unterstrukturgrenze ein Verkehrsweg in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt, und ein Wiederholen des Schritts d1) für die angrenzende Unterstruktur bis mindestens eine Unterstrukturausgangsgrenze der angrenzenden geometrischen Struktur erreicht ist.
  • Ebenfalls alternativ oder zusätzlich hierzu umfasst das Verfahren nach dem Schritt a) folgende Schritte:
    • a1) Ermitteln einer Unterstruktur in der Startstruktur, wobei die Startposition in der Unterstruktur liegt;
    • a2) Ermitteln mindestens einer Unterstrukturgrenze der Unterstruktur, über die ein Verkehrsweg in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt; und
    • a3) Wiederholen des Schritts a2) für die angrenzende Unterstruktur bis mindestens eine Unterstrukturausgangsgrenze der Startstruktur erreicht ist.
  • Ferner kann das Verfahren ein Speichern aller erreichten geometrischen Strukturen umfassen.
  • In einer weiteren Implementierungsmöglichkeit umfasst der Schritt d1) und/oder der Schritt a2) ein Aufrufen einer Datenstruktur, die für die geometrische Struktur erste Unterstrukturinformationen enthält, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur hinausführt, und ein Ermitteln der mindestens einen Unterstrukturgrenze anhand der ersten Unterstrukturinformationen.
  • In einer Implementierungsmöglichkeit umfasst Schritt d) ein Aufrufen einer Datenstruktur, die für die geometrische Struktur zweite Unterstrukturinformationen enthält, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt, und ein Ermitteln der mindestens einen Unterstrukturausgangsgrenze anhand der zweiten Unterstrukturinformationen.
  • Alternativ oder zusätzlich hierzu umfasst das Aufrufen einer Datenstruktur ein Übermitteln von Strukturidentifizierungsdaten einer bestimmten geometrischen Struktur, und ein Abrufen eines Unterstrukturdatensatzes aus der Datenstruktur für die bestimmte- geometrische Struktur.
  • Ferner kann die Iterationsgrenze eine Reichweite eines Fahrzeugs oder eine geometrische Struktur mit einer Zielposition widerspiegeln.
  • Ein anderer Aspekt zum besseren Verständnis der vorliegenden Offenbarung betrifft eine Vorrichtung zum Erstellen einer Datenstruktur zur Verwendung durch einen Algorithmus, der Pfade in einem Verkehrswegenetz ermittelt, wobei aneinandergrenzende geometrische Strukturen, die jeweils durch mindestens eine Strukturgrenze definiert sind, auf das Verkehrswegenetz gelegt sind. Dazu umfasst die Vorrichtung ein Prozessorsystem, das eingerichtet ist, eines der oben beschriebenen Verfahren zum Erstellen einer Datenstruktur durchzuführen.
  • Dabei kann die Vorrichtung einen Speicher umfassen, der eingerichtet ist, eine oben beschriebene Datenstruktur zu speichern.
  • Ein weiterer Aspekt zum besseren Verständnis der vorliegenden Offenbarung betrifft eine Vorrichtung zum Ermitteln eines oder mehrerer Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz, wobei mindestens eine geometrische Struktur in Unterstrukturen unterteilt ist. Dazu umfasst die Vorrichtung ein Prozessorsystem, das eingerichtet ist, eines der oben beschriebenen Verfahren zum iterativen Ermitteln eines oder mehrerer Pfade durchzuführen.
  • Dabei kann die Vorrichtung auch einen Speicher umfassen, der eingerichtet ist, eine oben beschriebene Datenstruktur zu speichern.
  • Jede dieser Vorrichtungen kann ein PC, Server, Tablet-PC, Smartphone, Navigationsgerät oder ein Fahrzeug-Bordsystem sein.
  • Figurenliste
  • Weitergehende Aspekte, Vorteile und Einzelheiten der vorliegenden Offenbarung ergeben sich aus der nachfolgenden Beschreibung von Beispielen im Zusammenhang mit den Figuren, wobei:
    • 1 ein Blockdiagramm eines Beispiels einer Vorrichtung zum besseren Verständnis der vorliegenden Offenbarung zeigt;
    • 2a bis 2c schematische Darstellung von Verkehrswegenetzen darstellen, wobei aneinander grenzende geometrische Strukturen auf das Verkehrswegenetz gelegt sind;
    • 2d eine schematische Ansicht von zwei benachbarten geometrischen Strukturen, die in Unterstrukturen unterteilt sind, gemäß einem weiteren Beispiel zeigt;
    • 3 ein Ablaufdiagramm eines exemplarischen Verfahrens zum Erstellen einer Datenstruktur zum besseren Verständnis der vorliegenden Offenbarung zeigt;
    • 4a bis 4d schematische Darstellungen von Datenstrukturen zur Verwendung durch einen Pfadermittlungsalgorithmus gemäß weiterer Beispiele zeigen;
    • 5 ein Ablaufdiagramm eines Beispiels eines Verfahrens zum iterativen Ermitteln von Pfaden in einem in geometrische Strukturen unterteilten Verkehrswegenetz zum besseren Verständnis der vorliegenden Offenbarung darstellt; und
    • 6a und 6b jeweils zwei benachbarte geometrische Strukturen, die in Unterstrukturen unterteilt sind und über ein Verkehrswegenetz gelegt sind, gemäß weiterer Beispiele zeigen.
  • Detaillierte Beschreibung
  • Die vorliegende Offenbarung wird anhand von schematischen Ablaufdiagrammen und Blockdiagrammen erläutert. Die diesen Diagrammen zugrunde liegende technische Lehre kann sowohl in Hardware als auch Software oder einer Kombination aus Hardware und Software implementiert werden. Dazu zählen auch digitale Signalprozessoren(DSP), anwendungsspezifische integrierte Schaltkreise (ASICs) und andere Schalt- oder Rechenkomponenten.
  • Gemäß einem Beispiel zum besseren Verständnis der Erfindung betrifft die vorliegende Offenbarung eine Vorrichtung zur Datenverarbeitung, die in dem Blockdiagramm der 1 schematisch gezeigt ist. Die Vorrichtung 100 kann ein Computer, Server, Laptop, Netbook, Notebook, Tablet-PC, Smartphone, Navigationsgerät etc. oder ein Bestandteil davon sein. Die Vorrichtung 100 kann auch fest in einem Fahrzeug verbaut sein, zum Beispiel als Teil eines Fahrerinformationssystems.
  • Die Vorrichtung 100 umfasst ein Prozessorsystem 110, welches in der Lage ist, Programme auszuführen. Die Programme können auf einem gesonderten Speichermedium (nicht gezeigt) gespeichert sein. Alternativ hierzu sind solche Programme in einem Speicher 120 der Vorrichtung 100 abgelegt. Zu diesen Programmen zählen Programme zum Erstellen einer Datenstruktur zur späteren Verwendung durch einen Algorithmus, der Pfade in einem Verkehrswegenetz ermittelt. Ferner zählen dazu auch Programme zum Ermitteln eines oder mehrerer Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz.
  • In dem Speicher 120 ist wenigstens eine Datenstruktur (z.B. in Form eines adressierbaren Datensatzes) gespeichert. Es können auch mehrere Datenstrukturen oder Datenbanken gespeichert sein. Darin sind unter anderem sogenannte Kartendaten abgelegt, die ein Verkehrswegenetz repräsentieren. Beispielsweise bestehen Kartendaten aus einer Ansammlung von Knotenpunkten in dem Verkehrswegenetz und Informationen zu den Verkehrswegen zwischen den Knotenpunkten. Die Verkehrswege zwischen den Knotenpunkten können auch durch einen oder mehrere Geometriepunkte in verschiedene Wegteile unterteilt sein, die ebenfalls zu den Kartendaten zählen. Zu den Verkehrswegen und Wegteilen gehörige Informationen sind Verkehrswegeinformationen. Zu den Verkehrswegeinformationen zählen die Streckenlänge zwischen zwei Knotenpunkten bzw. Geometriepunkten, die Steigung bzw. Gefälle, der Höhenunterschied, die Fahrtrichtung, Wegeklassen, sowie weitere Attribute (wie Straßenklasse, Fähre, mautpflichtige Straße, Einbahnstraße, Anzahl der Fahrspuren etc.). Nicht alle diese Informationen müssen verwendet werden.
  • In dem Speicher 120 sind ferner Strukturinformationen oder Strukturdaten gespeichert, die Daten zu einer geometrischen Struktur umfassen. Dazu zählen auch Durchfahrungsinformationen, die von den Verkehrswegeinformationen abgeleitet sind. Die Strukturdaten sowie deren Ermittlung werden nun anhand von 2a näher beschrieben.
  • 2a zeigt eine schematische Ansicht eines Verkehrswegenetzes, über das geometrische Strukturen gelegt wurden. Das Verkehrswegenetz umfasst Straßen, die sich in 2a an einem Knotenpunkt kreuzen. Über das Verkehrswegenetz sind geometrische Strukturen gelegt. Dies können Polygone sein, zum Beispiel Rechtecke oder, wie in 2a, Quadrate. Da es sich um Verkehrswege auf einem Globus handelt, ist es vorteilhaft, wenn die Grenzen der geometrischen Strukturen auf einer geographischen Länge bzw. Breite liegen. Die vorliegende Offenbarung ist jedoch nicht auf Rechtecke, Quadrate oder Strukturen entlang der geographischen Länge bzw. Breite beschränkt, sondern kann auch andere geometrische Formen, einschließlich runden Formen, einsetzen.
  • Zur Vereinfachung der Routen- oder Pfadermittlung durch das Verkehrswegenetz werden einzelnen geometrischen Strukturen Durchfahrungsinformationen zugeordnet. Durchfahrungsinformationen umfassen durchschnittliche Werte (bzw. Kosten, beispielsweise, Streckenlänge, Höhenunterschied, Energieverbrauchswerte, Straßenklassen und andere Attribute) für eine geometrische Struktur, um diese von einer Grenze oder Seite der Struktur zu einer anderen zu durchfahren. Bei den Strukturen, die in 2a gezeigt sind, würden z.B. der Struktur oben links keine Durchfahrungsinformationen zugeordnet werden, da in dieser Struktur keine Verkehrswege vorhanden sind. Für die darunter liegende Struktur (mittig links in 2a) sind Durchfahrungsinformationen von einer westlichen Strukturgrenze zu einer östlichen Strukturgrenze gespeichert. Würde anstatt des einen gezeigten Verkehrswegs ein zweiter Verkehrsweg von West nach Ost führen, würden die Durchfahrungsinformationen dieser geometrischen Struktur den Durchschnitt der Verkehrswegeinformationen beider Verkehrswege darstellen. Schließlich sind in der mittig in 2a gezeigten geometrischen Struktur Durchfahrungsinformationen von jeder Grenze bzw. Seite der Struktur zu jeder anderen Seite gespeichert. Dies setzt natürlich voraus, dass keine der gezeigten Verkehrswege eine Einbahnstraße ist, und an dem Verkehrswegeknotenpunkt in jede Richtung abgebogen werden kann.
  • Zu den Durchfahrungsinformationen zählt auch, dass ein Verkehrsweg in eine geometrische Struktur hineinführt, aber nicht wieder aus ihr herausführt. Insbesondere in entlegenen Regionen, wie zum Beispiel Bergtälern, gibt es viele solcher „Sackgassen“, also Verkehrswege, die in einer Struktur enden. Zu diesen endenden Verkehrswegen können Erreichbarkeitsinformtionen als Durchfahrungsinformation ermittelt werden. Für eine Strukturgrenze, über die ein Verkehrsweg in die zugehörige Struktur hineinführt, kann ein Prozentsatz ermittelt werden, der angibt, wie weit der Verkehrsweg durch die Struktur führt. Der Prozentsatz kann in Abhängigkeit einer geometrischen Größe der Struktur, wie zum Beispiel Breite oder Höhe, angegebene werden. Ebenso kann auch, wie bei normalen Durchfahrungsinformationen eine zweite Grenze als Richtung angegebenen werden. Beispielsweise kann ein Verkehrsweg zu 80% von West nach Ost durch eine Struktur führen. Die übrigen oben genannten Durchfahrungsinformationen (Strecke, Steigung etc.) können auch für diese Teilstrecke ermittelt werden.
  • Zum vereinfachten Ermitteln einer Route oder eines Pfads durch das Verkehrswegenetz greift nun ein Algorithmus nicht mehr auf die Verkehrswegeinformationen selbst zu, sondern auf die zu den geometrischen Strukturen gespeicherten Durchfahrungsinformationen. Dafür wird ein Graph gebildet, entlang dem der Algorithmus Pfade finden kann. Jede Grenze oder Kante einer geometrischen Struktur bildet dabei einen Knoten in dem Graphen. Die Durchfahrungsinformationen zwischen den Grenzen oder Kanten stellen das Kantengewicht für die Kostenfunktion des Algorithmus dar. Die Ermittlung eines Pfads ist somit schneller als auf Verkehrswegeebene, sie ist jedoch auch ungenauer. Diese Ungenauigkeit kann jedoch häufig in Kauf genommen werden, etwa bei der Berechnung einer Restreichweite oder der ersten Berechnung alternativer Routen bevor eine genauere zweite Berechnung für eine bestimmte Route durchgeführt wird.
  • Die Ungenauigkeit wird nun anhand der in 2b gezeigten schematischen Ansicht eines Verkehrswegenetzes, über das geometrische Strukturen gelegt wurden, näher erläutert. Das gezeigte Verkehrsnetz enthält zwei Straßen, die zu beiden Seiten eines Flusses liegen. Diese Straßen werden nun für den Fall betrachtet, dass ein Algorithmus von Westen (links) kommend durch die geometrischen Strukturen expandiert. Für die geometrische Struktur „C“ sind durchschnittliche Durchfahrungsinformationen von der westlichen Grenze zur östlichen Grenze gespeichert. Diese Durchfahrungsinformationen enthalten Durchschnittswerte der Verkehrswegeinformationen der beiden Straßen von West nach Ost. Selbstverständlich können auch weitere Durchfahrungsinformationen für andere Richtungen gespeichert sein, diese sollen hier aber nicht weiter betrachtet werden. Da Durchfahrungsinformationen von West nach Ost gespeichert sind, kann der Algorithmus auf Strukturebene durch die Struktur „C“ hindurch von deren westlicher Grenze zu deren östlicher Grenze expandieren.
  • In der geometrischen Struktur „D“ hingegen verläuft nur eine derbeiden Straßen von der westlichen Grenze der Struktur „D“ zu deren östlicher Grenze (von.p0 zu p1). Die andere Straße verläuft von der westlichen Grenze zur südlichen Grenze (von p2 zu p3). Daher sind mindestens zwei Durchfahrungsinformationen zu der Struktur „D“ gespeichert, die die Durchfahrungsmöglichkeiten von der westlichen Grenze zur östlichen und auch zur südlichen Grenze mit entsprechenden (durchschnittlichen) Kosten angeben. Der Algorithmus, der sich nur auf diese Durchfahrungsinformationen stützt, expandiert von der Struktur „A“ kommend durch Struktur „B“, Struktur „C“ und sowohl durch Struktur „D“ und weiter nach Osten als auch durch Struktur „D“ und weiter zur Struktur „E“ nach Süden. In Wirklichkeit gibt es jedoch für die zweite Variante nach Süden keine passende Verkehrsnetzverbindung, da kein Verkehrsweg zwischen den Schnittpunkten p0 und p3 vorhanden ist. Der daraus resultierende Fehler führt zu einer fehlerhaften Expansion des Algorithmus und deswegen auch zu fehlerhaften Informationen für den Fahrer (z.B. bezüglich der angezeigten Restreichweite des Fahrzeugs oder einer Routenalternative).
  • Um solche Fehler bei der Expansion zu vermeiden, wird gemäß der vorliegenden Offenbarung eine Datenstruktur mit optimierten Durchfahrungsinformationen erzeugt. Die Erzeugung der Datenstruktur kann zum Beispiel durch die Vorrichtung 100 (1) vorgenommen werden. Da sich die Durchfahrungsinformationen selten ändern, muss die Datenstruktur auch nur erzeugt werden, wenn sich die zugrundeliegenden Kartendaten ändern. Außerdem muss nicht jedes Mal die gesamte Datenstruktur neu erzeugt werden. Es reicht aus, wenn nur die Datenstrukturen überarbeitet werden, in denen sich geänderte oder neue Verkehrswege befinden. Die dazu bevorzugte Vorrichtung ist ein PC oder Server, das die erzeugte bzw. geänderte Datenstruktur zur weiteren Verwendung speichert. Die Datenstruktur kann anschließend auf andere Geräte, wie zum Beispiel Navigationsgeräte oder ähnliches, übertragen werden.
  • Eine mögliche Kennzeichnung der Unterstrukturen zur Betrachtung der Unterstrukturen innerhalb einer geometrischen Struktur wird anhand des Beispiels in 2d beschrieben. Dort sind zwei Unterstrukturen „A“ und „B“ als vierseitige Polygone dargestellt. Jede geometrische Struktur weist somit eine nördliche, östliche, südliche und westliche Strukturgrenze auf.
  • Die geometrische Struktur „A“ ist in sechzehn gleich große Unterstrukturen unterteilt. Die linke untere (südwestliche) Ecke der geometrischen Struktur bildet dabei den Ursprung für eine Nummerierung der Unterstrukturen. Die Unterstrukturen können beispielsweise vom Ursprung aus durchnummeriert werden. Diese Nummerierung kann auf eine Nummerierung innerhalb einer geometrischen Struktur beschränkt sein, so dass gleiche Unterstrukturnummern in zwei verschiedenen geometrischen Strukturen vorkommen. Alternativ hierzu können auch sämtliche Unterstrukturen J durchnummeriert sein. In dem Beispiel in 2d werden die Unterstrukturen mit SP0 bis SP(m*n)-1, also SP15, in jeder geometrischen Struktur gleich durchnummeriert. Selbstverständlich können sowohl der Ursprung als auch die verwendeten Nummernbereiche variieren. Beispielsweise kann auch die nordwestlichste Ecke den Ursprung bilden. Es kann auch die Nummerierung 1 bis 16 verwendet werden.
  • Alternativ oder zusätzlich hierzu können auch eine Art Koordinaten in Längs- und Querrichtung verwendet werden, um jede Unterstruktur innerhalb einer Struktur zu identifizieren. Diese kann durch die Notation „i, j“ für i=0..m-1 und j=0..n-1 angegeben werden. Dabei stellt n die Anzahl von Unterstrukturen dar, deren Grenzen auf unterschiedlichen geographischen Längen liegen, und m die Anzahl von Unterstrukturen dar, deren Grenzen auf unterschiedlichen geographischen Breiten liegen. Für den Fall, wie er in 2d gezeigt ist, dass in die Richtungen der geographischen Länge und Breite eine gleiche Anzahl von Unterteilungen vorgenommen wird, ist n gleich m.
  • Die Strukturgrenzen der geometrischen Struktur werden in ähnlicher Weise nummeriert. Dabei erhält die Strukturgrenze einen Kennzeichner für die Richtung sowie einen Kennzeichner für die zugehörige Unterstruktur. Bei den in 2d abgebildeten Strukturgrenzen sind dies die Himmelsrichtungen sowie der Wert i bzw. j der Unterstruktur (vgl. auch 6a und 6b). Demnach sind die Strukturgrenzen in Unterstrukturgrenzen von N0 bis Nn-1, O0 bis Om-1 usw. unterteilt.
  • Diese Kennzeichnung ist besonders vorteilhaft, um für eine Expansion auf einfache Weise von einer geometrischen Struktur zur nächsten bzw. von einer Unterstruktur zur benachbarten Unterstruktur zu gelangen. Innerhalb der Unterstrukturen muss der jeweilige Index in Längs- oder Querrichtung nur um 1 erhöht oder verringert werden. Bei einem Wechsel von einer geometrischen Struktur zu einer benachbarten geometrischen Struktur auf Unterstrukturebene kann dies wie folgt berechnet werden. Beispielsweise kann von der Unterstruktur (1;n-1) nach Osten in die nächste geometrische Struktur und dort wiederum in eine Unterstruktur expandiert werden, falls ein Verkehrsweg über diese Unterstrukturgrenze verläuft. Dieser Übergang erfolgt an der Grenze O1-W1. Da die Expansion nach Osten erfolgt, bleibt der Wert in Längsrichtung („i“) gleich („1“). Der Wert in Querrichtung („j“) wird auf 0 gesetzt. Gleiche Berechnungen können zwischen den Übergängen zu anderen benachbarten geometrischen Strukturen ermittelt werden.
  • Das Verfahren zum Erzeugen einer Datenstruktur gemäß einem Beispiel der vorliegenden Offenbarung wird nun mit Hilfe der 3 erläutert. Das Beispiel kann auf dem in den 2a bis 2d veranschaulichten Strukturschema basieren, oder auf einem anderen.
  • In einem ersten Schritt 300 werden die Durchfahrungsinformationen für eine geometrische Struktur ermittelt und gespeichert. Die Speicherung kann beispielsweise in dem Speicher 120 (1) als Teil einer Datenstruktur erfolgen.
  • Für die Ermittlung der Durchfahrungsinformationen werden Verkehrswegschnittpunkte der geometrischen Struktur ermittelt. Ein Verkehrswegschnittpunkt ist ein Schnittpunkt zwischen einer Strukturgrenze und einem Verkehrsweg. Ein Schnittpunkt einer Struktur ist ein Schnittpunkt, der auf einer zu der Struktur gehörenden Grenze liegt. Jeder Verkehrswegschnittpunkt gehört somit zu mindestens zwei geometrischen Strukturen.
  • Eine Strukturgrenze wird durch die geometrische Form der Struktur bestimmt und kann eine gerade (vgl. 2a bis 2d) oder gebogene Linie sein. Die Ermittlung der Schnittpunkte erfolgt durch einen Vergleich der graphischen Verkehrswegenetzdaten mit den graphischen Daten der Strukturgrenzen. Eine Strukturgrenze ist durch zwei Punkte, beispielsweise A und B, definiert, so dass sie in Form eines Vektors |AB| abgebildet wird. Wie oben bereits erwähnt kann der Verkehrsweg in mehrere kleine Wegteile aufgeteilt werden, wobei diese Wegteile gerade Linien bilden und auf dem Verkehrsweg liegen. Somit ist ein Wegteil ebenfalls durch zwei Punkte, beispielsweise C und D, definiert. Wenn der Punkt C und der Punkt D an unterschiedlichen Seiten von dem Vektor |AB| liegen, und der Punkt A und der Punkt B ebenso an den unterschiedlichen Seiten von dem Vektor |CD| liegen, bedeutet dies, dass die beiden Vektoren |AB| und |CD| sich schneiden. Dies kann anhand der vier Vektorproduktergebnisse (|AB|×|AC|), |AB|×|AD|, |CD|×|CA| und |CD|×|CB|) überprüft werden. Ein Koordinatenpaar des Schnittpunkts kann dadurch berechnet werden, dass zwei Liniengleichungen der Form y = ax+b für die Linien AB und CD gleichgesetzt werden.
  • Selbstverständlich kann jegliche geometrische Form für die geometrischen Strukturen verwendet werden, um das Verkehrswegenetz zu unterteilen. Die Grenzen der geometrischen Formen sind dann durch entsprechende Funktionen in einem Koordina- , tensystem darstellbar. Durch Ableiten von Vektoren aus den Koordinaten der Strukturgrenzpunkte und obiger Berechnung mit Wegteilen des Verkehrswegenetzes lassen sich Schnittpunkte ermitteln.
  • Anschließend wird von jedem ermittelten Schnittpunkt einer geometrischen Struktur mittels eines geeigneten Algorithmus ermittelt, ob jeder andere Schnittpunkt derselben Struktur über das Verkehrswegenetz erreicht werden kann. Dies kann auf Verkehrswegschnittpunktpaare beschränkt sein, deren Schnittpunkte auf verschiedenen Strukturgrenzen liegen. Der Algorithmus, der dabei eingesetzt wird, kann derselbe Algorithmus sein, wie er zur Routenberechnung oder Restweitenermittlung herangezogen wird. Ein beispielhafter Algorithmus ist der Dijkstra-Algorithmus. Der Algorithmus ist dabei nicht auf Verkehrswege beschränkt, die ausschließlich innerhalb der zu betrachtenden geometrischen Struktur liegen. Am Beispiel der mittigen Struktur in 2a kann der Algorithmus von dem Verkehrswegschnittpunkt der westlichen Grenze auch nach Westen (links) durch das Verkehrswegenetz expandieren. Möglicherweise besteht dort auch ein Weg (nicht gezeigt) zu einem Verkehrswegschnittpunkt auf einer der anderen Grenzen.
  • Durch diesen Algorithmus können Verkehrsweginformationen zwischen Verkehrswegschnittpunktpaaren ermittelt und als Durchfahrungsinformationen gespeichert werden. Sind mehrere Verkehrswege zwischen einem Verkehrswegschnittpunktpaar vorhanden, werden Durchschnittswerte der Verkehrswegeinformationen dieser Wege als Durchfahrungsinformationen ermittelt. Hierbei werden nur Verkehrswegschnittpunktpaare berücksichtigt, deren Schnittpunkte auf unterschiedlichen Grenzen liegen. Durchfahrungsinformationen zwischen Schnittpunkten auf derselben Strukturgrenze sind für den späteren Algorithmus zum Ermitteln von Pfaden irrelevant.
  • Dabei können auch Verbindungsmöglichkeiten mit hohen Kosten ausgeschlossen werden. Es können beispielsweise Verkehrswegverbindungen zwischen zwei Schnittpunkten, für die bestimmte Kosten anfallen (die beispielsweise eine bestimmte Länge, eine bestimmte Steigung, einen bestimmten Energieverbrauch überschreiten), unberücksichtigt bleiben. Alternativ hierzu kann auch der Algorithmus zur Suche nach Verbindungen zwischen einem Verkehrswegschnittpunktpaar nach einer bestimmten Expansionslänge oder aufsummierten Kosten abgebrochen werden. Dies ist besonders dann vorteilhaft, wenn bereits Verbindungen zwischen Schnittpunkten auf denselben Grenze ermittelt wurden. Die kostenintensiven Schnittpunktverbindungen werden dann höchst wahrscheinlich nie in eine Routenermittlung einfließen und brauchen daher hier auch nicht gespeichert werden. Sind hingegen noch keine Verbindungen zwischen den entsprechenden Strukturgrenzen ermittelt worden, kann auch eine kostenintensive Verbindung zur Speicherung von Durchfahrungsinformationen genutzt werden.
  • In 4aist schematisch ein Strukturdatensatz gezeigt. Dieser Strukturdatensatz kann Teil einer Datenstruktur sein. Er betrifft eine geometrische Struktur, welche in einem ersten Datenteil durch eine Strukturidentifizierung (Struktur-ID) 410 gekennzeichnet ist. Diese Struktur-ID 410 ist eine Kennzeichnung, wie z.B. eine Zahl oder eine alphanumerische Kennzeichnung, die die geometrische Struktur innerhalb aller geometrischen Strukturen eindeutig identifiziert. Die Struktur-ID 410 kann auch durch einen Vektor angegeben werden, der jede geometrische Struktur innerhalb einer regelmäßigen Anordnung von geometrischen Strukturen kennzeichnet. Beispielsweise können die geometrischen Strukturen von einem Ursprung aus im Format (i, j), von (0,0) bis (m-1, n-1), gekennzeichnet werden.
  • Der Strukturdatensatz enthält neben der Struktur-ID auch Strukturinformationen 415 zu der gekennzeichneten geometrischen Struktur. Diese Strukturinformationen 415 enthalten die oben bereits angesprochenen Durchfahrungsinformationen. Da Durchfahrungsinformationen von jeder Strukturgrenze zu einer anderen Strukturgrenze abgespeichert werden, können mehrere Strukturdatensätze mit der gleichen Struktur-ID 410 gespeichert werden. Im Fall von geometrischen Strukturen in Form von vierseitigen Polygonen können insgesamt zwölf Strukturdatensätze für die zwölf unterschiedlichen Durchfahrungsrichtungen gespeichert werden. Alternativ hierzu werden die Durchfahrungsinformationen in einem Datensatz abgelegt. Dabei ist der Datensatz so anzulegen, dass eine Unterscheidung der verschiedenen Durchfahrungsrichtungen und eine Zuordnung der entsprechenden Durchfahrungsinformationen möglich sind.
  • Wieder mit Bezug zu 3, kann das Ermitteln der Durchfahrungsinformationen in Schritt 300 zunächst nur für eine geometrische Struktur ausgeführt werden. Alternativ hierzu können Durchfahrungsinformationen für alle geometrischen Strukturen ermittelt werden, bevor das Verfahren mit dem nächsten Schritt fortfährt.
  • In Schritt 305 des Verfahrens wird mindestens eine geometrische Struktur mit mindestens zwei Verkehrswegschnittpunkten ermittelt. Wie oben dargelegt ist ein Verkehrswegschnittpunkt ein Schnittpunkt zwischen einer Strukturgrenze und einem Verkehrsweg. Die Anzahl der Schnittpunkte für eine bestimmte geometrische Struktur kann in Schritt 305 ermittelt werden. Alternativ können die Anzahl der Schnitt punkte pro geometrische Struktur oder andere hierzu notwendige Informationen bereits in Schritt 300 ermittelt worden sein. Dann kann auf diese zurückgegriffen werden. Beispielsweise können in dieser alternativen Ausgestaltung die Strukturinformationen 415 (4a) solche Informationen enthalten und abgerufen und ausgewertet werden.
  • Für die meisten geometrischen Strukturen, die über Verkehrswegen liegen, dürfte die in Schritt 305 geprüfte Bedingung zutreffen. Wie oben erwähnt gibt es jedoch auch Verkehrswege, die in einer geometrischen Struktur enden. Um diese geometrischen Strukturen und insbesondere jene, in die mehrere „Sackgassen“ führen, auch zu erkennen, werden der Schritt 305 und der nachfolgende Schritt 310 durchgeführt.
  • In dem Verfahrensschritt 310 wird ermittelt, ob bei einer geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten mindestens ein Verkehrswegschnittpunktpaar nicht durch einen Verkehrsweg verbunden ist. Dazu kann ebenfalls wieder auf die Strukturinformationen 415 (4a) zurückgegriffen werden. Alternativ hierzu, falls die Strukturinformationen 415 (4a) nicht vorliegen, kann von jedem ermittelten Schnittpunkt einer geometrischen Struktur mittels eines geeigneten Algorithmus ermittelt werden, ob jeder andere Schnittpunkt derselben Struktur über das Verkehrswegenetz erreicht werden kann. Hierbei gilt das gleiche für den einzusetzenden Algorithmus, wie oben zu Schritt 300 beschrieben.
  • Im Beispiel der 2a wird in Schritt 310 für keine geometrische Struktur mit Verkehrswegschnittpunkten ermittelt werden, dass ein Verkehrswegschnittpunktpaar nicht über einen Verkehrsweg verbunden ist bzw. erreicht werden kann. Der in 2a gezeigte Verkehrswegeverlauf lässt eine Verbindung zwischen jedem der Schnittpunkte zu. Damit würde in dem Verfahrensschritt 310 (3) das Ergebnis „Nein“ lauten. Das Verfahren wäre demnach beendet und springt zu Schritt 330.
  • In dem anderen Beispiel nach 2c ist eine sehr ähnliche schematische Ansicht des Verkehrswegenetzes mit überlagerten geometrischen Strukturen wie in 2a gezeigt. Gegenüber der 2a sind in 2c die beiden Straßen jedoch nicht miteinander verbunden. Somit gibt es in der mittigen Struktur nur Verbindungsmöglichkeiten über das Verkehrswegenetz von der westlichen Strukturgrenze zur nördlichen Strukturgrenze, sowie von der südlichen Strukturgrenze zu der östlichen Strukturgrenze (und jeweils zurück). Der Schnittpunkt auf der westlichen Strukturgrenze ist mit mindestens einem Verkehrswegschnittpunkt, hier sowohl der auf der südlichen als auch auf der östlichen Strukturgrenze, nicht über einen Verkehrsweg verbunden. Das gleiche gilt für den Schnittpunkt auf der nördlichen Grenze. In Schritt 310 des Verfahrens aus 3 würde daher ermittelt werden, dass mindestens ein Verkehrswegschnittpunktpaar, hier vier Paare, nicht über einen Verkehrsweg verbunden ist.
  • Wieder mit Bezug auf 3 fährt das Verfahren mit dem Schritt 315 fort, wenn mindestens ein Verkehrswegschnittpunktpaar nicht durch einen Verkehrsweg verbunden ist. In diesem Schritt 315 wird die mindestens eine geometrische Struktur (ermittelt in den Schritten 305 und 310) in Unterstrukturen unterteilt. Jede Unterstruktur weist dabei mindestens eine Unterstrukturgrenze auf. Für Unterstrukturen gilt das gleiche wie für die geometrische Struktur. Das heißt, die Unterstruktur kann jegliche Form annehmen, die geeignet ist, die geometrische Struktur sinnvoll zu unterteilen. Beispielsweise kann eine geometrische Struktur entlang von Symmetrieachsen unterteilt werden und/oder in gleich große Strukturen unterteilt werden. Wenn die geometrische Struktur entlang der geographischen Länge und Breite angelegt ist, können auch die dazu gehörigen Unterstrukturen entlang von geographischen Längen und Breiten unterteilt werden. Im Beispiel der 2c wird solch eine Unterteilung in Unterstrukturen für die mittig gezeigte geometrische Struktur durchgeführt. Beispielsweise kann die Struktur in vier gleich große Polygone mit jeweils vier Kanten unterteilt werden.
  • In dem darauffolgenden Schritt 320 werden nun für die mindestens eine unterteilte geometrische Struktur erste Unterstrukturinformationen ermittelt. Diese ersten Unterstrukturinformationen zeigen an, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt. Wie oben angesprochen, dürften die meisten Verkehrswege auch die Grenzen einer Unterstruktur zweimal schneiden, falls es sich nicht um eine „Sackgasse“ handelt. Somit werden die ersten Unterstrukturinformationen in den meisten Fällen anzeigen, über welche Unterstrukturgrenzen der Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt. Ebenso ist bei einem nur in eine Richtung befahrbaren Verkehrsweg (Einbahnstraße) zu berücksichtigen, dass dieser eventuell zwei Unterstrukturgrenzen schneidet, jedoch nur über eine Grenze aus der Unterstruktur hinausführt. Die Unterstrukturinformationen werden in dem Speicher 120 (1) abgelegt.
  • In 4b ist schematisch ein Unterstrukturdatensatz also ein Datensatz mit Unterstrukturinformationen, dargestellt. Dieser Unterstrukturdatensatz besteht ebenfalls aus einer Struktur-ID 420, die eine geometrische Struktur identifiziert. Diese Struktur-ID 420 in dem Unterstrukturdatensatz ist die gleiche, wie bei dem Strukturdatensatz aus 4a. Neben der Struktur-ID 420 werden hier jedoch Unterstrukturinformationen 425 gespeichert. Diese Unterstrukturinformationen 425 können in Form eines Byte-Feldes oder Byte-Arrays bzw. Bit-Feldes oder Bit-Arrays gespeichert werden.
  • Die Unterstrukturinformationen 425 enthalten Bitgruppen für jede Unterstruktur. Diese Bitgruppen können ebenso viele Bits enthalten, wie die Unterstruktur Grenzen aufweist. In dem Beispiel, wie es in 2c gezeigt ist, hat jede Unterstruktur vier Grenzen bzw. Seiten. Demnach sind die Unterstrukturinformationen 425 zu jeweils vier Bit pro Unterstruktur gegliedert. Jedes Bit dieser Gruppen zeigt an, ob über eine Unterstrukturgrenze der Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt oder nicht. Beispielsweise kann der Bit-Wert auf „1“ gesetzt werden, falls ein Verkehrsweg aus der Unterstruktur herausführt. Die Reihenfolge der Bits ist durch eine bestimmte Reihenfolge der Unterstrukturgrenzen vorgegeben. Beispielsweise kann bei einer rechteckigen oder quadratischen Unterstruktur der erste Bit-Wert der „Ausfahrungsmöglichkeit“ über die nördliche Grenze anzeigen. Der zweite Bit-Wert gibt an, ob über die östliche Grenze der Unterstruktur ein Verkehrsweg herausführt. Entsprechend zeigen die dritte und vierte Bitstelle an, ob ein Verkehrsweg über die südliche bzw. westliche Unterstrukturgrenze aus der Unterstruktur herausführt. Für Unterstrukturen mit anderen geometrischen Formen (z.B. Dreiecke, Sechsecke etc.) können weniger oder mehr Bit-Werte pro Unterstruktur notwendig sein, um ein Bit für jede Unterstrukturgrenze vorzuhalten.
  • In 4c ist die Bit-Aufteilung näher dargestellt. Die Unterstrukturinformationen 425 sind in ebenso viele 4-Bit-Gruppen unterteilt, wie es Unterstrukturen in der zugehörigen geometrischen Struktur gibt. Das heißt, die ersten vier Bits entsprechen den Unterstrukturgrenzen der ersten Unterstruktur, die nächsten vier Bits entsprechen den Strukturgrenzen der zweiten Unterstruktur usw.. Dabei kann die erste Unterstruktur beispielsweise in der südöstlichen Ecke (links unten) der geometrischen Struktur liegen. Die nächste Unterstruktur würde dann nach Osten hin an die erste Unterstruktur angrenzen usw.. Ist eine Reihe mit Unterstrukturen durch die gesamte geometrische Struktur vollständig, wird mit einer darüber liegenden Reihe von Unterstrukturen wieder links beginnend fortgefahren. In dieser Weise können alle Unterstrukturen und die dazugehörigen Unterstrukturgrenzen aus den Unterstrukturinformationen 425 abgerufen und ausgewertet werden.
  • Die vorliegende Offenbarung ist selbstverständlich nicht auf die oben beschriebene Reihenfolge der Unterstrukturen innerhalb der geometrischen Struktur sowie der Reihenfolge der Unterstrukturgrenzen innerhalb einer Unterstruktur festgelegt. Jede andere Reihenfolge kann ebenso gewählt werden. Um eine einfache Auswertung zu ermöglichen, sollte die Reihenfolge jedoch für alle Unterstrukturen und Unterstrukturgrenzen gleich sein.
  • Wieder mit Bezug auf 3 kann das offenbarte Verfahren optional in Schritt 325 zweite Unterstrukturinformationen für mindestens eine geometrische Struktur ermitteln. Diese weiteren Unterstrukturinformationen zeigen an, über welche Unterstrukturgrenzen ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt. Solche Unterstrukturinformationen, die auch als Unterstrukturausgangsinformationen bezeichnet werden, werden ebenfalls gespeichert und mit einer Struktur-ID identifiziert. Diese Unterstrukturausgangsinformationen werden auch in dem Speicher 120 (1) abgelegt.
  • Ein Beispiel eines Datensatzes für diese weiteren Unterstrukturinformationen ist schematisch in 4d dargestellt. Dieser enthält eine Struktur-ID 430, um den Datensatz für eine geometrische Struktur zu kennzeichnen. Des Weiteren enthält der Datensatz Unterstrukturausgangsinformationen 435, für die mit der Struktur-ID 430 gekennzeichneten geometrischen Struktur. Die Unterstrukturausgangsinformationen 435 können ebenfalls als ein Bit- oder Byte-Feld (bzw. Bit- oder Byte-Array) gespeichert werden.
  • Die Unterstrukturausgangsinformationen 435 für eine bestimmte geometrische Struktur geben an, über welche Unterstrukturgrenze ein Verkehrsweg aus der geometrischen Struktur herausführt. Im Vergleich zu dem Datensatz, der in den 4b und 4c dargestellt ist, werden also nur Unterstrukturgrenzen betrachtet, die auf einer Strukturgrenze liegen. Das Bit-Array der Unterstrukturausgangsinformationen 435 benötigt demnach so viele Bit-Werte, wie es Unterstrukturgrenzen auf den Grenzen der geometrischen Struktur gibt. In dem in 2c gezeigten Beispiel wären dies sechzehn Grenzen bzw. Bits.
  • In 4d ist auch ein Beispiel für eine Reihenfolge dieser Bits angegeben. Demnach entsprechen die ersten vier Bits der „Ausfahrmöglichkeit“ über jede der vier Unterstrukturgrenzen auf der nördlichen Strukturgrenze der zugrunde liegenden geometrischen Struktur. Die Reihenfolge der Unterstrukturgrenzen kann wieder von links nach rechts erfolgen. Die nächsten vier Bits in den Unterstrukturausgangsinformationen 435 entsprechen den „Ausfahrmöglichkeiten“ über die vier Unterstrukturgrenzen auf der östlichen Grenze der geometrischen Struktur. Hier kann die Reihenfolge der Unterstrukturen von unten nach oben geschehen. Die weiteren Bits entsprechen dann den Unterstrukturgrenzen der südlichen sowie der westlichen Strukturgrenzen.
  • Selbstverständlich können auch hier die Reihenfolge der Bit-Werte bzw. die Richtung, in der die Unterstrukturen betrachtet werden, geändert werden. Es ist nur zu beachten, dass dies für alle geometrischen Strukturen identisch geschieht, um das Abrufen und Auswerten der Bitinformationen einfach zu halten.
  • Es ist jedoch zu beachten, dass die Struktur in Unterstrukturen unterteilt ist, d.h. es gibt unabhängige Verkehrswege. Somit sind die Unterstrukturausgangsinformationen 435 in Abhängigkeit einer bestimmten Unterstruktur zu ermitteln. Da diese Informationen später für eine Expansion durch die geometrischen Strukturen genutzt wird, ist es sinnvoll Unterstrukturausgangsinformationen 435 für jede Unterstruktureingangsgrenze, also eine Unterstrukturgrenze, über die ein Verkehrsweg in die dazugehörige Struktur führt, zu ermitteln und abzuspeichern. Von jeder zu betrachtenden Unterstruktur aus können beispielsweise anhand der ersten Unterstrukturinformationen 425 Unterstrukturgrenzen ermittelt werden, die aus der Unterstruktur herausführen. Dadurch kann von Unterstruktur zu Unterstruktur innerhalb der Struktur expandiert werden, bis eine Unterstrukturgrenze, die auf einer Strukturgrenze liegt, erreicht ist. Diese Unterstrukturgrenze(n) können als zweite Unterstrukturinformationen für eine Struktur und eine bestimmte Unterstruktur abgespeichert werden. Es können also mehrere Datensätze zu einer Struktur-ID ermittelt und abgelegt werden.
  • Anschließend oder nach Schritt 310, wenn nicht mindestens ein nicht-verbundenes Verkehrswegschnittpunktpaar gefunden wurde, wird in Schritt 330 geprüft, ob alle geometrischen Strukturen überprüft worden sind. Falls nicht geht das Verfahren zu Schritt 305 zurück und ermittelt eine weitere geometrische Struktur mit mindestens zwei Verkehrswegschnittpunkten.
  • Alternativ hierzu geht das Verfahren zu Schritt 310 zurück. Hierzu müssen in Schritt 305 sämtliche geometrischen Strukturen mit mindestens zwei Verkehrswegschnittpunkten ermittelt worden und gespeichert oder anderweitig gekennzeichnet worden sein.
  • Falls in Schritt 330 ermittelt wird, dass alle relevanten geometrischen Strukturen abgearbeitet sind, endet das Verfahren aus 3.
  • Die so ermittelte Datenstruktur mit Strukturdaten und ersten und/oder zweiten Unterstrukturdaten kann durch einen Algorithmus verwendet werden, der einen oder mehrere Pfade ermittelt. Die Ermittlung erfolgt durch eine Expansion von Knotenpunkt zu Knotenpunkt in einem durch die Datenstruktur festgelegten Graphen. Wie eingangs erwähnt, kann durch die Expansion eine bestimmte Route, eine oder mehrere Alternativrouten oder eine Restreichweite eines Fahrzeugs bestimmt werden.
  • Die 5 zeigt ein Ablaufdiagramm eines Beispiels eines Verfahrens zum Ermitteln eines oder mehrerer Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz zum besseren Verständnis der vorliegenden Offenbarung. Dabei ist, wie oben beschrieben, mindestens eine geometrische Struktur in Unterstrukturen unterteilt.
  • Die Expansion durch das Verkehrswegenetz erfolgt gemäß dem Beispiel aus Geschwindigkeitsgründen bzw. zur Reduzierung der Prozessorlast nicht auf der Verkehrswegenetzebene, sondern auf einer Strukturebene. Daher beginnt das Verfahren in Schritt 510 mit dem Ermitteln einer geometrischen Startstruktur. Diese Startstruktur ist die geometrische Struktur, in der eine Startposition eines Pfads in dem Verkehrswegenetz liegt. Beispielsweise kann die Startposition eine systemseitig ermittelte Standortposition sein. Diese Standortposition kann beispielsweise durch einen GPS-Empfänger ermittelt worden sein. Alternativ hierzu kann die Startposition auch eine beliebige Position in dem Verkehrswegenetz sein. Sie kann auch durch einen Benutzer ausgewählt werden, um eine bestimmte Route unabhängig von einer Standortposition zu berechnen.
  • Ziel der Expansion ist das Erreichen einer Zielstruktur für den Fall, dass eine Route zwischen der Startposition und einer Zielposition gesucht wird. Dafür kann eine grobe Richtung zu der Zielposition ermittelt werden und im weiteren Verlauf die Expansion durch bevorzugen von Strukturen in diese Richtung gelenkt werden. Alternativ hierzu kann die Expansion in alle Richtungen erfolgen, beispielsweise wenn die Restreichweite eines Fahrzeugs ermittelt und auf einer Kartendarstellung (z.B. in einem Fahrzeug) angezeigt werden soll.
  • Als nächstes wirds Schritt 515 mindestens eine angrenzende geometrische Struktur ermittelt, in die ein Verkehrsweg aus der Startstruktur führt. Diese mindestens eine angrenzende geometrische Struktur kann durch Strukturinformationen 415 (4a) ermittelt werden. Dabei kann die Struktur-ID der Startstruktur verwendet werden, um einen Datensatz zu der geometrischen Startstruktur aus den Strukturdaten abzurufen. Die Strukturinformationen 415 enthalten die Durchfahrungsmöglichkeiten durch die Startstruktur. Aus diesen können Strukturgrenzen ermittelt werden, über die ein Verkehrsweg in eine angrenzende geometrische Struktur führt. In Schritt 515 werden alle angrenzenden geometrischen Strukturen, in die ein Verkehrsweg führt, ermittelt.
  • Weiterhin ist es möglich, dass die Startstruktur in Unterstrukturen unterteilt ist. In diesem Fall wird zunächst eine Startunterstruktur ermittelt, d.h. eine Unterstruktur, in der die Startposition liegt. Durch einfache Koordinaten- oder Vektorermittlung wird die Unterstruktur ermittelt. Mit der Struktur-ID der Startstruktur werden die zugehörigen ersten Unterstrukturinformationen 425 (4b) abgerufen. Von dieser Startunterstruktur aus können nun anhand der ersten Unterstrukturinformationen 425 Unterstrukturgrenzen ermittelt werden, die aus der Startunterstruktur herausführen. Dies erfolgt solange, bis eine Unterstrukturgrenze, die auf einer Strukturgrenze liegt, erreicht ist.
  • Alternativ können die angrenzenden geometrischen Strukturen durch die Unterstrukturausgangsinformationen 435 (4d) ermittelt werden. Dies ist zum Beispiel hilfreich, wenn die Startunterstruktur eine Unterstruktur am Rand der Struktur ist und, wie oben zu 3 beschrieben, für alle Eingangsunterstrukturen entsprechende zweite Unterstrukturinformationen 435 abgespeichert wurden. Dabei kann die Struktur-ID der Startstruktur sowie die Kennzeichnung der Startunterstruktur verwendet werden, um einen Datensatz zu dieser geometrischen Struktur aus den zweiten Unterstrukturdaten abzurufen. Die abgerufenen Unterstrukturausgangsinformationen 435 müssen dann nur noch dahingehend untersucht werden, ob sie einen positiven Bit-Wert („1“) enthalten. Für jedes Bit, das einen positiven Bit-Wert enthält, wird die zugehörige Unterstrukturgrenze und damit auch Strukturgrenze der Startstruktur ermittelt, über die ein Verkehrsweg aus der Startstruktur herausführt. Notwendigerweise führt dieser Verkehrsweg auch in die angrenzende geometrische Struktur hinein.
  • In einer Implementierungsvariante der vorliegenden Offenbarung sind die zweiten Unterstrukturdaten bzw. Unterstrukturausgangsinformationen 435 (siehe 4d) nicht in dem Speicher 120 abgelegt. Beispielsweise wurden sie nicht durch das Verfahren, das mit Bezug auf 3 beschrieben ist, ermittelt und abgespeichert. Da die zweiten Unterstrukturdaten nur einen Ausschnitt aus den ersten Unterstrukturdaten (siehe 4b und 4c) darstellen, können sie auch erst bei Bedarf aus diesen ermittelt werden. Dazu wird mittels der Struktur-ID der Startstruktur ein Datensatz aus den ersten Unterstrukturdaten abgerufen.
  • Bei dieser Implementierungsvariante ist jedoch zu berücksichtigen, dass in Unterstrukturen aufgeteilte Strukturen verschiedene sich nicht kreuzende Verkehrswege enthalten können. Daher sind die Unterstrukturausgangsinformationen 435 für bestimmte Unterstrukturen gesondert zu ermitteln. Wie oben beschrieben, können durch Auswertung der ersten Unterstrukturinformationen 425 die Unterstrukturausgangsinformationen der Struktur, aber nur ausgehend von einer bestimmten Unterstruktur, ermittelt werden.
  • Nachdem alle angrenzenden geometrischen Strukturen ermittelt wurden, in die ein Verkehrsweg aus der Startstruktur führt, wird in Schritt 520 ermittelt, ob diese angrenzenden geometrischen Strukturen jeweils selbst Unterstrukturen aufweisen. Diese Überprüfung kann auf einfache Weise dadurch erfolgen, dass in den ersten und/oder zweiten Unterstrukturdaten nach einem Datensatz gesucht wird, der die Struktur-ID der jeweiligen angrenzenden geometrischen Struktur aufweist. Wird kein solcher Datensatz gefunden, sind für die entsprechende geometrische Struktur keine Unterstrukturen angelegt worden.
  • Für den Fall, dass Unterstrukturen vorhanden sind, werden in Schritt 525 für alle ermittelten angrenzenden geometrischen Strukturen eine oder mehrere Unterstruktureingangsgrenzen ermittelt. Bei den Unterstruktureingangsgrenzen handelt es sich um Unterstrukturgrenzen, die auf der Grenze der geometrischen Struktur liegen und über die ein Verkehrsweg von der ausgehenden geometrischen Struktur (hier zuerst noch die Startstruktur) in die angrenzende geometrische Struktur verläuft.
  • In dem nachfolgenden Schritt 530 wird mindestens eine Unterstrukturausgangsgrenze, zugehörig zu der gerade betrachteten geometrischen Struktur, ermittelt. Eine Unterstrukturausgangsgrenze ist wieder eine Unterstrukturgrenze, über die ein Verkehrsweg in eine weitere angrenzende geometrische Struktur führt.
  • Anschließend wird in Schritt 535 mindestens eine weitere angrenzende geometrische Struktur ermittelt, die an die mindestens eine ermittelte Unterstrukturausgangsgrenze angrenzt.
  • Dieser expansive Vorgang wird nun anhand eines weiteren Beispiels in 6a näher erläutert. In 6a sind schematisch zwei benachbarte geometrische Strukturen dargestellt. Beide geometrischen Strukturen werden von zwei Verkehrswegen durchkreuzt. Ebenfalls dargestellt ist eine Startposition, beispielsweise eine Fahrzeugposition, in der linken geometrischen Struktur. Somit ist diese geometrische Struktur die Startstruktur.
  • Die beiden Straßen verlaufen über die Strukturgrenze zwischen den beiden geometrischen Strukturen. Somit ergeben sich die Unterstrukturausgangsgrenzen O3 und O1 als mögliche „Grenzübergänge“ zu der angrenzenden geometrischen Struktur rechts in 6a. Diese Information kann beispielsweise aus den Datensätzen mit den ersten oder zweiten Unterstrukturinförmationen (425 bzw. 435 in 4b bis 4d) über die Struktur-ID der linken Struktur (der Startstruktur) abgerufen werden.
  • Da die Startstruktur selbst in Unterstrukturen unterteilt ist, ist es möglich, dass von der Startposition aus nicht beide Unterstrukturausgangsgrenzen O3 und O1 erreicht werden können. Daher wird gemäß einer Implementierungsmöglichkeit zunächst eine Unterstruktur in der Startstruktur ermittelt, wobei die Startposition in dieser Unterstruktur liegt. Wie in 6a gezeigt, ist dies die Unterstruktur (3, 2). Bei durchnummerierten Unterstrukturen wäre dies Unterstruktur „SP14“.
  • Ausgehend von dieser Unterstruktur, in der sich die Startposition befindet, werden die Unterstrukturgrenzen ermittelt, über die ein Verkehrsweg in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt. Diese Ermittlung erfolgt durch Abrufen eines Datensatzes mit ersten Unterstrukturinformationen 425 (siehe 4b) anhand der Struktur-ID der Startstruktur. Aus den Unterstrukturinformationen 425 lassen sich die Bit-Werte zugehörig zu der Unterstruktur (3, 2) bzw. „SP14“ abrufen. Für die Unterstruktur (3, 2) müssten aus den Unterstrukturinformationen 425 die Bit-Positionen 57 bis 60 (14*4 + 1 bis +4) abgerufen werden. Die Nummerierung der Bit-Positionen kann auch mit Null beginnen, so dass die Bit-Positionen 56 bis 59 (14*4 bis +3) abgerufen werden. Im Fall der 6a bei einer Reihenfolge „NOSW“ würde dies die Bit-Werte „0101“ ergeben. Somit sind zwei Unterstrukturgrenzen vorhanden, über die ein Verkehrsweg in eine andere Unterstruktur führt.
  • Anschließend werden die Bit-Informationen zu den Unterstrukturen westlich und östlich von der Stattunterstrukturevaluiert und weitere Unterstrukturen aufgedeckt, durch die der Verkehrsweg verläuft. Hier die Unterstrukturen (3, 1) und (3, 3). Dieser Prozess wird solange wiederholt, bis mindestens eine Unterstrukturausgangsgrenze der Startstruktur erreicht ist. In 6a wären dies die Unterstrukturausgangsgrenzen W2 und O3. Über die in 6a gezeigte südliche Unterstrukturausgangsgrenze S0 sowie östliche Unterstrukturgrenze O1 ist keine Verbindung über einen Verkehrsweg von der Startposition aus vorhanden. Durch Auswertung der ersten Unterstrukturinformationen 425 können diese Unterstrukturausgangsgrenzen auch nicht erreicht werden.
  • Die Ermittlung der angrenzenden Strukturen kann aus den Unterstrukturausgangsgrenzen W2 und O3 abgeleitet werden. Die geometrischen Strukturen sind in gleicher Weise gekennzeichnet (nummeriert) wie die Unterstrukturen. Somit sind die Struktur-IDs für die angrenzenden geometrischen Strukturen nach Westen und Osten durch einfaches Subtrahieren bzw. Addieren von eins („1“) zum Index „j“ zu ermitteln. Nach Norden oder Süden müsste entsprechend der Index „i“ um eins erhöht bzw. verringert werden.
  • Im Fall einer Routenberechnung kann die Expansion in eine bestimmte Richtung bevorzugt werden. Liegt die Zielposition im Osten von der Startposition, kann eine Expansion nach Westen verworfen werden. Dabei können aber auch andere Faktoren als die Richtung berücksichtigt werden, beispielsweise die Straßenkategorie, Höhenunterschiede oder andere Kosten aus den Durchfahrungsinformationen der angrenzenden geometrischen Strukturen. Für eine Restreichweitenbestimmung würden natürlich alle Richtungen bei der Expansion berücksichtigt.
  • Für die angrenzende geometrische Struktur (rechts in 6a) wird nun ermittelt, ob sie Unterstrukturen aufweist. Da dies vorliegend der Fall ist, wird nach Unterstrukturausgangsgrenzen gesucht. Dies kann über ein Abrufen sowohl der ersten Unterstrukturinformationen 425 als auch der zweiten Unterstrukturinformationen 435 geschehen. Da auch hier mehrere Eingangsgrenzen und Ausgangsgrenzen vorhanden sind, kann die Expansion auch nur von der zu O3 benachbarten Unterstruktur fortgeführt werden. Dazu wird die entsprechende Unterstruktur der angrenzenden geometrischen Struktur ermittelt. Aufgrund der oben beschriebenen Kennzeichnung bzw. Nummerierung der Unterstrukturen ist dieser Übergang leicht zu ermitteln. Bei einer Indizierung im Format „i, j“ muss in Richtung Osten nur der Wert „j“ auf null („0“) gesetzt werden, während „i“ gleich bleibt. Für den Übergang von der Unterstruktur (3, 3) in Richtung Osten ist dies die Unterstruktur (3, 0). In Richtung Westen würde „j“ auf „n-1“ gesetzt. Ebenso wird bei einem Übergang nach Norden und Süden der Wert „i“ auf null („0“) bzw. „m-1“ gesetzt, während „j“ gleich bleibt. Bei einer Nummerierung im Format SP0 bis SP15 erfolgt die Ermittlung der Nachbarunterstruktur durch Subtraktion bzw. Addition der Anzahl Unterstrukturen in West-bzw. Ostrichtung.Nach Norden und Süden kann eine ähnliche Addition in Abhängigkeit der Zahl von Unterstrukturen vorgenommen werden.
  • In der angrenzenden geometrischen Struktur (rechts in 6a) erfolgt nun ausgehend von der „Eingangsgrenze“ W3 und der dazugehörigen Unterstruktur (3, 0) bzw. „SP12“ eine Expansion zu einer Unterstrukturausgangsgrenze. Dies geschieht wieder durch Auswerten der ersten Unterstrukturinformationen 425 (4b). Somit können weitere Unterstrukturen und Unterstrukturgrenzen ermittelt werden, bis eine Unterstrukturausgangsgrenze erreicht ist. Im Fall der 6a wird dabei die Unterstrukturausgangsgrenze N1 erreicht. Nun kann eine weitere angrenzende geometrische Struktur ermittelt werden und der Prozess wiederholt sich.
  • Wieder mit Bezug auf 5 wurde in Schritt 520 überprüft, ob eine angrenzende geometrische Struktur Unterstrukturen aufweist. Ist dies nicht der Fall („Nein“ in Schritt 520), wird der Schritt 540 durchgeführt. In diesem Schritt wird mindestens eine Strukturausgangsgrenze zugehörig zu der geometrischen Struktur ermittelt. Eine Strukturausgangsgrenze ist eine Strukturgrenze, über die ein Verkehrsweg in eine weitere angrenzende geometrische Struktur führt.
  • Nachfolgend wird die Annahme getroffen, dass in der 6a die rechte geometrischen Struktur (dies wäre nun die „angrenzende geometrische Struktur“) keine Unterstrukturen enthält. Dies bedeutet jedoch auch, dass die Verkehrswege in dieser geometrischen Struktur verbunden sind. Diese Verbindung ist in 6a gestrichelt dargestellt. Somit würden auch die nördliche und südliche Strukturgrenze als Strukturausgangsgrenzen ermittelt werden. Die westliche Strukturgrenze wäre in diesem Beispiel die Eingangsgrenze.
  • In dem weiteren Schritt 550 wird mindestens eine weitere angrenzende geometrische Struktur ermittelt. Dies wären - weiterhin unter der obigen Annahme - die geometrischen Strukturen, die nördlich und südlich an die rechte abgebildete Struktur angrenzen. Zu beachten ist nun jedoch, dass die linke Struktur zwei Unterstrukturausgangsgrenzen mit der rechten Struktur teilt. Da in der linken Struktur schon Unterstrukturen berücksichtigt wurden (die Expansion von dort her kam), muss es einen noch nicht berücksichtigten Verkehrsweg geben. Somit ist auch die westliche Strukturgrenze als Ausgangsgrenze zu betrachten. Allgemein lässt das Vorhandensein von Unterstrukturen in einer Struktur darauf schließen, dass dort unabhängige Verkehrswege vorhanden sind, während in einer geometrischen Struktur ohne Unterstrukturen miteinander verbundene oder nur ein einzelner Verkehrsweg(e) vorliegen.
  • Im Anschluss an Schritt 535 oder Schritt 550 fährt das Verfahren mit Schritt 560 fort, in dem die ermittelten weiteren angrenzenden geometrischen Strukturen als neue Startstrukturen festgelegt werden.
  • In dem nachfolgenden Schritt 565 wird überprüft, ob eine Iterationsgrenze erreicht ist. Solch eine Iterationsgrenze kann das Erreichen einer Zielstruktur sein, in der sich eine Zielposition befindet. Für den Fall, dass eine Restreichweitenbestimmung durchgeführt wird, ist die Iterationsgrenze das Erreichen einer bestimmten Distanz (die dem noch vorhandenen Energievorrat entsprechen kann) oder eines bestimmten Energieverbrauchs (z.B. angegeben in Litern verfügbaren Tankinhalts). Distanz und Energieverbrauch können anhand der Strukturdaten bzw. Durchfahrungsinformationen 415 (siehe 4a) während der Expansion ermittelt und für jeden Pfad aufsummiert werden.
  • Ist die Iterationsgrenze nicht erreicht, geht das Verfahren zu Schritt 515 zurück und wird für die neue bzw. neuen Startstruktur(en) wiederholt. Es wird also zunächst untersucht, ob die neue bzw. neuen Startstruktur(en) Unterstrukturen enthalten. Anschließend werden wieder weitere angrenzende geometrische Strukturen ermittelt, die wieder als neue Startstrukturen festgelegt werden (Schritt 560).
  • Dies wird solange wiederholt, bis in Schritt 565 ermittelt wird, dass die Iterationsgrenze erreicht ist. In diesem Fall („Ja“ bei Schritt 565) werden alle erreichten geometrischen Strukturen in Schritt 570 gespeichert. Alternativ hierzu können die Strukturen auch angezeigt werden, was jedoch zumindest eine graphische Speicherung beinhaltet. Beides ermöglicht eine Anzeige einer ermittelten Route bzw. Reichweite in einer Kartendarstellung. Da die Expansion auf Strukturebene stattfand, können auch nur die geometrischen Strukturen, die bei der Expansion durchlaufen wurden, in der Darstellung hervorgehoben oder anderweitig gekennzeichnet werden. Für den Benutzer erlaubt dies aber eine schnelle Anzeige des Expansionsergebnisses. Die Ungenauigkeit ist dabei meist akzeptabel, da sowohl bei einer (ggf. groben) Routenermittlung als auch Restreichweitenbestimmung der Anzeige häufig ein großes Kartengebiet runde liegt.
  • Die oben dargelegte Expansion kann zwischen geometrischen Strukturen mit und ohne Unterstrukturen erfolgen. In einer weiteren Implementierungsmöglichkeit können geometrische Strukturen auch eine unterschiedliche Anzahl von Unterstrukturen aufweisen. Wie in 6b gezeigt ist, können unterschiedliche geometrische Strukturen in unterschiedlich große bzw. in eine unterschiedliche Anzahl von Unterstrukturen unterteilt sein. In diesem Fall ist bei dem Übergang von einer geometrischen Struktur zur nächsten zunächst zu überprüfen, ob für Unterstrukturen in einer geometrischen Struktur eine entsprechende Anzahl von Unterstrukturen in einer benachbarten (angrenzenden) geometrischen Struktur vorhanden ist. Alternativ hierzu kann nicht die Anzahl innerhalb einer geometrischen Struktur verglichen werden, sondern die Anzahl von Unterstrukturen entlang einer Strukturgrenze zwischen den zwei geometrischen Strukturen.
  • Dies kann beispielsweise dadurch erfolgen, dass die Anzahl der Bits in den ersten Unterstrukturinformationen 425 (4b) der beiden angrenzenden geometrischen Strukturen verglichen wird. Alternativ hierzu kann die Anzahl der Bits in den Unterstrukturausgangsinformationen 435 (4d) der beiden angrenzenden geometrischen Strukturen verglichen werden. Dies funktioniert jedoch nur, wenn, wie im Idealfall, immer die gleiche Anzahl von Unterstrukturen in Längs- und Querrichtung verwendet wird. Sollte hingegen eine unterschiedliche Zahl von Unterstrukturen in Längs- und Querrichtung vorhanden sein, muss die Datenstruktur diese Information enthalten. Dies kann zum Beispiel in einem eigenen Datensatz gespeichert sein. Alternativ oder zusätzlich hierzu kann einer oder können mehrere der in den 4a, 4b und 4d gezeigten Datensätze diese Information speichern. Beispielsweise könnten die Zahlen n und m, wie sie in Bezug auf 2d erläutert wurden, in einem der erwähnten Datensätze gespeichert werden. Für den Fall, dass anstatt Rechtecke andere Polygone verwendet werden, muss zusätzlich die Zahl der Seitenkanten bzw. der Ecken der Polygone gespeichert werden.
  • Es ist von Vorteil, wenn n und m von benachbarten Strukturen jeweils ein Vielfaches des entsprechenden Wertes der angrenzenden Struktur ist. Dadurch fallen immer sämtliche Unterstrukturgrenzen der Struktur mit weniger Unterstrukturen auf eine Unterstrukturgrenze der Struktur mit mehr Unterstrukturen. So ist eine eindeutige und damit bessere Zuordnung von Unterstrukturen möglich.
  • Mit Bezug auf 6b wird nun beschrieben, wie ein Übergang zwischen Strukturen mit einer unterschiedlichen Azahl von Unterstrukturen erfolgt. In der dargestellten linken Struktur wurden Unterstrukturen mit n=4 und m=4 angelegt, während dies in der rechten Struktur mit n=8 und m=8 erfolgte. Das Verfahren gemäß der vorliegenden Offenbarung ermittelt, dass n bzw. m von angrenzenden Strukturen unterschiedlich sind. Zur Ermittlung der entsprechenden Unterstrukturgrenzen zweier benachbarter geometrischer Strukturen kann das Verhältnis der Anzahl an Unterstrukturen entlang einer Strukturgrenze berechnet werden. Im vorliegenden Fall wäre das Verhältnis 1:2, woraus abgeleitet werden kann, dass für eine Unterstrukturgrenze aus der linken Struktur zwei Unterstrukturgrenzen in der rechten Struktur berücksichtigt werden müssen.
  • Beispielsweise können dann von der Unterstrukturausgangsgrenze O3 zwei Unterstruktureingangsgrenzen W6 und W7 in der benachbarten geometrischen Struktur ermittelt werden. Die zugehörigen Unterstrukturen (6, 0) und (7, 0) weisen jedoch nicht beide einen positiven Bit-Wert („1“) für ihre westlichen Seitenkanten auf. Dadurch kann ermittelt werden, dass für die Unterstruktur (7, 0) kein Verkehrsweg über die Unterstrukturgrenze W7 führt. Somit muss der Verkehrsweg aus der Unterstruktur (3, 3) der linken geometrischen Struktur in die Unterstruktur (6, 0) der rechten geometrischen Struktur führen, also über O3 bzw. W6. Die weitere Expansion über Verkehrswege anhand der Unterstrukturinformationen erfolgt dann wie oben in Bezug auf 5 beschrieben wurde.
  • Die vorliegende Offenbarung erlaubt somit eine präzisere Ermittlung von Pfaden durch das Verkehrswegenetz, ohne große Einbußen bei der Geschwindigkeit der Pfadberechnung in Kauf nehmen zu müssen. Für jede Unterstruktur müssen nur so viele Bit-Werte gespeichert werden, wie sie Unterstrukturgrenzen aufweist. Anstatt die Durchfahrungsinformationen der geometrischen Strukturen auf die Unterstrukturen aufzubrechen oder sogar neu zu berechnen, werden nur gemäß einer Variante ausschließlich Durchfahrungsrichtungen gespeichert. Somit muss ein Expansionsalgorithmus lediglich auf der Ebene der Unterstrukturgrenzen arbeiten, während die Durchfahrungsinformationen auf Strukturebene berücksichtigt werden. Hier wären natürlich auch andere Varianten denkbar.
  • Zusammengefasst ermöglicht die vorliegende Offenbarung eine genauere Pfadberechnung, ohne die zur Verfügung stehenden Prozessor- und Speicherresourcen unnötig zu belasten. Von der genaueren Pfadberechnung profitiert ein Fahrer vor allem bei der zuverlässigeren Restreichweitenbestimmung bei vorgegebenem Energievorrat. Allerdings lässt sich die höhere Genauigkeit auch bei vielen weiteren Applikationen, beispielsweise im Bereichder Routenberechnung bzw. Navigation, in vorteilhafter Weise ausnutzen.

Claims (31)

  1. Verfahren zum Erstellen einer Datenstruktur zur Verwendung durch einen Algorithmus, der Pfade in einem Verkehrswegenetz ermittelt, wobei aneinandergrenzende geometrische Strukturen, die jeweils durch mindestens drei Strukturgrenzen definiert sind, auf das Verkehrswegenetz gelegt sind, wobei das Verfahren umfasst: Ermitteln (305) mindestens einer geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten, wobei ein Verkehrswegschnittpunkt ein Schnittpunkt zwischen einer Strukturgrenze und einem Verkehrsweg ist; Ermitteln (310), ob bei der mindestens einen geometrischen Struktur mit mindestens zwei Verkehrswegschnittpunkten mindestens ein Verkehrswegschnittpunktpaar nicht durch einen Verkehrsweg verbunden ist; Unterteilen (315) der mindestens einen geometrischen Struktur in Unterstrukturen, wobei jede Unterstruktur mindesten drei Unterstrukturgrenzen aufweist, wobei das Unterteilen der mindestens einen geometrischen Struktur in Unterstrukturen auf geometrische Strukturen mit mindestens einem Verkehrswegschnittpunktpaar, das nicht durch einen Verkehrsweg verbunden ist, beschränkt ist; Ermitteln (320) von ersten Unterstrukturinformationen (425) für die mindestens eine unterteilte geometrische Struktur, wobei die ersten Unterstrukturinformationen anzeigen, über welche der Unterstrukturgrenzen einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt; und Speichern der ersten Unterstrukturinformationen (425) in einer Datenstruktur.
  2. Verfahren gemäß Anspruch 1, wobei das Verfahren des Weiteren umfasst: Ermitteln (325) von zweiten Unterstrukturinformationen (435) für die mindestens eine unterteilte geometrische Struktur, wobei die zweiten Unterstrukturinformationen anzeigen, über welche der Unterstrukturgrenzen einer Unterstruktur ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt; und Speichern der ermittelten zweiten Unterstrukturinformationen in der Datenstruktur.
  3. Verfahren gemäß Anspruch 1 oder 2, wobei das Unterteilen derart erfolgt, dass innerhalb keiner der resultierenden Unterstrukturen jegliche zwei Schnittpunkte zwischen einer Unterstrukturgrenze und einem Verkehrsweg nicht über mindestens einen Verkehrsweg miteinander verbunden sind.
  4. Verfahren gemäß einem der Ansprüche 1 bis 3, wobei das Unterteilen der mindestens einen geometrischen Struktur in Unterstrukturen ein Unterteilen der geometrischen Struktur entlang von Längengraden und Breitengraden und/oder ein Unterteilen der geometrischen Struktur entlang von Symmetrieachsen und/oder ein Unterteilen der geometrischen Struktur in gleich große Unterstrukturen umfasst.
  5. Verfahren gemäß einem der Ansprüche 1 bis 4, wobei die geometrische Struktur und die Unterstrukturen jeweils als Polygon ausgebildet sind und die Strukturgrenze und die Unterstrukturgrenze jeweils als Polygonkante ausgebildet sind.
  6. Verfahren gemäß Anspruch 5, wobei das Unterteilen der mindestens einen geometrischen Struktur in Unterstrukturen derart erfolgt, dass Verkehrswegschnittpunkte auf unterschiedlichen Polygonkanten einer Unterstruktur liegen.
  7. Verfahren gemäß Anspruch 5 oder 6, wobei ein ganzzahliges Vielfaches einer Seitenlänge der Unterstruktur einer Seitenlänge der unterteilten geometrischen Struktur entspricht.
  8. Verfahren gemäß einem der Ansprüche 5 bis 7, wobei das Ermitteln von Unterstrukturinformationen umfasst: Ermitteln, welche der Polygonkanten einer Unterstruktur einen Verkehrswegschnittpunkt aufweist, wobei die ersten Unterstrukturinformationen kennzeichnen, dass über die ermittelten Polygonkanten ein Verkehrsweg verläuft.
  9. Verfahren gemäß einem der Ansprüche 5 bis 8, wobei das Speichern ein Speichern eines einzelnen Bit-Werts für eine Polygonkante umfasst, wobei der Bit-Wert angibt, dass über die zugehörige Polygonkante ein Verkehrsweg verläuft oder nicht.
  10. Verfahren gemäß einem der Ansprüche 1 bis 9, wobei das Verfahren umfasst: Ermitteln eines öder mehrerer Pfade von einem Anfangsverkehrswegschnittpunkt zu einem Endverkehrswegschnittpunkt, wobei ein Anfangsverkehrswegschnittpunkt ein Schnittpunkt zwischen einer ersten Strukturgrenze und einem Verkehrsweg ist und ein Endverkehrswegschnittpunkt ein Schnittpunkt zwischen einer zweiten Strukturgrenze und einem Verkehrsweg ist, und wobei die erste und die zweite Strukturgrenze unterschiedliche Strukturgrenzen sind; Gruppieren aller Pfade, deren Anfangsverkehrswegschnittpunkt und Endverkehrswegschnittpunkt jeweils auf derselben Strukturgrenze liegen; und Berechnen (300) von Durchfahrungsinformationen für jede Gruppe von Pfaden der mindestens einen geometrischen Struktur.
  11. Verfahren gemäß Anspruch 10, wobei das Ermitteln eines oder mehrerer Pfade alle Kombinationen von Verkehrswegschnittpunktpaaren der mindestens einen geometrischen Struktur berücksichtigt.
  12. Verfahren gemäß Anspruch 10 oder 11, wobei das Berechnen von Durchfahrungsinformationen ein Berechnen, für jede Gruppe, einer durchschnittlichen Länge, eines durchschnittlichen Höhenunterschieds und/oder eines durchschnittlichen Energieverbrauchs umfasst.
  13. Datenstruktur zur Verwendung durch einen Algorithmus, der Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz ermittelt, wobei mindestens eine geometrische Struktur in Unterstrukturen unterteilt ist, wobei die Datenstruktur umfasst: mindestens einen Strukturdatensatz, der umfasst: - Strukturidentifizierungsdaten (410), die eine geometrische Struktur identifizieren; mindestens einen Unterstrukturdatensatz, der umfasst: - Strukturidentifizierungsdaten (420), die eine geometrische Struktur identifizieren, die in Unterstrukturen unterteilt ist; und - erste Unterstrukturinformationen (425) für die unterteilte geometrische Struktur, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur hinausführt, wobei die Datenstruktur nur einen oder mehrere Unterstrukturdatensätze für geometrische Strukturen mit mindestens zwei Verkehrswegschnittpunkten und mit mindestens einem Verkehrswegschnittpunktpaar, das nicht durch einen Verkehrsweg verbunden ist, umfasst, wobei ein Verkehrswegschnittpunkt ein Schnittpunkt zwischen einer Strukturgrenze und einem Verkehrsweg ist.
  14. Datenstruktur gemäß Anspruch 13, wobei der Unterstrukturdatensatz ferner umfasst: - zweite Unterstrukturinformationen (435) für die unterteilte geometrische Struktur, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt.
  15. Datenstruktur gemäß Anspruch 13 oder 14, wobei der Strukturdatensatz ferner umfasst: - Durchfahrungsdaten (415) ausgehend von jeder Strukturgrenze, die von einem Verkehrsweg geschnitten wird, wobei die Durchfahrungsdaten Durchfahrungsinformationen zu einer der anderen Strukturgrenzen enthalten.
  16. Datenstruktur gemäß einem der Ansprüche 13 bis 15, wobei die ersten und/oder zweiten Unterstrukturinformationen Unterstrukturdaten in einer vorgegebenen Anordnung enthalten, wobei durch die vorgegebene Anordnung die zugehörige Unterstruktur und Unterstrukturgrenze identifizierbar ist.
  17. Datenstruktur gemäß einem der Ansprüche 13 bis 16, die ferner umfasst: Grenzüberlappungsinformationen, die mindestens eine Unterstrukturgrenze, die auf einer Strukturgrenze liegt, und die zugehörige Strukturgrenze angeben.
  18. Datenstruktur gemäß einem der Ansprüche 13 bis 17, wobei die Datenstruktur nach dem Verfahren gemäß einem der Ansprüche 1 bis 12 erstellt .wird.
  19. Verfahren zum iterativen Ermitteln eines oder mehrerer Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz, wobei mindestens eine geometrische Struktur in Unterstrukturen unterteilt ist, wobei das Verfahren die folgenden Schritte umfasst: a) Ermitteln (510) einer geometrischen Startstruktur, in der eine Startposition eines Pfads in dem Verkehrswegenetz liegt; b) Ermitteln (515) mindestens einer angrenzenden geometrischen Struktur, in die ein Verkehrsweg aus der Startstruktur führt; c) Ermitteln (525), wenn zu einer angrenzenden geometrischen Struktur Unterstrukturen existieren, einer Unterstruktureingangsgrenze zugehörig zu der angrenzenden geometrischen Struktur, wobei der Verkehrsweg über die Unterstruktureingangsgrenze führt; d) Ermitteln (530), auf Basis der Datenstruktur gemäß einem der Ansprüche 13 bis 18, mindestens einer Unterstrukturausgangsgrenze zugehörig zu der angrenzenden geometrischen Struktur, wobei über die Unterstrukturausgangsgrenze ein Verkehrsweg in eine weitere angrenzende geometrische Struktur führt; e) Ermitteln (535) mindestens einer weiteren angrenzenden geometrischen Struktur, die an die mindestens eine ermittelte Unterstrukturausgangsgrenze angrenzt; f) Festlegen (560) der mindestens einen weiteren angrenzenden geometrischen Struktur als jeweils neue Startstruktur; und g) Wiederholen der Schritte b) bis f) für die mindestens eine neue Startstruktur bis eine Iterationsgrenze erreicht ist.
  20. Verfahren gemäß Anspruch 19, wobei das Verfahren nach dem Schritt b) ein Ermitteln, ob für mindestens eine angrenzende geometrische Struktur Unterstrukturen existieren, umfasst, wobei, wenn für eine angrenzende geometrische Struktur Unterstrukturen existieren, mit Schritt c) fortgefahren wird, und wobei, wenn für eine angrenzende geometrische Struktur keine Unterstrukturen existieren, ein Ermitteln (540) mindestens einer Strukturausgangsgrenze zugehörig zu der angrenzenden geometrischen Struktur durchgeführt wird, wobei über die Strukturausgangsgrenze ein Verkehrsweg in eine weitere angrenzende geometrische Struktur führt, und anschließend zu Schritt f) gesprungen wird.
  21. Verfahren gemäß Anspruch 19 oder 20, wobei der Schritt d) umfasst: d1) Ermitteln mindestens einer Unterstrukturgrenze zugehörig zu der Unterstruktur, in die der Verkehrsweg führt, wobei über die mindestens eine Unterstrukturgrenze ein Verkehrsweg in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt; und d2) Wiederholen des Schritts d1) für die angrenzende Unterstruktur bis mindestens eine Unterstrukturausgangsgrenze der angrenzenden geometrischen Struktur erreicht ist.
  22. Verfahren gemäß einem der Ansprüche 19 bis 21, wobei das Verfahren nach dem Schritt a) folgende Schritte umfasst: a1) Ermitteln einer Unterstruktur in der-Startstruktur, wobei die Startposition in der Unterstruktur liegt; a2) Ermitteln mindestens einer Unterstrukturgrenze der Unterstruktur, über die ein Verkehrsweg in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur führt; und a3) Wiederholen des Schritts a2) für die angrenzende Unterstruktur bis mindestens eine Unterstrukturausgangsgrenze der Startstruktur erreicht ist.
  23. Verfahren gemäß einem der Ansprüche 19 bis 22, wobei das Verfahren umfasst: h) Speichern (570) aller erreichten geometrischen Strukturen.
  24. Verfahren gemäß einem der Ansprüche 19 bis 23, wobei der Schritt d1) und/oder der Schritt a2) umfassen: - Aufrufen der Datenstruktur, die für die geometrische Struktur erste Unterstrukturinformationen enthält, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der Unterstruktur in eine angrenzende Unterstruktur oder eine angrenzende geometrische Struktur hinausführt; und - Ermitteln der mindestens einen Unterstrukturausgangsgrenze anhand der ersten Unterstrukturinformationen.
  25. Verfahren gemäß einem der Ansprüche 19 bis 24, wobei der Schritt d) umfasst: Aufrufen einer Datenstruktur, die für die geometrische Struktur zweite Unterstrukturinformationen enthält, die anzeigen, über welche Unterstrukturgrenze einer Unterstruktur ein Verkehrsweg aus der geometrischen Struktur in eine angrenzende geometrische Struktur führt; und - Ermitteln der mindestens einen Unterstrukturgrenze anhand der zweiten Unterstrukturinformationen.
  26. Verfahren gemäß Anspruch 24 oder 25, wobei das Aufrufen einer Datenstruktur umfasst: - Übermitteln von Strukturidentifizierungsdaten einer bestimmten geometrischen Struktur; und - Abrufen eines Unterstrukturdatensatzes aus der Datenstruktur für die bestimmte geometrische Struktur.
  27. Verfahren gemäß einem der Ansprüche 19 bis 26, wobei die Iterationsgrenze eine Reichweite eines Fahrzeugs oder eine geometrische Struktur mit einer Zielposition widerspiegelt.
  28. Vorrichtung (100) zum Erstellen einer Datenstruktur zur Verwendung durch einen Algorithmus, der Pfade in einem Verkehrswegenetz ermittelt, wobei aneinandergrenzende geometrische Strukturen, die jeweils durch mindestens drei Strukturgrenzen definiert sind, auf das Verkehrswegenetz gelegt sind, wobei die Vorrichtung umfasst: ein Prozessorsystem (110), das eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 12 durchzuführen.
  29. Vorrichtung gemäß Anspruch 28, ferner umfassend: einen Speicher (120), der eingerichtet ist, eine Datenstruktur nach einem der Ansprüche 13 bis 18 zu speichern.
  30. Vorrichtung zum Ermitteln eines oder mehrerer Pfade in einem in geometrische Strukturen unterteilten Verkehrswegenetz, wobei mindestens eine geometrische Struktur in Unterstrukturen unterteilt ist, wobei die Vorrichtung umfasst: ein Prozessorsystem, das eingerichtet ist, das Verfahren nach einem der Ansprüche 19 bis 27 durchzuführen.
  31. Vorrichtung gemäß Anspruch 30, ferner umfassend: einen Speicher, der eingerichtet ist, eine Datenstruktur nach einem der Ansprüche 13 bis 18 zu speichern.
DE102013008936.0A 2013-05-24 2013-05-24 Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz Active DE102013008936B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102013008936.0A DE102013008936B4 (de) 2013-05-24 2013-05-24 Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz
DE202013012762.7U DE202013012762U1 (de) 2013-05-24 2013-05-24 Vorrichtung zur Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102013008936.0A DE102013008936B4 (de) 2013-05-24 2013-05-24 Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz

Publications (2)

Publication Number Publication Date
DE102013008936A1 DE102013008936A1 (de) 2014-11-27
DE102013008936B4 true DE102013008936B4 (de) 2021-09-02

Family

ID=69144164

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102013008936.0A Active DE102013008936B4 (de) 2013-05-24 2013-05-24 Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz
DE202013012762.7U Expired - Lifetime DE202013012762U1 (de) 2013-05-24 2013-05-24 Vorrichtung zur Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE202013012762.7U Expired - Lifetime DE202013012762U1 (de) 2013-05-24 2013-05-24 Vorrichtung zur Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz

Country Status (1)

Country Link
DE (2) DE102013008936B4 (de)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167332A (en) 1999-01-28 2000-12-26 International Business Machines Corporation Method and apparatus suitable for optimizing an operation of a self-guided vehicle
DE102005029334A1 (de) 2004-09-27 2006-04-06 Daimlerchrysler Ag Verfahren zum Ermitteln einer von einem Fahrzeug zu befahrenden Wegstrecke
US20100106403A1 (en) 2004-07-20 2010-04-29 Navteq North America, Llc Navigation System with Downloadable Map Data
US20100292913A1 (en) 2006-11-07 2010-11-18 Uwe Walkling Storage medium for map data, method for generating maps, and navigation device
US20110301837A1 (en) 2005-11-09 2011-12-08 Harman Becker Automotive Systems Gmbh Optimum route determination with tiling
WO2012065726A1 (de) 2010-11-18 2012-05-24 Audi Ag Reichweiten- und/oder verbrauchsberechnung mit flächensegmenten zugeordneten energiekosten
DE102011104258A1 (de) 2010-11-19 2012-05-24 Audi Ag Verfahren zur Ermittlung einer die Restreichweite eines Kraftfahrzeugs beschreibenden Teilfläche einer Karte und Kraftfahrzeug
EP1548686B1 (de) 2002-07-30 2012-09-05 Xanavi Informatics Corporation Kartendatenprodukt und kartendatenprozessor

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167332A (en) 1999-01-28 2000-12-26 International Business Machines Corporation Method and apparatus suitable for optimizing an operation of a self-guided vehicle
EP1548686B1 (de) 2002-07-30 2012-09-05 Xanavi Informatics Corporation Kartendatenprodukt und kartendatenprozessor
US20100106403A1 (en) 2004-07-20 2010-04-29 Navteq North America, Llc Navigation System with Downloadable Map Data
DE102005029334A1 (de) 2004-09-27 2006-04-06 Daimlerchrysler Ag Verfahren zum Ermitteln einer von einem Fahrzeug zu befahrenden Wegstrecke
US20110301837A1 (en) 2005-11-09 2011-12-08 Harman Becker Automotive Systems Gmbh Optimum route determination with tiling
US20100292913A1 (en) 2006-11-07 2010-11-18 Uwe Walkling Storage medium for map data, method for generating maps, and navigation device
WO2012065726A1 (de) 2010-11-18 2012-05-24 Audi Ag Reichweiten- und/oder verbrauchsberechnung mit flächensegmenten zugeordneten energiekosten
DE102011104258A1 (de) 2010-11-19 2012-05-24 Audi Ag Verfahren zur Ermittlung einer die Restreichweite eines Kraftfahrzeugs beschreibenden Teilfläche einer Karte und Kraftfahrzeug

Also Published As

Publication number Publication date
DE202013012762U1 (de) 2019-05-09
DE102013008936A1 (de) 2014-11-27

Similar Documents

Publication Publication Date Title
DE69732015T2 (de) Karthographisches Datenbankgerät
DE69934301T2 (de) Wegesuchsystem
DE69828339T2 (de) Programm zum Erzeugen von Manövern
DE69729426T2 (de) Kartographisches Datenbankgerät
EP1721127B1 (de) Verfahren zum speichern von verkehrswegeabschnitte repr esentierenden kartendaten in einem navigationssystem und navigationssystem
EP2641061B1 (de) Verfahren zur automatischen ermittlung einer begrenzung einer teilfläche einer gesamtfläche
EP2507589B1 (de) Verfahren zur vereinfachung einer beschreibung einer fahrtroute
EP2020589A2 (de) Verfahren zur Anzeige einer Manöverschemaansicht in einem Navigationssystem
DE102011003152A1 (de) Kartendaten, Verfahren zum Erstellen derselben, Datenprodukt, das dieselben enthält, Speichermedium, das dieselben enthält, und Navigationsvorrichtung, die dieselben verwendet
DE102009019498A1 (de) Verfahren zur Erzeugung einer digitalen Straßenkarte, Navigationssystem und Verfahren zum Betrieb eines Navigationssystems
DE202015103648U1 (de) Verarbeitungssystem zur Transportanalyse
EP2602591A1 (de) Verfahren zur vereinfachten Speicherung von Daten repräsentierend Formen
DE102013008936B4 (de) Erstellung und Verwendung einer Datenstruktur für die Pfadermittlung in einem Verkehrswegenetz
DE102017216237A1 (de) Verfahren zum Ermitteln eines Verlaufs von Fahrspuren eines Straßennetzes sowie Servervorrichtung zum Durchführen des Verfahrens
EP0261450B1 (de) Leitsystem für den Individualverkehr
DE112013007399T5 (de) Globale Gittererstellung in Aufschiebungsbereichen durch ein optimiertes Entzerrungsverfahren
EP2069719A1 (de) Anzeigevorrichtung zur anzeige einer reiseroute
DE112012005733B4 (de) Kartendatenstruktur, Kartendatenerstellungsverfahren und Bordinformationsterminal
DE112011105919B4 (de) Karteninformations-Verarbeitungsvorrichtung
DE102007048264A1 (de) Verfahren zum Betrieb eines Navigationssystems
DE102017209977A1 (de) Verfahren und Vorrichtung zum Bestimmen eines freien Objektraums und Erzeugen einer definierten Grenze
DE102007053582B4 (de) Verfahren zum Betrieb eines Navigationssystems
DE60106857T2 (de) Verfahren und Vorrichtung für Referenzstandorte in der Transporttelematik
DE102006013388A1 (de) Verfahren zum Betrieb eines Navigationssystems
DE102018210677A1 (de) Verfahren zur Fusion von Kartendatensätzen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: E.SOLUTIONS GMBH, DE

Free format text: FORMER OWNER: E.SOLUTIONS GMBH, 85057 INGOLSTADT, DE

R082 Change of representative

Representative=s name: WUESTHOFF & WUESTHOFF, PATENTANWAELTE PARTG MB, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R006 Appeal filed
R008 Case pending at federal patent court
R019 Grant decision by federal patent court
R020 Patent grant now final