next up previous contents
Next: Algorithmen ausgewählter Prädikate Up: Die Klassifikationsfunktionen Previous: Fläche/Fläche

Laufzeitbetrachtungen

 

Da die vorgestellten drei Algorithmen zur Bestimmung topologischer 3D-Beziehungen zwischen Flächen und Volumina konzeptionell die gleiche Struktur aufweisen, können deren Laufzeiten zusammen untersucht werden.

Bei einer naiven Umsetzung der geschilderten Methode einer Betrachtung der topologischen Beziehungen der enthaltenen Simplexe, kann von einem Aufwand ausgegangen werden, der in der Größenordnung tex2html_wrap_inline6342 liegt, wobei n und m die Anzahl der Simplexe in den beiden simplizialen Komplexen darstellt. Da diese jeweils alle zueinander in Beziehung gesetzt werden müssen, sind tex2html_wrap_inline6348 Berechnungsschritte hierfür notwendig. Wie man an den Algorithmen 1, 3 und 5 sieht, haben die Funktionen zur Ermittlung der topologischen Lagen unter den Primitiven eine konstante Zeitkomplexität, so daß die Schranke von tex2html_wrap_inline6342 eingehalten werden kann.

Kritisch ist jetzt nur noch der Schritt des Zusammenfügens der gewonnenen Einzelergebnisse. Kann dies in konstanter Zeit bewältigt werden, haben wir eine Zeitkomlexität von tex2html_wrap_inline6342 für diejenigen Varianten der topRel-Algorithmen, welche nacheinander alle Paare von Simplexen untersuchen.

In diesem Zusammenhang ist die Beobachtung wichtig, daß die Kombinationen der Einzelresultate immer lokal bestimmt werden können. Es ist zwar nicht immer eine einfache Verknüpfung der jeweiligen topologischen Beziehungen möglich, aber auch in den Sonderfällen reicht es aus, maximal alle Nachbarn der beiden aktuellen Simplexe (also jeweils 3-4) aber keineswegs ganze Teilbereiche der Objekte zu betrachtengif. Ob beispielsweise eine topologische Beziehung zwischen zwei Simplexen auch auf dem Rand der betreffenden Objekte gilt, kann über die Nachbarschaftszeiger der Simplexe getestet werden und ob es zu dieser Beziehung eine bestimmte ``Nachbarbeziehung`` gibt, ist ebenso lokal zu entscheiden.

Wie man sieht, ist die worst-case-Laufzeit einer solchen Implementierung tex2html_wrap_inline6342 . Schnellere Antwortzeiten (im average-case) sind nur bei overlap bzw. cross (im Fläche/Volumen-Fall) zu erwarten, da diese Beziehungen unmittelbar vermeldet werden können, wenn die entsprechende topologische Beziehung unter den Simplexen festgestellt wurde. Je nachdem, wie früh ein für diese relative räumliche Lage signifikantes Simplexpaar untersucht wird, ist in einem dieser beiden Fälle also eine schnellere Antwortzeit der topologischen Klassifikationsfunktion möglich.

Nun soll die Verbesserung angegeben werden, die im Rahmen dieser Arbeit innerhalb des GEOTOOLKIT realisiert wurde. Eine wichtige Rolle hierbei spielt die Klasse gtRTree, in der die räumliche Zugriffsmethode eines R-Baums (vgl. Abschnitt 4.4.2) bereitgestellt wird.

In den implementierten Methoden werden nicht alle Paare von Simplexen untersucht, sondern nur eines der beiden Netze sequentiell durchlaufen und zum jeweils aktuellen Simplex s diejenigen Simplexe des andern Objektes ermittelt, die in die Bounding-Box von s hineinreichen, denn nur für sie besteht die Möglichkeit einer von disjoint verschiedenen topologischen Beziehung. Die Bounding-Box von s dient also als Argument für eine nicht-strikte R-Baum-Anfrage, d.h. aus dem anderen Netz werden nicht nur die Simplexe ermittelt, die echt in der Bounding-Box liegen, es werden vielmehr auch die Simplexe zurückgeliefert, welche die Bounding-Box schneiden. Die so gefundenen Simplexe des zweiten Netzes können für die Gesamtbeziehung der beiden Objekte von Interesse sein und werden untersucht. Da dieses Vorgehen im allgemeinen allerdings nicht alle Simplexe zurückliefert, sondern nur eine kleine Teilmenge, kann die Laufzeit der Algorithmen erheblich verbessert werden.

Unter schlechten Voraussetzungen ist es zwar immer noch möglich, auf einen quadratischen Algorithmus zu kommen. Dies ist z.B. dann der Fall, wenn die Simplexe des ersten Netzes alle größer sind, als das zweite Netz insgesamt. Bei in der Praxis vorkommenden, sehr großen und vor allem ungefähr gleich modellierten Netzengif ist allerdings die Annahme viel realistischer, daß eine R-Baum-Anfrage eine konstante Anzahl von Simplexe liefert. Damit kommen wir auf eine Zeitkomplexität von tex2html_wrap_inline6362 , wobei k die Zeit für die R-Baum-Zugriffe darstellt. Für einen R-Baum mit m Blättern zu einem Netz mit m Simplexen kommen wir hierbei auf eine Abschätzung von tex2html_wrap_inline6370 und somit im allgemeinen auf eine Gesamtlaufzeit von tex2html_wrap_inline6372 für die topRel-Algorithmen.


next up previous contents
Next: Algorithmen ausgewählter Prädikate Up: Die Klassifikationsfunktionen Previous: Fläche/Fläche

Stefan Hecht
Thu Aug 26 14:06:24 MET DST 1999