DE69131270T2 - Verfahren zur Speicherung eines topologischen Netzwerkes und Verfahren und Geräte, um eine Reihe von 1-Zellen zu identifizieren - Google Patents
Verfahren zur Speicherung eines topologischen Netzwerkes und Verfahren und Geräte, um eine Reihe von 1-Zellen zu identifizierenInfo
- Publication number
- DE69131270T2 DE69131270T2 DE69131270T DE69131270T DE69131270T2 DE 69131270 T2 DE69131270 T2 DE 69131270T2 DE 69131270 T DE69131270 T DE 69131270T DE 69131270 T DE69131270 T DE 69131270T DE 69131270 T2 DE69131270 T2 DE 69131270T2
- Authority
- DE
- Germany
- Prior art keywords
- cell
- node
- section
- boundary
- network
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 40
- 230000008520 organization Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000015654 memory Effects 0.000 description 7
- 239000011800 void material Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- VKYKSIONXSXAKP-UHFFFAOYSA-N hexamethylenetetramine Chemical compound C1N(C2)CN3CN1CN2C3 VKYKSIONXSXAKP-UHFFFAOYSA-N 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
- Die Erfindung bezieht sich auf ein Verfahren zur Speicherung von digitalen Daten, die ein topologisches Netzwerk darstellen, wobei das Netzwerk eine Gruppe von 0- Zellen (Knotenpunkten) und eine Gruppe von 1-Zellen umfaßt und in Abschnitte unterteilt ist, die diskreten Datenparzellen zur Speicherung in einem Massenspeicher entsprechen, wobei ein Grenzknotenpunkt an jedem Punkt definiert ist, an dem das Netzwerk eine Grenze zwischen Abschnitten überquert, wobei die Datenparzelle für einen bestimmten Abschnitt einen Kettenlisten-Datensatz für jede 1-Zelle in dem Abschnitt enthält und dieser Kettenlisten-Datensatz zumindest im Fall einer 1-Zelle, die an Nicht-Grenzknotenpunkten endet, Informationen für beide 0-Zellen enthält, die sich auf die Nicht-Grenzknotenpunkte beziehen und wobei diese Informationen auf weitere 1-Zellen in dem Netzwerk verweisen, die an den gleichen Nicht-Grenzknotenpunkten enden.
- Verfahren und Gerät wie oben beschrieben sind im Zusammenhang mit einem Fahrzeug-Navigationssystem in der Patentschrift EP-A1-0 306 075 geschildert. Einen Überblick über das gleiche Navigationssystem vermittelt der Artikel "CARIN, a car information and navigation system" von M. L. G. Thoone, veröffentlicht in Philips Technical Review, Band 43, Nr. 11/12, Dezember 1989, auf den Seiten 317 bis 329.
- In dem bekannten System identifizieren Kettenlisten-Datensätze für einen bestimmten Abschnitt 1-Zellen in benachbarten Abschnitten, wo die 1-Zelle an einem Grenzknotenpunkt endet. Dies vereinfacht die Aufgabe für das fahrzeuginterne Gerät beim Folgen einer Reihe von 1-Zellen, die eine gewünschte Strecke bilden, selbst über Abschnittgrenzen hinweg. Bei vielen Anwendungen wird es vorzuziehen sein, den Verarbeitungsaufwand auf die Kompilierung der Datenbank zu konzentrieren, um die Nutzung der Datenbank zu vereinfachen (kostengünstiger zu machen). Bei einer Massenmarktanwendung wie der Fahrzeugnavigation können mit dieser Philosophie die Eigenschaften eines preisgünstigen, jedoch im wesentlichen nur lesbaren Speichermediums mit sehr hoher Dichte, wie zum Beispiel der Compact Disc, in vollem Umfang genutzt werden.
- Leider führt die Notwendigkeit zur Identifizierung von 1-Zellen in benachbarten Abschnitten dazu, daß die Kettenlisten-Datensätze viel Speicherplatz in den Datenparzellen in Anspruch nehmen. Dieser große Speicherplatz übermittelt keine entsprechend große Informationsmenge, da nur eine kleine Minderheit der 1-Zellen, auf die verwiesen wird, außerhalb des bestimmten Abschnitts liegt.
- Die vorliegende Erfindung hat zur Aufgabe, die Menge der Netzwerkdaten zu reduzieren und gleichzeitig den Informationsgehalt aufrechtzuerhalten oder zu verbessern. Eine weitere Aufgabe der Erfindung besteht darin, Verfahren und Geräte zum effizienten Abrufen der gespeicherten Daten zu ermöglichen bzw. zu schaffen.
- Die Erfindung liefert ein Verfahren zur Speicherung von Daten, die ein topologisches Netzwerk darstellen, wie eingangs beschrieben, das dadurch gekennzeichnet ist, daß für eine 1-Zelle, die an einem Grenzknotenpunkt endet, die in der genannten 1-Zelle für den betreffenden Knotenpunkt enthaltenen Informationen einen Indikator (NIL) enthalten, der angibt, daß es sich bei dem genannten Knotenpunkt um einen Grenzknotenpunkt handelt; und dadurch, daß die Datenparzelle weitere Informationen (O-C') außerhalb des Kettenlisten-Datensatzes der genannten 1-Zelle enthält, wobei diese weiteren Informationen auf eine 1-Zelle außerhalb des Netzwerkabschnitts verweisen, auf den sich die Parzelle bezieht, und die an dem gleichen Grenzknotenpunkt endet. Bei einem derartigen Verfahren brauchen die Kettenlisten-Datensätze nur 1-Zellen zu identifizieren, die ausschließlich innerhalb eines einzelnen Abschnitts liegen, und sie nehmen daher weniger Platz in Anspruch. Obwohl eine bestimmte Informationsmenge von den Kettenlisten-Datensätzen verlorengegangen ist, kann diese an anderer Stelle ersetzt werden, wobei insgesamt Speicherplatz eingespart wird.
- In einer Ausführungsform der Erfindung umfassen die weiteren Informationen in der Datenparzelle für einen bestimmten Abschnitt des Netzwerks einen Knotenpunktlisten-Datensatz für jeden Knotenpunkt in dem Abschnitt, und der Knotenpunktlisten- Datensatz für einen Grenzknotenpunkt in einem bestimmten Abschnitt enthält einen Verweis auf einen entsprechenden Knotenpunkt in einem benachbarten Abschnitt sowie einen verkettenden Zeiger, der auf eine 1-Zelle in dem bestimmten Abschnitt verweist, aber auch keinen direkten Verweis auf eine 1-Zelle außerhalb des bestimmten Abschnitts. In dieser Ausführungsform besteht keinerlei Notwendigkeit, direkt auf 1-Zellen außerhalb eines bestimmten Abschnitts in der topologischen Beschreibung dieses Abschnitts zu verweisen, so daß in den Knotenpunktlisten-Datensätzen und in den Kettenlisten-Datensätzen ein kürze rer Verweis für jede 1-Zelle möglich wird. Ein Knotenpunktlisten-Datensatz für einen Nicht-Grenzknotenpunkt wird in Übereinstimmung mit dem bekannten Verfahren bereits einen Verweis (verkettenden Zeiger) auf eine 1-Zelle innerhalb des Abschnitts enthalten. Der einzige direkte Verweis zwischen Abschnitten wird der Verweis zwischen Knotenpunkten.
- Der Verweis auf den entsprechenden Knotenpunkt kann ein zusätzliches Feld in einem längeren Knotenpunktlisten-Datensatz sein. Obwohl Datensätze mit variabler Länge im allgemeinen unerwünscht sind, sollte beachtet werden, daß die längeren Datensätze (für Grenzknotenpunkte) und die kürzeren Datensätze (für Nicht-Grenzknotenpunkte) zusammengefaßt werden können, um diesen Nachteil zu minimieren. Kettenlisten- Datensätze von variabler Länge könnten nicht so bequem gruppiert werden, da jeder von ihnen in der Praxis auf zwei weitere 1-Zellen verweist, so daß vier unterschiedliche Datensatzformate erforderlich wären, je nachdem, ob eine 1-Zelle mit keinem, ein oder zwei Grenzknotenpunkten beendet wird.
- In dem obigen Ausführungsbeispiel kann der Kettenlisten-Datensatz für eine 1-Zelle Verweise auf eine erste und eine zweite Knotenpunktzelle enthalten, die die 1-Zelle beenden, und kann außerdem entsprechende erste und zweite verkettende Zeiger enthalten, die jeweils eine weitere 1-Zelle angeben, welche durch die erste bzw. die zweite Knotenpunktzelle beendet wird, mit der Ausnahme, daß wo ein Knotenpunkt, auf den in einem Kettenlisten-Datensatz verwiesen wird, ein Grenzknotenpunkt ist und keine weitere 1-Zelle in dem gleichen Abschnitt anzugeben bleibt, der Indikator, der angibt, daß es sich bei dem Knotenpunkt um einen Grenzknotenpunkt handelt, einen speziellen Zeiger (NIL) an der dem verkettenden Zeiger zugewiesenen Stelle enthält. Der spezielle Zeiger übermittelt nur die Information, daß es sich bei dem Knotenpunkt um einen Grenzknotenpunkt handelt, jedoch ist es einfach, den entsprechenden Knotenpunkt in dem benachbarten Abschnitt aus dem Knotenpunklisten-Datensatz für diesen Knotenpunkt zu identifizieren und dann den verkettenden Zeiger in dem Knotenpunktlisten-Datensatz in dem benachbarten Abschnitt zu benutzen, um die weitere 1-Zelle jenseits der Abschnittgrenze zu identifizieren.
- Bei einem derartigen Ausführungsbeispiel kann die weitere 1-Zelle, die durch jeden verkettenden Zeiger in einem Kettenlisten-Datensatz angegeben wird, systematisch gewählt werden, indem einer bestimmten Drehrichtung um den entsprechenden Knotenpunkt gefolgt wird, während der verkettende Zeiger in dem Knotenpunktlisten- Datensatz für jeden Grenzknotenpunkt die erste 1-Zelle innerhalb des Abschnitts angibt, wobei von der Abschnittgrenze in der bestimmten Drehrichtung um den Grenzknotenpunkt gezählt wird. Das Ordnen von 1-Zellen-Verweisen in Drehrichtung wird bei dem bekannten Verfahren angewendet, um das Verfolgen von Strecken durch das Netzwerk zu vereinfachen. Das beschriebene Ausführungsbeispiel sorgt für eine Konsistenz des Ordnens in Drehrichtung über die Abschnittgrenzen hinweg, obwohl keine direkten Verweise auf 1- Zellen außerhalb des bestimmten Abschnitts in der Datenparzelle für diesen Abschnitt enthalten sind.
- Für einen Grenzknotenpunkt, der an der Grenze von drei oder mehr Abschnitten liegt, kann der Knotenpunktlisten-Datensatz auf den entsprechenden Grenzknotenpunkt nur in demjenigen Abschnitt verweisen, der in dem bestimmten Drehsinn als nächstes folgt. Dadurch wird vermieden, in dem Knotenpunktlisten-Datensatz auf mehr als einen einzigen entsprechenden Knotenpunkt verweisen zu müssen, obwohl eine beliebige Anzahl von ihnen vorliegen kann, und das Ordnen in Drehrichtung wird wieder auf eine mit der Vorgehensweise in dem bekannten System konsistente Weise erreicht. Eine solche Konsistenz macht es möglich, daß existierende Verfahren zum Finden von Strecken durch das Netzwerk zuverlässig mit der neuen Datenbank angewendet werden können, wobei nur eine unbedeutende Modifikation vorgenommen wird.
- In die Datenparzelle können Informationen aufgenommen werden, die die Grenzknotenpunkte eines Abschnitts entsprechend dem Drehsinn miteinander verknüpfen, der zu dem bestimmten Drehsinn, nach dem die 1-Zellen durch die verkettenden Zeiger angegeben werden, entgegengesetzt ist. Solche Informationen sind zum Beispiel nützlich, wenn eine 2-Zelle (Fläche zwischen 1-Zellen) unter Verwendung der Abschnittgrenze abgeschnitten werden soll. Die Informationen können ohne Vergrößerung der Datenmenge aufgenommen werden, indem einfach die Knotenpunktlisten-Datensätze für die Grenzknotenpunkte entsprechend dem entgegengesetzten Drehsinn geordnet werden. Dies ist ein weiteres Beispiel dafür, wie die Verarbeitung beim Kompilieren der Netzwerkdatenbank sowohl den Informationsgehalt der Datenbank steigern als auch die Benutzung der Datenbank vereinfachen kann.
- Die Erfindung schafft weiterhin ein Verfahren zum Identifizieren einer weiteren 1-Zelle bei einer gegebenen aktuellen 1-Zelle und einer Richtung zum Durchqueren dieser 1-Zelle in einem topologischen Netzwerkabschnitt, der durch eine Datenparzelle dargestellt ist, die in einem Massenspeicher entsprechend der oben beschriebenen Erfindung gespeichert ist, wobei das Verfahren die folgenden Schritte umfaßt:
- (a) in dem Kettenlisten-Datensatz für die aktuelle 1-Zelle den beendenden Knotenpunkt in der bestimmten Richtung der Durchquerung der 1-Zelle auffinden; und
- (b) in diesem Kettenlisten-Datensatz nach einem Verweis auf eine weitere 1-Zelle suchen, die von dem genannten beendenden Knotenpunkt ausgeht; dadurch gekennzeichnet,
- daß Schritt (b) alternativ die Suche nach einem Indikator (NIL) umfaßt, der angibt, daß der genannte beendende Knotenpunkt ein Grenzknotenpunkt ist, und
- daß, falls der genannte Indikator gefunden wird, ein Schritt (b1) durchgeführt wird (709), in dem Informationen (O-C'), auf die von dem Kettenlisten-Datensatz und außerhalb des Kettenlisten-Datensatzes verwiesen wird, benutzt werden, um einen Verweis auf die weitere 1- Zelle in der Datenparzelle eines benachbarten Abschnitts (A-D) des Netzwerks zu lokalisieren.
- Die Erfindung schafft weiterhin Verfahren zum Identifizieren einer Reihe von 1-Zellen, die eine Strecke durch ein topologisches Netzwerk bilden, das entsprechend der oben beschriebenen Erfindung gespeichert wurde, oder die eine bestimmte 2-Zelle in dem Netzwerk abgrenzen. Derartige Verfahren können einige oder alle oben beschriebenen Merkmale des Ordnens in Drehrichtung nutzen.
- Die Erfindung schafft außerdem ein Gerät zum Lesen einer topologischen Datenbank, die in einer Massenspeichervorrichtung in Übereinstimmung mit der oben beschriebenen Erfindung gespeichert ist, wobei das Gerät folgendes umfaßt:
- - Mittel, um aus einer Massenspeichervorrichtung eine erste Datenparzelle zu lesen, die einen ersten Abschnitt eines topologischen Netzwerks darstellt;
- - Mittel, um aus der Datenparzelle einen Kettenlisten-Datensatz zu lesen, der einer 1- Zelle in dem ersten Abschnitt des Netzwerks entspricht, wobei der Kettenlisten- Datensatz in einem Fall, in dem die 1-Zelle durch einen Nicht-Grenzknotenpunkt beendet wird, einen Verweis auf eine weitere 1-Zelle in dem ersten Abschnitt enthält, die ebenfalls durch diesen Knotenpunkt beendet wird, oder in einem Fall, in dem die 1- Zelle durch einen Grenzknotenpunkt beendet wird, einen Indikator für diesen letztgenannten Fall und einen Verweis auf weitere Informationen außerhalb des Kettenlisten- Datensatzes enthält;
- - Mittel, die auf das Lesen des Indikators in dem Kettenlisten-Datensatz reagieren, um die genannten weiteren Informationen außerhalb des Kettenlisten-Datensatzes zu konsultieren, um einen benachbarten zweiten Abschnitt des Netzwerks zu identifizieren; und
- - Mittel, um eine zweite Datenparzelle für den zweiten Abschnitt des Netzwerks zu lesen und um Informationen in der zweiten Datenparzelle zu nutzen, um eine weitere 1-Zelle zu identifizieren, die von dem entsprechenden Grenzknotenpunkt in den zweiten Abschnitt des Netzwerks führt.
- Jedes oder alle Mittel können praktischerweise eine Verarbeitungsvorrichtung enthalten, die unter der Steuerung von Programmanweisungen läuft, welche aus der gleichen Massenspeichervorrichtung gelesen werden, in der die Netzwerk-Datenparzellen gespeichert sind.
- Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und werden im folgenden näher beschrieben. Es zeigen:
- Fig. 1 ein Fahrzeug-Navigationssystem;
- Fig. 2 ein Beispiel eines Straßennetzes zur Speicherung in einem Massenspeicher;
- Fig. 3 vier Kettenlisten, die den jeweiligen Abschnitten des Netzwerks aus Fig. 2 entsprechen;
- Fig. 4 vier Knotenpunktlisten, die den jeweiligen Abschnitten des Netzwerks aus Fig. 2 entsprechen;
- Fig. 5 ein weiteres Netzwerk, in dem sich echte Knotenpunkte und Grenzknotenpunkte decken;
- Fig. 6 die Behandlung des Netzwerks aus Fig. 5 in einer Netzwerk- Datenbank.
- Fig. 1 zeigt die Komponenten eines Navigationssystems für ein Fahrzeug. Ein Mikroprozessor 102, ein Arbeitsspeicher 103 und ein Massenspeicher 104 kommunizieren über einen Bus 101 miteinander. Der Arbeitsspeicher 103 umfaßt Halbleiterspeicher mit einer Kapazität von zum Beispiel 1 MByte. Der Massenspeicher 104 umfaßt in diesem Beispiel einen Compact-Disc-Festwertspeicher (CD-ROM). Der CD-Festwertspeicher 104 hat eine Kapazität von ca. 600 MByte und enthält Programme zur Steuerung des Mikroprozessors 102 sowie eine Datenbank, die das Straßennetz eines Landes oder eines anderen großen Gebietes beschreibt.
- Eine erste Schnittstelle 105 verbindet den Bus 101 mit einem elektromagnetischen Kompaß 106, Radsensoren 107 und einem Kilometerzähler 108. Die Elemente 106, 107 und 108 ermöglichen es dem System, die Position des Fahrzeugs durch Gissung in einer bekannten Weise zu bestimmen. Natürlich können alternative oder zusätzliche Positions-Meßwertaufnehmer vorgesehen werden, darunter Empfänger für Satellitennavigations- oder Funkpeilungssignale. Ein Radioempfänger (nicht abgebildet) kann ebenfalls für den Empfang von codierten Verkehrsinformationssignalen angeschlossen sein.
- Eine Tastatur 110 und ein Ausgabegerät 111 sind über eine zweite Schnittstelle 109 mit dem Bus 101 verbunden. Die Tastatur wird von dem Benutzer verwendet, um Startposition und Zielinformationen einzugeben. Das Ausgabegerät 111 liefert Informationen, die eine visuelle Anzeige und/oder eine Sprachausgabevorrichtung umfassen können, um dem Benutzer navigationsbezogene Anweisungen mitzuteilen.
- Einen Überblick über ein derartiges Navigationssystem vermittelt der obengenannte Artikel von Thoone. Die vorliegende Beschreibung bezieht sich hauptsächlich auf die Organisation der Netzwerk-Datenbank, um für eine kompakte Speicherung und einen effizienten Datenabruf zwecks Routenplanung und so weiter zu sorgen. Verfahren zur Routenplanung unter Verwendung einer derartigen Datenbank sind zum Beispiel aus der oben erwähnten Patentschrift EP-A1 0 360 075 und der Patentschrift EP-A1-0 369 539 bekannt.
- Die Geschwindigkeit, mit der Daten von einer CD-ROM gelesen werden, beträgt ca. 150 KByte pro Sekunde, und es kann zu größeren Verzögerungen von bis zu einer Sekunde kommen, wenn Daten von weit auseinanderliegenden Bereichen auf der CD- ROM-Platte gelesen werden. Aus diesem Grund ist die Datenbank in Parzellen unterteilt, und eine oder mehrere Parzellen werden gleichzeitig in den Arbeitsspeicher 103 geladen, wenn ihre Daten vom Mikroprozessor 102 benötigt werden. Bei der Netzwerk-Datenbank in dem vorliegenden Ausführungsbeispiel entspricht jede Parzelle einem rechteckigen Abschnitt eines Straßennetzes. Verfahren zum Unterteilen eines Netzwerks in Abschnitte zwecks kompakter Speicherung und effizientem Abrufen der Daten sind zum Beispiel in der Patentschrift EP-A1-0 280 795 beschrieben. Jede Parzelle kann beispielsweise einige Sektoren der CD-ROM umfassen. Jeder solche Sektor umfaßt ca. 2 KByte und entspricht einem Rahmen (1/75 Sekunde) in dem bekannten CD-Digital-Audio-System.
- Fig. 2 zeigt ein Beispiel eines topologischen Netzwerks, das zur Darstellung durch entsprechende Parzellen einer größeren Netzwerk-Datenbank in die Abschnitte A, B, C und D aufgeteilt wurde. Das Netzwerk aus Fig. 2 entspricht dem in der oben erwähnten Patentschrift EP-A1-0 360 075 beschriebenen Netzwerk, um die gegenwärtig vor geschlagene Datenbank-Organisation einfacher mit der aus der Referenzschrift bekannten Datenbank-Organisation vergleichen zu können.
- Knotenpunkte, in der Topologie als 0-Zellen bezeichnet, sind durch die Bezugszeichen 1, 2, ... 27 gekennzeichnet. "Echte Knotenpunkte" 1 bis 10 stellen Straßenkreuzungen in dem Netzwerk dar. Künstliche "Grenzknotenpunkte" 11 bis 27 liegen vor, wo ein Straßensegment durch eine Abschnittgrenze halbiert wird. Ein echter Knotenpunkt kann auch ein Grenzknotenpunkt sein, wie nachstehend in bezug auf die Fig. 5 und 6 beschrieben. Die Bezugsbuchstaben a, b, ... y, z bezeichnen 1-Zellen des Netzwerks, die die Straßensegmente darstellen, welche die Knotenpunkte des Netzwerks miteinander verbinden. Die Flächen zwischen 1-Zellen (Straßensegmenten) werden als 2-Zellen bezeichnet.
- Eine für jeden Abschnitt zu speichernde Datenparzelle enthält Beschreibungen der 0-Zellen, 1-Zellen und 2-Zellen dieses Abschnitts. Eine Beschreibung einer 1-Zelle zum Beispiel könnte den Namen und die Art der Straße umfassen. Um eine effiziente Navigation durch das Netzwerk zu ermöglichen, müssen auch relationelle Daten gespeichert werden. Die relationellen Daten bilden die topologische Definition des Netzwerks und enthalten zum Beispiel die Information, daß das Straßensegment e die Knotenpunkte 2 und 3 miteinander verbindet, daß Knotenpunkt 22 in Abschnitt A der gleiche ist wie der Knotenpunkt 22 in Abschnitt B, und daß Knotenpunkt 8 die Straßensegmente r, s, w und x beendet. Die vorliegende Beschreibung bezieht sich hauptsächlich auf die effiziente Speicherung dieser relationellen Informationen, vor allem in Hinblick auf die Abschnittgrenzen.
- Die topologischen Daten für jeden Abschnitt umfassen im vorliegenden Ausführungsbeispiel eine Kettenliste mit einem Datensatz für jede 1-Zelle in dem Abschnitt und eine Knotenpunktliste mit einem Datensatz für jede 0-Zelle in dem Abschnitt (einschließlich der Grenzknotenpunkte). Die Prinzipien der Kettenlisten und Knotenpunktlisten sind bereits aus dem Artikel von Thoone und aus der Patentschrift EP-A1-0 360 075, auf die beide oben verwiesen wird, bekannt.
- Fig. 3 zeigt die Kettenlisten für die Abschnitte A, B, C, und D des Straßennetzes aus Fig. 2, während in Fig. 4 die Knotenpunktlisten dargestellt sind. Betrachtet man zum Beispiel die Kettenliste für Abschnitt A (Fig. 3, A), so gibt ein erstes Feld "1-C" in jedem Datensatz (Reihe) die 1-Zelle (Straßensegment) an, auf die sich der Datensatz bezieht. In dieser Spalte stehen in Fig. 3 die Bezugsbuchstaben a, b, ... h, die die 1-Zellen für Abschnitt A bezeichnen. In der Praxis wird das Feld 1-C Zeiger auf die Orte in der Datenparzelle enthalten, an denen die restlichen Informationen zur Beschreibung dieser 1- Zelle gespeichert sind. Diese Informationen könnten alternativ in einem weiteren Feld des Kettenlisten-Datensatzes gespeichert sein, so daß die komplette Beschreibung der 1-Zelle durch einen einzigen Zeigerwert lokalisiert werden kann.
- Die verbleibenden vier Felder des Kettenlisten-Datensatzes beziehen sich auf die Enden der 1-Zelle und sind in zwei Paare L und R gruppiert, die dem "Anfang" bzw. dem "Ende" der 1-Zelle entsprechen. Um eine einheitliche Ausdrucksweise zu vereinbaren, wird das linke äußere Ende einer 1-Zelle als "Anfang" bezeichnet, während das Ende rechts außen als "Ende" bezeichnet wird, daher die Bezugszeichen L und R. Bei einer genau vertikalen 1-Zelle kann das obere Ende als Anfang gewählt werden.
- Unter L identifiziert ein erstes Feld 0-C die anfängliche 0-Zelle für die 1- Zelle, und ein verkettender Zeiger TP identifiziert eine weitere 1-Zelle, die bei der gleichen 0-Zelle endet. Die Felder 0-C und TP unter R haben die gleiche Funktion für den Endknotenpunkt der 1-Zelle.
- In Übereinstimmung mit einem in der Patentschrift EP-A2-0 302 547 beschriebenen Prinzip werden die verkettenden Zeiger systematisch gewählt, indem einem bestimmten Drehsinn (bei diesem Ausführungsbeispiel im Uhrzeigersinn) um ihre jeweiligen 0-Zellen (Knotenpunkte) gefolgt wird. Dies kann durch den Datensatz für die 1-Zelle c in der Kettenliste A aus Fig. 3 veranschaulicht werden. Der Anfangsknotenpunkt für die 1-Zelle c ist der Knotenpunkte 1, wie unter L, 0-C, in dem Kettenlisten-Datensatz angegeben, für den das Feld 1-C gleich "c" ist. Eine weitere 1-Zelle, die bei Knotenpunkt 1 mit der 1-Zelle c verbunden ist, ist die 1-Zelle a, wie durch den verkettenden Zeiger unter L, TP, angegeben. Diese 1-Zelle a wurde gewählt, weil sie die erste 1-Zelle bei Knotenpunkt 1 bei Drehung um den Knotenpunkt 1 im Uhrzeigersinn ist, wenn von der I-Zelle c, auf den sich der Datensatz bezieht, ausgegangen wird. Alle 1-Zellen, die bei Knotenpunkt 1 enden, können in dieser Rotationsreihenfolge gefunden werden, indem den verkettenden Zeigern TP unter L oder R gefolgt wird, bis sie wieder auf die 1-Zelle zeigen, von der ausgegangen wurde. Der Datensatz für die 1-Zelle c zeigt also auf die 1-Zelle a, und der verkettende Zeiger TP, der zu dem Knotenpunkt 1 im Datensatz für die 1-Zelle a gehört, zeigt auf die 1- Zelle b. Der zu dem Knotenpunkt 1 in dem Datensatz für die 1-Zelle b gehörende verkettende Zeiger TP zeigt wieder auf die 1-Zelle c, wodurch angegeben wird, daß alle 1-Zellen gefunden wurden, die bei Knotenpunkt 1 enden.
- In der Knotenpunktliste A von Fig. 4 braucht der Datensatz für Knotenpunkt 1 (dritte Reihe von unten) nur eine einzelne 1-Zelle mit Hilfe eines verkettenden Zei gers TP zu spezifizieren. In dem Beispiel aus Fig. 4 ist die 1-Zelle b durch den verkettenden Zeiger TP für Knotenpunkt I identifiziert, und die verbleibenden 1-Zellen, c und a, können im Uhrzeigersinn der Reihenfolge nach identifiziert werden, indem den verkettenden Zeigern durch die Kettenliste (Fig. 3) gefolgt wird, wie oben beschrieben. Um eine einheitliche Ausdrucksweise zu vereinbaren, wird die 1-Zelle, die durch den verkettenden Zeiger in dem Knotenpunktlisten-Datensatz für einen Nicht-Grenzknotenpunkt angegeben wird; als erste 1-Zelle bei Drehung im Uhrzeigersinn, beginnend bei der Nordrichtung (oben), gewählt.
- Die Verwendung eines bestimmten Drehsinns bei der Zuordnung der verkettenden Zeiger der Kettenliste ist nicht von wesentlicher Bedeutung, vorausgesetzt, alle 1-Zellen bei einem Knotenpunkt sind in einer Kette durch verkettende Zeiger verknüpft. Das Ordnen nach Drehrichtung vereinfacht jedoch die Verarbeitung für das fahrzeuginterne System, wenn zum Beispiel alle 1-Zellen identifiziert werden sollen, die eine bestimmte 2- Zelle begrenzen, wie in der Patentschrift EP-A2-0 302 547 beschrieben. In diesem Zusammenhang hat man erkannt, daß die Verarbeitung bei der Kompilierung der Datenbank die Datenbank komprimieren kann und der Informationsgehalt eines bestimmten Datenvolumens durch das Ordnen erhöht werden kann. Eine derartige Verarbeitung spart Platz auf der CD-ROM und erfordert weniger Rechenleistung und Arbeitsspeicher in dem fahrzeuginternen System, wodurch sich erhebliche Kosten- und Leistungsvorteile für die Endbenutzer der Datenbank ergeben. Solche Techniken sind besonders nützlich in Verbindung mit einer Festwertspeichervorrichtung wie einer CD-ROM. Wenn sich das Straßennetz durch das Hinzufügen neuer Straßen und so weiter ändert, kann die Datenbank nichtsdestoweniger mit speziellen ergänzenden Informationen aktualisiert werden, bis die Kompilierung einer neuen Datenbank auf CD-ROM gerechtfertigt ist. Solche ergänzenden Informationen könnten zum Beispiel durch lokale Radiodatensendungen, auf magnetischen Platten oder Speicherkarten geliefert werden. Bei anderen Datenbanken, zum Beispiel bei einer Online- Datenbank für ein Telekommunikationsnetzwerk, kann die Kompilierung einer neuen Datenbank häufiger gerechtfertigt sein.
- Bisher wurde die Datenbank-Organisation noch nicht in bezug auf die Grenzknotenpunkte und die zugehörigen 1-Zellen beschrieben. Die nachstehend unter Bezugnahme auf die Fig. 3 bis 6 beschriebene Organisation nutzt das Ordnen in der kompilierten Datenbank, um mehr Informationen auf weniger Raum zu bieten als zum Beispiel durch die aus der Patentschrift EP-A1-0 360 075 bekannten Organisation erreicht werden kann.
- In den Kettenlisten-Datensätzen aus Fig. 3 wurde kein Versuch unternommen, mit Hilfe der verkettenden Zeiger TP unter L oder R auf 1-Zellen in benachbarten Abschnitten (Datenparzellen) zu zeigen. Dort, wo ein Knotenpunktfeld 0-C einen Grenzknotenpunkt angibt und die nächste 1-Zelle im Uhrzeigersinn eine 1-Zelle in dem benachbarten Abschnitt ist, befindet sich statt dessen ein spezieller Zeiger NIL (der "Leerzeiger") in dem Feld für den verkettenden Zeiger TP. Dies ist zum Beispiel in der Kettenliste für Abschnitt A in dem Datensatz für die 1-Zelle f zu sehen, in dem das Feld 0-C unter R den Grenzknotenpunkt 22 angibt und das Feld für den verkettenden Zeiger TP unter R den Leerzeiger enthält.
- Nun vermittelt der Leerzeiger keine anderen Informationen als daß der zugehörige Knotenpunkt ein Grenzknotenpunkt ist und die nächste 1-Zelle im Uhrzeigersinn nicht in dem vorliegenden Abschnitt liegt. In einer Hinsicht enthalten die Kettenlisten aus Fig. 3 weniger Informationen als die Kettenlisten der bekannten Organisation. Dagegen steht jedoch eine Reduzierung der erforderlichen Größe der Felder für den verkettenden Zeiger TP unter L und R für alle Datensätze in der Kettenliste, da die 1-Zellen nur innerhalb des aktuellen Abschnitts eindeutig identifiziert zu werden brauchen. Mit anderen Worten, zu der Kettenliste wurde die Information hinzugefügt, daß alle angegebenen 1- Zellen innerhalb des aktuellen Abschnitts liegen.
- Es ist zu beachten, daß in einer praktischen Datenbank mit Hunderten von Knotenpunkten in jedem Abschnitt die Grenzknotenpunkte bei der gesamten Anzahl von Knotenpunkten in der Minderzahl sind. Aus diesem Grund ist der durch die Verwendung des Leerzeigers eingesparte Platz in den Kettenlisten größer als die verlorengegangenen Informationen.
- Die verlorenen Informationen werden in den Knotenpunktlisten von Fig. 4 ersetzt, indem längere Datensätze (nur) für die Grenzknotenpunkte vorgesehen werden. Damit das Format der Knotenpunktlisten nicht übermäßig unterbrochen wird, werden die längeren Datensätze und die normalen (Nicht-Grenz)knotenpunkt-Datensätze in zwei separaten Knotenpunktlisten zusammengefaßt. Es sollte wiederum beachtet werden, daß diese längeren Datensätze in einer praktischen Datenbank nur eine kleine Minderheit darstellen. In dem beschriebenen Fahrzeugnavigationssystem auf CD-ROM-Basis hat sich zum Beispiel eine Parzellengröße mit 12 bis 18 Prozent Grenzknotenpunkten als ausreichend erwie sen. Jeder Grenzknotenpunkt führt zu mindestens zwei langen Datensätzen, da er in mindestens zwei benachbarten Abschnitten erscheint.
- Das zusätzliche Feld 0-C' in dem Datensatz für einen Grenzknotenpunkt identifiziert einen benachbarten Abschnitt (A, B, C, D usw.), und denjenigen Knotenpunkt in der Knotenpunktliste für diesen benachbarten Abschnitt, bei dem es sich um den gleichen Grenzknotenpunkt handelt. Das Feld 0-C' in dem Datensatz für Knotenpunkt 25 in der Knotenpunktliste für Abschnitt A identifiziert Knotenpunkt 25 in Abschnitt C. Für benachbarte Abschnitte, die nicht in Fig. 2 dargestellt sind, wird das Symbol "?" verwendet. Umgekehrt verweist das Feld 0-C' für Knotenpunkt 25 in der Knotenpunktliste für Abschnitt C auf den Knotenpunkt 25 in Abschnitt A. Die Situation, in der ein Grenzknotenpunkt in mehr als zwei Abschnitten erscheint, wird an späterer Stelle unter Bezugnahme auf die Fig. 5 und 6 erörtert.
- Das Feld für den verkettenden Zeiger TP von jeden Datensatz für einen Grenzknotenpunkt in der Knotenpunktliste zeigt auf die erste 1-Zelle, die durch diesen Knotenpunkt beendet wird, wobei von der Abschnittgrenze im Uhrzeigersinn gezählt wird. Beim Durchqueren der I-Zelle f in Abschnitt A in der Richtung von L nach R begegnet man zum Beispiel dem Knotenpunkt 22 in Feld 0-C unter R in dem Kettenlisten-Datensatz für die 1-Zelle f. Um die Fahrt fortzusetzen, untersucht man das Feld für den verkettenden Zeiger TP unter R in dem Kettenlisten-Datensatz für die 1-Zelle f in Abschnitt A. Dieser verkettende Zeiger erweist sich als ein Leerzeiger, so daß man sich den Knotenpunktlisten- Datensatz für den zugehörigen Knotenpunkt 22 ansieht. Das Feld 0-C' in diesem Knotenpunktlisten-Datensatz identifiziert den Grenzknotenpunkt jenseits der Abschnittgrenze als Knotenpunkt 22 in Abschnitt B. Betrachtet man die Knotenpunktliste für Abschnitt B, so erkennt man, daß das Feld für den verkettenden Zeiger TP die 1-Zelle f von Abschnitt B angibt, was in der Tat die gewünschte Fortsetzung der 1-Zelle f in Abschnitt A ist. Der Datensatz für die 1-Zelle f in der Kettenliste für Abschnitt B kann dann benutzt werden, um der Strecke durch Abschnitt B des Netzwerks weiter zu folgen.
- Es ist zu beachten, daß den Knotenpunkten und 1-Zellen in dem gesamten Netzwerk aus Fig. 2 nur zum Zweck dieser Beschreibung die eindeutigen Bezugszeichen 1 bis 27 und a bis z zugeordnet wurden. In der Datenbank selbst braucht ein Knotenpunkt oder eine 1-Zelle nur innerhalb seines bzw. ihres eigenen Abschnitts (Datenparzelle) eindeutig identifiziert zu werden.
- Die Fig. 5 und 6 zeigen ein System zur Behandlung eines echten Knotenpunktes, der mit der Grenze zwischen zwei oder mehr Abschnitten zusammenfällt. In Fig. 5 ist ein kleiner Teil eines Netzwerkes abgebildet, in dem drei Abschnitte E, F und G überbrückt werden. An der Grenze zwischen den Abschnitten F und G liegt ein Knotenpunkt 28 vor, der vier 1-Zellen, aa, bb, cc und dd beendet. Von diesen vier 1-Zellen befinden sich aa und bb in Abschnitt F, während cc und dd in Abschnitt G liegen. Ein zweiter Knotenpunkt 29 fällt mit der Grenzkreuzung zusammen, an der alle drei Abschnitte E, F und G aneinander angrenzen. Drei 1-Zellen ee, ff und gg führen von diesem Knotenpunkt in die Abschnitte E, F bzw. G.
- In Fig. 6 ist ein kompaktes und systematisches Ordnen der Kettenlisten- und Knotenpunktlisten-Verweise zur Beschreibung dieses Netzwerks dargestellt, was eine maximale Konsistenz mit der bereits beschriebenen Organisation ermöglicht, selbst bei diesen unüblichen Knotenpunkten 28 und 29. In Fig. 6 wurden die drei Abschnitte E, F und G getrennt, wie sie tatsächlich auch in entsprechende Parzellen der Datenbank getrennt sind. Die Bezugszeichen für die 0-Zellen (Knotenpunkte) 28 und 29 wurden der Übersichtlichkeit halber weggelassen, da diese Merkmale durch Vergleich mit Fig. 5 klar zu erkennen sind.
- In Fig. 6 sind die verschiedenen Zeiger in den Kettenlisten und den Knotenpunktlisten für die Abschnitte E, F und G dargestellt, die es ermöglichen, schnell und systematisch einer Strecke durch das Netzwerk zu folgen, selbst über die Abschnittgrenzen hinweg. Ein gekrümmter Pfeil mit der Bezeichnung TP, der im Uhrzeigersinn um einen Knotenpunkt von einer 1-Zelle zu einer anderen führt (zum Beispiel von aa nach bb oder von cc nach dd in Fig. 6), stellt das Feld für den verkettenden Zeiger TP des Datensatzes in der Kettenliste (Fig. 3) für die erste 1-Zelle (aa, cc) unter L bzw. unter R dar:
- Wenn das Drehen im Uhrzeigersinn um einen Knotenpunkt zu einer Abschnittgrenze führt (wie dies von der 1-Zelle bb aus der Fall ist), enthält das betreffende Feld für den verkettenden Zeiger in dem Kettenlisten-Datensatz für die 1-Zelle bb den Leerzeiger, wie durch das Bezugszeichen NIL in Fig. 6 angegeben. Es gibt daher keine Informationen, die direkt von der 1-Zelle bb in Abschnitt F zu der 1-Zelle cc in Abschnitt G führen. Allerdings gibt es indirekte Informationen.
- Ein Zeiger mit der Bezeichnung 0-C' in Fig. 6, der von einem Knotenpunkt 28 oder 29 in einem ersten Abschnitt zu seinem Gegenstück in einem benachbarten Abschnitt weist, wird durch das spezielle Feld 0-C' des Datensatzes für den Grenzknotenpunkt in der Knotenpunktliste für den ersten Abschnitt vorgesehen. Für den Grenzknotenpunkt in dem benachbarten Abschnitt ist ein Zeiger mit der Bezeichnung TP von dem Knotenpunkt zu einer 1-Zelle in dem benachbarten Abschnitt durch das Feld TP des Knotenpunktlisten- Datensatzes für diesen Knotenpunkt in dem benachbarten Abschnitt vorgesehen. Das Feld 0-C' für den Knotenpunkt 28 in der Knotenpunktliste von Abschnitt F zeigt zum Beispiel auf den Knotenpunkt 28 in Abschnitt G, während das Feld TP für den Knotenpunkt 28 in der Knotenpunktliste von Abschnitt G auf die 1-Zelle cc zeigt. Die 1-Zelle cc wurde gewählt, weil es sich um die erste 1-Zelle handelt, die von dem Knotenpunkt 28 in den Abschnitt G führt, wenn man im Uhrzeigersinn von der Abschnittgrenze aus zählt. Um von der 1-Zelle bb in der Kettenliste von Abschnitt F zu der 1-Zelle cc zu gelangen, ist ein aus zwei Schritten bestehender Prozeß erforderlich, bei dem in Reaktion auf das Erkennen des Leerzeigers in dem Kettenlisten-Datensatz für die 1-Zelle bb in Abschnitt F zuerst in der Knotenpunktliste für Abschnitt F und dann in der Knotenpunktliste für Abschnitt G nachgeschaut wird. Die komplette Reihe von vier 1-Zellen um den Knotenpunkt 28 herum kann auf diese Weise gefunden werden, und zwar in der korrekten Reihenfolge im Uhrzeigersinn, aa, bb, cc, dd.
- Eine ähnliche Situation gilt für die Knotenpunktlisten- und die Kettenlisten- Datensätze für den Knotenpunkt 29 in den drei Abschnitten E, F und G. Es gibt jedoch zwei Möglichkeiten für den Zeiger 0-C' in jedem Abschnitt, da der Datensatz für den Knotenpunkt 29 in der Knotenpunktliste von Abschnitt E auf den Knotenpunkt 29 in Abschnitt F oder in Abschnitt G verweisen könnte. Bei der vorliegenden Ausführungsform wird wieder vorgeschlagen, die Auswahlen entsprechend dem gleichen bestimmten Drehsinn zu ordnen wie innerhalb der Kettenliste selbst, das heißt in diesem Beispiel im Uhrzeigersinn. Das Feld 0-C' für den Knotenpunkt 29 in Abschnitt E zeigt also auf den Knotenpunkt 29 in Abschnitt F, das Feld 0-C' in Abschnitt F zeigt auf den Knotenpunkt 29 in Abschnitt G, und das Feld 0-C' in Abschnitt G zeigt auf den Knotenpunkt 29 in Abschnitt E, wodurch der Kreis geschlossen wird. Wenn man also den Zeigern TP und 0-C' für den Knotenpunkt 29 auf die gleiche Weise folgt wie oben für den Knotenpunkt 28 beschrieben, werden die 1- Zellen ee, ff und gg immer im Uhrzeigersinn gefunden, und zwar so, als ob überhaupt keine Grenzen vorhanden wären.
- Bei rechteckigen Abschnitten könnte ein Grenzknotenpunkt in 2, 3 oder 4 verschiedenen Abschnitten auftauchen. Bei anders geformten Abschnitten könnte ein Knotenpunkt sogar in mehr als 4 Abschnitten vorliegen. Das bei Knotenpunkt 29 in Fig. 6 angewendete System des Ordnens im Uhrzeigersinn kann unbegrenzt erweitert werden, so daß eine konsistente Lösung für die Datenbank-Organisation bei allen echten Knotenpunkten und Grenzknotenpunkten möglich wird.
- Der Ablaufplan in Fig. 7 veranschaulicht ein Verfahren zur Verfolgung einer Strecke durch ein Netzwerk, das auf die oben beschriebene Weise in einer Datenbank gespeichert ist. Die Schritte 701 bis 709 dieses Verfahrens werden im folgenden beschrieben.
- 701: SP ist der Startpunkt. Identifizieren des aktuellen Abschnitts und der aktuellen 1-Zelle.
- 702: Identifizieren der Richtung, in der die 1-Zelle durchquert wird (zum L-Knotenpunkt hin oder zum R-Knotenpunkt hin).
- 703: Ist der verkettende Zeiger in der Kettenliste bei dem Knotenpunkt ein Leerzeiger?
- 704: Wenn nein, gibt der verkettende Zeiger in der Kettenliste die neue 1-Zelle an.
- 705: Soll die neue 1-Zelle durchquert werden (ist sie Teil unserer gewünschten Strecke)?
- Wenn nein, Rückkehr zu 703, den verkettenden Zeiger für den gleichen Knotenpunkt, neue 1-Zelle, ausprobieren.
- 706: Wenn die Antwort bei 705 "ja" lautet, die neue 1-Zelle zum neuen Knotenpunkt durchqueren (von L nach R oder umgekehrt).
- 707: Ist der neue Knotenpunkt der Zielort? Wenn nein, Rückkehr zu 703 mit neuem Knotenpunkt. Wenn ja, Ende.
- 708: Wenn die Antwort bei 703 "ja" lautet, handelt es sich bei dem Knotenpunkt um einen Grenzknotenpunkt. Das Feld 0-C' in dem Knotenpunktlisten-Datensatz gibt neuen Abschnitt und neuen Knotenpunkt an.
- 709: Der verkettende Zeiger in dem Knotenpunktlisten-Datensatz in dem neuen Abschnitt gibt neue 1-Zelle an. Mit Schritt 705 im neuen Abschnitt fortfahren.
- Ein Sonderfall einer Wegverfolgung tritt ein, wenn gewünscht wird, die Kette von 1-Zellen zu identifizieren, die eine bestimmte 2-Zelle umgibt. Beim Navigieren eines Fahrzeugs zum Beispiel weicht das Fahrzeug sehr oft vom bekannten Netzwerk ab, wenn es in Privatgelände oder ein neu erschlossenes Gebiet fährt, das noch nicht in der Datenbank enthalten ist. In diesem Fall ist die Kenntnis aller die 2-Zelle umgebenden 1- Zellen nützlich, um zu erkennen, wann und wo das Fahrzeug zum bekannten Netzwerk zurückkehrt.
- Bei der oben in bezug auf die Fig. 2 bis 6 beschriebenen Datenbank- Organisation wird das Problem des Auffindens von 2-Zellen-Grenzen durch das Ordnen der 1-Zellen im Drehsinn bei der Zuordnung von verkettenden Zeigern, wie in der Patentschrift EP-A2-0 302 547 beschrieben, erheblich vereinfacht. Es sei zum Beispiel angenommen, daß das Fahrzeug beim Durchqueren der 1-Zelle g in Abschnitt A die bekannte Straße verläßt und in die 2-Zelle hineinfährt, die das Bezugszeichen X in Fig. 2 enthält. Alle 1- Zellen, die die 2-Zelle X begrenzen, können gefunden werden, indem zuerst Knotenpunkt 24 auf der 1-Zelle g betrachtet wird und dann einem Weg durch das Netzwerk gefolgt wird, wobei immer das Durchqueren der ersten 1-Zelle gewählt wird, die durch den verkettenden Zeiger bei Drehung im Uhrzeigersinn angegeben wird.
- Dieser Sonderfall des Verfahrens aus Fig. 7 wird durch den Ablaufplan von Fig. 8 dargestellt. Läßt man für den Augenblick die Schritte 810 und 811 außer acht, so entsprechen die Schritte 801 bis 809 in der Funktion den ähnlich numerierten Schritten 701 bis 709 in Fig. 7. Es ist jedoch zu beachten, daß es keine Entscheidung gibt, die Schritt 705 entspricht: die erste 1-Zelle im Uhrzeigersinn ist immer die gewünschte, wenn eine 2- Zelle verfolgt wird.
- Weitere zu beachtende Punkte bei Fig. 8 sind, daß die Entscheidung L oder R in Schritt 802 nicht auf einer tatsächlichen Richtung des Durchquerens der 1-Zelle beruht, sondern darauf, welche 2-Zelle verfolgt werden soll. Die 2-Zelle X in dem obigen Beispiel erfordert das Betrachten von Knotenpunkt 24 auf der 1-Zelle g, und der Knotenpunkt 24 ist die 0-Zelle unter R in dem Kettenlisten-Datensatz für die 1-Zelle g (Fig. 3, A). Um die in Fig. 2 durch Y bezeichnete 2-Zelle ausgehend von der 1-Zelle g in Abschnitt A zu verfolgen, muß bei Schritt 802 der Knotenpunkt 3 betrachtet werden, der die 0- Zelle unter L in dem Kettenlisten-Datensatz für die 1-Zelle g ist.
- Schritt 807 gibt an, daß beim Verfolgen der Grenze einer 2-Zelle der Zielort dem Startpunkt SP entspricht. Die Schritte 803, 808 und 809 ermöglichen das Verfolgen von 2-Zellen über Abschnittgrenzen hinweg auf die gleiche Weise wie die Schritte 703, 708 und 709 in dem allgemeinen Fall von Fig. 7.
- Manchmal kann es geschehen, daß eine 2-Zelle zu groß ist, um als Ganzes betrachtet zu werden, oder daß lediglich der größte Teil der 2-Zelle nicht relevant ist. Wenn sich das Fahrzeug zum Beispiel gegenwärtig bei Punkt P im Netzwerk aus Fig. 2 befindet, sind die Bereiche der 2-Zelle X, die in den Abschnitten B, C und D liegen, kaum für das unmittelbare Navigationsproblem relevant. Es kann sein, daß sich die Datenparzellen für diese Abschnitte noch nicht einmal im Arbeitsspeicher befinden. Eine einzige 2-Zelle könnte sich in manchen Fällen durch so viele Abschnitte erstrecken, daß diese unmöglich alle in den Arbeitsspeicher geladen werden können. In manchen Fällen muß die 2-Zelle auf eine angemessenere Fläche "abgeschnitten" werden, und es stellt sich die Frage, ob die Abschnittgrenzen benutzt werden können, um ein solches "Abschneiden" zu vereinfachen.
- Nimmt man die 2-Zelle X in Abschnitt A als Beispiel, so kennt das System, wenn man von der 1-Zelle f ausgeht, bereits den Grenzknotenpunkt 22 und kann dem Weg über Knotenpunkt 3 zu der 1-Zelle g (und im allgemeinen durch eine beliebige Anzahl von 1-Zellen) folgen, bis der Grenzknotenpunkt 24 erreicht wird. An diesem Punkt könnte das System die Knotenpunkte 24 und 22 fiktiv verbinden und zu der kompletten Begrenzung der 2-Zelle X innerhalb des Abschnitts A kommen.
- In einem allgemeineren Fall bleiben jedoch zwei Probleme. Erstens beginnt man nicht immer mit der Kenntnis eines Grenzknotenpunktes und schlägt die geeignete Richtung zu der gewünschten 2-Zelle ein. Es ist nicht einfach, den Weg in umgekehrter Richtung zu verfolgen. Zweitens gibt es keine Garantie, daß nicht eine andere 2-Zelle über die Grenze zwischen den Knotenpunkt 22 und 24 hinweg in den Abschnitt A hineinragt.
- Diese Probleme werden in dem beschriebenen Ausführungsbeispiel durch das Ordnen der Datensätze für die Grenzknotenpunkte in den Knotenpunktlisten gelöst. In jeder Knotenpunktliste A, B, C und D in Fig. 4 sind die Grenzknotenpunkte in der Drehrichtung entgegen dem Uhrzeigersinn um die Abschnittgrenze herum aufgeführt, das heißt in entgegengesetzter Richtung zu der Reihenfolge im Uhrzeigersinn, in der die verkettenden Zeiger gewählt werden. Auf diese Weise kann der geeignete Teil der Abschnittgrenze beim Folgen einer 2-Zellen-Grenze eingeschlossen werden, indem man einfach zu dem nächsten Grenzknotenpunkt (Datensatz) in der geordneten Grenzknotenpunktliste springt (Fig. 4). Wenn man zum Beispiel die Grenze der 2-Zelle X verfolgt und bei Knotenpunkt 24 ankommt, kann die Abschnittgrenze verwendet werden, um die 2-Zelle abzuschneiden, indem zu dem nächsten Grenzknotenpunkt in der Knotenpunktliste für Abschnitt A gesprungen wird, und dies ist der Knotenpunkt 22. Aufgrund der Sortierung der Grenzknotenpunkte entgegen dem Uhrzeigersinn ist bekannt, daß keine andere 2-Zelle über die Grenze zwischen den Knotenpunkt 24 und 22 hinausragt. Bei Knotenpunkt 22 kann der verkettende Zeiger TP in dem Knotenpunktlisten-Datensatz für Knotenpunkt 22 in Abschnitt A benutzt werden, um entlang der 1-Zelle f fortzufahren. In dem gesamten Prozeß bestand keine Notwendigkeit, die Datenparzellen zur Beschreibung der Abschnitte B, C und D zu konsultieren.
- Das Überspringen ist durch die Schritte 810 und 811 in Fig. 8 dargestellt. Bei Schritt 810 wird ermittelt, ob die Fläche jenseits der Abschnittgrenze relevant ist oder übersprungen werden kann. Wenn sie übersprungen werden kann, aktualisiert Schritt 811 den aktuellen Knotenpunkt zum nächsten Knotenpunkt in der Knotenpunktliste für den Abschnitt. Wenn der erste Grenzknotenpunkt der letzte in der Knotenpunktliste ist (zum Beispiel Knotenpunkt 21 in Abschnitt A), wird bei Schritt 811 natürlich nach dem ersten Datensatz in der Knotenpunktliste (Knotenpunkt 11) gesehen statt nach dem folgenden Nicht- Grenzknotenpunkt (Knotenpunkt 1).
- Statt die Grenzknotenpunkt-Datensätze in der Knotenpunktliste zu ordnen, wäre es natürlich ausreichend, daß jeder Grenzknotenpunkt-Datensatz einen Zeiger auf den nächsten Grenzknotenpunkt im entgegengesetzten Drehsinn (gegen den Uhrzeigersinn) enthält. Ein solcher Zeiger nimmt jedoch Platz in Anspruch und durch das Ordnen wird das Prinzip der Konzentrierung des Verarbeitungsaufwandes auf die Datenbank-Kompilierung besser ausgenutzt, wodurch der Verarbeitungsaufwand in dem fahrzeuginternen System bei Verwendung der Datenbank reduziert wird.
- Dem fachkundigen Leser werden viele Abwandlungen der beschriebenen Ausführungsformen ersichtlich sein, und es ist weiterhin zu beachten, daß die Erfindung außer auf Straßennetze auf eine große Vielzahl von topologischen Netzwerken angewendet werden kann, unter anderem zum Beispiel auf andere Verkehrsnetze, Telekommunikationsnetze und Verteilungsnetze für Öl, Gas, Wasser usw.
Claims (12)
1. Verfahren zur Speicherung von digitalen Daten, die ein topologisches
Netzwerk darstellen, wobei das Netzwerk eine Gruppe von 0-Zellen (11-27) (Knotenpunkten)
und eine Gruppe von I-Zellen (a-z) umfaßt und in Abschnitte (A-D) unterteilt ist, die
diskreten Datenparzellen zur Speicherung in einem Massenspeicher (104) entsprechen, wobei
ein Grenzknotenpunkt (22-27) an jedem Punkt definiert ist, an dem das Netzwerk eine
Grenze zwischen Abschnitten überquert, wobei die Datenparzelle für einen bestimmten
Abschnitt einen Kettenlisten-Datensatz (Fig. 3) für jede 1-Zelle in dem Abschnitt enthält
und dieser Kettenlisten-Datensatz zumindest im Fall einer 1-Zelle, die an
Nicht-Grenzknotenpunkten endet, Informationen für beide 0-Zellen enthält, die sich auf die Nicht-
Grenzknotenpunkte beziehen und wobei diese Informationen auf weitere 1-Zellen in dem
Netzwerk verweisen, die an den gleichen Nicht-Grenzknotenpunkten enden, dadurch
gekennzeichnet, daß für eine 1-Zelle, die an einem Grenzknotenpunkt endet, die in der
genannten 1-Zelle für den betreffenden Knotenpunkt enthaltenen Informationen einen
Indikator (NIL) enthalten, der angibt, daß es sich bei dem genannten Knotenpunkt um einen
Grenzknotenpunkt handelt; und dadurch, daß die Datenparzelle weitere Informationen (O-
C') außerhalb des Kettenlisten-Datensatzes der genannten 1-Zelle enthält, wobei diese
weiteren Informationen auf eine I-Zelle außerhalb des Netzwerkabschnitts verweisen, auf den
sich die Parzelle bezieht, und die an dem gleichen Grenzknotenpunkt endet.
2. Verfahren nach Anspruch 1, wobei die weiteren Informationen in der
Datenparzelle für einen bestimmten Abschnitt des Netzwerks einen Knotenpunktlisten-Datensatz
(Fig. 4) für jeden Knotenpunkt in dem Abschnitt enthalten, und wobei der
Knotenpunktlisten-Datensatz für einen Grenzknotenpunkt in einem bestimmten Abschnitt einen Verweis
(0-C') auf einen entsprechenden Knotenpunkt in einem benachbarten Abschnitt sowie einen
verkettenden Zeiger (TP) enthält, der auf eine 1-Zelle in dem bestimmten Abschnitt
verweist, aber auch keinen direkten Verweis auf eine 1-Zelle außerhalb des bestimmten
Abschnitts.
3. Verfahren nach Anspruch 2, wobei der Kettenlisten-Datensatz für eine 1-
Zelle Verweise (0-C) auf einen ersten und einen zweiten Knotenpunkt enthält, die die 1-
Zelle beenden, und außerdem entsprechende erste und zweite verkettende Zeiger (TP)
enthält, die jeweils eine weitere 1-Zelle angeben, welche durch den ersten bzw. durch den
zweiten Knotenpunkt beendet wird, mit der Ausnahme, daß wo ein Knotenpunkt, auf den in
einem Kettenlisten-Datensatz verwiesen wird, ein Grenzknotenpunkt ist und keine weitere
1-Zelle in dem gleichen Abschnitt anzugeben bleibt, der Indikator, der angibt, daß es sich
bei dem Knotenpunkt um einen Grenzknotenpunkt handelt, einen speziellen Zeiger (NIL)
an der dem verkettenden Zeiger zugewiesenen Stelle enthält.
4. Verfahren nach Anspruch 3, wobei die weitere 1-Zelle, die durch jeden
verkettenden Zeiger in einem Kettenlisten-Datensatz angegeben wird, systematisch gewählt
wird, indem einer bestimmten Drehrichtung um den beendenden Knotenpunkt gefolgt wird,
während der verkettende Zeiger in dem Knotenpunktlisten-Datensatz für jeden
Grenzknotenpunkt die erste 1-Zelle innerhalb des Abschnitts angibt, wobei von der Abschnittgrenze
in der bestimmten Drehrichtung um den Grenzknotenpunkt gezählt wird (Fig. 6).
5. Verfahren nach Anspruch 4, wobei der Knotenpunktlisten-Datensatz bei
einem Grenzknotenpunkt, der sich auf der Grenze von drei oder mehr Abschnitten befindet,
nur auf den entsprechenden Grenzknotenpunkt in dem Abschnitt verweist, der als nächstes
in der bestimmten Drehrichtung folgt.
6. Verfahren nach Anspruch 4 oder 5, wobei die Datenparzelle für einen
Abschnitt des Netzwerks Informationen (0-C') enthält, die die Grenzknotenpunkte
entsprechend der Drehrichtung um die Abschnittgrenze miteinander verknüpfen, die zu der
bestimmten Drehrichtung, nach der die 1-Zellen durch die verkettenden Zeiger in den
Kettenlisten-Datensätzen angegeben werden, entgegengesetzt ist.
7. Verfahren zum Identifizieren einer weiteren 1-Zelle (a-z) bei einer
gegebenen aktuellen 1-Zelle (a-z) und einer Richtung zum Durchqueren dieser 1-Zelle in einem
topologischen Netzwerkabschnitt (A-D), der durch eine Datenparzelle dargestellt ist,
welche in einem Massenspeicher entsprechend einem der Ansprüche 1 bis 6 gespeichert ist,
wobei das Verfahren die folgenden Schritte umfaßt:
(a) in dem Kettenlisten-Datensatz für die aktuelle 1-Zelle den beendenden Knotenpunkt (L,
R) in der bestimmten Richtung der Durchquerung der 1-Zelle auffinden (703); und
(b) in diesem Kettenlisten-Datensatz nach einem Verweis auf eine weitere 1-Zelle suchen,
die von dem genannten beendenden Knotenpunkt ausgeht (706); dadurch gekennzeichnet,
daß Schritt (b) alternativ die Suche nach einem Indikator (ML) umfaßt, der angibt, daß der
genannte beendende Knotenpunkt ein Grenzknotenpunkt ist, und
daß, falls der genannte Indikator gefunden wird, ein Schritt (bl) durchgeführt wird (709), in
dem Informationen (O-C'), auf die von dem Kettenlisten-Datensatz und außerhalb des
Kettenlisten-Datensatzes verwiesen wird, benutzt werden, um einen Verweis auf die weitere 1-
Zelle in der Datenparzelle eines benachbarten Abschnitts (A-D) des Netzwerks zu
lokalisieren.
8. Verfahren nach Anspruch 7, wobei die Netzwerkdaten entsprechend einem
der Ansprüche 2 bis 6 gespeichert wurden, wobei der Schritt (b1) das Konsultieren des
Knotenpunktlisten-Datensatzes (Fig. 4) für diesen beendenden Knotenpunkt umfaßt, um
den entsprechenden Knotenpunkt in einem benachbarten Abschnitt des Netzwerks zu
identifizieren, und die Benutzung des verkettenden Zeigers (TP) des entsprechenden
Knotenpunktlisten-Datensatzes in einer Datenparzelle, die den benachbarten Abschnitt darstellt,
um die weitere 1-Zelle zu identifizieren, die von dem entsprechenden Knotenpunkt in den
benachbarten Netzwerkabschnitt führt.
9. Verfahren zum Identifizieren einer Reihe von 1-Zellen (a-z), die eine
Strecke durch ein topologisches Netzwerk bilden, das durch Datenparzellen dargestellt wird, die
entsprechend einem der Ansprüche 1 bis 6 in einem Massenspeicher (104) gespeichert
wurden, bei einer gegebenen aktuellen 1-Zelle und der Richtung der Durchquerung dieser
1-Zelle, wobei das Verfahren das wiederholte Finden einer weiteren 1-Zelle entsprechend
einem Verfahren nach Anspruch 7 oder Anspruch 8 umfaßt, wobei jedesmal die weitere 1-
Zelle zu einer neuen aktuellen 1-Zelle gemacht wird und jedesmal die aktuelle 1-Zelle nur
durchquert wird, wenn sie einen Teil der gewünschten Route bildet.
10. Verfahren zum Identifizieren einer Reihe von 1-Zellen (f, g, w, x), die eine
bestimmte 2-Zelle (X) in einem topologischen Netzwerk abgrenzen, das entsprechend
einem Verfahren nach einem der Ansprüche 4 bis 7 gespeichert ist, wobei das Verfahren die
folgenden Schritte umfaßt:
(c) Wählen einer ersten aktuellen 1-Zelle, die die bestimmte 2-Zelle begrenzt, und Wählen
einer Richtung, um die 2-Zelle in einer Drehrichtung zu umkreisen, die derjenigen
Drehrichtung entgegengesetzt ist, nach der die 1-Zellen durch die verkettenden Zeiger in den
Kettenlisten-Datensätzen angegeben werden, und
(d) Anwenden eines Verfahrens nach Anspruch 9, um eine Reihe von 1-Zellen zu
identifizieren, wobei die erste 1-Zelle, die durch den verkettenden Zeiger bei jeder 0-Zelle
angegeben wird, durchquert wird, bis die erste aktuelle 1-Zelle wieder erreicht ist.
11. Verfahren nach Anspruch 10, wobei bei Erreichen eines
Grenzknotenpunktes ermittelt wird, ob der Teil der bestimmten 2-Zelle, welcher jenseits der Abschnittgrenze
liegt, von Interesse ist, und - wenn dieser Teil nicht von Interesse ist - der Schritt (b)
ersetzt wird durch Schritt (b2) (810), in dem der nächstfolgende Grenzknotenpunkt auf der
Abschnittgrenze entsprechend der genannten entgegengesetzten Drehrichtung um die 2-
Zellen-Grenze herum identifiziert wird und in dem der Knotenpunktlisten-Datensatz für
den genannten nächsten folgenden Grenzknotenpunkt benutzt wird, um eine weitere 1-Zelle
der Reihe innerhalb der Abschnittgrenze zu identifizieren.
12. Gerät (102, 103) zum Lesen einer topologischen Datenbank, die
entsprechend einem Verfahren nach einem der Ansprüche 1 bis 6 in einer
Massenspeichervorrichtung (104) gespeichert ist, wobei das Gerät folgendes umfaßt:
- Mittel, um aus einer Massenspeichervorrichtung eine erste Datenparzelle zu lesen, die
einen ersten Abschnitt eines topologischen Netzwerks darstellt;
- Mittel, um aus der Datenparzelle einen Kettenlisten-Datensatz zu lesen, der einer 1-
Zelle (a-z) in dem ersten Abschnitt (A-D) des Netzwerks entspricht, wobei der
Kettenlisten-Datensatz in einem Fall, in dem die 1-Zelle durch einen Nicht-Grenzknotenpunkt
beendet wird, einen Verweis auf eine weitere 1-Zelle in dem ersten Abschnitt enthält,
die ebenfalls durch diesen Knotenpunkt beendet wird, oder in einem Fall, in dem die 1-
Zelle durch einen Grenzknotenpunkt beendet wird, einen Indikator (N> Z,) für diesen
letztgenannten Fall und einen Verweis auf weitere Informationen (0-C') außerhalb des
Kettenlisten-Datensatzes enthält;
- Mittel, die auf das Lesen des Indikators in dem Kettenlisten-Datensatz reagieren, um
die genannten weiteren Informationen außerhalb des Kettenlisten-Datensatzes zu
konsultieren, um einen benachbarten zweiten Abschnitt (A-D) des Netzwerks zu
identifizieren; und
- Mittel, um eine zweite Datenparzelle für den zweiten Abschnitt (A-D) des Netzwerks
zu lesen und um Informationen in der zweiten Datenparzelle zu nutzen, um eine weitere
1-Zelle zu identifizieren, die von dem entsprechenden Grenzknotenpunkt in den zweiten
Abschnitt des Netzwerks führt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP90202587 | 1990-10-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69131270D1 DE69131270D1 (de) | 1999-07-01 |
DE69131270T2 true DE69131270T2 (de) | 1999-12-02 |
Family
ID=8205130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69131270T Expired - Fee Related DE69131270T2 (de) | 1990-10-01 | 1991-09-23 | Verfahren zur Speicherung eines topologischen Netzwerkes und Verfahren und Geräte, um eine Reihe von 1-Zellen zu identifizieren |
Country Status (3)
Country | Link |
---|---|
US (1) | US5754846A (de) |
KR (1) | KR100270941B1 (de) |
DE (1) | DE69131270T2 (de) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6047280A (en) * | 1996-10-25 | 2000-04-04 | Navigation Technologies Corporation | Interface layer for navigation system |
US7197500B1 (en) | 1996-10-25 | 2007-03-27 | Navteq North America, Llc | System and method for use and storage of geographic data on physical media |
US5974419A (en) * | 1996-10-25 | 1999-10-26 | Navigation Technologies Corporation | Parcelization of geographic data for storage and use in a navigation application |
US5968109A (en) * | 1996-10-25 | 1999-10-19 | Navigation Technologies Corporation | System and method for use and storage of geographic data on physical media |
US7266560B2 (en) * | 1998-01-30 | 2007-09-04 | Navteq North America, Llc | Parcelized geographic data medium with internal spatial indices and method and system for use and formation thereof |
US6038559A (en) | 1998-03-16 | 2000-03-14 | Navigation Technologies Corporation | Segment aggregation in a geographic database and methods for use thereof in a navigation application |
US6473770B1 (en) | 1998-03-16 | 2002-10-29 | Navigation Technologies Corp. | Segment aggregation and interleaving of data types in a geographic database and methods for use thereof in a navigation application |
US6112200A (en) * | 1998-03-16 | 2000-08-29 | Navigation Technologies Corporation | Interleaving of data types in a geographic database and methods for application |
KR20010034848A (ko) * | 1998-05-08 | 2001-04-25 | 요한 요트너 | 맵을 가진 저장 매체를 생성하는 방법 |
US6703947B1 (en) | 2000-09-22 | 2004-03-09 | Tierravision, Inc. | Method for organizing and compressing spatial data |
JP2004020219A (ja) * | 2002-06-12 | 2004-01-22 | Denso Corp | エリアの特定方法、エリアの特定装置、地図表示方法、地図表示装置および経路案内装置 |
JP2004362065A (ja) * | 2003-06-02 | 2004-12-24 | Denso Corp | 地図情報検索装置、地図情報検索方法、及び地図情報検索プログラム |
US7593798B2 (en) * | 2003-10-30 | 2009-09-22 | Deere & Company | Vehicular guidance system having compensation for variations in ground elevation |
US20060080031A1 (en) * | 2004-09-07 | 2006-04-13 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060058951A1 (en) * | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060058953A1 (en) | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060080032A1 (en) * | 2004-09-07 | 2006-04-13 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
JP4839765B2 (ja) * | 2005-10-04 | 2011-12-21 | 株式会社デンソー | 電子機器、路線地図データ更新システム、及び、路線地図データ管理装置 |
DE102006034410A1 (de) | 2006-07-25 | 2008-01-31 | Robert Bosch Gmbh | Verfahren zum Betrieb eines Navigationssystems |
DE102009001078A1 (de) * | 2009-02-23 | 2010-08-26 | Robert Bosch Gmbh | Verfahren zum Bereitstellen eines Wegenetzwerks |
CN104596527B (zh) * | 2013-10-31 | 2017-08-11 | 北京四维图新科技股份有限公司 | 一种划分各级引导道路和细街路的方法 |
CN110111397B (zh) * | 2019-05-16 | 2023-03-24 | 长江水利委员会长江科学院 | 一种基于边界缝合与拓展的复杂水域网格再生方法 |
KR102302048B1 (ko) * | 2021-03-30 | 2021-09-15 | 주식회사 우승산업 | 수중펌프용 임펠러 설치각 조정방법 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4689747A (en) * | 1984-06-21 | 1987-08-25 | Nippondenso Co., Ltd. | Vehicle navigational apparatus for displaying a road map |
JPH0690596B2 (ja) * | 1985-04-30 | 1994-11-14 | 日本電装株式会社 | 電子地図表示装置 |
NL8602654A (nl) * | 1986-10-23 | 1988-05-16 | Philips Nv | Werkwijze voor het in kavels verdelen en in een massageheugen bitsgewijs opslaan van een gegevensbestand, alsook voor het adresseren van een kavel, en inrichting voor het uitvoeren van de werkwijze. |
NL8701738A (nl) * | 1987-07-23 | 1989-02-16 | Philips Nv | Werkwijze voor het opslaan van een topologisch netwerk in een geheugen en voor het opzoeken van een 2-cel uit dat netwerk, alsmede inrichting voor het uitvoeren van de werkwijze voor het opzoeken. |
NL8702014A (nl) * | 1987-08-28 | 1989-03-16 | Philips Nv | Routebepalingseenheid. |
FR2636134B1 (fr) * | 1988-09-02 | 1995-03-10 | Thomson Csf | Systeme de navigation terrestre visualisant en temps reel la position d'un vehicule |
US5170353A (en) * | 1988-11-17 | 1992-12-08 | U.S. Philips Corporation | Bucket-oriented route planning method, and navigation system comprising a route planner for carrying out such a method |
US5150295A (en) * | 1990-05-22 | 1992-09-22 | Teledyne Industries, Inc. | Computerized system for joining individual maps into a single map product |
US5177685A (en) * | 1990-08-09 | 1993-01-05 | Massachusetts Institute Of Technology | Automobile navigation system using real time spoken driving instructions |
US5187667A (en) * | 1991-06-12 | 1993-02-16 | Hughes Simulation Systems, Inc. | Tactical route planning method for use in simulated tactical engagements |
-
1991
- 1991-09-23 DE DE69131270T patent/DE69131270T2/de not_active Expired - Fee Related
- 1991-09-27 KR KR1019910016852A patent/KR100270941B1/ko not_active IP Right Cessation
- 1991-10-01 US US07/769,613 patent/US5754846A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5754846A (en) | 1998-05-19 |
DE69131270D1 (de) | 1999-07-01 |
KR100270941B1 (ko) | 2000-11-01 |
KR920008623A (ko) | 1992-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69131270T2 (de) | Verfahren zur Speicherung eines topologischen Netzwerkes und Verfahren und Geräte, um eine Reihe von 1-Zellen zu identifizieren | |
DE3782157T2 (de) | Verfahren und einrichtung zur speicherung einer haufenweise unterteilten binaerdatenbasis. | |
DE69704085T2 (de) | Optimierung des zugriffes auf multiplexierte datenströme | |
DE3650673T2 (de) | Aufzeichnen und Wiederauffinden einer Representation von topologischen Strukturen | |
DE69719694T2 (de) | Wegsuchgerät | |
DE69725677T2 (de) | Vorrichtung und Verfahren zum Speichern von geographischen Daten auf einem physikalischen Speichermedium | |
DE69732015T2 (de) | Karthographisches Datenbankgerät | |
DE10354850B4 (de) | Kartendaten-Verarbeitungseinheit | |
DE69629451T2 (de) | Routensuchvorrichtung für Fahrzeuge | |
DE69130883T2 (de) | Informationsverarbeitungssystem und Verfahren für die Verarbeitung von Dokumenten mit strukturierten Schlüsselwörtern | |
DE69807828T2 (de) | Navigationssystem zum gebrauch in einem fahrzeug | |
WO1988009974A1 (en) | Process and device for determining an itinerary between a starting and a destination point | |
EP1721127A1 (de) | Verfahren zum speichern von verkehrswegeabschnitte repr esentierenden kartendaten in einem navigationssystem und navigationssystem | |
DE19810843A1 (de) | Verfahren und Zugriffseinrichtung zum Bestimmen der Speicheradresse eines Datenwerts in einer Speichereinrichtung | |
DE69123493T2 (de) | Verarbeitungsverfahren und Gerät um einen Dateinamen von einem logischen zu einem richtigen Namen zu erstellen | |
EP0941533B2 (de) | Verfahren und endgerät zur räumlichen zuordnung von auf einen ort bezogenen informationen | |
DE69924249T2 (de) | Verfahren zum herstellen eines speichermediums mit einer karte | |
DE69721914T2 (de) | Speichermedium mit geographischen ortsdaten | |
DE3804261C2 (de) | ||
DE3736455A1 (de) | Hierarchisches ablagesystem | |
EP2047386A1 (de) | Aktualisierungsverfahren für datenbasen, insbesondere navigationsdatenbasen | |
DE19750786C2 (de) | Verfahren und Endgerät zur räumlichen Zuordnung von auf einen Ort bezogenen Informationen | |
DE69901242T2 (de) | Verfahren zur erzeugung und interpretation einer positionsreferenz für eine digitale karte | |
EP1837628A2 (de) | Verfahren zum Betrieb eines Navigationssystems | |
EP2924589B1 (de) | Onboard-Unit und Verfahren zum Aktualisieren von Geodaten darin |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: SIEMENS AG, 80333 MUENCHEN, DE |
|
8339 | Ceased/non-payment of the annual fee |