Lewandowicz E., 2007; Kartografia numeryczna i informatyka geodezyjna. Materiały II Ogólnopolskiej Konferencji Naukowo-Technicznej, Rzeszów 2007, str. 17-24 Elżbieta LEWANDOWICZ 1 GRAFY JAKO MODELE TOPOLOGICZNE DANYCH MAPY NUMERYCZNEJ 1. Wprowadzenie, cel pracy Mapa numeryczna będąca elementem systemu informacyjnego zawiera dane przestrzenne, które nie tylko informują o kształcie, wielkości i położeniu obiektów w przestrzeni, ale także na podstawie tych danych można określić wzajemne relacje między obiektami geograficznymi. Te relacje są często niezbędne do zbudowania narzędzi analitycznych związanych z podejmowaniem decyzji w gospodarce i planowaniu przestrzenią. Relacje między obiektami geograficznymi można określić z mapy na podstawie danych geometrycznych. Uporządkowane dane geometryczne są podstawą do zapisu tych relacji. Zapis tych danych za pomocą grafu umożliwi wykorzystanie ich do budowy modeli matematycznych i narzędzi analitycznych. Po przyjęciu przestrzeni geograficznej jako przestrzeni topologicznej, w której wyodrębniono podzbiory opisane elementami geometrycznymi (punktami, liniami i powierzchniami) [1], relacje między tymi elementami przyjmuje się jako topologię [2]. Zapis przyjętej topologii w formie grafu stanowi model topologiczny przestrzeni geograficznej. Można to zapisać w formie schematu przedstawionego na rys. 1. Topologia danych geometrycznych Graf model topologiczny przestrzeni Obiekty geometryczne Modele matematyczne (grafy, podgrafy, digrafy) Atrybuty opisowe obiektów geograficznych Rys.1. Metodyka budowy modeli matematycznych danych przestrzennych w bazach GIS [1] W literaturze przedmiotu i w rozwiązaniach narzędziowych mówi się o topologii węzłów, sieci i obszarów (regionów) [3, 4, 5, 6, 7, 8]. Są to modele budowane na wyselekcjonowanych danych geometrycznych w celu realizacji określonych zadań analitycznych. Norma ISO 19107 [9] w jednym modelu przestrzennym wiąże wszystkie dane geometryczne i topologiczne. W niniejszej pracy modele topologiczne danych przestrzennych przedstawię w oparciu o prosty przykład obrazujący fragment mapy. Wykorzystując teorię grafów geometrycznych [10, 11] obraz geometryczny mapy przekształcę na graf [12, 13, 14, 15]. Topologia danych geometrycznych zapisana będzie w tym grafie. Uzyskany model danych przestrzennych w formie grafu, zapiszę w macierzach. W oparciu o zapisy macierzowe będę wykonywała konwersję danych do nowych form. Tym samym uzyskam nowe modele matematyczne danych geometrycznych w formie nowych grafów. 1 dr inż., Wydział Geodezji i Gospodarki Przestrzennej Uniwersytetu Warmińsko Mazurskiego w Olsztynie 1
2. Zapis danych przestrzennych za pomocą grafów Na rys.2. przedstawiam prosty wycinek mapy i zapis jej treści w formie modelu topologicznego grafu. Jak widzimy graf można uzyskać z prostego przełożenia rysunku mapy do schematycznej formy [12]. W prostych rozwiązaniach obiekty punktowe mapy identyfikowane są węzłem grafu, obiekty liniowe krawędzią. Graf to zbiór węzłów i krawędzi: G=[W, K, f]. (1) Funkcja f przyporządkowuje krawędzie do węzłów, gdyż każda krawędź zaczyna się i kończy w węźle. W naszym przykładzie węzły to trójstyki dróg i linii granicznych użytków oraz punkty informujące o polu namiotowym i pomniku przydrożnym. Krawędzie grafu to odcinki drogi i linie graniczne użytków. Przyjmijmy G jako graf geometryczny, czyli taki, w którym węzły mają określone położenie. Jeśli krawędzie G nie przecinają się poza węzłem, to w takim grafie możemy wyróżnić ściany (obszary) grafu. W naszym przypadku jest to możliwe. Można wyróżnić pięć obszarów, które odpowiednio opisują: las, jezioro, łąkę i trzy obszary rolne. Rys.2. Zapisy przestrzeni geograficznej a) w formie graficznej na mapie b) za pomocą uproszczonego modelu topologicznego obrazowanego grafem G Zapiszmy model G (rys.1b) w formie grafu etykietowanego (rys.3) z identyfikatorami: węzłów, krawędzi i obszarów. Stanowi on bazowy model topologiczny danych przestrzennych. Taki model zapisywany jest w tabelach relacyjnych bazy SIP, GIS [3, 4, 5, 6, 7. 8]. Ten model można wykorzystać jako podstawę do budowania pochodnych modeli topologicznych [1]. Przedstawiony model danych przestrzennych w formie grafu (rys.3) można zapisać w formach macierzowych. W literaturze przedmiotu mówi się o macierzach sąsiedztwa S, macierzy incydencji I i macierzy oczek (obszarów) O [10, 11]. Macierze te określę jako macierze: sąsiedztwa węzłów S w, (tab.1), zależności węzłów i krawędzi Z W-K (tab.2) oraz jako macierz zależności obszarów i krawędzi Z O-K. (tab.3). Są to podstawowe macierze opisujące graf geometryczny G. Odpowiadają one zapisowi struktury danych przestrzennych w przyjętych formach tabelarycznych [3, 4, 5, 6, 7, 8, 16]. Macierze S w, Z W-K, Z O-K, opisują relacje między węzłami i krawędziami i obszarami grafu G. Macierz S W informuje, które węzły są połączone krawędzią. Jeśli element macierzy (s w ) ij, (i, j {1, 2,, 12}) przyjmuje wartość 1, to znaczy, że węzły opisane identyfikatorami i, j, są połączone krawędzią. Macierz Z W-K przypisuje krawędziom węzły, czyli element macierz (z wk ) ij, (i {1, 2,, 12}, j {1, 2,, 15}) przyjmuje wartość 1, jeśli węzeł i stanowi wierzchołek krawędzi j. Przyjmując graf G jako graf geometryczny (o określonym położeniu węzłów), można w nim określić minimalne oczka, które stanowią obszary (ściany) w grafie. Kolejna macierz Z O-K przypisuje obszarom krawędzie ograniczające je. Element macierzy (z ok ) ij, (i {I, II,, VI}, j {1, 2,, 15} przyjmuje wartość 1, jeśli krawędź j stanowi granicę obszaru i. 2
Rys.3. Model danych przestrzennych w formie grafu etykietowanego Tablica 1. Macierz sąsiedztwa węzłów S w przedstawia relacje między węzłami grafu G S w = 1 2 3 4 5 6 7 8 9 10 11 12 1 0 1 0 0 0 1 1 0 0 0 0 0 2 1 0 1 0 0 0 1 0 0 0 0 0 3 0 1 0 1 0 0 0 0 1 0 0 0 4 0 0 1 0 1 0 0 0 1 0 0 0 5 0 0 0 1 0 1 0 0 0 1 0 0 6 1 0 0 0 1 0 0 1 0 0 0 0 7 1 1 0 0 0 0 0 1 0 0 0 0 8 0 0 0 0 0 1 1 0 0 1 0 0 9 0 0 1 1 0 0 0 0 0 1 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 Tablica 2. Macierz zależności węzłów i krawędzi Z W-K przedstawia relacje między węzłami i krawędziami grafu G Z W-K = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 2 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 3 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 4 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 5 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 6 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 8 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 9 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 10 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Tablica 3. Macierz oczek Z O-K, przedstawia relacje między oczkami (obszarami) i krawędziami grafu G, przy przyjęciu G jako grafu geometrycznego 3
Z O-K = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 I 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 II 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 III 0 0 1 0 0 0 0 0 1 1 1 1 1 0 0 IV 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 V 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 VI 0 0 0 0 1 0 0 0 0 0 0 1 0 1 1 Zauważmy, że graf G (rys.3) jest niespójny, węzły identyfikowane nr. 11, 12 nie są powiązane z żadną krawędzią. Nazywa się je węzłami swobodnymi. Widać to także w zapisach macierzowych w S W i Z W-K. Wyróżniając elementy powiązane w grafie G można określić podgraf spójny G w G [10, 11]: ' G G, (2) ' G w w G. (3) 11 12 3. Konwersja wyjściowych danych do nowych form Przedstawiony graf G (rys.2) oraz jego zapisy macierzowe S w, Z W-K, Z O-K, wykorzystam do tworzenia nowych struktur zapisu topologii danych przestrzennych. Zauważmy, że w oparciu o macierz Z W-K można określić graf sąsiedztwa krawędzi G k, przedstawiony na rys.3. Można go zapisać za pomocą macierzy S K. Można zauważyć, że: S K.= (Z W-K ) T ( Z W-K ) D 2 (4) gdzie D 2 jest macierzą diagonalną o wartościach równych 2. Element macierzy (s k ) ij (i, j {1, 2,, 15}) przyjmuje wartość równą 1, jeśli krawędź i przylega do krawędzi j w grafie G (krawędzie i, j dochodzą do wspólnego węzła). G k S k = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 2 1 0 1 0 0 0 0 1 1 0 0 0 0 0 0 3 0 1 0 1 0 0 0 0 1 0 1 0 0 0 0 4 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 5 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 6 1 0 0 0 1 0 1 0 0 0 0 0 0 0 1 7 1 0 0 0 0 1 0 0 0 1 0 0 1 0 0 8 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 9 0 1 1 0 0 0 0 1 0 1 0 0 0 0 0 10 0 0 0 0 0 0 1 1 1 0 0 0 1 0 0 11 0 0 1 1 0 0 0 0 0 0 0 1 0 1 0 12 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 13 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 14 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 15 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 Rys. 3. Graf sąsiedztwa krawędzi G k przedstawiony graficznie i w formie macierzy sąsiedztwa krawędzi S k Macierz Z O-K zawiera dane, które pozwalają na wygenerowanie informacji o sąsiedztwie obszarów. Na rys.4 przedstawiono to sąsiedztwo w formie grafu G O i zapisu macierzowego S O. Macierz S O otrzymuje się poprzez działanie: S O = (Z O-K ) (Z O-K ) T - D O (5) gdzie D O jest macierzą diagonalną o wartościach d ii równych liczbie krawędzi opisujących obszar i. 4
Elementy macierzy S O,, (s o ) ij przyjmują wartości 1 jeśli obszar identyfikowany wartością i graniczny z obszarem j, (i, j {I, II,, VI}). S o = I II III IV V VI I 0 1 1 0 0 0 II 1 0 1 0 0 0 III 1 1 0 1 1 1 IV 0 0 1 0 0 1 V 0 0 1 0 0 1 VI 0 0 1 1 1 0 Rys.4. Zapis sąsiedztwa obszarów, przedstawionego w formie graficznej G o i macierzowej S o, otrzymany z macierzy Z O-K Krawędzie grafu G O opisane są w macierzy Z O-K, jako linie rozgraniczające obszary. Można je wszystkie wprowadzić do zapisu graficznego G O, otrzymując kolejny model G O-K (rys.5). G O-K Rys.5. Przedstawienie graficzne sąsiedztwa obszarów z liniami granicznymi rozgraniczającymi te obszary i liniami granicznymi kompleksu obszarów za pomocą grafu G O-K Poszukajmy jeszcze relacji między obszarami a węzłami i zapiszmy je w macierzy Z W-O. Otrzymać je możemy wykonując działanie: Z W-O =( (Z O-K )(Z W-K ) T ) / 2. (6) Wyrazy tej macierzy przyjmują wartości równe 0, 1. Wartości macierzy (z ow ) ij równe 1 wskazują na węzeł identyfikowany wartością j (j=1, 2,, 12) jako punkt graniczny obszaru i (i=i, II,, VI). Tablica 4. Macierz zależności Z O-W między obszarami a węzłami grafu G Z O-W = 1 2 3 4 5 6 7 8 9 10 11 12 I 1 0 0 0 0 1 1 1 0 0 0 0 II 1 1 0 0 0 0 1 0 0 0 0 0 III 0 1 1 0 0 0 1 1 1 1 0 0 IV 0 0 0 0 1 1 0 1 0 1 0 0 V 0 0 1 1 0 0 0 0 1 0 0 0 VI 0 0 0 1 1 0 0 0 1 1 0 0 5
Podobne macierze zależności opisujące relacje między obiektami mapy można zapisać jako transpozy macierzy opisanych wcześniej. Spróbujmy zapisać wszystkie macierze w jednym modelu matematycznym. 4. Zapis danych topologicznych obiektów mapy w jednej macierzy sąsiedztwa Przedstawione wyżej macierze opisują relacje między wybranymi obiektami mapy. Można te pojedyncze zapisy uporządkować i przedstawić w jednym modelu matematycznym. W tym celu zbudujmy macierz M symetryczną o wymiarach (n,n), gdzie n będzie sumą wszystkich obiektów mapy identyfikowanych w naszym modelu: 12 węzłów, 15 krawędzi i 6 obszarów (n=12+15+6). W tej macierzy zapiszmy relacje między obiektami mapy. Proszę zauważyć, że macierz M jest macierzą składającą się z macierzy wyżej opisanych: S w, Z W-K, Z O-K i z macierzy pochodnych: S K, S O, Z O-K, Z O-W, (Z O-K ) T =Z K-O, (Z W-K ) T =Z K-W. Jest macierzą blokową, symetryczną. Na rys.6, 7a wyodrębniono podmacierze macierzy M za pomocą kolorów i ramek. Symetryczność macierzy M jest związana z tym, że opisuje relacje w przestrzeni topologicznej przyjętej jako model przestrzeni geograficznej (przestrzeń topologiczna jest przestrzenią symetryczną Engelking 1986). Opisując model M atrybutami obiektów przestrzeni geograficznej (rys.1), możemy budować modele niesymetryczne [13, 15]. W oparciu o stworzoną macierz M możemy uzyskać zależności między obiektami, które są pomocne do budowania funkcji analitycznych. Przedstawiony model bazowy, opisany macierzą M, można przedstawić graficznie, ale byłby on mało czytelny. Zawiera on dużo relacji między wyróżnionymi obiektami mapy. W oparciu o macierz M można określić modele pochodne. Część z nich przedstawiono graficznie wyżej w formie modeli G K, G O, G O-K (rys.3, 4, 5). Na rys.8 przedstawiono kolejne dwa przykłady: G K-(W-K), G K-(K-O). Model G K-(W-K) przedstawia sąsiedztwo krawędzi i zależność węzłów od krawędzi, a model G K-(K-O) sąsiedztwo krawędzi i zależności obszarów od krawędzi (rys.7 b, c). Przedstawiają one wybrane relacje między obiektami mapy. Rys.8. Modele topologiczne sąsiedztwa wybranych podzbiorów G: a) model G K-(W_K) krawędzi i węzłów opisany macierzami S K i Z W-K, b) model G K-(O-K) krawędzi i obszarów opisany macierzami S K i Z O-K 6
Rys.6. Macierz M sąsiedztwa obiektów mapy składająca się z podmacierzy S W,Z W-K, Z O-K i S K, S O, Z K-W, Z K-O, Z O-W, Z W-O a) b) c) d) Rys.7. Zapis różnych topologii danych przestrzennych: a) macierz blokowa M; b) składowe macierzy M przedstawione w formie modelu G K-(K-W) ( rys.8 a); c) składowe macierzy M przedstawione w formie modelu G K-(O-K) ( rys.8 b); d) podmacierz S K, przedstawiona w formie modelu G K ( rys.3) 7
5. Zastosowania Przedstawione modele grafowe i macierzowe opisują relacje między obiektami zobrazowanymi na przykładowym fragmencie mapy. Zauważmy, że węzły swobodne opisujące pole namiotowe i pomnik, nie wchodzą do przedstawionych zapisów. Należałoby je związać w wybranymi obiektami: węzłami, krawędziami lub obszarami będącymi elementem spójnego podgrafugrafu G grafu G. Przedstawione modele można wykorzystać do typowych analiz przestrzennych np. sieciowych. Jednym z typowych zadań jest poszukiwanie najkrótszej drogi w grafie [10, 11]. Poszukajmy drogi do jeziora (II), jeśli znajdujemy się na odcinku drogi opisanej krawędzią 15. Zauważmy, że wybierając model G K-(O-K) przedstawiony na rys.8 b możemy określić tę drogę poprzez obiekty liniowe, a nawet powierzchniowe. Możemy wybrać drogę na skróty przez łąkę. Takie analizy byłyby niemożliwe w klasycznym modelu topologii sieciowej opartej na obiektach liniowych, opisanych grafem G. 6. Wnioski końcowe Dane przestrzenne zawarte w wektorowej mapie numerycznej dają możliwość budowy różnych modeli topologicznych. Przykłady ich budowy zaprezentowałam w niniejszej pracy. Budowa ich powinna wynikać z założonych zadań analitycznych. Literatura [1] LEWANDOWICZ E., Przestrzeń geograficzna jako przestrzeń topologiczna. Seminarium Modelowanie informacji geograficznej według norm europejskich i potrzeb infrastruktury informacji przestrzennej. Warszawa, 2007 (w druku) [2] ENGELKING R., Wstęp do topologii. Biblioteka matematyczna, Tom 62, Państwowe Wydawnictwo Naukowe, PWN, Warszawa, 1986 [3] BIELECKA E., System informacji geograficznej. Wydawnictwo PJWSTK Warszawa, 2006 [4] ECKES K., Modelowanie rzeczywistości geograficznej w systemach informacji przestrzennej. Roczniki Geomatyki, 2006, Tom IV, Zeszyt 3, Warszawa, s. 43-73 [5] GAŹDZICKI J., Systemy Informacji Przestrzennej, Państwowe Przedsiębiorstwo Wydawnictw Kartograficznych, Warszawa, 1990 [6] MOLENAAR M., An introduction to the theory of spatial object modeling for GIS. Taylor & Francis, London, 1998 [7] SULLIVAN D., O., UNWIN D., J., Geographic Information Analysis. Jon Wiley &Sons, INC, 2003 [8] URBAŃSKI J., Zrozumieć GIS. Analiza informacji przestrzennej. Wydawnictwo Naukowe PWN, Warszawa, 1997 [9] ISO 19107, Geographic information spatial schema ttp://www.isotc211.org/ [10] WILSON R., Wprowadzenie do teorii grafów. Wydawnictwo Naukowe PWN, Warszawa, 2000 [11] KULIKOWSKI J., L., Zarys teorii grafów. Państwowe Wydawnictwo Naukowe, PWN, Warszawa, 1986 [12] LEWANDOWICZ E., Grafy jako narzędzie do definiowania relacji przestrzennych pomiędzy danymi geograficznymi. Roczniki Geomatyki, Warszawa, 2004, Tom II, Zeszyt 2, s. 160-171 [13] LEWANDOWICZ E., Analizy sąsiedztwa mikroregionów w regionie w oparciu o dane przestrzenne zapisane w formie grafu geometrycznego. Roczniki Geomatyki, Warszawa, 2005, Tom III, Zeszyt 1, s. 73-82 [14] LEWANDOWICZ E., BAŁANDYNOWICZ J., Some Ways of Formulation of Objective Functions for Chosen Space Analysis. The 6th International Conference Faculty of Environmental Engineering, Vilnius Gediminas Technical University, 2005, Volume 2, pp. 927-930 [15] LEWANDOWICZ E., Area Neighbourhood Models. Polish Academy of Sciences, Geodezja i Kartografia, Geodesy and Cartography, 2006, Vol. 55, No. 3, pp. 147-167 8
[16] CHROBAK T., Modelowanie danych przestrzennych przy użyciu struktury FDS Molenaara. Materiały II Ogólnopolskiego Seminarium - Modelowanie danych przestrzennych, Warszawa, 2000, s.17-28 9