Tytuł jakiśtam

advertisement
-skeletony w przestrzeniach R2 i R3
Mirosław Kowaluk
Wydział Matematyki, Informatyki i Mechaniki
Uniwersytet Warszawski
Dla danego zbioru P zawierającego n punktów w Rm -skeletonami
nazywamy rodzinę grafów o wierzchołkach z P, parametryzowaną przez
wartość , takich, że dwa punkty x,y  P są połączone krawędzią, gdy
żaden inny punkt z P nie należy do obszaru R(x,y,), gdzie:
1. Dla  = 0, R(x,y,) jest odcinkiem xy .
x
2. Dla 0 <  < 1, R(x,y,) jest częścią wspólną
dwóch kul o promieniu d(x,y)/2, których
brzegi zawierają oba punkty x i y.
 = 0,95
0,8
y
3. Dla 1   < , R(x,y, ) jest częścią wspólną dwóch kul o promieniu
d(x,y)/2 i środkach odpowiednio w punktach (1-/2)x+(/2)y oraz
(/2)x+(1-/2)y.
4. Dla  = , R(x,y,) jest nieskończonym pasem prostopadłym do prostej
przechodzącej przez x i y, którego brzeg zawiera x i y.
=1
=2
=
x
y
Przykład.
=1
=2
=
Zastosowania.
Modelowanie powierzchni.
(http://www.iah.bbsrc.ac.uk/phd/gisruk95.html)
Analiza zdjęć medycznych.
(http://noodle.med.yale.edu/~robinson/)
Optymalizacja radiowych sieci bezprzewodowych.
Własności -skeletonów.
-skeleton dla zbioru punktów P i  = 1 nazywamy grafem Gabriela (GG(P))
(Gabriel,Sokal 69), a dla  = 2 nazywamy grafem relatywnego sąsiedztwa
(RNG(P)) (Toussaint 80).
Twierdzenie (Kirkpatrick,Radke 85).
MST(P)  RNG(P)  GG(P)  DT(P)
z
z
x
y
y
x
w
Konstrukcja –skeletonów.
Twierdzenie (Supowit 83).
RNG(P) w R2 można znaleźć w czasie O(n log n).
Twierdzenie (Matula,Sokal 84).
GG(P) w R2 można znaleźć w czasie O(n log n).
Twierdzenie (Jaromczyk,Kowaluk 87)
–skeletony (dla 1    2) w R2 można wyznaczyć z DT(P) w czasie O(n).
Dowód.
Z DT(P) usuwamy krawędzie nienależące do –skeletonu.
Z każdego wierzchołka prowadzimy ścieżki eliminujące krawędzie
kolejnych trójkątów triangulacji. Jeśli wierzchołek eliminuje jedną
krawędź trójkąta, to z pozostałych dwóch może wyeliminować tylko
dłuższą. Zatem łączące się ścieżki eliminujące biegną dalej razem.
Stosując operacje FIND-UNION na eliminowanych krawędziach, po
dojściu do wyeliminowanych wcześniej krawędzi, możemy w
zamortyzowanym czasie stałym przejść na koniec odpowiedniego ciągu
wyeliminowanych krawędzi i kontynuować sprawdzanie.
Ponieważ przez każdą krawędź przechodzą co najwyżej dwie ścieżki
eliminujące (w przeciwnych kierunkach), więc wykonujemy O(n)
sprawdzeń.
Daje to liniową złożoność algorytmu.
Przykład.
Generowanie
DT.krawędzie.
Wyeliminowane
Ścieżka
Ścieżki
eliminiujące.
wyeliminowanych
eliminująca
dla wybranego
krawędzi.wierzchołka.
Mówimy, że punkty ze skończonego zbioru P  Rm są w położeniu
ogólnym, gdy żadne m+1 z nich nie leży na wspólnej hiperpłaszczyźnie i
żadne m+2 z nich nie leżą na wspólnej sferze.
Twierdzenie (Jaromczyk,Kowaluk 91).
RNG(P) w R3 w położeniu ogólnym punktów w metryce Lp (dla 1 < p < )
ma O(n3/2+) krawędzi i można go znaleźć w czasie O(n2).
Twierdzenie (Agarwal, Matoušek 92).
RNG(P) w R3 w położeniu ogólnym punktów w metryce Lp (dla 1 < p < )
ma O(n4/3) krawędzi i można go znaleźć w oczekiwanym czasie O(n3/2+).
Twierdzenie (Chazelle,Edelsbrunner,Guibas,Hershberger,Seidel,Sharir 90).
GG(P) w R3 może mieć (n2) krawędzi.
Fakt.
RNG(P) w Rm dla m > 3 może mieć (n2) krawędzi.
Niech L(u,v) oznacza długość najkrótszej ścieżki w grafie łączącej wierzchołki u i v spójnego grafu G w R2, a D(u,v) oznacza odległość między u i
v. Współczynnik rozpięcia S grafu G definiujemy jako
S = max (u,v)  G L(u,v)/D(u,v) .
L(u,v)
u
D(u,v)
v
Twierdzenie (Keil,Gutwin 92).
Współczynnik rozpięcia DT(P), gdzie |P| = n, wynosi O(1).
Twierdzenie (Bose,Devroye,Evans,Kirkpatrick 02).
Współczynnik rozpięcia RNG(P), gdzie |P| = n, wynosi (n).
Współczynnik rozpięcia GG(P), gdzie |P| = n, wynosi O(n1/2).
Dziękuję za uwagę.
Download