You are on page 1of 361

Predavanja iz predmeta

GEOINFORMACIONI SISTEMI
doc. dr. Mirza Ponjavi, dipl.ing.geod.
prema drugom izdanju CRC Press iz 2004.

GIS: A Computing Perspective


GIS textbook: Worboys, M.F. and Duckham, M.

Ovaj materijal je prvenstveno pripremljen sa namjerom da se studentima Geodetskog


odsjeka na Graevinskom fakultetu u Sarajevu omogui lake pohaanje nastave i
priprema gradiva za grupu predmeta iz oblasti geoinformatike. On se najveim svojim
dijelom koristi u nastavi na predmetu Geoinformacioni sistemi kojeg sluaju studenti
zavrne godine dodiplomskog studija geodezije. Kao osnovni bibliografski izvor za
njegovu pripremu je koriten prevod (Mirza Ponjavi) sa engleskog jezika knjige GIS: A
Computing Perspective, odnosno GIS iz perspektive raunarstva autora Michaela
Worboysa (University of Maine, USA) i Matta Duckhama (University of Melbourne,
Australia).
U nedostatku odgovarajue literature sa naeg govornog podruja, koja je vezana za ovu
oblast, ovaj materijal bi trebao inicijalno pomoi studentima da uz ostalu preporuenu
literatutru proire svoje znanje i lake ovladaju terminologijom i temeljnim konceptima
geoinformacionih sistema.
U ovom kontekstu ovaj se materijal moe koristiti iskljuivo interno u cilju lakeg
savladavanja gradiva kojim se bavi ovaj predmet. Nije dozvoljena njegova dalja
reprodukcija, tampa, kopiranje, distribucija ili bilo koji vid koritenja koji bi naruio
izdavaka i autorska prava njegovih originalnih, odnosno izvornih autora.

doc.dr. Mirza Ponjavi, dipl.ing.geod.


Graevinski fakultet u Sarajevu, Geodetski odsjek

Predgovor
Geoinformacioni sistemi (GIS) su raunarski bazirani informacioni sistemi koji se koriste
za prikupljanje, modeliranje, pohranjivanje, dijeljenje, manipulisanje, analizu i
prezentiranje georeferensiranih podataka. U ovoj knjizi se obrauju tehnologije, teorije,
modeli i reprezentacije koje okruuju geografske informacije i geoinformacione sisteme.
Geoinformatika (nauka o geoinformacijama) se razvila u zadnje dvije dekade kao
znaajna i atraktivna multidisciplinarna oblast. Utemeljena je na osnovama geografije,
kartografije, daljinskog snimanja, procesiranja slika, nauke o okolici i raunarstva.
Informatiki pristup izlaganja materije u ovoj knjizi je motivisan potrebom za boljim
razumjevanjem geoinformacionih sistema sa aspekta raunarstva. Gledajui sa ovog
stanovita, GIS se posebno oslanja na raunarske oblasti kao to su baze podataka,
raunarska grafika, sistemski inenjering, raunarska geometrija i mnoge druge. Ovakvim
pristupom se pokazuje da pitanja vezana za GIS ne predstavljaju samo izazov za oblasti u
kojima se on primjenjuje, nego je takoe relevantan i za mnoge raunarske discipline.
Bez obzira da li se geoinformacijama bavili sa aspekta primjene ili raunarske podrke,
uvijek je prisutna njihova posebnost, odnosno razliitost u odnosu na ostale standardne
tipove informacija. Kroz izlaganje u ovoj knjizi se pokuava dokuiti esencija ove
posebnosti, i to kroz razliite teme, poevi od konceptualnog i formalnog modeliranja
geoinformacija, naina njihovog pohranjivanja i prezentiranja u raunarski sistem, preko
njihovog upravljanja u okruenju raznih GIS arhitektura i konano do njihovog
razumjevanja uz prisustvo neizvjesnosti i neodreenosti, koje su neodvojive osobine
vremena i prostora u kojem egzistiraju.
Zadatak onog dijela informatike zajednice koja se bavi pitanjima i temama vezanim za
GIS je da snabdiju eksperte iz razliitih domena njegove primjene sa funkcionalnim
raunarskim alatima, koji e im pomoi u rjeavanju specifinih problema iz oblasti
kojima se bave. Ovi alati ukljuuju konstruktore za modeliranje, algoritme i mehanizme
za efikasno smjetanje, pozivanje i procesiranje podataka, te generine interfejse koji se
mogu oblikovati za pojedine potrebe koritenja.
Materijal u knjizi obrauje specifine teme na vie formalan nain, koji je bitan za
razumjevanje GIS-a, izbjegavajui detaljnu diskusiju o aktuelnom napretku na pojedinim
poljima, a koncentriui se vie na temeljne i ope principe vezane za njih. U tom smislu,
se pokuao napraviti pregled ovih polja iz perspektive raunarstva. Zbog toga, teme koje
su pokrivene u ovom materijalu nisu u potpunosti istraile svu relevantnu materiju iz
pojedinih oblasti GIS-a. Ostavljeno je na izbor itaocima da se o njima detaljnije
upoznaju kroz literaturu napisanu od onih autora koji su eksperti iz pojedinih referentnih
domena. Dalje, izostavljeni su detalji koji bi nas vie uveli u prolost GIS-a i proveli kroz
njegov historijski razvoj. Takoe, nisu obraene teme vezane za dalji razvoj i budunost
GIS-a, kao ni teme koje su relevantne za prostornu analizu, koja danas predstavlja jedno
od primarnih polja istraivanja u geoinformatici. Oslanjajui se na specijalizirane
statistike tehnike, prostorna analiza predstavlja zasebnu oblast prouavanja i opravdano
zahtjeva poseban literalni tretman sa specifinim pristupom izlaganja. U tom smislu se
zainteresirani itaoci upuuju na druge referentne tekstove iz ove oblasti.

Kada je u pitanju italatvo, ovaj materijal je namjenjen onima koji ele da se vie
upoznaju sa pitanjima koja GIS ine raunarskom tehnologijom. itaoci ne moraju imati
posebno predznanje iz oblasti raunarstva, ali trebaju biti upoznati sa nekim opim
znanjem o osnovnim komponentama i funkcionalnostima digitalnih raunara, kao i sa
osnovnim geoinformatikim pojmovima, koji su bitni za razumjevanje vanosti
odreenih kljunih pitanja u GIS-u. Dalje, ovaj material se moe koristiti u nastavi za
upoznavanje studenata sa osnovnim konceptima geoinformatikog raunarstva kroz
razliite definicije, objanjenja i primjere.
U njemu je sadrano deset poglavlja koja zasebno obrauju pojedine relevantne oblasti.
Redoslijed tema i tok izlaganja je prilagoen namjeri da se itaoci postepeno uvedu u
materiju, tako da se obraene oblasti, iako su sadrajno potpuno razliite, meusobno
oslanjaju i nadopunjuju. U tom smislu, materijal je organizovan tako da provodi itaoca
kroz teme vezane za konceptualizaciju prostora, teoriju baza podataka, geoinformacione
modele, reprezentaciju i strukturu prostornih podataka, GIS arhitekture, interfejse,
prostorno rezonovanje i koncepte temporalnosti u GIS-u.

Sadraj
1

Uvod.......................................................................................................................... 10
1.1
ta je GIS i ta ga ini posebnim? .................................................................... 10
1.1.1 Funkcionalni elementi GIS-a ........................................................................ 11
1.1.2 Podaci i informacije ...................................................................................... 13
1.2
Primjena GIS-a.................................................................................................. 13
1.2.1 Inventura resursa ........................................................................................... 13
1.2.2 Mrena analiza .............................................................................................. 14
1.2.3 Distribucija podataka .................................................................................... 16
1.2.4 Analiza terena ............................................................................................... 17
1.2.5 Analiza slojeva .............................................................................................. 18
1.2.6 Analiza lokacija ............................................................................................ 19
1.2.7 Prostorno vremenske informacije ................................................................. 20
1.2.8 Rezime o analitikim i procesnim zahtjevima .............................................. 21
1.3
Podaci i baze podataka ...................................................................................... 22
1.3.1 Prostorni podaci ............................................................................................ 22
1.3.2 Baza podataka kao skladite podataka .......................................................... 23
1.3.3 Prikupljanje podataka.................................................................................... 24
1.3.4 Modeliranje podataka.................................................................................... 24
1.3.5 Pretraivanje i analiza podataka.................................................................... 26
1.3.6 Prezentacija podataka.................................................................................... 27
1.3.7 Dijeljeni pristup podacima ............................................................................ 28
1.4
Hardwareska podrka ........................................................................................ 29
1.4.1 Pregled raunarske arhitekture ...................................................................... 29
1.4.2 Procesiranje i kontrola .................................................................................. 30
1.4.3 Skladitenje podataka.................................................................................... 32
1.4.4 Korisniki ulazno/izlazni ureaji .................................................................. 34
1.4.5 Raunarske mree ......................................................................................... 35
2 Temeljni koncepti baza podataka.............................................................................. 38
2.1
Uvod u baze podataka ....................................................................................... 38
2.1.1 Pristup sa smjetanjem podataka u bazu podataka ....................................... 39
2.1.2 Elementi sistema za upravljanje bazom podataka (DBMS) ......................... 43
2.1.3 Upravljanje transakcijama ............................................................................ 44
2.2
Relacione baze podataka ................................................................................... 46
2.2.1 Relacioni model ............................................................................................ 46
2.2.2 Operacije nad relacijama............................................................................... 48
2.2.3 Struktuirani jezik za upite - SQL .................................................................. 51
2.2.4 Relacione baze podataka koje se koriste za prostorne podatke .................... 54
2.3
Razvoj baze podataka ....................................................................................... 55
2.3.1 Konceptualno modeliranje podataka............................................................. 56
2.3.2 Projektovanje relacione baze podataka ......................................................... 65
2.3.3 Rezime .......................................................................................................... 68
2.4
Objektna orijentacija ......................................................................................... 69
2.4.1 Osnove objektno orijentisanog pristupa........................................................ 69
2.4.2 Objektno orijentisani konstrukti ................................................................... 71

2.4.3 Objektno orijentisano modeliranje ................................................................ 73


2.4.4 Objektno orijentisani DBMS ........................................................................ 76
3 Fundamentalni prostorni koncepti ............................................................................ 78
3.1
Euclidov prostor ................................................................................................ 79
3.1.1 Takasti objekti ............................................................................................. 79
3.1.2 Linijski objekti .............................................................................................. 81
3.1.3 Poligonalni (poligoni) objekti ....................................................................... 82
3.1.4 Transformacije Euclidove ravni .................................................................... 84
3.2
Geometrija prostora bazirana na skupovima..................................................... 85
3.2.1 Skupovi ......................................................................................................... 85
3.2.2 Relacije ......................................................................................................... 88
3.2.3 Funkcije......................................................................................................... 90
3.2.4 Konveksnost .................................................................................................. 91
3.3
Topologija prostora ........................................................................................... 93
3.3.1 Topoloki prostori ......................................................................................... 93
3.3.2 Opa topologija skupa taaka ....................................................................... 94
3.3.3 Osobine topolokog prostora ........................................................................ 97
3.3.4 Topologija skupa taaka u Euclidovoj ravni ............................................... 101
3.3.5 Kombinatorna topologija Euclidove ravni .................................................. 107
3.4
Mreni prostori................................................................................................ 111
3.4.1 Apstraktni grafovi ....................................................................................... 112
3.4.2 Planarni grafovi ........................................................................................... 114
3.5
Metrini prostori ............................................................................................. 116
3.5.1 Topologija metrinih prostora..................................................................... 119
3.6
Fraktalna geometrija ....................................................................................... 121
4 Modeli geoprostornih informacija .......................................................................... 126
4.1
Modeliranje i ontologija .................................................................................. 126
4.2
Modeliranje procesa ........................................................................................ 127
4.2.1 Polje ili objekat? ......................................................................................... 130
4.3
Modeli bazirani na poljima ............................................................................. 133
4.3.1 Osobine polja .............................................................................................. 135
4.3.2 Operacije nad poljima ................................................................................. 139
4.4
Objektno bazirani modeli ................................................................................ 143
4.4.1 Prostorni objekti .......................................................................................... 144
4.4.2 Prostorne operacije...................................................................................... 148
4.4.3 Formalne teorije o prostornim objektima ................................................... 153
5 Reprezentacije i algoritmi ....................................................................................... 156
5.1
Raunarstvo i geoprostorni podaci.................................................................. 156
5.1.1 Geometrijski algoritmi i raunarska geometrija ......................................... 158
5.2
Diskretna Euclidova ravan .............................................................................. 161
5.2.1 Geometrijska domena ................................................................................. 161
5.2.2 Diskretizacija i Green-Yaoov algoritam ..................................................... 162
5.2.3 Diskretizacija krivih linija........................................................................... 165
5.3
Domena prostornih objekata ........................................................................... 166
5.3.1 pageti......................................................................................................... 166
5.3.2 Reprezentacije sa vie topologije ................................................................ 167

5.3.3 Lista dvostruko povezanih linija (DCEL-doubly connected edge list) ....... 170
5.3.4 Objektni DCEL ........................................................................................... 173
5.4
Reprezentacije modela zasnovanih na polju ................................................... 176
5.4.1 Reprezentacije sa regularnom teselacijom .................................................. 176
5.4.2 Reprezentacije sa neregularnom teselacijom .............................................. 177
5.4.3 Delaunay triangulacija i Voronoi dijagram................................................. 178
5.4.4 Triangulacija poligona ................................................................................ 180
5.4.5 Srednja osovina poligona ............................................................................ 181
5.4.6 Teselacija sfere............................................................................................ 182
5.5
Fundamentalni geometrijski algoritmi ............................................................ 183
5.5.1 Metrini i Euclidovi algoritmi .................................................................... 184
5.5.2 Topoloki algoritmi ..................................................................................... 186
5.5.3 Algoritmi bazirani na skupovima................................................................ 188
5.5.4 Triangulacioni algoritmi ............................................................................. 191
5.6
Vektorizacija i rasterizacija............................................................................. 197
5.7
Mrena reprezentacija i algoritmi ................................................................... 200
5.7.1 Mrena reprezentacija ................................................................................. 200
5.7.2 Algoritmi za pretraivanje mree prvo-po-irini i prvo-po-dubini ............. 202
5.7.3 Najkrai put ................................................................................................. 204
5.7.4 Druge mrene operacije .............................................................................. 207
6 Strukture i metode pristupa ..................................................................................... 209
6.1
Ope strukture baza podataka i metode pristupa ............................................ 209
6.1.1 Organizacija fajla i metode pristupa ........................................................... 210
6.1.2 Neureeni fajlovi i linearno pretraivanje .................................................. 211
6.1.3 Ureeni (sekvencijalni) fajlovi i binarno traenje ...................................... 212
6.1.4 Indeksi ......................................................................................................... 213
6.2
Od jednodimenzionalnog prema dvodimenzionalnom ................................... 217
6.2.1 Dvodimenzionalna ureenja ....................................................................... 221
6.3
Rasterske strukture .......................................................................................... 222
6.3.1 Lanano, RLE i blokovsko kodiranje ......................................................... 223
6.3.2 Regionsko kvadrantno stablo ...................................................................... 224
6.4
Strukture takastih objekata ............................................................................ 228
6.4.1 Grid strukture .............................................................................................. 228
6.4.2 Takasto kvadrantno stablo......................................................................... 230
6.4.3 2D stablo ..................................................................................................... 233
6.5
Linearni objekti ............................................................................................... 236
6.5.1 PM kvadrantna stabla .................................................................................. 236
6.6
Kolekcije objekata .......................................................................................... 238
6.6.1 Pravougaonici i najmanji obuhvatni pravougaonici (MBB-ovi) ................ 239
6.6.2 R stabla i R+ stabla ...................................................................................... 240
6.6.3 BSP-stablo................................................................................................... 242
6.7
Strukture sfernih podataka .............................................................................. 243
7 Arhitekture .............................................................................................................. 247
7.1
Hibridne, integrisane i sastavljive (kompozitne) arhitekture .......................... 248
7.2
Sintaksna i semantika heterogenost .............................................................. 250
7.2.1 Formati i standardi za transfer podataka ..................................................... 252

7.3
Distribuirani sistemi ........................................................................................ 253
7.3.1 Arhitektura distribuiranog sistema visokog nivoa ...................................... 254
7.3.2 Klijent-server sistemi .................................................................................. 255
7.3.3 Distribuirani komponentni sistemi .............................................................. 259
7.4
Distribuirane baze podataka ............................................................................ 260
7.4.1 Homogeni i heterogeni distribuirani DBMS-ovi ........................................ 262
7.4.2 Relacione distribuirane baze podataka........................................................ 263
7.4.3 Zakljuak..................................................................................................... 264
7.5
Lokacijski svijesno raunarstvo ...................................................................... 264
7.5.1 Beine raunarske mree........................................................................... 267
7.5.2 Lokacijski senzori ....................................................................................... 268
7.5.3 Lokacijski bazirani servisi .......................................................................... 273
7.5.4 Lokacijski svjesni sistemi i zatita privatnosti ............................................ 274
8 Interfejsi .................................................................................................................. 277
8.1
Interakcija ovjeka i raunarske maine ......................................................... 277
8.1.1 Ulazno izlazni kanali................................................................................... 278
8.1.2 Razmiljanje i procesiranje ......................................................................... 279
8.1.3 Interfejsi i interakcija .................................................................................. 281
8.2
Kartografski interfejsi ..................................................................................... 284
8.2.1 Simbolizacija karte...................................................................................... 286
8.3
Geovizualizacija .............................................................................................. 288
8.3.1 Animacija .................................................................................................... 289
8.3.2 Trodimenzionalni prikazi ............................................................................ 291
8.3.3 Nevizualni prikazi ....................................................................................... 294
8.3.4 Povratna sprega (feedback) ......................................................................... 296
8.4
Dizajniranje GIS interfejsa ............................................................................. 298
9 Prostorno rezonovanje i neizvjesnost...................................................................... 303
9.1
Formalni aspekti prostornog rezonovanja ....................................................... 303
9.1.1 Sintaksa i semantika .................................................................................... 304
9.1.2 Logika i dedukcija....................................................................................... 304
9.1.3 Primjer prostornog rezonovanja .................................................................. 305
9.1.4 Formalna notacija........................................................................................ 307
9.2
Informacije i neizvjesnost ............................................................................... 308
9.2.1 Podaci i informacije .................................................................................... 309
9.2.2 Neizvjesnost ................................................................................................ 310
9.2.3 Tipologija nesavrenosti ............................................................................. 311
9.2.4 Dimenzije kvaliteta podataka ...................................................................... 315
9.3
Kvalitativni pristupi neizvjesnosti .................................................................. 318
9.3.1 Mogui svijetovi ......................................................................................... 318
9.3.2 Vjerovanje i znanje ..................................................................................... 320
9.3.3 Revizija vjerovanja ..................................................................................... 321
9.3.4 Logika sa tri i vie vrijednosti istinitosti ..................................................... 324
9.3.5 Fuzzy skupovi ............................................................................................. 325
9.3.6 Grubi skupovi.............................................................................................. 327
9.4
Kvantitativni pristupi u neizvjesnosti ............................................................. 328
9.4.1 Vjerovatnoa ............................................................................................... 328

9.4.2 Bayesova vjerovatnoa ............................................................................... 329


9.4.3 Dempster-Shaferova teorija argumenta ...................................................... 330
9.5
Primjena neizvjesnosti u GIS-u ...................................................................... 331
9.5.1 Neizvjesni regioni ....................................................................................... 331
9.5.2 Neizvjesnost i vidljivost.............................................................................. 333
9.5.3 Regioni koji rezultiraju iz neodreenih prostornih relacija ........................ 333
10 Vrijeme ................................................................................................................... 337
10.1 Uvod: Kratka historija vremena .................................................................. 338
10.1.1
Nulta faza: Statika reprezentacija.......................................................... 339
10.1.2
Prva faza: Metafora trenutnog snimka .................................................... 339
10.1.3
Druga faza: Linije ivota objekata .......................................................... 339
10.1.4
Trea faza: Dogaaji, akcije i procesi ..................................................... 343
10.2 Temporalni informacioni sistemi .................................................................... 345
10.2.1
Validno i transakcijsko vrijeme .............................................................. 345
10.2.2
Vremenske ekstenzije u sistemima relacionih baza podataka ................ 346
10.2.3
Evolucija sheme ...................................................................................... 349
10.3 Prostorno vremenski informacioni sistemi ..................................................... 349
10.3.1
Vrijeme, prostor i vremenska linija ........................................................ 350
10.3.2
Bitemporalni prostorni modeli ................................................................ 351
10.4 Indeksi i upiti .................................................................................................. 352
10.4.1
Vremenske strukture podataka: transakcijsko vrijeme ........................... 353
10.4.2
Temporalni indeksi: Validno vrijeme ..................................................... 355
10.4.3
Bitemporalni indeksi ............................................................................... 357
10.4.4
Prostorno vremenski indeksi i upiti ........................................................ 357
Akronimi i skraenice ..................................................................................................... 359

1
1 Uvod
Kratak pregled
Geografski informacioni sistem je poseban tip raunarski baziranog informacionog
sistema razvijenog da pohranjuje, procesira i manipulie geoprostornim podacima. U
ovoj tematskoj jedinici se opisuje ta je GIS, i ta on omoguava. Zatim slijedi opis baza
podataka, koje organiziraju podatke u forme, jednostavne za pohranjivanje i pozivanje, i
koje su u srcu svakog GIS-a. Takoe opisuju se i hardwareske tehnologije u GIS
okruenju, ukljuujui raunarske procesore, memorijske ureaje, ulazno/izlazne ureaje
i raunarske mree.

1.1 ta je GIS i ta ga ini posebnim?


Dobra polazna taka za definisaje GIS-a jeste opa definicija informacionog sistema.
Prema ovoj definiciji informacioni sistem je povezana struktura koju ine operateri,
hardware, podaci i procedure, i koji participiraju u prikupljanju, upravljanju i
distribuiranju informacija vanih za pojedince ili organizacije. Pod organizacijama se
podrazumjevaju preduzea, vladina administracija, naune ustanove, projektne institucije
i slino. Ilustartivan primjer informacionog sistema je World Wide Web (mrea svih
mrea). WWW ine podaci (web stranice) i oprema (web serveri; web pretraivai),
veliki broj operatera (korisnika) irom svijeta, te procedure za odravanje informacija na
WWW-u.

Slika 1.1: Definicija GIS-a (shematski prikaz)

10

GIS je poseban tip informacionog sistema, koji tretira geografski referensirane podatke.
Preciznije reeno, GIS je raunarski baziran sistem, koji omoguava prikupljanje,
modeliranje, pohranjivanje, pozivanje, razmjenu, manipulisanje, analiziranje i
prezentaciju geografski referensiranih podataka (slika 1.1).
Za geografski referensirane podatke se koristi i termin geoprostorni podaci. To su podaci
koji se svrstavaju u poseban tip prostornih podataka, koji su geografski povezani ili
opisuju povrinu Zemlje. Kljune komponente GIS-a su ematski prikazane na slici 1.1.
GIS terminologija. Postoje razliiti termini, kao i tipovi informacionih sistema koji se koriste u
kontekstu GIS-a. Kad je u pitanju GIS terminologija postoji vie esto koritenih termina koji
predstavljaju sinonime za GIS. Prostorni informacioni sistem (Spatial Information System) ima
iste funkcionalne komponente kao i GIS, ali moe operisati i sa podacima koji prostorno
referensiraju iri obuhvat razliitih razmjera (dimenzija) pored geografske (na primjer podaci o
molekularnoj konfiguraciji). Prostorna baza podataka obezbjeuje funkcionalnost baze podataka
za prostorni informacioni sistem. Geografska baza (geodatabase) obezbjeuje funkcionalnost
baze podataka za GIS. Slikovna (image) baza podataka se fundamentalno razlikuje od prostorne
baze podataka ili geografske baze podataka po tome to slike nemaju strukturalne meurelacije
ili topoloke objekte. Na primjer, baza podataka skenograma ljudskog mozga moe biti nazvana
slikovnom bazom podataka. CAD ima dosta zajednikih elemenata sa GIS-om. Historijski
gledano, neki GIS softwareski paketi su razvijeni iz CAD softwarea. Za razliku od CAD-a, GIS
software se koristi za manipulisanje sa skupovima podataka koji su geografski referensirani. GIS
software obino operie sa veim skupovima podataka i kompleksnijim modelima za razliku od
CAD softwarea. Iako nisu sinonimi za GIS, termini geoinformaciona nauka (GIScience) i
geoinformatika su vezani za GIS, poto se koriste za opis sistematizovane studije o geografskim
informacijama i geografskim informacionim sistemima.

1.1.1 Funkcionalni elementi GIS-a


Svijet oko nas karakterie i prostorna i vremenska dimenzionalnost, tako da imamo
potrebe za informacijama koje imaju i prostorne i vremenske dimenzije. Budue odluke
koje e uticati na nas (na primjer, prilikom planiranja cestovne mree, razvoja naselja,
poljoprivrednog uzgoja) ovise o propisnom prikupljanju, upravljanju, distribuiranju,
analiziranju i prezentiranju prostornih i vremenskih informacija.
GIS se moe smatrati alatom koji je sposoban da nam pomogne prilikom izvravanja
ovakvih zadataka. Ovaj alat se sastoji od vie funkcionalnih elemenata (aspekata
funkcionalnosti).
Elemenat funkcionalnosti baze podataka
U srcu svakog GIS-a je baza podataka. Baza podataka je kolekcija podataka
organizovanih na nain da ih raunar moe efikasno pohranjivati i uitavati. Vaan
elemenat baze podataka je model podataka (data model). Neke aplikacije zahtjevaju
relativno jednostavne modele podataka. Na primjer, u bibliotekarskom registru, podaci o
knjigama, itaocima, rezervisanim i izdatim naslovima su struktuirani na jasan nain.
Mnoge aplikacije, ukljuujui veliki broj GIS aplikacija, zahtjevaju sloenije modele
podataka (na primjer, model globalne klime). Jedan od glavnih izazova u GIS-u
prestavlja obezbjeenje infrastrukture za rukovanje ovakvim kompleksnim modelima

11

podataka, odnosno poznavanje fundamentalnih koncepata modeliranja podataka, te


naina njihove reprezentacije u informacionom sistemu.
O ovim aspektima funkcionalnosti e se vie govoriti u 2. i 3. tematskoj jedinici:
fundamentalni koncepti baza podataka i fundamentalni prostorni koncepti.
Elemenat funkcionalnosti procesiranja podataka
Modeli podataka su fundametalni za manipulisanje i procesiranje podataka. GIS software
treba da bude dovoljno funkcionalno kompletan da obezbjedi vii nivo analize i podrke
odluivanju, koji se zahtjevaju unutar aplikacione domene (oblasti primjene). Na primjer,
GIS koji se koristi za komunalne instalacije podrazumjeva funkcionalnost mrenog
procesiranja (optimalno rutiranje izmeu vorova, provjera konektivnosti), a GIS za
geoloke aplikacije zahtjeva sposobnost 3D prostorne analize.
Ovaj aspekt se detaljnije obrauje u 4. tematskoj jedinici: modeli geoprostornih
informacija.
Elemenat funkcionalnosti pohranjivanja i uitavanja podataka
Efikasno pohranjivanje i uitavanje podataka ne zavisi samo od propisno (optimalno)
struktuiranih podataka u bazi podataka. Za ostvarenje zadovoljavajuih performansi
sistema neophodna je i optimizacija struktura odgovornih za reprezentaciju, kao i
algoritama za operisanje sa podacima. Reprezentacijom podataka i algoritmima se bavi 5.
tematska jedinica, a strukturama i metodama pristupa se bavi 6. tematska jedinica.
Elemenat funkcionalnosti razmjene podataka
GIS mogu initi mnoge softwareske i hardwareske komponente, kao to su serveri
geoprostornih podataka, web pretraivai ili mobilni raunarski ureaji. Na primjer,
rutinska operacija navoenja vozaa kroz gradski saobraaj (koja ukljuuje informacije o
zastojima na putu, radovima, propusnosti mree) zahtjeva interaktivan rad vie
komponenti informacionog sistema, pa i razliitih informacionih sistema. Pri ovome je
neophodan uslov sposobnost razmjene podataka izmeu ovih informacionih sistema,
odnosno izmeu razliitih komponenti unutar istog informacionog sistema. Ovim
aspektom se bavi 7. tematska jedinica: arhitekture.
Elemenat funkcionalnosti prezentacije podataka
Podaci unutar GIS-a i operacije koje se primjenjuju nad njima nisu korisne sve dok
nepostoji komunikacija izmeu njih i korisnika. Mnogi tradicionalni informacioni sistemi
zahtjevaju uglavnom ograniene forme prezentacije, koje se obino zasnivaju na
tabelama, numerikim proraunima ili tekstualnim komentarima. Sline forme se koriste i
za podrku odluivanju koje podrazumjeva prostornu svijesnost, s tim to priroda
podataka u GIS-u dozvoljava cijeli spektar novih mogunosti prezentacije ukljuujui i
kartografske prikaze. Interfejsima za komunikaciju se bavi 8. tematska jedinica.
Elemenat funkcionalnosti prostornog rezonovanja
Da bismo dobili to je mogue vie kvalitetnih informacija iz geoprostornih podataka,
vano je da smo sposobni zakljuivati o njihovim ogranienjima. Tanost, preciznost i
pouzdanost su primjeri pojmova koje emo esto koristiti kada budemo govorili o
rezonovanju i ogranienjima podataka (u 9. tematskoj jedinici).

12

Elemenat funkcionalnosti koritenja vremenskih podataka


Ekstenzija GIS-a koja omoguava pohranjivanje i procesiranje dinamikih geoprostornih
fenomena mjerenih u vremenu, predstavlja jedan od glavnih istraivakih izazova
dananjice. Nainom pohranjivanja i prezentacije vremenskih podataka se bavi 10.
tematska jedinica.

1.1.2 Podaci i informacije


Struktura meusobne povezanosti izmeu podataka i naina njihovog prikupljanja,
procesiranja, koritenja i razumjevanja unutar aplikacije ini njihov kontekst.
Razumjevanje modela podataka uz svjesnost njihovih ogranienja predstavlja elemente
konteksta podataka. Podaci su korisni samo ukoliko dobiju vrijednost informacije unutar
ovog konteksta. Stoga, informacija se moe definisati kao sinteza i podataka i konteksta,
to jest: informacija = podaci + kontekst. Ovakav koncept se u kasnijem izlaganju dalje
rafinira, imajui na umu ovu osnovnu razliku izmeu podataka i informacija.

1.2 Primjena GIS-a


GIS je informacioni sistem koji se od drugih razlikuje po nekim posebnim
karakteristikama. Pregled obuhvata njegovih mogunost primjene i funkcionalnosti se
moe demonstrirati kroz nekoliko slijedeih aplikacija.

Slika 1.2: Potteries region u V. Britaniji

1.2.1 Inventura resursa


GIS se moe koristiti u turizmu (turistiki informacioni sistem) u smislu prezentacije
historijskog, kulturnog ili drugog naslijea neke geografske regije (slika 1.2 - Potteries

13

region u V. Britaniji). Inventurom ovih resursa u kombinaciji sa rekreacionim objektima,


putnom mreom i hotelskim kapacitetima se moe ostvariti kompletna slika turistike
ponude ove regije. Mo bilo kojeg informacionog sistema lei u sposobnosti povezivanja
podataka koji se dobijaju iz razliitih izvora. Ova mo je dramatino izraena kada su
ovakvi podaci geografski referensirani i mogu se lako prezentirati pomou tematskih
karata. Slika 1.3 prikazuje zaetke ovakvog sistema, ukljuujui neke lokalne turistike
atrakcije, glavnu putnu mreu i izgraeno zemljite u regiji.

Slika 1.3: Mjesta od interesa u Potteries regionu

1.2.2 Mrena analiza


Mrena analiza je jedna od temeljnih funkcionalnosti GIS-a i moe se primjeniti u
mnogim oblastima, od upravljanja cestovnom (transportnom) mreom, do analize
distribucione (komunalne) infrastrukure. U ovom primjeru se ova funkcionalnost moe
iskoristiti za definisanje ruta u putnoj mrei, koje bi se koristile za obilazak znamenitosti
uz uslov minimizacije vremena putovanja. Na slikama su naznaene ema sa prosjenim
vremenima putovanja (ruta) i generisanje optimalne rute (odabir putanje) na osnovu date
putne mree uz uslov minimalnog vremena obilaska. Prilikom mrene analize koritena
je posebna tehnika, to jest algoritam trgovakog putnika, koja generie najkrai put kroz
mreu prolazei kroz sve vorne take (od poetne do zavrne) samo jednom i to u to
kraem vremenu. Skup podataka koji je neophodan za mrenu alnalizu predstavlja mreu
vremena putovanja izmeu ciljnih lokacija (slika 1.4).
Ova mrea (slika 1.4) je derivirana iz prosjenih vremena kretanja glavnim putevima
prikazanim na karti. Ovakva mrea se moe potom koristiti kao osnova za generisanje
zahtjevane optimalne rute (slika 1.4b). Specifina tehnika mrene analize koja se ovdje
zahtjeva se naziva algoritam trgovakog putnka, koji generie optimalnu rutu (minimalno
vrijeme obilaska zadatih lokacija) kroz mreu posjeujui (prolazei kroz) pojedine

14

lokacije samo jednom. Ovakva analiza moe biti i dinamikog karaktera, gdje se koriste
teine za pojedine vorove (lokacije) u mrei i izraunavaju optimalne rute u zavisnosti
od promjenljivih uslova na putu (usporenja saobraaja i slino).

Slika 1.4a: Mrea putovanja bazirana na vremenima putovanja (u minutama) izmeu ciljnih lokacija

Slika 1.4b: Optimalna ruta koja prolazi kroz sva ciljna mjesta (problem trgovakog putnika)

15

1.2.3 Distribucija podataka


Veina podataka koji se koriste u GIS-u su smjeteni u razliitim formatima i na fiziki
udaljenim lokacijama. GIS treba biti u mogunosti prevazii ovakve prostorne barijere
prilikom djeljenja (distribucije) podataka. Saglasno opisanim primjerima GIS bi
korisniku trebao omoguiti pristup informacijama o razliitim lokacijama, saobraajnoj
mrei i drugim resursima, koje se obino uvaju i odravaju na razliitim lokacijama
(prevoznike kompanije, lokalna uprava, turistika zajednica i slino). Na slici 1.5 je dat
shematiziran prikaz distribuiranog informacionog sistema za navigaciju, gdje se turistike
informacije iz razliitih izvora integriu, procesiraju i prenose (to obavlja kompleksniji
dio sistema) od servisnog provajdera do depnog raunara turiste ili mobitela (sa
jednostavnim interfejsom za prezentaciju).

Slika 1.5: Shematski prikaz distribuiranog turistikog informacionog sistema

Turisti koji obilaze turistike znamenitosti mogu putem mobitela primati navigaciona
upustva i informacije o lokalnim atrakcijama. Ovi podaci koji mogu dolaziti iz raznih
izvora se moraju integrisati, procesirati (obraditi) i transmitovati do turista. Kako turisti
obino nisu GIS eksperti, ovi kompleksni zadaci se obino izvravaju od strane nekog
turistikog servisnog provajdera (pruaoca usluge). Ovaj provajder prikuplja i integrie
potrebne informacije unaprijed ili dinamiki prilikom zahtjeva za njima, zatim izvrava
odreene analitike procese (na primjer, mrenu analizu za pronalaenje najbolje rute od
lokacije turiste korisnika do traene lokacije atrakcije) i emituje informacije (upustva)
do korisnika.

16

1.2.4 Analiza terena


Analiza terena je obino zasnovana na skupovima podataka o topografskim visinama na
odreenim takama. Iz ovakvih skupova podataka se mogu derivirati informacije o
stepenu nagiba i orijentaciji (aspektu) pada terena. U kompleksniji tip analize spada
analiza vidljivosti, koja se bavi provjerom dogledanja izmeu zadatih lokacija i
generisanjem karte svih taaka vidljivih sa neke lokacije (zona vidljivosti). Na slikama
1.6a i 1.6b su prikazane forme prezentacije povrine terena (karta sa izohipsama i
perspektivna projekcija osjenenog reljefa) koje ilustruju rezultate analize terena.

Slika 1.6a: Karta sa izohipsama

Slika 1.6b: Perspektivna projekcija

Slika 1.6b prikazuje perspektivnu projekciju iste povrine prikazane na slici 1.6a. Ovakve
projekcije predstavljaju moan pristup prezentacije terena.

17

1.2.5 Analiza slojeva


esto je neophodno preklapanjem uporediti razliite skupove podataka organizovanih u
slojeve. U ovu svrhu se koristi analiza slojeva. Na primjer, ovom analizom je mogue
dobiti odgovor na slijedei upit: pronai sve lokacije koje su od glavnog puta udaljene 0.5
km, koje nisu u graevinskoj zoni, i koje su po svom geolokom sastavu predisponirane
za pozajmita kamena i pijeska (slika 1.7). Na slici je prikazan postupak preklapanja
slojeva koji nose pojedine informacije vezane za postavljeni upit.

Slika 1.7: Lokacije nalazita pjeska i kamena

Sive povrine na slici 1.8a prikazuju regiju unutar 0.5 m od glavnog puta (bez autoputa),
koja se openito naziva baferom. Sive nijanse na slici 1.8b indiciraju povrine koje po
svom geolokom sastavu predstavljaju pjesakovito i ljunkovito zemljite. Na slici 1.9c
su indicirane lokacije koje ne predstavljaju izgraeno (graevinsko) zemljite. Slika 1.9d
prikazuje rezultat preklapanja tri prethodno opisana sloja, odnosno povrinu koja
zadovoljava postavljeni upit.
Opisana analiza je pojednostavljena zbog ilustrativnosti. U realnosti ovakve analize mogu
ukljuiti i druge kriterijalne faktore poput vrijednosti zemljita, tipa vlasnitva i slino.
Cilj je ovdje bio prezentirati osnovne funkcionalnosti koje se zahtjevaju od GIS-a
primjenjenog za vieslojnu analizu, koje ukljuuju:
formiranje povrina koje sadre lokacije unutar zadatog ranga za dati skup
objekata, to se naziva baferovanjem. Baferi predstavljaju krune ili kvadratne

18

(regije) opisane oko taaka, odnosno koridore sa konstantnom irinom du linija i


oko povrina;
kombinovanje (povezivanje) jednog ili vie slojeva u jedan sloj koji predstavlja
uniju, presjek, razliku ili drugu Boolovu operaciju primjenjenu na razne slojeve,
to se naziva Boolovo preklapanje.
Slojno bazirana funkcionalnost se istrauje u kasnijem izlaganju u kontekstu modela i
struktura zasnovanih na poljima.

Slika 1.8: a) baferi puteva (gore lijevo), b) geoloki sastav sa pjeskovitim i ljunkovitim materijalima (gore
desno), c) neizgraeno zemljite (dole lijevo) i d) rezultat preklapanja slojeva (dole desno)

1.2.6 Analiza lokacija


Analiza lokacija se moe lako ilustrovati slijedeim primjerom. Predpostavimo da treba
odrediti lokaciju za novu bolnicu, uvaavajui da su pri tome presudni faktori
pristupanost (dostupnost) i optimalna pokrivenost regije. Na slikama 1.9a i 1.9b su
prezentirana ova dva aspekta prilikom lokacijske analize. Kritian parametar za
donoenje odluke o koritenju usluga neke klinike je vrijeme potrebno da se stigne do
nje. Da bi se on definisao potrebno je konstruisati susjedstvo oko klinike, na bazi
poloaja susjednih klinika i vremenu putovanja do klinike. Sa ovakvim podacima je onda
mogue podrati odluivanje o premjetanju, zatvaranju ili izgradnji nove klinike.
Slika 1.9 prikazuje idealizirane poloaje klinika u regiji. Predpostavimo da je vrijeme
direktno proprcionalno Euklidovoj udaljenost izmeu taaka (pravolinijski putevi izmeu

19

taaka). Slika 1.9a prikazuje krive linije (krunice) koje povezuju lokacije koje su
podjednako udaljene od lokacije klinike (koja se analizira) u smislu vremena putovanja
(izokrone). Takoe, mogue je podjeliti prostor na povrine, gdje svaka sadri po jednu
kliniku, tako da svaka povrina sadri sve take koje su najblie (po vremenu putovanja)
njenoj pripadajuoj klinici, to se naziva poligonima bliskosti (slika 1.9b). Na osnovu
ovako dobijenih informacija je svakako mogue jednostavnije analizirati opravdanost
odgovarajue odluke.

Slika 1.9: Prikaz klinikih centara i njihovih pripadajuih poligona bliskosti (pokrivenosti)

1.2.7 Prostorno vremenske informacije


U temporalnom GIS-u, koji koristi dinamike prostorne informacije, podaci su
referensirani trima vrstama dimenzionalnosti: prostornom, vremenskom i atributnom.
Ovakav pristup omoguava vremenskoprostornu analizu i praenje prostornih fenomena
dinamine prirode. Problemom uvoenja vremenskih dimenzija emo se baviti u zavrnoj
nastavnoj jedinici.
Slika 1.10 prikazuje kartu dijela naselja Cobridge (UK) iz vremena 1878. i 1924. godine.
Jasno je (i vidljivo) da su se u ovom periodu desile mnoge promjene u smislu irenja
rezidentalnih povrina u pravcu sjeverozapad jugoistok. U ovom kontekstu, primjeri
pitanja koja moemo postaviti prostorno-vremenskom sistemu ukljuuju:
- Koje su ulice promjenile svoj naziv u datom periodu?

20

Koje ulice su promjenile svoje prostorne reference (poloaj i oblik) u datom


periodu?
i slina pitanja.

Slika 1.10: Historija naselja Cobridge prikazana kartografski iz 1878. (lijevo) i 1924. godine (desno)

1.2.8 Rezime o analitikim i procesnim zahtjevima


Iz opisanih aplikacija se vidi da GIS kao informacioni sistem treba da obezbjedi
funkcionalnost procesiranja podataka kakva je prostorna analiza. Sa ovakvom
funkcionalnou GIS postaje vie od same grafike baze podataka. Grafiki sistemi se
bave manipulacijom i prezentacijom ekransko baziranih grafikih objekata, dok GIS
rukuje fenomenima povezanim sa geografskim svijetom, koji nemaju samo geoprostorne
dimenzije nego takoe i strukturalan razmjetaj u multidimenzionalnim geografskim
modelima. Neki od zahtjeva za analitikim procesiranjem, koji GIS-u daju posebnost
ukljuuju i funkcionalnosti kao to su:
Geometrijska, topoloka i skupovno orijentisana analiza
Veina, ako ne i svi geografsko referensirani fenomeni imaju geometrijske, topoloke ili
skupovno orijentisane osobine. Skupovno orijentisane osobine podrazumjevaju uslove
pripadnosti (lanstva), Boolove relacije izmeu kolekcija elemenata, kao i rukovanje
hijerarhijama. Topoloke operacije ukljuuju relacije bliskosti (susjedstva) i relacije
povezanosti (konektivnosti).
Analiza nad poljima
Mnoge aplikacije uvode prostorna polja, kojim su predstavljene atributne varijacije u
nekoj regiji. Na primjer, teren je varijacija topografske visine neke oblasti. Operacije nad
poljima ukljuuju preklapanje, analizu padova i orijentacija (aspekata) terena, traenje
optimalne putanje, analizu protoka, analizu dogledanja itd.
Mrena analiza
Mrea predstavlja strukturu linija koje povezuju pojedine vorove. Karte metr
saobraajnog sistema imaju formu mree, pri emu vorovi reprezentuju stanice koje su
povezane stranama mree. Mree mogu biti direkcione, gdje je stranama doznaen

21

pravac kretanja direkcija (na primjer, mrea jednosmjernih ulica) ili labelne, gdje je
stranama doznaena labela (numeriki ili tekstualni atribut), kao na primjer, vrijeme
trajanja putovanja i slino. Mrene operacije ukljuuju analizu povezanosti
(konektivnosti), traenje optimalne putanje, analizu protoka i druge.

1.3 Podaci i baze podataka


Svaki informacioni sistem je dobar onoliko koliko su dobri raspoloivi podaci sa kojim
on operie. Da bi se omoguila operativnost baze podataka, neophodne su odgovarajue
sposobnosti informacionog sistema za unos, modeliranje, uitavanje, analizu,
prezentaciju i razmjenu (distribuciju) podataka. Meutim, ono po emu se razlikuje
ovakav skup operacija za openamjenske baze podataka od geoprostornih baza podataka
jeste dodatna sposobnost rukovanja sa prostornim podacima.

1.3.1 Prostorni podaci


Prije svega podsjetimo se na neke osnove o digitalnim podacima. Podaci pohranjeni u
raunarski sistem se mjere u bitima. Svaki bit zapisuje jedno od dva mogua stanja: 0
(false, la) i 1 (true, istina). Biti ine bajte (bytes), pri emu svaki bajt predstavlja jedan
karakter (slovo). Svaki karaker moe biti kodiran pomou 7 bita sa jo jednim dodatnim
bitom koji se koristi za provjeru greaka. Na ovaj nain, svaki bajt dozvoljava 27=128
moguih slovnih kombinacija. Ovo je dovoljno za sve karakterne znakove koji se
normalno koriste u engleskom alfabetu (ovo kodiranje je osnova ASCII koda). Da bi
predstavili sve postojee karaktere koji postoje i u drugim jezicima potrebno je ukljuiti
jo bita. Tako dvo-bajtni karakteri dozvoljavaju 216=65536 razliitih kombinacija
karakternih znakova (osnova za Unicode).
Geoprostorni podaci su tradicionalno podjeljeni u dvije velike klase: rasterske i vektorske
podatke. Sistemi su imali tendenciju da se specijalizuju za koritenje jedne ili druge klase
podataka. Prevoenje podataka iz jedne u drugu klasu (proces rasterizacije, odnosno
vektorizacije) predstavlja posebnu problematiku. Na slici 1.11 su prikazani rasterski i
vetorski podaci istog detalja sa kuom, njenom okolinom, pristupnim stazama i cestom.

Slika 1.11: Rasterski i vektorski podaci

22

Rasterski podaci su struktuirani kao matrica (mrea) elija, koje predstavljaju piksele
(pixel). Njen 3D ekvivalent je 3D matrica kubinih elija, nazvanih vokselima (voxel).
Svaka elija u rasteru je adresirana njenim poloajem u matrici (broj reda i broj kolone).
Rasterima je mogue reprezentovati irok spektar prostornih objekta u raunarskom
sistemu. Take se mogu reprezentovati pojedinim elijama, linije sekvencama susjednih
elija, a povrine kolekcijama meusobno kontinualno povezanih elija. Rasteri
predstavljaju nativne raunarske strukture, poto veina programskih jezika podrava
matrine operacije. Uprkos tome, pohranjivanje matrica u sirovom obliku, bez
kompresije, je izuzetno neefikasno u smislu iskoritenja raunarskog memorijskog
prostora. Na primjer, ogromne uniformne (zaravnjene) povrine, bez posebnih
karaketristika, su pohranjene kao velike kolekcije elija, pri emu svaka sadri jednu istu
vrijednost. U kasnijem tekstu e se razmatrati efikasne raunarske metode za rukovanje
rasterima.
Druga paradigma za prostorne podatke je vektorski format (termin vektora u ovom smislu
je slian, ali ne identian vektorima iz teorije polja). Vektor je konaan pravolinijski
segment definisan svojim krajnjim takama. Lokacije krajnjih taaka su date u odnosu na
neki referentni koordinatni sistem u ravni ili veedimenzionalnom prostoru.
Diskretizacija prostora sa mreom elija nije eksplicitno potrebna za vektorski model, ali
ona mora implicitno postojati u nekoj formi zbog diskretne prirode raunarske aritmetike.
Vektori ine odgovarajuu reprezentaciju za irok rang prostornih podataka. Take su
reprezentovane njihovim koordinatnim vrijednostima, linije su diskretizovane kao
sekvence pravolinijskih segmenata, gdje je svaki predstavljen vektorom, a povrine su
definisane u smislu njihovih graninih linija, koje su opet reprezentovane kolekcijama
vektora. Vektorska reprezentacija je, u odnosu na rastere, sama po sebi efikasnija u
smislu iskoritenja raunarske memorije, jer se u nju pohranjuju samo lomne take na
linijama. Njeni nedostatci su vezani za sam princip opisivanja prirodnih pojava, koje su u
vektorskom formatu prikazane sa tvrdo oivienim granicama, sastavljenih od idealno
ravnih segmenata.

1.3.2 Baza podataka kao skladite podataka


Baza podataka je repozitorij logiki povezanih podataka, koji mogu biti fiziki
razmjeteni na razliitim lokacijama i kojim korisnici mogu pristupati pomou razliitih
aplikacija. Baza podataka se kreira i odrava koritenjem openamjenskog softwareskog
paketa sistema za upravljanje bazom podataka (Data Base Management System). Da bi
baza podataka bila korisna ona mora biti:
Pouzdana: Baza podataka mora biti sposobna da ponudi kontinuirani servis po
zahtjevu korisnika, ak i pri pojavi neoekivanih dogaaja, kao to su prekidi u
napajanju. Na primjer, baza podataka mora biti sposobna da se nosi sa situacijom
kada podiemo novac putem ATM-a (bankomata) prilikom nestanka struje u
momentu auriranja stanja naeg rauna.
Korektna i konzistentna: Podaci iz baze podataka trebaju meusobno biti korektni i
konzistentni. esto je bio problem sa starijim fajl sistemima, da su podaci iz jednog
sektora bili kontradiktorni sa podacima iz drugog sektora u istoj organizaciji. Poto
nije bilo mogue stalno meusobno uporeivati ove podatke i traiti nekorektne i

23

nekonzistentne podatke, problem se mogao kontrolisati uvoenjem provjere


integriteta podataka prilikom njihovog unosa. to se vie znalo o vrsti podataka koji
su se oekivali pri unosu, to se vie greaka moglo detektovati pri samom unosu.
Otporna na tehnoloke promjene: Baza podataka se treba razvijati predvidljivo,
skladno i postepeno tokom svakog novog tehnolokog unapreenja. I hardware i
software se nastavljaju rapidno razvijati. Razvijaju se i inoviraju novi procesori,
memorija, programi i tehnike modeliranja. Korisnici baze podataka trebaju biti
izolovani od svih zahvata prilikom odravanja i unapreenja rada sistema. Na
primjer, kada provjeravamo stanje naeg rauna na bankovnom automatu ne moramo
biti svjesni da su tokom prethodne noi instalirani novi diskovi u sistemu.
Sigurna: Baza podataka mora omoguiti razliite nivoe autorizacije pristupa
(privilegije), i zatitu od neautorizovanog pristupa. Na primjer, dozvoljeno je da
vlasnik rauna oitava (provjerava) stanje sopstvenog rauna u banci (read access). U
isto vrijeme nije dozvoljeno runo mjenjanje tog stanja (write access).

1.3.3 Prikupljanje podataka


Proces preuzimanja i unosa podataka opaanjem fizike okoline se naziva prikupljanjem
podataka (data capture). Primarni izvor podataka za GIS su senzori koji mjere neke
osobine objekata u prostoru. Satelitsko snimanje, na primjer, koristi senzore za mjerenje
elektromagnetnog zraenja (razliitih talasnih duina) koje je reflektovano ili emitovano
od Zemljine povrine. Geodeti koriste senzore za mjerenje duina i uglova izmeu
objekata lociranih na Zemljinoj povrini.
Ponekad su neophodni ljudski resursi da bi se ovi podaci konvertovali u oblik koji je
razumljiv za informacioni sistem, kao to je to sluaj prilikom unoenja podataka u
raunar putem tastature. Meutim, u veini sluajeva ovaj proces je automatiziran tako da
se podaci sa senzora (skener, digitajzer, kamera) direktno unose i nakon procesiranja
pohranjuju u informacioni sistem. Prisustvo raznih tipova i vrsta senzora je sve vee, a
njihove veliine i cijene su sve manje. Kao posljedica ove pojave, javljaju se zahtjevi da
GIS treba biti sposoban da prihvati, procesira i pohrani podatke iz ovih senzorskih
sistema.
Sekundarni izvor podataka za GIS su postojei podaci u obliku papirnih karata. Ovakve
karte imaju funkciju i prezentacije i skladita podataka (to se u GIS-u tretira separatno).
Konverzija geoprostornih podataka sa papirne karte u formu koja omoguava
pohranjivanje u GIS moe biti mukotrpna i skupa. Automatska konverzija, kao to je
skeniranje karata, ne moe lako razloiti kompleksnu strukturu kartografskog prikaza,
tako da je njen rezultat blii slikovnoj (image) bazi podataka nego GIS-u. Runom
konverzijom, na primjer, kada se sadraj karte precrtava putem digitajzera ili mia, moe
se preuzeti ova struktura, ali to zahtjeva vie vremena i ljudskih resursa.

1.3.4 Modeliranje podataka


Odabir odgovarajueg modela podataka moe biti kritini faktor za uspjeh ili neuspjeh
uspostave informacionog sistema. Model podataka, u stvari, predstavlja klju za sam
princip uspostave baze podataka. Modeli podataka funkcioniu na vie nivoa u
informacionom sistemu. Sam proces razvoja baze podataka, odnosno bilo kojeg

24

informacionog sistema je u biti proces izrade modela podataka. Na najviem nivou se


nalazi korisniki model u domeni aplikacije, koji opisuje kljune zahtjeve korisnika u
odreenoj domeni primjene, i koji se definie na samom poetku projektovanja
informacionog sistema. Na slijedeem (niem) nivou je konceptualni model koji opisuje
aplikaciju, odnosno sistem, nezavisno od detalja vezanih za samu implementaciju. Proces
razvoja konceptualnog modela se fokusira na pitanje ta sistem treba raditi, i naziva se
sistemskom analizom (system analysis). Logiki model je skrojen saglasno pojedinom
tipu implementacije. Proces razvoja logikog modela se fokusira na pitanje kako e
sistem implementirati konceptualni model, i naziva se sistemskim dizajnom (system
design). I na kraju, na najniem nivou je fiziki model, koji prestavlja rezultat procesa
samog programiranja i implementacije sistema. On opisuje aktuelnu aplikaciju u smislu
sofwarea i hardwarea, ukljuujui nain procesiranja i organizacije podataka za
pojedinani tip maine. Razliite faze i procesi prilikom razvoja sistema su prikazani na
slici 1.12.

Slika 1.12: Procesi modeliranja i faze razvoja sistema

Ove faze formiraju logiko napredovanje razvoja od aplikacione domene do aktuelne


implementacije. Ovakva logika napredovanja u razvoju sistema se esto naziva modelom
vodopada (waterfall model). U praksi je razvoj sistema vie ciklian (na slici prikazano
crtkanim linijama), na primjer, u okviru pilot projekta se prilikom dizajna moemo vratiti
na prethodni korak analize. Zbog toga je, zbog same iterativne prirode modela, moda
poeljnije koristiti termin ciklini sistem razvoja (system life-cycle).
Razliite faze ovakvog razvoja formiraju most izmeu ljudske koncepcije u aplikacionoj
domeni i raunarskih procesa koritenih u samom informacionom sistemu. Bez ove
strukture, procesom razvoja sistema se nebi moglo upravljati. Neprihvatanje principa
ciklinog razvoja moe rezultirati sistemom, koji je, ili teak za koritenje, zbog

25

zanemarenosti ljudskih aspekata, ili neefikasan, zbog zanemarenosti raunarskih


aspekata.
Dva vana elementa ovakvog modela razvoja nisu opisana na slici 1.12, jer ne
predstavljaju primarne zadatke modeliranja. To su odravanje sistema, koje slijedi
nakon implementacije i odnosi se na promjene u smislu poboljanja njegovog koritenja,
i dokumentovanje sistema, koje se pojavljuje u okviru svake faze njegovog razvoja,
osiguravajui praenje njegovog razvoja odgovarajuom dokumentacijom.

1.3.5 Pretraivanje i analiza podataka


Kljuna funkcija baze podataka je sposobnost rapidnog i efikasnog pretraivanja i analize
informacija. Da bi pretraivali podatke iz baze podataka, moemo primjeniti filter, obino
u formi logikog izraza (logical expression) ili upita (query). Na primjer:
1. Pronai nazive i adrese svih aktivnih rudnika uglja u odreenoj regiji.
2. Pronai imena i adrese svih zaposlenih u odreenom preduzeu ija su primanja
vea od polovine primanja direktora preduzea.
3. Pronai srednju vrijednost populacija svih naseljenih mijesta u odreenoj regiji.
4. Pronai imena svih pacijenata odreene ambulante, koji su pregledani u zadnjih
mjesec dana i ija je starost preko 60 godina.
Zakljuujemo da je prvi upit postavljen nad podacima o rudokopima, koji u okviru adrese
imaju i geografsku odrednicu naziva regije u kojoj se nalaze. Ovakvi podaci se pronalaze
pomou jednostavnog pregledavanja i uparivanja zapisa sa zadatim nazivom. Za drugi
upit je potrebno pretraiti primanja svih zaposlenih i pomou jednostavne numerike
uporedbe sa platom direktora pronai one koje odgovaraju zadatom izrazu. Kod treeg
upita se zahtjeva da se pronau vrijednosti populacija svih naseljenih mjesta u odreenoj
regiji, a onda da se nad njima primjeni zahtjevano numerko izraunavanje. I na kraju, za
etvrti upit je potrebno primjeniti najsloeniji filter, koji ukljuuje provjeru viestrukih
zapisa vezanih za pojedine osobe.
Za navedene upite postoje i prostorni operatori. Za prvi upit, to se odnosi na pitanje da li
se rudnik nalazi u datoj regiji. Meutim, podrazumjeva se da procesiranje ovog upita ne
zahtjeva posebno prostornu komponentu. U ovom primjeru se ne oekuje provjera da li se
rudnik nalazi unutar prostornih granica regije, jer je ova informacija data eksplicitno u
tekstualnom formatu u bazi podataka.
Pored predhodno opisanog standardnog procesiranja upita, GIS omoguava i stvarno
geoprostorno procesiranje upita. Na primjer, posmatrajmo slijedee upite:
1. Koje lokacije za gradnju na nekom odreenom prostoru zadovoljavaju slijedei
skup uslova:
imaju povoljnije od prosjene cijene zemljita u regiji,
nalaze se unutar 15 minuta vonje od autoputa,
imaju odgovarajuu geoloku podobnost za gradnju stambenih zgrada,
nisu predmet planerskih ogranienja?
2. Postoji li korelacija izmeu:
lokacija saobraajnih udesa (prema evidenciji slube hitne pomoi) i

26

markiranih crnih taaka na nekoj odreenoj regiji?

Zadovoljenje ovakvih upita esto zahtjeva integraciju prostornih i neprostornih


(poslovnih) informacija. Problem u prvom primjeru je bolje definisan, jer specificira
odreeni tip relacije koja se zahtjeva. Drugi primjer zahtjeva primjenu tehnika prostorne
analize sa otvorenim krajevima (open-ended). Obje funkcionalnosti su atraktivne i
poeljne, ali su beskorisne ako algoritamski nisu izvodljive (to jest, ako su skupe) u
pogledu raspoloivih performansi. Raunarske performanse su obino mjerene u
kontekstu memorijskih zahtjeva za pohranjivanje i vremena procesiranja. Tehnologije
pohranjivanja i procesiranja podataka se konstantno unapreuju. Meutim, ne mogu se
svi problemi vezani za raunarske performanse rjeavati koritenjem naprednije
tehnologije. Neki problemi, kao to je problem trgovakog putnika (pomenut u dijelu
1.2.2), zahtjevaju toliko raunanja da za njih praktino nije mogue nai optimalno
rjeenje u razumnom (prihvatljivom) vremenu.
Performanse predstavljaju ak i vanije pitanje za baze geoprostornih podataka nego za
baze podataka ope namjene. Prostorni podaci su openito obimni. Dalje, prostorni
podaci su esto hijerharhijski strukturirani (taka je dio linije, koja je dio poligona).
Moemo uoiti da ove strukture predstavljaju problem za tradicionalnu tehnologiju baza
podataka. Iako su DBMS-ovi dizajnirani da rukuju sa viedimenzionalnim podacima,
dimenzije u standardnim skupovima podataka se podrazumjevaju nezavisnim. Meutim,
geoprostorni podaci su esto vezani za Euclidovu ravan za koju se zahtjevaju posebne
strukture pohranjivanja i pristupa. Na pitanje pohranjivanja, pristupa i procesiranja
prostornih podataka emo se vratiti tokom kasnijeg izlaganja.

1.3.6 Prezentacija podataka


Tradicionalne openamjenske baze podataka obezbjeuju izlaz u formi teksta i brojeva,
koji su esto tabelarno organizovani. Report generator za izvjetavanje je standardna
odlika DBMS-a koja omoguava da se izlazni podaci prikazuju u formatu itljivom za
korisnike. Mnoge iroko primjenjene baze podataka, imaju takoe i funkcionalnost
napredne prezentacije, poput grafikona i grafikih prikaza, koji se nazivaju poslovnom
grafikom (business graphics).
Vezano za ove prezentacione mehanizme, GIS ima potrebu za prikazom karata i formi
baziranih na kartografskoj predstavi. U kontekstu primjene openamjenskih baza
podataka, zahtjev za kartografski baziranom prezentacijom podataka je vrlo neuobiajena
pojava. Sa druge strane, sposobnost automatske izrade analognih karata, koja se esto
vee za termine automatske ili digitalne kartografije, je bila jedan od primarnih razloga za
iniciranjem razvoja GIS-a i ostaje vana funkcija nekih GIS softwarea. Neki od DBMS i
GIS paketa idu dalje od uvoenja alata za poslovnu grafiku ili automatsku kartografiju, i
obezbjeuju alate za pomo korisnicima u istraivanju skupova podataka i otkrivanju
relacija i uzoraka sadranih u podacima, nazvanih data mining (odnosno prostorni data
mining). Pitanja vrste: postoji li bilo ta znaajno ili interesantno to je vezano za skup
podataka koji se pretrauje, predstavljaju prototip za data mining. Sistemi koji
podravaju data mining obino imaju visoko fleksibilne prezentacione sposobnosti, tako
da korisnici mogu interaktivno kombinovati i prikazivati viedimenzionalne podatke u
mnogim razliitim formama, ukljuujui grafikone, stabla i animacije.

27

Prostorni (spatial) data mining: Data mining se odnosi na proces otkrivanja (iznalaenja)
dragocjenih informacija i znaajnih uzoraka unutar velikih skupova podataka. Data mining je od
posebne vanosti za geoprostorne podatke, jer ovaj tip podataka obino predstavlja opsean i
bogat izvor uzoraka. Data mining se razlikuje od standardnih upita bazi podataka, u tome to
korisnici ne moraju unaprijed znati koje se informacije ili uzorci trae. Klase informacija koje
data mining omoguava da se otkriju su asocijativna pravila i uzorci klasterizacije. Primjer
prostorne data mining aplikacije je CRM (customer relationship management). CRM kompanija
moe koristiti data mining za otkrivanje postojanja povezanosti izmeu razliitih tipova potronje
u maloprodaji, to je esto bazirano na podacima vezanim za koritenje debitnih ili kreditnih
kartica. Na primjer, ukoliko postoji tendencija da korisnici kartica nakon gledanja filma odlaze u
restoran koji je u blizini kina, data mining moe pomoi u otkrivanju ovog uzorka, to se moe
iskoristi kao osnova za specijaliziranu promociju (npr. pogledajte film u kinu Dubrovnik i
posjetite restoran Metropolitan). Data mining se moe takoe koristiti za otkrivanje klastera
koji se koriste kao osnova za klasifikaciju neke pojave. Na primjer, organizacija koja prati pojavu
zagaenosti moe koristiti data mining za otkrivanje uzoraka klasterizacije za lociranje
industrijskog zagaenja.

1.3.7 Dijeljeni pristup podacima


Sistem centralizovane baze podataka ima osobinu da su podaci, DBMS i hardware
zajedno obuhvaeni jednim raunarskim sistemom. Iako je baza podataka smjetena na
jednoj lokaciji, ne treba iskljuiti mogunost daljinskog pristupa bazi podataka. Zapravo,
ovo je jedan od vodeih principa za baze podataka: omoguiti dijeljeni pristup podacima.
Ukoliko bi sve aplikacije mogle koristiti centralizovanu bazu podataka, onda bi studiranje
baza podataka bilo mnogo jednostavnije. Meutim, kao to je ilustrovano primjerima
sistema za navigaciju turista i eksploatacije ruda (dio 1.2.3 i 1.2.4), mnoge aplikacije
zahtjevaju pristup podacima iz viestrukih baza podataka povezanih digitalnom
komunikacionom mreom, to se naziva distribuiranom bazom podataka. Postoje prirodni
razlozi zbog ega podaci trebaju biti distribuirani na ovaj nain. Ovakav pristup
omoguava vei stepen autonomije i jednostavnije auriranje i odravanje. Na primjer,
detalje o lokalnim vremenskim uslovima je korisnije uvati na lokalitetu pojave gdje
postoji sistem kontrole i provjere integriteta podataka. Druga prednost distribuirane baze
podataka je vea pouzdanost. Prekid u radu na jednoj lokaciji nee uticati na rad cijelog
sistema. Distribuirane baze podataka takoe nude bolje performance. U primjeru baze
podataka lokalnih vremenskih uslova, pristup lokalnim podacima od strane lokalnih
korisnika (koji je najfrekventnija pojava) e biti efikasniji. Performanse su slabije
prilikom koritenja pristupa udaljenim bazama podataka, ali su i potrebe za ovim
pristupima manje.
injenica je da distribuirane baze imaju komplikovaniju strukturu za podrku. Na
primjer, distribuirane baze podataka moraju rukovati sa upitima koji koriste podatke
fragmentirane na raznim lokacijama, kao i odravati konzistentnost podataka koji se
repliciraju na raznim lokacijama. Distribuirane geoprostorne baze podataka su
diskutovane u 7. tematskoj jedinici.

28

1.4 Hardwareska podrka


Termin hardware se koristi za fizike komponente raunarskog sistema, kao to su
raunarski ipovi, monitor ili tastatura, dok se software odnosi na instrukcije ili programe
koji se izvravaju pomou raunarskog sistema. Za razliku od GIS softwarea koji je
namjenski visoko specijaliziran, hardware koriten za GIS je potpuno isti onome koji se
koristi za openamjenske raunarske sisteme. U ovom dijelu e se diskutovati struktura i
funkcija raunarskog hardwarea do onog stepena koji je neophodan za razumjevanje
uloge koju on igra u GIS-u. Pri ovome se podrazumjeva da je italac openito upoznat sa
standardnom raunarskom arhitekturom, tako da e se napraviti samo kratak pregled onih
komponenti koje su relevantne za GIS.

1.4.1 Pregled raunarske arhitekture


Uprkos irokom obuhvatu zadataka koje raunar izvrava, skoro svi savremeni raunari
su zasnovani na principima von Neumannove arhitekture, razvijene od Johna von
Neumanna, matematiara maarskog porijekla, na Princeton University, tokom 40-tih i
50-tih godina prolog stoljea. Saglasno von Neumannovoj arhitekturi, raunarski sistem
se sastoji od 4 glavna podsistema (slika 1.13.):
Procesiranje: Procesiranje podataka sadri operacije koje kombinuju i
transformiu podatke. Kompleksne funkcije procesiranja podataka mogu biti
reducirane na mali skup primitivnih operacija.
Skladitenje: Podaci se dre u skladitu tako da su pristupani za procesiranje.
Ovo skladite moe biti kratkorono (gdje se podaci dre samo dok traje njihovo
procesiranje) ili dugorono (u sluaju potreba za buduim procesiranjem).
Kontrola: Skladine i procesne funkcije se moraju kontrolisati raunarom, koji
mora upravljati i alocirati (delegirati) resurse za procesiranje, skladitenje i
premjetanje podataka.
Ulaz/izlaz: Raunari moraju biti sposobni prihvatiti unos (input) podataka i
prezentaciju (output) rezultata procesiranja. Dvije vane klase ulaza/izlaza se
odnose na interakciju izmeu korisnika i raunara, i na komunikaciju izmeu
razliitih raunarskih sistema (posredstvom digitalne komunikacione mree).
Kljune komponente raunarskog sistema (prije u smislu sastavnih jedinica, nego po
samoj funkcionalnosti) su CPU (komponenta odgovorna za procesiranje i kontrolu),
memorijski ureaji (odgovorni za skladitenje podataka) i ulazno/izlazni ureaji
(korisnike ili raunarske mree).

Slika 1.13: etiri osnovne funkcionalne komponenta raunara

29

1.4.2 Procesiranje i kontrola


Procesiranjem podataka u raunarskom hardwareu se rukuje pomou centralne
procesirajue jedinice (Control Processing Unit). Njena glavna funkcija je izvravanje
mainskih instrukcija (execute machine instruction), od kojih svaka izvodi jednu
primitivnu operaciju raunanja. CPU izvrava mainske instrukcije dohvatajui (fatching)
podatke u specijalnim registrima i izvravajui raunarsku aritmetiku nad njima. Sam
CPU se sastoji od nekoliko podkomponenti, od kojih su najvanije aritmetiko-logika
jedinica (ALU) i kontrolna jedinica (CU). Kontrolna jedinica je odgovorna za funkciju
kontrole, upravljanja i alociranja resursa. ALU je odgovorna za trenutne funkcije
procesiranja.
Slika 1.14 prikazuje model von Neumannova raunara. On se sastoji od etiri
funkcionalne jedinice:
aritmetiko-logike jedinice (ALU),
upravljake jedinice,
memorijske jedinice, i
ulazno-izlazne (U/I) jedinice.

Slika 1.14: Model von Neumannova raunara

Izvravanje instrukcije se odvija u dvije faze: pribavi (fetch) i izvri (execute). Slika 1.15
prikazuje dijagram prelaza stanja za von Neumannov raunar.

Slika 1.15: Dijagram prelaza stanja

30

Slika 1.16: etiri koraka izvravanja instrukcijskog ciklusa

Operacije nad podacima se izvode sekvencijalno, uitavanjem pohranjenih podataka,


izvravanjem odgovarajue operacije i vraanjem rezultata u skladite. Proces izvravanja
je poznat kao instruction cycle (machine cycle, fetch-execute cycle). On se sastoji od 4
koraka (slika 1.16). U prvom koraku kontrolna jedinica uitava (dohvata) instrukciju iz
skladita. U narednom koraku kontrolna jedinica dekodira pohranjenu instrukciju da bi se
odredilo koja operacija se treba izvesti. Dalje, kontrolna jedinica proslijeuje ovu
instrukciju ALU jedinici, koja zavrava trenutni zadatak izvravanja operacije. Konano,
rezultati izvravanja operacije se vraaju u skladite, spremni da se uitaju za slijedei
instrukcijski ciklus. Veza izmeu procesora (CPU) i drugih komponenti u raunaru je
ostvarena namjenskim komunikacionim ianim vezama, koje se nazivaju bus. Iako se
rad skoro svih raunara zasniva na instrukcijskom ciklusu, sami raunarski procesori se
razlikuju po tipu i opsegu instrukcija koje implementiraju (CISC, RISC).
CISC i RISC raunarski procesori: Obino se hardware posmatra potpuno odvojeno od
softwarea: hardware su stvarni raunarski predmeti koje moete dodirnuti, software su digitalne
instrukcije i podaci. Meutim, distinkcija nije uvijek tako jasna. Skup instrukcija kojeg podrava
CPU (hardware) je determinirajui faktor za kompleksnost programa (sofvera) koji se pokree
pomou CPU. Veina PC raunara koristi CISC (complex instruction set computer) arhitekturu,
kao to su oni iz Intel Pentium procesorske familije. U CISC arhitekturi, CPU podrava desetine,
pa ak i stotine instrukcija, to software ini jednostavnijim i pristupanijim (finansijski
povoljnijim) za programiranje. Meutim, kompleksne instrukcije su openito sporije za
izvravanje od jednostavnih instrukcija. RISC (reduced instruction set computer) arhitektura
podrava manji skup instrukcija od CISC arhitektuire. Prednost RISC arhitekture je u koritenju
openito brih i jednostavnijih CPU jedinica sa niom potronjom energije. Zato veina malih i
mobilnih raunarskih ureaja koristi RISC arhitekturu male potronje (kao to je ARM familija
procesora). inei hardware jednostavnijim, RISC arhitektura treba puno kompleksniji software
za dostizanje istih zadataka. CISC i RISC arhitekture su dobra ilustracija zato distinkcija izmeu
hardwarea i softwarea moe biti nejasna. U stvari, distinkcija izmeu CISC i RISC arhitekure
takoe postaje nejasna, poto noviji procesori sve vie koriste mnoge od ideja razvijenih za RISC
arhitekturu, a RISC procesori koriste mnoge instrukcije starije CISC arhitekture.

31

1.4.3 Skladitenje podataka


Digitalni podaci se mogu fiziki uvati u raunarskom sistemu pomou ureaja za
skladitenje. Ureaji za skladitenje se razlikuju po svom kapacitetu (koliko podataka
mogu pohraniti), performansama (brzina pristupa podacima), postojanosti (dali
pohranjeni podaci postoje i poslije prestanka napajanja) i cijeni. Ureaji za skladitenje
podataka se mogu podjeliti u dvije kategorije:
memorija kojom se moe upravljati direktno sa CPU se naziva primarnom
memorijom, i obino se zasniva na poluprovodnikoj tehnologiji. Primarna
memorija je relativno skuplja po pohranjenom bitu u poreenju sa sekundarnom
memorijom, i openito je nepostojana (memorisani podaci se gube nakon
iskljuivanja raunara);
memorija kojom se moe pristupiti samo indirektno pomou CPU (preko
ulazno/izlaznih kontrolera), koja se naziva sekundarnom memorijom. Sekundarna
memorija je obino zasnovana na magnetnoj ili optikoj tehnologiji. Relativno je
jeftinija od primarne i postojana je (jer podaci ostaju nakon iskljuenja napajanja
memorijskog ureaja).

Slika 1.17: Standardni ureaji za skladitenje

Slika 1.17 prikazuje neke primjere standardnih primarnih i sekundarnih memorijskih


ureaja. Primarna memorija openito obezbjeuje bri pristup podacima od sekundarne.
Meutim, primarna memorija nudi manji kapacitet po koliini uvanih podataka. Balans
izmeu primarne i sekundarne memorije je kritian za performanse GIS-a. Openito,
zbog velikih koliina podataka sa kojima operie GIS, koritenje samo primarne
memorije za rad sa svim podacima nije praktino. Zbog toga efikasno struktuiranje
fajlova podataka na sekundarnim memorijskim ureajima predstavlja vaan faktor za
performanse GIS-a. Raunarski strunjaci i naunici su utroili mnogo napora u traenju
odgovarajue strukture podataka koja bi osigurala dobre performanse koritenja

32

prostornih podataka. Da bismo razumjeli probleme vezane za ovakve strukture,


neophodno je detaljnije upoznati osobine primarne i sekundarne memorije.
Primarna memorija je direktno pristupana za CPU. Da bi ALU mogla operisati sa
podacima, CPU zahtjeva svoju sopstvenu lokalnu memoriju u formi registara. Pored
ALU, i kontrolna jedinica takoe zahtjeva dio interne memorije. Ovakva registarska
memorija je najbra i najskuplja od svih ostalih tipova, i njena brzina mora biti
komparativna sa vremenom instrukcijskog ciklusa.
Drugi tipovi primarne memorije se odnose na glavnu memoriju.
Tipina glavna memorija je RAM (random access memory), iji naziv (memorija sa
sluajnim pristupom) nije adekvatan obzirom da je svaki tip glavne memorije sluajno
pristupaan (odnosno direktno adresabilan). RAM je nepostojana memorija, koja zahtjeva
stalno napajanje, i omoguava pristup za itanje i pisanje. RAM se koristi za uvanje
podataka koji dolaze i protiu izmeu CPU i perifernih ureaja. ROM (read only
memory) je postojana memorija (ostaje zapamena nakon prekida napajanja) i sadri
podatke koji su tvrdo-oieni, u smislu da su upisani tokom proizvodnje ROM ipa i
nemogu se naknadno mjenjati. ROM je zbog toga koristan samo za pohranjivanje
permanentnih podataka, kao to su sistemske rutine za esto koritene funkcije (na
primjer, grafike funkcije u GIS-u). Drugi tipovi ROM-a dozvoljavaju da se podaci
pohrane i naknadno (poslije proizvodnje ipa). PROM (Programmable ROM),
dozvoljava upisivanje podataka naknadno. EPROM (Erasable PROM) i EEPROM
(Electrically EPROM) dozvoljavaju viestruko postojano upisivanje podataka, meutim
po cijenu sporijeg pistupa podacima od RAM-a. Flash memorija je tip EEPROM
memorije sa relativno brzim pristupom podacima i esto se koristi u manjim ureajima za
pohranjivanje podataka i konfigurabilnim mobilnim raunarskim ureajima, kao to su
mobiteli.
Najvaniji oblik sekundarnog pohranjivanja je magnetni disk. Magnetni disk je presvuen
tankim slojem magnetnog materijala. Polarizacija veoma malih regija na disku se postie
pomou specijalne elektrine glave za itanje i pisanje. Kombinovanim rotiranjem diska i
pomjeranjem glave se postie brz pristup cijeloj povrini diska. Sam disk rotira po
nekoliko hiljada okretaja u minuti (RPM - rotation per minute), tako da je vrijeme
pristupa (traenja) potrebno za kretanje glave presudan faktor pristupanosti podacima na
disku. Prednost fizikog struktuiranja podataka na disku se ostvaruje sve boljom
minimizacijom vremena pristupa. Fizika struktura geoprostornih podataka na disku je
pitanje koje permanentno zaokuplja panju istraivaa raunarskih sistema. Optika
skladita, kao to su CD-ovi i DVD-ovi, imaju slinu strukturu (rotirajui disk i glave za
itanje/pisanje, s tim to koriste lasersku tehnologiju za itanje i pisanje sa fotoosjetljivog
diska).
Magnetni i optiki diskovi itaju i piu podatke traenjem specifinog bloka podataka na
disku pomou jedinstvene fizike adrese (tzv. proces direktnog pristupa). Nakon
pronalaenja eljenog bloka, podaci iz bloka se skeniraju u sekvencama sve dok se ne
pronae precizna lokacija za itanje, odnosno pisanje (tzv. proces sekvencijalnog
pristupa).

33

1.4.4 Korisniki ulazno/izlazni ureaji


Postoji itav niz razliitih ureaja koji korisniku omoguavaju unos podataka u raunare i
primanje izlaza iz raunara. Najei ureaj je tastatura, koja se koristi za unos
numerikih i tekstualnih podataka. Navigacioni (pokazivaki) ureaji su drugi veoma est
ureaj, koji za razliku od tastature, koja ima standardizovanu konfiguraciju tipki, dolaze u
raznim veliinama i oblicima (mi, touchpad, stick pokaziva, kuglica, joystick, dodirni
ekran).
Specijalizovani tip pokazivaa (pointing device) koji je posebno relevantan za GIS je
digitajzer. Digitajzer je kombinacija velikog ravnog tableta i pokazivaa koji se pomjera
preko tableta (vidi sliku 1.18). Digitajzeri su neophodni za sekundarno prikupljanje
analognih podataka: prevoenje geoprostornih informacija sa papirnih karata u digitalni
oblik. Operator privrsti kartu na tablet i pomou pokazivaa precrtava oblike
kartografskih objekata, kao to su tok rijeke ili granica administrativne regije. Kako se
pokaziva kree preko tableta, njegov poloaj se oitava i biljei u raunaru. Za unos
podataka u zvunom obliku se koriste drugaiji ureaji, kao to su mikrofon u
kombinaciji sa sistemom za prepoznavanje govora. Za unos podataka u optikoj formi se
koriste ureaji kao to su skeneri za konvertovanje karata ili slika u digitalne slike.

Slika 1.18: Tablet za digitalizaciju

Izlazne forme korisnikih ureaja se mogu klasificirati u dvije kategorije: hard copy i soft
copy. Hard copy izlazni ureaji, kao to su tampai i ploteri, proizvode izlaz sa fizikom
postojanou. GIS je esto bio vezan za skupe, visokokvalitetne plotere, neophodne za
izradu detaljnih papirnih karata velikog formata. Meutim veina GIS korisnika se
uglavnom ili potpuno slui soft copy izlaznim ureajima, i to primarno raunarskim
monitorima, kao i drugim ureajima video ptikaza (video display unit). Soft copy izlazni
ureaji proizvode izlazni prikaz, koji je prolazan i neuhvatljiv, poput slike na ekranu.
Zvuk iz audio ureaja, kao to su zvunici, je takoe tip soft copy izlaza. Za GIS
aplikacije, izrazito vizualna priroda ljudske percepcije geoprostornih informacija
podrazumjeva da je audio izlaz manje vaan od vizualnog prikaza.

34

1.4.5 Raunarske mree


Komunikacija izmeu raunarskih ureaja povezanih u mreu je postala fundamentalni
dio veine dananjih informacionih sistema, ukljuujui i GIS. Veina komunikacionih
mrea su digitalne (u smislu prenosa informacija putem serije bita koji koriste signalne
rafale razliitog intenziteta koji odgovara binarnim vrijednostima 0 i 1, kako je prikazano
na slici 1.19a. Starije komunikacione tehnologije za prenos podataka koriste analogne
signale, gdje snaga signala moe varirati kontinualno kao sinusni talas (slika 1.19b).

Slika 1.19: a) digitalni (lijevo) i b) analogni signali (desno)

Postoje razliite tehnike za kodiranje digitalnih podataka u analogni signal, ukljuujui


moduliranje (variranje) amplitude (intenziteta) signalnog talasa. Primjer amplitudne
modulacije za kodiranje digitalnih podataka u analognom signalu je ilustrovan na slici
1.20.

Slika 1.20: Amplitudna modulacija koja kodira digitalne podataka u analogni signal

Konverzija izmeu digitalnih i analognih signala zahtjeva ureaje zvane modem.


Analogni signali se lake degradiraju nego digitalni signali, tako da je veina zaostale
analogne komunikacione tehnologije zamjenjena sa digitalnom.
Bez obzira dali se transmituju digitalni ili analogni signali, sve komunikacione mree
koriste elektromagnetno (EM) zraenje za propagiranje (prenos) signala. EM radijacija se
moe posmatrati kao kretanje talasa kroz neki medij. Frekvencija i duina talasa EM
radijacije direktno utiu na osobine prenosa. Frekvencija predstavlja broj ciklusa koje
talas zavri po jedinici mjerenja, dok je talasna duina u stvari duina svakog ciklusa. Za

35

talas koji se kree konstantnom brzinom, kao to je sluaj sa EM zraenjem kroz vakuum,
frekvencija je obrnuto propocionalna talasnoj duini (drugim rijeima, kako se talasna
duina poveava, frekvencija se smanjuje).

Slika 1.21: Elektromagnetni spektar

EM zraenje sa kraom talasnom duinom, kao to je infracrvena i vidljiva svjetlost,


moe nositi vie podataka nego zraenje sa duim talasnim duinama, kao to su
mikrotalasi i radio talasi, poto krae talasne duine omoguavaju signalnim rafalima da
budu krai. Meutim, krae talasne duine EM signala bre degradiraju od duih, te ih je
tee koristiti za vee udaljenosti prenosa. Raspon talasnih duina ili frenkvencija, koje su
raspoloive za transmisiju se naziva irina opsega. Postoji jasan odnos izmeu irine
opsega signala i koliine podataka koji se prenose signalom: iri opseg podrazumjeva
vei kapacitet prenosa podataka.
Slika 1.21. daje pregled magnetnog spektra sa mogunostima transmisije podataka. Radio
talasi, mikro talasi, infracrvena i vidljiva svjetlost se mogu koristiti za raunarske mree.
Visoko frekventna ultra ljubiasta svjetlost, x zraci i gama zraci EM radijacije se ne
mogu koristiti za prenos podataka, jer njihova velika energija moe biti opasna za okolinu
i ljudsko zdravlje.
Signali noeni EM zraenjem se mogu prenositi koritenjem razliitih medija. Najei
medij koji se koristi za prenos podataka su metalne, obino bakarne ice poput onih koje
se koriste za konvencionalne telefonske linije, kao i koaksijalni raunarski mreni
kablovi. Konvencionalne telefonske mree esto imaju niske kapacitete za prenos
podataka, jer one ne omoguavaju efikasno koritenje raspoloive irine opsega kroz
bakarne ice. Normalna glasovna komunikacija zahtjeva samo mali frekventni rang za
transmisiju, ostavljajui vei dio raspoloive irine opsega neiskoritenom. Digitalne
komunikacije se prilikom koritenja telefonske mree moraju nagurati u malu irinu
opsega raspoloivog za glasovne komunikacije. Mnoge telefonske mree su se
nadogradile da bi ostvarile bolje koritenje irine opsega, i postale sposobne za prenos
digitalnih podataka uporedo sa glasovnim komunikacijama, koritenjem frekvencija, koje
nisu bile potrebne za glasovne komunikacije (terminisane kao DSL digital subscriber
line). Ubrzanim tempom, kablovi sa optikim vlaknima zamjenjuju bakarne kablove. Ovi
kablovi koriste vidljivu svjetlost za prenos podataka kroz fina staklena vlakna. Vidljiva
svjetlost nudi veu irinu opsega za transmisiju podataka od radio talasa, tako da kablovi
sa optikim vlaknima mogu nositi znatno vie podataka od bakarnih kablova. Uz to,
kablovi sa optikim vlaknima su pouzdaniji i manje osjetljivi na interferenciju od
bakarnih kablova.
Prenos podataka se takoe moe ostvariti i bez vodia, kroz Zemljinu atmosferu, to
nazivamo beinom komunikacijom (wireless). Beina komunikacija koristi radio talase
ili mikrotalasno EM zraenje za prenos podataka. Da bi se borili sa degradacijom signala
i interferencijom iz okolinskog zraenja, beini signali moraju biti ostvareni putem
antena, bilo zemaljskih, bilo satelitskih. EM zraenje sa tipovima talasa kraih duina
vidljive svjetlosti i infracrvenih talasa nisu dovoljno pogodni za beine komunikacije.
Koritenje radio i mikrotalasnih signala za beine mree donosi prednosti koje su vezane
za sposobnost niskofrekventne radijacije da prodire kroz nemetalne prepreke, kao to su
zidovi i stropovi, dok vidljiva i infracrvena svijetlost to nije u stanju. Kao rezultat, mree
36

bazirane na vidljivoj svjetlosti i infracrveni signali se esto zovu dogledajue (line-ofsight) tehnologije, iako postoje i neke difuzne optike i infracrvene beine mree koje su
razvijene tako da ne zahtjevaju direktnu vidljivost (liniju dogledanja, odnosno vizuru).
Veina dananjih raunara su sposobni da komuniciraju sa drugim raunarima putem
digitalne komunikacione mree, bilo koritenjem konekciono orijentisanih servisa, bilo
pomou bezkonekcijskih servisa. Konekcijski orijentisani servisi zahtjevaju da se
korisniki raunar mora eksplicitno konektovati na daljinski raunar prije nego zapone
bilo kakva komunikacija. Na primjer, da bi pristupili mrei putem telefonske linije,
neophodno je prvo birati daljinski raunar kako bi inicirali konekciju. Bezkonekcioni
servisi dozvoljavaju raunarima neprekidnu komunikaciju meu njima bez potrebe za
uspostavljanjem eksplicitne konekcije prije poetka komunikacije. Veina
komunikacionih mrea su zasnovane na bezkonekcionim servisima, tako da mnoge
telefonske mree danas nude bezkonekcione servise koji zamjenjuju stare konekcijski
orijentirane servise.
Komunikacione mree se razlikuju po veliini geografske povrine koju pokrivaju, tako
da imamo tri tipa ovih mrea. Lokalna mrea (LAN - local area network) povezuje grupe
raunara lociranih unutar malog geografskog prostora. WAN mrea (wide area network)
povezuje grupe LAN-ova. Internet je najvei WAN koji postoji, sa vie od 100 miliona
hostova (procjena iz 2001.godine).
Iz perspektive GIS-a, digitalne komunikacije radikalno mjenjaju nain na koji ljudi
koriste geoprostorne informacije. Digitalne komunikacije promoviu dijeljenje
(razmjenu) geoprostornih informacija. Mnoge kompanije i kartografske agencije nude
raznovrsne geoprostorne informacije koje se mogu preuzeti (download-ovati) sa
Interneta. Ovo opet smanjuje trokove prikupljanja i analize podataka drugim
organizacijama koje koriste ove podatke. Vana osobina digitalnih komunikacija je
njihova brzina. Neki modaliteti raunarstva se nebi mogli zamisliti bez nje. Na primjer,
mobilne GIS aplikacije, kao to je turistiki navigacioni sistem, uglavnom je zasnovan na
rapidnim digitalnim komunikacijama.

37

2
2 Temeljni koncepti baza podataka
Kratak pregled
Ova tematska jedinica se fokusira na baze podataka i njihovu ulogu u GIS-u. Mnoge baze
podataka su zasnovane na relacionom modelu, koji obezbjeuje strukturu podataka
organizovanih u tabele sa meusobno povezanim zapisima (relacijama). Jezici za upite
omoguavaju korisnicima interakciju sa bazom podataka. Standardni jezik za upite je
SQL. Relacione baze podataka su esto razvijene koritenjem tehnike modeliranja koja
se naziva entity-relationship (E-R) modeliranje. Objektno orijentisano modeliranje
predstavlja drugaiji pristup, koji je zasnovan na objektima (kao instancama klasa) sa
svojim stanjem i ponaanjem.
Baze podataka su temelji svakog GIS-a. Poznavanje osnovnih principa baza podataka je
neophodno za razumjevanje GIS tehnologije. Mnogi postojei GIS-ovi su zasnovani na
openamjenskim relacionim bazama podataka. Openito, svi GIS-ovi u distribuiranom
okruenju su povezani u sisteme sa ovakvim bazama podataka.
Ova tematska jedinica opisuje glavne principe baza podataka. Opi pristup baze podataka
se uvodi u dijelu 2.1 kroz opis sistema baze podataka sa arhitekturom visokog nivoa.
Najredovniji model baze podataka je relacioni model, koji je detaljno opisan u dijelu 2.2.
Na osnovu razumjevanja relacionog modela, u dijelu 2.3 se uvode principi razvoja baze
podataka. Objektno orijentisan model proiruje relacioni model na nain da nudi nekoliko
posebno korisnih prednosti za GIS. Objektno orijentisani model i objektno orijentisani
sistem baze podataka su opisani u dijelu 2.4.

2.1 Uvod u baze podataka


Radi boljeg razumjevanja osnovnih principa baze podataka, korisno je napraviti njenu
uporedbu sa drugim, vie tradicionalnim raunarskim paradigmama. Prije pojave baza
podataka, raunari su skoro univerzalno koriteni za konvertovanje jednog skupa
podataka u drugi uz pomo dugotrajnih i kompleksnih transformacionih procesa. Na
primjer, ako bi poeljeli koristiti transportni model za predikciju prosjenog godinjeg
protoka saobraaja, u sistem bi se unijeli podaci o populaciji naselja i o putnoj mrei,
primjenio bi se program za transformaciju, koji je kodiran kao programska procedura
zasnovana na transportnom modelu, a kao rjeenje bi se na izlazu pojavili podaci o
predikciji protoka saobraaja u mrei.
Na ovaj nain bi se raunar koristio kao veliki kalkulator (slika 2.1). Ovakav pristup se
esto naziva fajl procesiranje, poto se skupovi podataka za ulaz i izlaz obino uvaju u
posebnim raunarskim fajlovima.

38

Slika 2.1: Paradigma raunara kao velikog kalkulatora

Tretiranje raunara kao velikog kalkulatora ima vie mana. Ukratko, takav pristup vodi
dupliciranju, kako podataka, tako i procesa. Alternativa koju nudi pristup sa bazom
podataka je prikazana na slici 2.2. U ovom sluaju raunar ima ulogu repozitorija
podataka, omoguavajui pohranjivanje, skladitenje i pozivanje podataka. Pohranjenim
podacima se moe viestruko pristupati, oni se mogu modificirati i analizirati na
standardizovan nain (dok su uskladiteni), osiguravajui da se ove i druge bazne
funkcije nikad ne dupliciraju. Kljune osobine baze podataka su detaljno opisane u
narednom izlaganju.

Slika 2.2: Paradigma raunara kao repozitorija podataka

Baze podataka u ljusci: Da bi se raunarski sistem efikasno koristio za skladitenje podataka, on


mora biti pouzdan, te osiguravati integritet, sigurnost i neovisnost podataka. Baza podataka
mora ispravno operisati ak i u sluaju nepredvienih dogaaja, kao to su ispadi nastali zbog
prekida napajanja ili hardwareskih kvarova (pouzdanost). Podaci u bazi podataka trebaju biti to
je vie mogue korektni i konzistentni (integritet). Baza podataka mora biti sposobna da zatiti
podatke od neautorizovanog koritenja (sigurnost), ali da pri tome nudi fleksibilnost u smislu
dodjeljivanja privilegija prema nivou i nainu pristupa (korisniki pogledi). U idealnim uslovima,
interfejs baze podataka bi trebao biti jednostavan za koritenje od strane standardnih korisnika,
ali i funkcionalno moan za koritenje od strane naprednih korisnika (korisniki interfejs).
Veinu korisnika ne treba da zanima na koji nain baza podataka operie, niti oni trebaju biti
izloeni poznavanju primjenjenog mehanizama baze podataka (neovisnost podataka od
mehanizma). Korisnicima bi trebalo biti omogueno da lako pronau ta se nalazi u bazi
podataka (samoopisivost). Mnogi korisnici ele koristiti skladite ili pristupati istim podacima
istovremeno (konkurentnost pristupa). Baze podataka trebaju biti sposobne da meusobno
komuniciraju kako bi se moglo pristupati udaljenim podacima na drugim lokalitetima
(distribuirana baza podataka). Konano, baza podataka bi trebala biti osposobljena za rapidan
pristup podacima (performanse). Svim ovim funkcijama upravlja posebna softwareska aplikacija
database management system (DBMS). Ovakav pristup (skup mehanizama) asocira na ljusku
oko (baze) podataka, tako da se za nju esto vee metafora orahove ljuske.

2.1.1 Pristup sa smjetanjem podataka u bazu podataka


Raunar kao veliki kalkulator i raunar kao repozitorij podataka predstavljaju dvije
ekstermne paradigme. Veina aplikacija zahtjeva balans izmeu raunanja (procesiranja)
i repozitorija podataka nad kojim treba da se odvijaju procesi. Ovaj balans se moe
ilustrovati kroz slijedei primjer.

39

Vlasnik restorana brze hrane je odluio uvesti raunarski informacioni sistem koji bi mu
pomogao u voenju poslova. Kako mu je programiranje bilo hobi, odluio je da
aplikaciju za praenje jelovnika razvije samostalno. Stavke iz jelovnika je pohranio u
formi zapisa sa fajlom za jelovnik. Programi su bili napisani tako da su omoguavali
modifikaciju jelovnika (stavke su se mogle brisati, umetati i aurirati), kao i njegovo
svakodnevno tampanje. Na lijevoj strani slike 2.3 prikazan je fajl sa jelovnikom sa kojim
operiu dva programa (za modifikaciju i za tampu). Na desnoj strani slike je konstitucija
zapisa za stavke iz fajla jelovnika. Fajl jelovnika se uva u operativnom sistemu i poziva
kada mu se pristupa iz navedenih programa.

Slika 2.3: Prva faza razvoja informacionog sistema: Sistem sa jelovnikom

Vremenom se sistem za praenje jelovnika pokazao uspjenim, i vlasnik je odluio da ga


proiri i na upravljanje sa zalihama namirnica. Na slian nain struktuiran, sistem zaliha
je uspostavljen tako da je sadravao fajl zaliha, kao i programe za modifikaciju fajla
zaliha i periodino tampanje izvjetaja o stanju zaliha. Kada su i detalji o zalihama i
jelovniku bili u sistemu, postalo je vidljivo da promjene cijena namirnica na zalihi utiu
na cijene u jelovniku. Tada je razvijen i program koji je pratio cijene zaliha i koristio ih
za odreivanje cijena stavki u jelovniku (slika 2.4).

Slika 2.4: Druga faza razvoja informacionog sistema: Sistem sa jelovnikom,


zalihama i cijenama iz jelovnika

Razvojem novih fajlova sa detaljima o dobavljaima i naruiocima, sistem je vremenom


nastavio rasti. Meutim, kada je znatno narastao, pojavili su se odreeni problemi.
Problem gubitka integriteta: Veze izmeu programa i fajlova su postale
kompleksne. U programima su kodirane relacije izmeu stavki podataka u
fajlovima. Ukoliko se ove relacije promjene, onda se i programi moraju mjenjati.

40

Razvoj softvera je postajao sve kompleksniji i skuplji, i vodio je estim grekama.


Na primjer, dobavlja vanih namirnica je napustio poslove isporuke i izbrisan je
sa liste dobavljaa, ali namirnice sa njegovim nazivom nisu izbrisane iz fajla sa
listom naziva namirnica.
Problem gubitka nezavisnosti (podataka): Bliska povezanost izmeu programa i
podataka rezultira visokim trokovima odravanja softvera. Na primjer, mjenjanje
medija sekundarne memorije zahtjeva (zbog promjene putanje) djelomino
doraivanje veeg dijela programa.
Problem gubitka sigurnosti: Dodat je fajl sa linim podacima osoblja bez mjera
zatite podataka, a onda je otkriveno da je neko od osoblja pristupao osobnim
podacima svojih kolega.
Ovi i drugi problemi, koji se pojavljuju u tradicionalnim fajl procesirajuim sistemima,
se rijeavaju uvoenjem pristupa bazom podataka. Slika 2.5. prikazuje reorganizaciju
sistema, tako da su svi fajlovi podataka izolovani od ostatka sistema i pristupani su za
procesiranje samo kroz kontrolisane kanale. Ideja je da se u bazu podataka smjesti to
vie strukture informacija. Na primjer, ako postoji relacija izmeu dobavljaa i roba koje
oni isporuuju, onda bi ona trebala biti pohranjena sa podacima. Baze podataka su
samoopisive onda kada kodiraju, i podatke, i strukturu ovih podataka. Sredstva
izraavanja strukture i relacija izmeu podataka su obezbjeena u okviru modela
podataka. Takoe, model podataka omoguava korisniku da unosi podatke za koje se
oekuje da uvijek budu istiniti, odnosno ispravni (integritetna ogranienja). Intergritetna
ogranienja slue u svrhu odravanja ispravnosti unosa podataka u bazu podataka, jer ona
dozvoljavaju modifikacije u bazi podataka samo ukoliko su zadovoljena uspostavljena
pravila, odnosno ogranienja. Primjer ogranienja je kada cijena stavke iz jelovnika moe
uzimati vrijednosti samo u rasponu od 0 KM do 100 KM.

Slika 2.5: Trea faza razvoja informacionog sistema: Pristup sa uvoenjem baze podataka

Podaci su prikupljeni na jednoj logikoj, centralizovanoj lokaciji. DBMS (database


management system) upravlja bazom podataka izolirajui podatke od nekontrolisanog
pristupa. DBMS omoguava definiciju modela podataka, podrava manipulaciju sa
podacima i obezbjeuje kontrolisane dvosmjerne kanale pristupa izmeu vanjskog
okruenja i baze podataka. Baza podataka treba omoguiti razliitim korisnicima da

41

prilagode izgled (customize) svog pogleda (view) na podatke. Ona takoe treba omoguiti
dizajnerima da definiu strukturu podataka u bazi podataka, obezbjeujui nivoe
autorizacije u okviru kojih se razliitim grupama korisnika dozvoljava siguran pristup
podacima. Razliiti korisnici mogu pristupati bazi podataka u isto vrijeme, to znai da
baza treba podravati konkurentnost pristupa. DBMS takoe omoguava korisnicima da
pristupe podacima bez preciznog poznavanja detalja o implementaciji, to podrazumjeva
nezavisnost podataka od tehnologije.
ANSI/SPARC arhitektura: Kljuni elemenat filozofije baza podataka je njena sposobnost da
obezbjedi viekorisniki pristup podacima u bazi podataka. Nemaju svi korisnici iste zahtjeve
vezane za koritenje baze podataka. Svaka korisnika grupa moe zahtjevati poseban prozor sa
podacima. Ovo je takozvani koncept pogleda (view). Pogledi omoguavaju korisnicima da mogu
preurediti prikaz podataka, odnosno oblikovati svoj model podataka, koji je podskup cjelokupnog
modela podataka, kao i definisati autorska prava za nivo pristupa sektorima baze podataka koji
pripadaju njihovim domenama koritenja.
Postoji distinkcija izmeu modela podataka na nivou cjelokupne baze podataka (globalna
konceptualna shema) i modela podataka za nivo jedne podklase korisnika (lokalna koceptualna
shema ili eksterni pogled).
Nezavisnost podataka je obezbjeena odvajanjem implementacionih detalja (kojim se rukuje u
internoj implementacijskoj shemi) od vieg nivoa, korisniki orijentisanog sagledavanja,
obezbjeenog konceptualnom shemom. Ovakav slojeviti model generine strukture arhitekture
baze podataka je utjelovljen takozvanom ANSI/SPARC arhitekturom baza podataka prikazanom
na slici ispod. DBMS obezbjeuje preslikavanja izmeu svakog sloja. Korisnici mogu imati
interakciju sa bazom podataka samo posredstvom eksternog pogleda.

Interpretacija ANSI/SPARC arhitekture baza podataka

Sada se baza podataka moe preciznije definisati kao raunarski bazirana kolekcija
podataka, koju dijele autorizovani korisnici, sa mogunostima upravljanja definicijom,
pristupom, pozivanjem, manipulacijom i prezentacijom podataka. Primjeri uobiajenih
aplikacija baza podataka ukljuuju:
Kuna/uredska baza podataka: Kuni/uredski sistemi baze podataka se najee pokreu
na openamjenskom hardveru i ne zahtjevaju konkurentski viekorisniki pristup.
Kao rezultat ovoga, ovi sistemi su relativno dostupni po cijeni.
Komercijalna baza podataka: Baze podataka se iroko koriste za upravljanje poslovnim

42

informacijama. Komercijalne baze podataka moraju biti sigurne i pouzdane,


pokretljive sa razliitim platformama, obezbjedivi visoke performanse i
konkurentski pristup raznim korisnikim grupama. Kao primjer se moe uzeti
baza podataka za upravljanje korisnikim raunima u bankama.
Inenjersko tehnika baza podataka: Ove baze podataka se esto koriste za dizajnerske
poslove i obino su karakterizirane grafiki baziranim podacima. Upravljanje
viestrukim verzijama crtea, uz duge i kompleksne transakcije (prilikom
modifikacije) prema bazi podataka je esto izraena potreba pri koritenju ovih
baza podataka. Kao primjer se moe navesti CAD sistem za projektovanje novog
motora ili turbine.
Slikovna i multimedijalna baza podataka: Multimedijalne baze podataka omoguavaju
skladitenje i pozivanje velikog obuhvata kompleksnih tipova podataka, koji
obino zahtjevaju mnogo skladinog prostora, kao to su slike, audio i video
zapisi. Primjeri pretraljivih multimedijalnih baza podataka se mogu nai na
mnogim mehanizmima pretraivanja na WWW.
Geoprostorna baza podataka: Ove specijalizovane baze podataka pohranjuju kombinaciju prostornih i neprostornih podataka za koje se zahtjeva kompleksna struktura i
prostorna analiza.

2.1.2 Elementi sistema za upravljanje bazom podataka (DBMS)


U ovom dijelu se opisuju glavne komponente DBMS-a koji omoguavaju koritenje
kompleksne funkcionalnosti koja je predhodno navedena (slika 2.6).
Za laku ilustraciju posluimo se predhodnim primjerom informacionog sistema za
restoran brze hrane i predpostavimo da nam treba informacija o koliini rie na zalihi.
Ovaj zadatak zahtjeva pozivanje podataka iz baze podataka, odnosno iz fajla zaliha.
Pozvani zahtjev mora uspostaviti komunikaciju sa bazom podataka, bilo koritenjem
jezika za interakciju sa bazom podataka (jezik upita), bilo putem korisnikog interfejsa.
Predpostavimo da emo koristiti jezik za upite.
DBMS ima kompajler za upite koji parsira i analizira upit i, ukoliko je sintaksa ispravna,
generie izvrni kod koji e se proslijediti do mehanizma za procesiranje (run time
database processor). Prilikom ovoga, kompajler moe pozvati i optimizator upita (query
optimizer) za optimizaciju koda, tako da performanse prilikom pozivanja budu to je
mogue bolje (obino postoji nekoliko moguih izvrnih strategija). Kompajler moe
takoe koristiti mehanizam za prisilu ogranienja (constraint enforcer) da provjeri da li
modifikacije u bazi podataka (koja su na snazi) zadovoljavaju ogranienja koja se odnose
na njen integritet. Pristupom DBMS podacima se rukuje posredstvom mehanizma za
upravljanje pohranjenim podacima (stored data manager), koji poziva dio operativnog
sistema zaduenog za kontrolu fizikog pristupa memorijskim ureajima. Drugi
odgovarajui pomoni mehanizmi koji se mogu koristiti se odnose na upravljanje
transakcijama, kontrolu konkurentnosti, te back-upa i oporavka (recovery) u sluaju pada
sistema i slino. Drugi DBMS elementi, koji ovdje nisu pomenuti, ukljuuju alate za
uitavanje jako velikih fajlova u bazu podataka, te za monitoring performansi DBMS-a
na osnovu kojeg se vri podeavanje (tuning) rada sistema.

43

Slika 2.6: Komponente DBMS-a koritene u procesiranju korisnikih upita

Da bi pozvali rezultate upita, podaci koji su fiziki locirani u memorijskom ureaju


moraju (na osnovu izjave kreirane jezikom za upite) biti preslikani u objekte visokog
nivoa. Ova preslikavanja (mapiranja) se izvravaju koritenjem kataloga sistema (system
catalog), koji se jo naziva i rijenik podataka (data dictionary), u kojem su pohranjene
informacije o modelu podataka (kao to su interna shema, konceptualna shema i eksterni
pogledi opisani saglasno ANSI/SPARC arhitekturi).

2.1.3 Upravljanje transakcijama


Transakcija je atomina (nedjeljiva, nerastavljiva) jedinica interakcije izmeu korisnika i
baze podataka. Primarni tipovi transakcije su:
insertovanje (umetanje) podataka u bazu podataka,
modifikacija podataka u bazi podataka,
brisanje podataka u bazi podataka i
pozivanje podataka iz baze podataka.
Razliiti tipovi transakcija su zavisni od dvije primitivne operacije: uitavanja (read)
stavke iz skladita (obino diska) u glavnu memoriju i upisivanja (write) stavke iz glavne
memorije u skladie. Pomou upravljanja transakcijama se rijeavaju (adresiraju) dva
kljuna pitanja: podrka za konkurentnost i kontrola oporavka baze podataka (recovery).
Tabela 2.1: Izgubljeni update za neatomine konkurentske transakcije T1 i T2,
sa varijabilnim vrijednostima X i Y i bilansom baknovnog rauna B

44

Konkurentni pristup nas konfrontira sa slijedeim problemom: ukoliko se nad istom


stavkom (podacima) izvrava u isto vrijeme vie od jedne konkurentske transakcije,
rezultat moe biti gubitak integriteta baze podataka. Na primjer, predpostavimo da
bankovni bilans nekog korisnika iznosi $1000. Neka se istovremeno izvravaju dvije
transakcije: T1 koja dodaje $300 na raun korisnika i T2 koja skida sa istog rauna $400.
U tabeli su prikazani pojedine sekvence primjenjenih operacija za svaku transakciju.
Transakcija T1 poinje itanjem stanja rauna (B) iz baze podataka pridruujui ga
programskoj varijabli X i poveavajui X na $1300. Istovremeno, transakcija T2 zapoinje
itanjem istog stanja rauna ($1000) pridruujui ga varijabli Y i smanjuje Y na $600.
Transakcija T1 se zakljuuje upisivanjem rezultantne vrijednosti varijable X u bazu
podataka (kao novo stanje rauna od $1300), a transakcija T2 upisuje vrijednost varijable
Y u bazu podataka (kao novo stanje rauna od $600). Konana promjena u bazi podataka
(promjena stanja rauna sa $1000 na $600) govori kao da transakcija T1 nije ni postojala.
Ovakav sluaj se naziva izgubljenom promjenom (lost update). Kontrolom konkurentnih
operacija (interleaving) se u ovom smislu mogu popraviti performanse baze podataka i
izbjei problemi kao to su izgubljene promjene.
Upravljanje oporavkom (recovery management) se odnosi na pozivanje validnog stanja
baze podataka nakon pada sistema. Na primjer, pretpostavimo da vlasnik bankovnog
rauna eli promjeniti stanje na svom raunu umetanjem eka u bankovni automat
(ATM). Nakon to je automat primio ek, sistem ga loguje (registruje) kao prihvaen i u
tom trenutku se desi da sistem padne iz nepoznatih razloga. Dali je baza podataka
promjenila novo stanje rauna ili ne? U ovakvim situacijama DBMS mora osigurati da se
cijela transakcija provede do kraja ili, ukoliko ovo ne uspije, da se moe oporaviti stanje
baze podataka, koje je bilo prije pokretanja transakcije.
Sa ciljem da bi se izbjegao sluaj izgubljenje promjene i da bi se omoguio oporavak
baze podataka, upravljanje transakcijama treba osigurati:
da sastavne operacije u jednoj transakciji moraju, ili sve uticati na bazu podataka,
ili da nijedna ne pravi promjenu u bazi podataka, to se naziva atominost
transakcije i
da svaka transakcija ima uticaj na bazu podataka neovisno od sastavnih operacija
drugih konkurentnih transakcija, to se naziva neovisnost transakcije.
Ovaj cilj se postie pomou dvije DBMS operacije: izvravanjem (commit) i
odmotavanjem (rollback) transakcija.
Izvravanje transakcije (commit): signalizira permanentnu promjenu u bazi podataka kada
su sve sastavne operacije uspjeno kompletirane.
Odmotavanje transakcije (rollback): oporavlja stanje baze podataka kakvo je bilo uoi
same transakcije tokom koje se pojavio neki problem.

45

2.2 Relacione baze podataka


Postoje dva glavna modela cjelokupne strukture sistema baze podataka. Najire
upotrebljavan model, koji je prisutan u velikoj veini dananjih sistema baza podataka je
relacioni model. Drugi, jako vaan model, je objektno orijentisan model, uglavnom
koriten u posebnim oblastima primjene, kao to je GIS.
Alternativne arhitekture baza podataka: Osim relacionog i objektno orijentisanog modela,
postoje jo tri drugaija modela koja se manje koriste u kontekstu arhitekture baze podataka.
Mnogo prije, sistemi baza podataka su bili bazirani na hijerarhijskom modelu. Hijerarhije su
efikasne strukture pohranjivanja, ali nisu dovoljno izraajne za modeliranje veine svakodnevnih
pojava. Na primjer, biblioteka u kojoj knjige mogu imati viestruke autore i autori mogu imati
vie publikovanih dijela (relacije vie na vie), se ne moe reprezentovati u hijerarhijskoj bazi
podataka. Mreni model prevazilazi restrikcije hijerarhijskog modela, podravajui ovakve vie
na vie relacije. Meutim, fleksibilna struktura mrenog modela je previe izraajna, vodei
visoko kompleksnim sistemima baza podataka, posebno u poreenju sa relacionim modelom.
Obje arhitekture, i hijerarhijski i mreni model, se danas veoma rijetko koriste u GIS-u ili
openito u sistemima baza podataka. Trei model je deduktivni model baze podataka. Relacioni
model moe biti posmatran kroz mogunost izraavanja skupa injenica, kao to je na primjer
relacija u kinu Dubrovnik se prikazuje film Amadeus. U ovom kontekstu, daduktivne baze
podataka dozvoljavaju pohranjivanje pravila, kao na primjer u kinu Dubrovnik i kinu Radnik se
uvijek prikazuju isti filmovi. Deduktivne baze podataka imaju sposobnost da prave zakljuke na
osnovu pohranjenih injenica i pravila. Na primjer, injenica i pravilo navedeni u predhodnom
primjeru bi omoguili deduktivnoj bazi podataka da zakljui da se u kinu Radnik prikazuje film
Amadeus. Na ovaj nain, pohranjivanjem opih pravila se moe omoguiti skladitenje jako
puno podataka. Deduktivne baze podataka su veoma aktivno polje istraivanja, iako jo nisu
iroko zastupljene u praksi.

2.2.1 Relacioni model


Na primjeru restorana brze hrane smo vidjeli da baza podataka, ne samo da uva
primarne fajlove podataka, nego uva i konekcije izmeu stavki podataka u fajlovima. U
tradicionalnom fajl procesirajuem pristupu (file system), ove konekcije bi se odravale
putem modifikacije softverskih programa, ali je dokazano da je efikasnije uvati
konekcije unutar baze podataka. Ove konekcije su srce relacionog modela. Relacije
izmeu stavki podataka obezbjeuju veinu konteksta za podatke.
Struktura relacione baze podataka je veoma jednostavna (to je ono to je ini tako
monom). Relaciona baza podataka je kolekcija tabularnih relacija, koje se esto
jednostavno nazivaju tabele. U tabeli 2.2 je prikazan dio relacije nazvane FILM (iz baze
podataka CINEMA) koja sadri podatke o popularnim filmovima, njihove nazive,
reditelje, zemlju prijekla, godinu snimanja, i trajanje u minutama. Relacija povezuje
FILM sa skupom atributa: u tabeli su nazivi atributa TITLE, DIRECTOR, CNTRY,
YEAR i LNGTH doznaeni kolonama tabele FILM. Podaci u relaciji su struktuirani kao
skup redova. Red ili n-torka (tuple), se sastoji od liste vrijednosti, i to po jedne za svaki
atribut. Svaka elija sadri jednu atributnu pojavu, odnosno njenu vrijednost. Za redove
sa relacijama se ne podrazumjeva neki odreen redoslijed.
Tabela 2.2: Dio relacije (tabele) FILM

46

Potrebno je praviti razliku izmeu relacione sheme, koja ne ukljuuje podatke (nego daje
strukturu relacija), i relacije, koja ukljuuje podatke. Stavke podataka u relaciji su uzete
iz domena (kao tipovi podataka prilikom programiranja). U osnovnim sistemima baza
podataka raspoloive domene esto imaju (memorijski) ograniavajuu ulogu,
komprimujui na ovaj nain karakterne stringove (character string), cjelobrojne
(integer), decimalne (float), datumske (date) i druge vrijednosti. Na primjer, atributu
DIRECTOR se moe pridruiti karakerni string duine do 20 znakova.
Slijedee definicije precizno opisuju pojmove vezane za relacioni model:
Relaciona shema opisuje skup naziva atributa i preslikavanje svakog naziva
atributa u odgovarajuu domenu.
Relacija je konaan skup redova (zapisa) povezanih sa relacionom shemom u
relacionoj bazi podataka tako da:

svaku zapis (tuple) ini oznaenu listu koja sadri onoliko stavki
podataka koliko ima atributnih naziva u relacionoj shemi,

svaka stavka podataka ima domenu sa kojom je naznaen njen tip


atributa.
Shema baze podataka je skup relacionih shema, a relaciona baza podataka je
skup relacija.
Softver baze podataka koji upravlja modelom relacione baze podataka se naziva
sistemom za upravljanje relacionom bazom podataka (RDBMS).
Relacije imaju slijedee osobine:
redoslijed zapisa u relaciji nije bitan,
svi zapisi u relaciji se meusobno razlikuju,
kolone su ureene (poredane) tako da stavke podataka (iz kolone)
odgovaraju atributu u relacionoj shemi sa kojim su oznaeni.
Veina relacionih sistema takoe zahtjeva da su i same stavke podataka atomine,
to jest da se ne mogu dekomponovati kao liste daljih stavki. Zbog toga, jedna
elija ne moe sadravati skup, listu ili niz (matricu). Za ovakve relacije, koje
sadre samo atomine atribute, kae se da su u prvoj normalnoj formi (1NF). U
primjeru relacije FILM, prva normalna forma znai da za filmove nije doputeno
da imaju viestruke reditelje ili alternativne naslove. Stepen tabele jeste broj
njenih kolona. Kardinalnost tabele je broj njenih zapisa (tuples). Kako zapisi
dolaze i mjenjaju se, relacija se mjenja, ali je relaciona shema relativno stabilna.
Relaciona shema je obino deklarisana kada se baza podataka uspostavlja i
uglavnom ostaje nepromjenjena kroz ivotni vijek sistema, iako postoje operacije
koje dozvoljavaju dodavanje, oduzimanje i modifikaciju pojedinih atributa.

47

U dosadanjem izlaganju je opisan onaj dio teorije relacionih baza podataka koji se bavi
relacionim (tabelarnim) struktuiranjem podataka. Drugi aspekti relacionog modela su
operacije koje se mogu primjeniti nad relacijama (manipulisanje bazom podataka) i
integritetska ogranienja koja relacije moraju zadovoljiti. Aspekti manipulacije e se
razmotriti u narednom izlaganju nakon to se opie radni primjer.
Primjer relacione baze podataka: CINEMA
Kao primjer e se koristiti hipotetika relaciona baza podataka CINEMA. Namjera
uspostave ovakve baze jeste uvanje svih relevantnih podataka o kinima u jednoj
relacionoj bazi podataka. U njoj se uvaju informacije o filmovima koji se prikazuju u
raznim kinima u odreeno vrijeme. Ova baza podataka nije historijska, jer sadri samo
podatke o filmovima koji se trenutno prikazuju i ne uva zapise o proteklim kino
predstavama niti o projekcijama buduih prikazivanja.
Shema baze podataka CINEMA je slijedea:

Svaka relaciona shema je data nazivom relacije sa listom atributa koja slijedi. Na ovaj
nain, svako kino u bazi podataka ima identifikator (CIN ID), naziv (NAME), ime
direktora (MANAGER), broj telefona (TELNO), grad (TOWN) i geoprostornu mrenu
referensu (GRID_REF). Kina imaju sale (SCREEN), koje su date brojevima (SCREEN
NO) i za koje je naznaen kapacitet posjetilaca (CAPACITY). Filmovi imaju naslove
(TITLE), reisere (DIRECTOR), zemlje iz koje potiu (CNTRY), godinu snimanja
(YEAR), duinu trajanja u minutama (LNGTH). Film se moe prikazivati (SHOW) u
jednoj od kino sala. Tom prilikom je raspoloiv odreen broj standardnih (STANDARD)
i luksuznih (LUXURY) ulaznica (mjesta). Svaka filmska zvijezda (STAR) ima svoje ime
(NAME), godinu roenja (BIRTH_YEAR), spol (GENDER), nacionalnost (NTY) i uloge
u pojedinim filmovima (ROLE). Zbog pojednostavljenja, odgovarajue domene su
izostavljene. Moe se primjetiti da isti atributi mogu imati razliita imena u razliitim
relacijama (na primjer, CIN_ID i CINEMA_ID).
Kandidatni klju (candidate key) je atribut ili minimalan skup atributa koji slui za
jedinstvenu identifikaciju svakog zapisa u tabeli (relaciji). Broj sale nemoe biti
kandidatni klju, jer svako kino ima barem jednu salu (sa brojem sale 1). Kombinacija
dva atributa CINEMA_ID i SCREEN_NO formira kandidatni klju za relaciju SCREEN.
Za jednu relaciju moe biti nekoliko ovakvih kandidatnih kljueva. Jedan od njih se bira
kao primarni klju (primary key). Postoji konvencija da je skup atributa koji konstituiu
primarni klju relacije naznaen podvuenom linijom.

2.2.2 Operacije nad relacijama


Relacija nije nita drugo do struktuirana tabela stavki podataka. Svaka kolona (polje)
relacije nosi ime atributa, a svi podaci iz nje koriste istu domenu. Osnovne operacije

48

podrane relacionom bazom podataka su stoga jednostavne. Postoji pet fundamentalnih


relacionih operacija: unija, razlika, proizvod, projekcija i restrikcija (union, difference,
product, project, restrict). Prve tri su tradicionalni skupovno bazirani operatori. Postoje i
relacioni operatori presjeka, dijeljenja i sastavljanja (intersection, divide, join), koji se
nazivaju derivirani relacioni operatori, i mogu se izraziti pomou raznih kombinacija pet
fundamentalnih operatora. Operator presjeka je takoe skupovno bazirani operator.
Struktura ovih operacija, kao i nain na koji se one mogu kombinovati se naziva
relacionom algebrom.
Relacioni model je zatvoren respektujui sve pomenute relacione operatore, jer svaki od
njih koristi jednu ili vie relacija kao ulaz i vraa jednu relaciju kao rezultat. Skupovne
operacije unije, presjeka, proizvoda (union, intersection, product) i razlike (difference) se
primjenjuju nad relacijama kao skupovima zapisa. Tako, ako imamo relacije koje sadre
enske i muke filmske zvijezde, onda njihova unija sadri oba spola, a njihov presjek je
prazan skup. Za sve skupovne operacije osim proizvoda, relacije moraju biti
kompatibilne, to jest, one moraju imati iste atribute; inae nova relacija nee biti dobro
formirana.
Operacija projekcije (project) je unarna, jer se moe primjeniti samo na jednu relaciju.
Ona vraa novu relaciju koja ima podskup atributa iz originalne (izvorne) relacije. Nova
relacija je na ovaj nain modificirana tako da se svi duplicirani zapisi sjedinjuju u jedan.
Operator projeciranja ima slijedeu sintaksu:
lista atributa(relacija)
Na primjer, NAME,TOWN(CINEMA) vraa relaciju prikazanu u tabeli 2.3.a, a NAME (CINEMA) vraa
relaciju prikazanu u tabeli 2.3b. Moe se primjetiti da su u drugom sluaju dva identina
zapisa, koja su sadravala vrijednost Regal, sjedinjena u jedan zapis.
Tabela 2.3: Rezultati relacionih projekcija i restrikcija

(b)
(a)

(c)

(d)

49

Operator restrikcije je takoe unaran. Ovaj operator se primjenjuje nad zapisima tabele i
vraa novu relaciju koja sadri podskup zapisa iz originalne relacije (tabele). Zahtjevani
zapisi se specificiraju primjenom zadatog uslova. Operator restrikcije se esto deklarie i
kao operator selekcije i stoga se oznaava grkim simbolom (sigma). On ima slijedeu
sintaksu:
uslov(relacija)
Na primjer, filmovi realizovani nakon 2001. godine se mogu pozvati iz baze podataka
koritenjem izraza YEAR>2001(FILM). Ovaj izraz vraa relaciju prikazanu u tabeli 2.3c.
Operacije se mogu i kombinovati, na primjer izraz:
DIRECTOR(YEAR>2001(FILM))
vraa reisere filmova realizovanih nakon 2001. godine, kao to je prikazano u tabeli
2.3d.
Sa operacijom sastavljanja (join), relaciona baza podataka poinje da zasluuje naziv
relaciona. Operator sastavljanja je binarni operator koji se primjenjuje nad dvije
relacije, vraajui jednu relaciju kao rezultat. Ovaj operator omoguava da se izvri
povezivanje relacija. Postoji nekoliko razliitih vrsta sastavljanja relacija, ali e se ovdje
opisati samo naturalno sastavljanje dviju relacija (natural join), koje se moe definisati
kao relacija formirana od svih povezanih zapisa koji zadovoljavaju specificirani
zajedniki atribut ili atribute. Operator sastavljanja (join) || ima slijedeu sintaksu:
||atr1=atr2 (rel1, rel2),
koja indicira da su relacije rel1 i rel2 sastavljene povezivanjem atributa atr1 iz rel1 i atr2 iz
rel2. Na primjer, da bi povezali detalje o filmovima sa salama u kojima se filmovi
prikazuju, relacije SHOW i FILM su sastavljene na osnovu atributa sa nazivom filma koji
figurie u svakoj od ovih relacija. Ovaj izraz se moe napisati kao:
||FILM_NAME=TITLE (SHOW, FILM)
Rezultirajua relacija, prikazana u tabeli 2.4a, povezuje zapise iz tabele SHOW sa zapisima
iz tabele FILM, na osnovu istog naziva filma iz jedne i druge tabele. Moe se primjetiti da
se sastavljanjem nisu ponovile duplikacije atributa. Ukoliko se samo zahtjevaju reiseri
filmova koji se prikazuju u kinu sa identifikatorom 1, onda se moe primjeniti operator
restrikcije nad ovom relacijom za zapise ije vrijednosti atributa CINEMA_ID imaju
vrijednost 1, a onda primjeniti projeciranje nad relacijom prikazanom u tabeli 2.4a kako
bi se dobili samo atributi CINEMA_ID, SCREEN_NO, TITLE i DIRECTOR. Rezultat ovako
primjenjenih operacija je prikazan u tabeli 2.4b i moe se reprezentovati simbolino
pomou izraza:
CINEMA_ID, ...(CINEMA_ID=1(||FILM_NAME=TITLE (SHOW, FILM)))
Posljedni opisani primjer moe posluiti za demonstraciju jedne vane osobine operacija
nad relacijama, to jest, da redoslijed kojim se operacije primjenjuju nad relacijama imaju
direktan uticaj na performanse. Operacija sastavljanja (join) je najvie vremenski
zahtjevna od svih relacionih operacija, jer ona uporeuje svaki zapis jedne relacije sa
svakim zapisom druge relacije. Da bi ekstraktovali podatke za tabelu 2.4b, primjenjene su
operacije sastavljanja, projeciranja i restrikcije.

50

Tabela 2.4: Rezultati relacionih projekcija i restrikcija

(a)

(b)
U stvari, bilo bi efikasnije da je prvo primjenjena restrikcija nad tabelom SHOW, a onda
sastavljanje ovakve dosta manje tabele sa tabelom FILM, i da je potom primjenjeno
projeciranje. Rezultat bi bio isti, ali bi se pozivanje izvravalo bolje (bre), jer bi se
sastavljanje izvravalo nad manjim tabelama. Openito, promjena redoslijeda elemenata
u izrazima relacione algebre esto ne vodi ekvivalentnim izrazima. Na primjer, izraz
relacione algebre DIRECTOR(YEAR>2001(FILM)) nije ekvivalentan izrazu YEAR>2001(DIRECTOR (FILM)), jer
YEAR nije validan atribut relacije DIRECTOR(FILM). Za baze podataka sa visokim
performansama, optimizacija upita predstavlja vano polje studiranja, koje se bavi
iznalaenjem to je mogue efikasnijeg procesiranja upita. Vana komponenta
optimizacije upita predstavlja primjena transformacija (kao to je optimizacija
redoslijeda) nad upitima, kako bi se dolo do ekvivalentnih upita koji se efikasnije
procesiraju.

2.2.3 Struktuirani jezik za upite - SQL


Struktuirani jezik za upite (SQL) omoguava korisnicima relacionih baza podataka da
definiu shemu baze podataka (data definition), a onda da insertuju, modificiraju i
pozivaju podatke iz baze podataka (data manipulation). Ovaj jezik se moe koristiti
samostalno, u smislu direktne interakcije sa bazom podataka, ili kao (ugraen) dio
openamjenskog programskog jezika. SQL se izvorno razvio iz relacionog jezika za baze
podataka SEQUEL (Structured English QUEry Language). U narednom izlaganju e se
dati kratak uvod u SQL.
Definicija podataka (Data Definition) pomou SQL-a
Jezik za definiciju podataka (Data Definition Language DDL), kao komponenta SQL-a,
omoguava kreiranje, mjenjanje i brisanje relacionih shema. Uobiajeno je da se
relaciona shema vie ne mjenja ili se veoma rijetko mjenja, nakon to baza podataka
jednom postane operativna. Relaciona shema definie skup atributa koji figuriu u
relacijama i koji su vezani za odgovarajue definisane domene podataka. SQL
omoguava definisanje domene za svaki atribut, posredstvom izraza:

51

ime-domene tip-podataka
[openita definicija]
[definiciona lista ogranienja domene]

CREATE DOMAIN

u kojem sadraj u srednjoj zagradi indicira opcionalni dio samog izraza.


Korisnik moe specificirati ime domene i povezanost tog imena sa predefinisanim tipom
podataka poput stringa karaktera, cjelobrojnih vrijednosti, decimalnih vrijednosti, datuma
ili vremena. Openita (default) definicija omoguava korisniku da specificira openitu
(default) vrijednost zapisa. Obino je ovo NULL vrijednost. Definiciona lista ogranienja
domene predstavlja integritetna ogranienja koja suavaju domenu na skup specificiranih
vrijednosti. Primjer definicije domene za atribut GENDER bi izgledao:
CREATE DOMAIN GENDER CHARACTER(1)
CHECK VALUE IN {'M', 'F'};

Relaciona shema se kreira kao skup atributa, gdje je svaki atribut povezan sa domenom,
te sa dodatnim osobinama vezanim za kljueve i integritetna ogranienja.
Na primjer, relaciona shema CAST be se mogla kreirati komandom:
CREATE TABLE CAST
(FILM_STAR STAR,
FILM_TITLE FILM_TITLE,
ROLE ROLE,
PRIMARY KEY (FILM_STAR, FILM_TITLE),
FOREIGN KEY (FILM_STAR)
REFERENCES STAR (NAME),
FOREIGN KEY (FILM_TITLE)
REFERENCES FILM (TITLE),
CHECK (FILM_STAR IS NOT_ NULL),
CHECK (FILM_TITLE IS NOT_NULL));

Ova izjava poinje imenovanjem relacione sheme (nazvane tabelom u SQL-u) sa CAST.
Onda se definiu atributi zadavanjem njihovih imena i domena (podrazumjeva se da su
domene STAR, FILM_TITLE i ROLE ve kreirane). Primarni klju je slijedei i definisan je
kao kombinacija atributa FILM_STAR, FILM_TITLE. Strani klju (foreign key) je primarni
klju druge relacije, koji je sadran u datoj relaciji. U tabeli CAST, postoje dva strana
kljua: FILM_STAR i FILM_TITLE. Na primjer, FILM_TITLE se pojavljuje kao primarni klju
(TITLE) u relaciji FILM. Baza podataka moe odrati referentni integritet osiguravajui da,
ako se neki film izbrie ili aurira iz relacije FILM, onda se i svaka referensa vezana za
njega takoe brie (odnosno aurira) u tabeli CAST. Konano, ukoliko atributi FILM_STAR i
FILM_TITLE imaju NULL vrijednosti, dodaju se dvije provjere (za ouvanje integriteta) koje
onemoguavaju insertovanje zapisa pri unosu podataka za atribut ROLE.
Manipulacija podacima (Data Manipulation) pomou SQL-a
Nakon definisanja relacionih shema, slijedei korak je insertovanje podataka u relacije.
Za manipulaciju podacima se koriste SQL komande koje omoguavaju insertovanje
jednog ili vie zapisa, auriranje zapisa u tabelama i brisanje zapisa, o emu se nee
posebno detaljisati. Dalje, forme za pozivanje podataka predstavljaju veoma sloen

52

aspekt SQL-a. Dio ovih formi e se ovdje predstaviti u kratkim crtama. Opa forma za
komandu pozivanja podataka je:
lista-stavki-za-selekciju
lista-referentnih-tabela
[WHERE uslov]
[GROUP BY lista-atributa]
[HAVING uslov]

SELECT

FROM

Jednostavan primjer pozivanja podataka, koji je ve razmatran prilikom uvoenja pojma


relacione algebre, bio bi da se nau imena svih reisera filmova koji su snimljeni nakon
2001. godine. Odgovarajui SQL izraz glasi:
SELECT DIRECTOR
FROM FILM
WHERE YEAR >2001;

reenica slui kao operator projeciranja na specificirani atribut DIRECTOR. FROM


reenica nam govori iz koje tabele dolaze podaci (u ovom sluaju iz tabele FILM). WHERE
reenica predstavlja restriktivni uslov.
Navodei vie od jedne relacije (ili ak iste relacije pozvane dva puta sa razliitim
nazivima) u FROM reenici, rezultirae sastavljanjem (join). Na primjer, da bi prikazali
detalje o filmovima i mjestu njihovog prikazivanja, moe se koristiti slijedea SQL
komanda:
SELECT

SELECT CINEMA_ID, SCREEN_NO, FILM_NAME, DIRECTOR


FROM SHOW, FILM
WHERE SHOW.FILM_NAME=FILM.TITLE;

U ovom sluaju , WHERE reenica predstavlja uslov sastavljanja (join condition),


specificirajui da su zapisi iz dvije tabele povezani samo kada su vrijednosti atributa
FILM_NAME u SHOW (indicirano sa SHOW.FILM_NAME) i TITLE u FILM (FILM.TITLE) isti.
Sloeniji sluaj, koji koristi sve reenice izraza SELECT, je slijedei izraz, koji iz baze
podataka poziva prosjene duine filmova sa glumcima koji imaju najmanje tri filma
snimljena u SAD-u.
SELECT FILM_STAR, AVG(LNGTH)
FROM FILM, CAST
WHERE CNTRY = 'USA' AND CAST.FILM_NAME=FILM.TITLE
GROUP BY FILM_STAR
HAVING COUNT(*)>2;

i COUNT su ugraene SQL funkcije. Izuzimajui AVG(LNGTH), prve tri linije koda
pozivaju uloge iz amerikih filmova, koristei sastavljanje (join) relacija FILM i CAST.
GROUP BY reenica slui za logiku konstrukciju tabele gdje su zapisi u grupama, po
jedan za svaku filmsku zvijezdu. Ova tabela (tabela 2.5) nije regularna relacija prve
normalne forme (1NF), jer vrijednosti u pojedinim elijama nisu atomine. Meutim, nas
u primjeru trenutno interesuje prosjena duina filmova za svaku filmsku zvijezdu. Sada
AVG

53

nastupa HAVING reenica koja primjenjuje uslov nad grupama iz grupisane tabele. Ona
selektuje samo one grupe iji je broj zapisa najmanje tri. U zavrnoj fazi pozivanja, nakon
projeciranja sastavljene tabele bez neeljenih atributa, podaci se pojavljuju u formi
prikazane tabele 2.6.
Tabela 2.5: Evaluacija SQL upita bazi podataka CINEMA: srednja faza

Tabela 2.6: Evaluacija SQL upita bazi podataka CINEMA: zavrna faza (konani rezultat)

2.2.4 Relacione baze podataka koje se koriste za prostorne podatke


Relacione baze podataka nisu pogodne za upravljanje prostornim podacima bez dodatne
modifikacije. Iako relacione baze podataka imaju sve karakteristike koje se zahtjevaju za
ope korporativno (na nivou organizacije) upravljanje podacima, postoje potekoe kada
se ovakva tehnologija primjenjuje nad prostornim podacima. Glavna sporna pitanja su:
Struktura prostornih podataka: Prostorni podaci imaju strukturu koja po svojoj
prirodi ne odgovara tabelarnoj strukturi. Vektorske povrine, kao tipian primjer,
su struktuirane sa svojim granicama sastavljenim od niza linijskih segmenata, od
kojih je svaki opisan parom taaka. Ovako struktuirani nizovi (zbog zajednikih
taaka i linijskih segmenata) naruavaju prvu normalnu formu.
Performanse: Openito, prilikom svoje rekonstrukcije prostorni objekti zahtjevaju
sastavljanje (join) vie tabela. Kao to je ve pomenuto, sastavljanje znaajno
utie na performanse. Obino se prikazi mnogih ovakvih prostornih objekata

54

zahtjevaju brzo, na primjer prilikom prezentacije karte na ekranu. Posljedica


ovoga jeste da je sa standardnom tehnologijom relacionih baza podataka veoma
teko postii dobre performanse.
Indeksi: Pitanje indeksiranja e se kasnije detaljnije razmatrati. Indeksi
poveavaju brzinu pristupa podacima. Relacione baze podataka operiu sa
indeksima koji su dobri za standardne tabelarne podatke (na primjer, fajl sa
stavkama zalihe). Prostorni podaci zahtjevaju specijalizirane indekse, koji nisu
uvijek podrani standardnim RDBMS-ovima, iako mnogi danas nude neke od
takvih indeksa.
Kljuno pitanje sa kojim se suoavamo prilikom koritenja prostornih podataka u
relacionim bazama podataka jesu veliki zahtjevi prema njima koji proizilaze iz njihovih
sloenih struktura. Ovo za sobom povlai potrebu za specifinim operatorima i
odgovarajuim tehnikama indeksiranja. U ovu svrhu su razvijene ekstenzije RDBMS-a
koje specijalizovane korisnike snabdjevaju kapacitetima za dodavanje posebnih funkcija,
specifinih za njihove domene koritenja. Ovakvi kapaciteti ukljuuju:
korisniki definisane tipove podataka (user-defined data types),
korisniki definisane operacije nad podacima
korisniki definisane indekse i metode pristupa i
aktivne funkcije baze podataka (na primjer, okidai - triggers).
Veinu ovih osobenosti djele i objektno-orijentisane baze podataka (to e se diskutovati
kasnije). Zajednika karakteristika ovako proirenih RDBMS-ova je da je ovaj dio
njihove funkcionalnosti zasnovan na relacionom modelu sa to manje moguih promjena.

2.3 Razvoj baze podataka


Sistem za upravljanje bazom podataka (DBMS) je openamjenski informacioni sistem
koji treba biti oblikovan (customized) da zadovolji zahtjeve pojedinih aplikacija. Da bi se
to provelo, potrebno je imati jasnu sliku o nainu struktuiranja informacija u sistemu, kao
i o algoritmima koji e se primjenjivati nad podacima. Pri tome nas ne interesuju aktuelni
podaci u bazi podataka, nego vrste podataka koje se mogu pojaviti. Na primjer, za
kartografsku aplikaciju nas ne interesuju puno pojedini zapisi, kao to su London,
New York, Francuska, Ben Nevis, nego nas vie interesuju pojedini tipovi
podataka, kao to su grad, zemlja ili planina. U ovom smislu, mi apstrahujemo sadraj
informacionog sistema pomou strukture informacija.
Razvoj GIS-a, poput svakog drugog informacionog sistema, bi trebao slijediti proces
sistemskog razvoja koji je ve opisan u uvodnom dijelu (1.3.4.). U narednom izlaganju e
se dijelomino opisati analiza i projektovanje sistema u kontekstu implementacije
relacione baze podataka. Glavni zadatak GIS analitiara je izrada konceptualnog modela
podataka za bazu podataka. GIS projektant e onda iz konceptualnog modela podataka
realizovati DBMS u formi logikog modela podataka. Na primjer, ako se radi o
relacionom DBMS-u, jedna faza e biti kreiranje relacionih shema. Na ovaj nain se
logiki model moe direktno preslikati na implementaciju sistema (fiziki model), iako
sam po sebi ne zavisi o detaljima fizike implementacije.

55

2.3.1 Konceptualno modeliranje podataka


Konceptualni model podataka je model budueg sistema baze podataka, koji je nezavisan
od detalja implementacije. Konceptualni model mora izraziti strukturu informacija u
sistemu, odnosno tipove podataka i njihove meusobne relacije. Ovakve strukturne
osobine se esto nazivaju statinim. Sistem takoe ima i dinamike komponente, vezane
za njegovo ponaanje tokom rada. Na primjer, dozvoljene transakcije u sistemu oblikuju
njegove dinamike osobine.
Korektnost (integritet) informacija u sistemu je esto presudan faktor njegove uspjene
primjene. Korektnost se odrava (to je mogue vie) pomou specificiranih ogranienja
vezanih za ouvanje integriteta koji nameu uslove statinim i dinaminim strukturama
sistema. Model podataka treba omoguiti specifikaciju ovakvih ogranienja.
Dobar konceptualni model podataka moe sluiti kao efikasno sredstvo komunikacije
izmeu analitiara, projektanta i potencijalnog korisnika sistema. On pomae
projektovanje i implementaciju sistema, ali isto tako, ako je sistem ve implementiran,
moe dati osnovne referense korisnicima koji trebaju razumjevanje strukture podataka
unutar sistema (slika 2.7). Openito, konceptualni model podataka:
1. obezbjeuje okvir za izraavanje strukture sistema na nain koji je jasan i
jednostavan za komunikaciju sa svim uesnicima prilikom implementacije,
2. sadri dovoljno konstrukta (elemenata) za modeliranje, tako da se kompleksnost
nekog sistema moe to kompletnije opisati i
3. ima sposobnost translacije u implementaciono zavisne modele (to jest, logiki i
fiziki model), za projektovanje i realizaciju sistema.

Slika 2.7: Konceptualni model podataka kao medijator izmeu korisnika, projektanata i maina.

E-R model (Entity-relationship model)


Pretpostavimo da projektujemo bazu podataka koja sadri prostorno referensirane
informacije o specifinom podruju. Ovakav hipotetiki sistem bi trebao sadravati
podatke o administrativnim jedinicama (gradovi, opine, mjesne zajednice), transportnoj
mrei (putevi, pruge), vodama (rijeke, jezera) i prostorno referensiranim atributima
(povrine, visine pojava, populaciju za gradove, saobraajno optereenje po dionicama
puteva).

56

Projektovanje sistema bismo zapoeli prikupljanjem zahtjeva o sistemu koji bi se izrazili


u formi skupa entiteta i njihovih osobina. Ovakav postupak, koji predstavlja iroko
rasprostranjen pristup formiranju konceptualnog modela informacionog sistema, se
naziva entity-relationship model (E-R model).
Tip entiteta (entity type) je apstrakcija koja predstavlja kolekciju slinih objekata o
kojima sistem uva informacije. U naem primjeru, tipovi entiteta mogu biti grad,
opina, put, jezero ili rijeka. Potrebno je napraviti distinkciju izmeu tipa entiteta i
instance (pojave) entitetskog tipa. Na primjer, grad predstavlja tip entiteta, a sami nazivi
gradova, kao to su ,Newcastle under Lyme' ili 'Hanley' predstavljaju instance. Prema
konvenciji za konceptualno modeliranje, tipovi su naznaeni podebljanim slovima, a
vrijednosti (instance) su naznaene jednostrukim navodnicima. Konstituenti relacione
baze podataka (relacije i imena atributa) su naznaeni velikim slovima. Kada navodimo
naziv grada 'Newcastle-under-Lyme', nismo potpuno precizni, jer 'Newcastle-underLyme' nije grad nego podatak koji slui za imenovanje grada. Ovaj podatak je povezan sa
posebnom instancom entiteta grad, kao jedan od njegovih naziva. Dalje, tipovi entiteta
imaju osobine, koje se nazivaju atributnim tipovima, koji slue za njihovo opisivanje. Na
primjer, tip entiteta grad ima tipove atributa naziv, populacija, centroid (geometrijski
centar grada). Odreena instanca entiteta grad je povezana sa instancama za ove atribute,
kao to je, na primjer, 'Newcastle-under-Lyme' naznaen atributi naziv. Atributni tipovi
koji su priloeni tipovima entiteta se mogu predstaviti dijagramom (slika 2.8.). Tipovi
entiteta su prikazani u pravougaonim okvirima. E-R grafika notacija koja je prikazana je
uobiajena ali nije standardna, jer postoje njene razliite varijante.

Slika 2.8: Tip entiteta sa pripadajuim tipovima atributa

Vane karakteristika entiteta je da bilo koja njena instanca ima jedinstvenu identifikaciju
pomou vrijednosti njenih atributnih tipova. Naziv mjesta, na primjer, nije uvijek
dovoljan za jedinstvenu identifikaciju, jer moe postojati vie identinih naziva. Atributni
tip ili njihova kombinacija koja slui za jedinstvenu identifikaciju entitetskog tipa se
naziva identifikatorom. Po definiciji, svaki tip entiteta mora imati najmanje jedan
identifikator. Kao i kod notacije za relacionu shemu, atributi koji se odnose na
identifikator su esto podvueni. U naem primjeru, tip atributa centroid, koji referensira
poloaj centroida grada, moe biti identifikator grada.
Na ovaj nain, model se sastoji od jednog broja nezavisnih entitetskih tipova, od kojih
svaki sa skupom povezanih atributnih tipova, pri emu jedan ili vie njih slue za
jedinstvenu identifikaciju svake instance. Prava snaga E-R modela lei u nainu
opisivanja veza izmeu tipova entiteta. Grafiki jezik nazvan E-R dijagram, koristi se za
izraavanje karakteristika i svojstava E-R modela.
Na primjer, pretpostavimo da smo definisali dva entitetska tipa:
grad sa atributima centroid, naziv, populacija
put sa atributima id puta, rang, poetak, kraj

57

Pitanje koje moemo postaviti ovako definisanom sistemu je Koji gradovi lee na kojim
putevima? Odgovor na njega se moe dobiti samo ukoliko je formirana konekcija
izmeu gradova i puteva na kojim se nalaze. Ovakva konekcija se naziva povezanost
(relationship), odnosno relacijska veza (relacija). Ovaj termin, iako se koristi, nije
zgodan, jer se moe odnositi i na vezu izmeu entiteta, i na tabelu u relacionoj bazi
podataka. Relacijski tip (tip relacijske veze) povezuje jedan ili vie entitetskih tipova. U
naem primjeru, relacijski tip je lei_na. Instanca relacije je posebna stavka relacijskog
tipa. Preklapanje grada Hinckley sa putem A5, koji ide od Londona do Anglesey-a je
instanca relacije lei_na. Relacija lei_na izmeu gradova, pruga i puteva je prikazana ER dijagramom na slici 2.9. Relacije su prikazane u romboidnom okviru.
Relacija (povezanost) moe imati sopstvene atribute, koji su nezavisni od bilo kojeg
atributa vezanog za entitete. U datom primjeru, relacija lei_na moe imati atribut
duina, koji opisuje duinu puta unutar granica grada. Naredni atribut moe definisati
dali put prolazi kroz centar grada ili ga zaobilazi.
E-R model daje mogunost definisanja ogranienog ranga ogranienja vezanih za
ouvanje integriteta. Relacijski tipovi su razvrstani na vie-na-vie, vie-na-jedan i jedanna-jedan relacije. Relacija lei_na je primjer vie-na-vie relacijske veze, poto svaki
grad moe imati vie od jednog puta koji kroz njega prolazi, a svaki put moe prolaziti
kroz vie gradova. Ogranienje nad relacijama je grafiki prikazano sa M i N na svakoj
od strana relacije.

Slika 2.9: Dva entiteta i relacija vie-na-vie.

Nisu sve relacije tipa vie-na-vie. Na primjer, razmotrimo relaciju je_lociran izmeu
tipova trni centar i grad prikazanu kao E-R dijagram na slici 2.10 (atributi su
izostavljeni). Svi trni centri su locirani u skoro svakom gradu, a jedan grad moe imati
vie trnih centara. Ovakva relacija se naziva vie-na-jedan. Postavljanje simbola N i 1
indicira prirodu i smjer relacije. Poredak ovih simbola je vaan, jer ukoliko bi oni
zamjenili mjesta, dijagram bi imao drugaiji smisao (trni centar se moe nalaziti u vie
gradova, a svaki grad moe imati najvie jedan trni centar).
Trei tip relacije se moe objasniti pomou relacije upravlja izmeu entiteta osoblje i
trni centar. U ovoj relaciji, jedan lan osoblja moe biti upravnik najvie jednog trnog
centra, a trni centar moe imati najvie jednog upravnika. Ovo je relacija tipa jedan-najedan. Njen oblik E-R dijagrama je prikazan na slici 2.10. Smjetanje simbola 1 i sa
jedne, i sa druge strane, indicira prirodu ove relacije.
58

Slika 2.10: Relacije tipa vie-na-jedan i jedan-na-jedan

Dozvoljavajui projektantu da definie tip relacije, alati za izradu E-R modela


obezbjeuju izraavanje uslova kardinalnosti nad instancama entiteta. E-R model takoe
omoguava definiciju jo jedne klase ogranienja vezanih za integritet, odnosno
defininisanje uslova participacije. Tipovi entiteta su povezani relacijama sa drugim ili
istim tipovima entiteta. Posmatrajmo jedan tip entiteta E i jednu relaciju R u kojoj ona
figurie. Postoji vana distinkcija koju treba napraviti i koja se odnosi na nain na koji E
participira u R. Ukoliko svaka instanca entiteta E participira u relaciji R, onda kaemo da
je participacija E u R mandatorna (obavezna). U suprotnom, ukoliko svaka instanca ne
participira u relaciji, onda kaemo da je participacija opcionalna.
Na primjer, participacija entiteta osoblje u relaciji upravlja je opcionalna, jer ne mora
svaki lan osoblja biti i upravnik (moe biti prodavac, ef osiguranja ili neto drugo).
Meutim, participacija entiteta trni centar u relaciji upravlja je mandatorna, jer se
podrazumjeva da svaki trni centar mora imati jednog upravnika. Ovi uslovi su u E-R
dijagramu prikazani duplom linijom za mandatarnu, i jednom linijom za opcionalnu
participaciju (slika 2.10.).
Sve relacije navedene u predhodnim primjerima su bile binarne, jer su one povezivale
dva tipa entiteta. Ponekad se deava da ova dva tipa predstavljaju jedan isti. U ovom
sluaju, relacija povezuje tip entiteta sa samim sobom. Ovakva relacija se naziva
involutornom (unarnom ili upetljanom). Na primjer, informacija da putevi presjecaju
druge puteve moe biti reprezentovana relacijom presjeca izmeu tipa entiteta put i istog
tipa entiteta. Relacija koja povezuje tri entitetska tipa se naziva ternarnom. Na primjer,
ukoliko dionice puta koju koriste razliiti autoprevoznici povezuju razliite stanice, ovo
se moe modelirati ternarnom relacijom koristi koja povezuje entitete autoprevoznik,
dionica i stanica, sa relacijskim atributima dan i termin (slika 2.11).

Slika 2.11: Ternarna relacija

59

Uslovi participacije se primjenjuju kao i kod binarnog sluaja, ali sa dodatnom


sloenou. U ovom primjeru, autoprevoznici mogu koristiti dionice koje povezuju
razliite stanice, stanice mogu biti povezane razliitim dionicama u putnoj mrei
(koritenih od vie autoprevoznika), i dionice mogu prolaziti kroz vie stanica koritenih
od vie autoprevoznika. Ova relacija je tipa vie-na-vie-na-vie.
Zavisan ili slab entitet su entitetski tipovi koji se ne mogu jedinstveno identificirati na
osnovu vrijednosti sopstvenih atributa. Kompletna identifikacija se postie relacijom
identificiranja izmeu zavisnog i slabog entiteta. Dobar primjer ove pojave je entitetski
tip screen (platno) u bazi podataka CINEMA. Atribut screen_no je nedovoljan za
identifikaciju pojedinog platna (sale u kinu), jer nam sala 1 ne govori nita ni o kinu ni
o gradu u kojem se nalazi. Atribut screen_no je parcijalni (djelimini) identifikator za
zavisni entitet. Za kompletnu identifikaciju nam je potreban i cinema_id. Grafika
notacija primjera je data na slici 2.12. Slabi entiteti i relacije identificiranja se oznaavaju
pravougaonicima i rombovima iscrtanim duplom linijom. Parcijalni identifikator je
podvuen isprekidanom linijom. Zavisni entitet uvijek ima mandatornu participaciju u
identifikacijskoj relaciji, u suprotnom neke instance nebi mogle biti identificirane. Iz
istog razloga su relacije od zavisnog prema matinom entitetu uvijek tipa jedan-na-jedan
ili vie-na-jedan.
Jedan primjer E-R modela: E-R model je ve primjenjen za bazu podataka CINEMA.
Pretpostavimo da smo u analitikoj fazi razvoja sistema i da postoji potreba da se podaci
o kinima i prikazanim filmovima sauvaju. Odabir entiteta i atributa za neki model je
stvar prosuivanja i esto postoji vie od jednog prihvatljivog rjeenja. Ponekad je teko
odluiti dali neto okarakterizirati kao atribut ili kao entitet. Prilikom modeliranja baze
podataka CINEMA, moe postojati vie ovakvih solucija. Na primjer, trebamo li grad u
kojem se nalazi neko kino smatrati entitetom ili atributom? Neka upustva koja nam mogu
pomoi ukljuuju:
ukoliko je tip podatka relativno nezavisan i identifibilan (prepoznatljiv), sa svojim
sopstvenim atributima, onda se vjerovatno radi o entitetu, a ukoliko je to samo
osobina neega, onda je to atribut, ili
ukoliko tip podatka ulazi u relacije sa drugim entitetima (ne kao osobina neega),
onda se vjerovatno radi o entitetu.

Slika 2.12: Roditeljski (parentalni) i zavisni (potomci) entiteski tipovi

60

U analiziranom modelu town predstavlja naziv grada i osobinu kina (opisuje lokaciju),
tako da ga moemo smatrati atributom. Ukoliko town posjeduje i sopstvene atribute, kao
to su populacija, onda bi ga vjerovatno smatrali entitetom i konstruisali bi relaciju
izmeu ovog i entiteta cinema. Isto rezonovanje se moe primjeniti i na manager, kojeg
moemo smatrati atributom od cinema, jer se jedino imena upravnika pojavljuju kao tip
podataka, bez deriviranja njihovih daljih osobina. Poetna istraivanja su pokazala da su
neophodni slijedei tipovi entiteta i njihovih atributa:
cinema(cinema_id, name, manager, tel_no, town, grid_ref)
screen(screen_no, capacity)
film(title, director, cntry, year, length)
star(name, birth_year, gender, nty)
Veina atributnih imena su samoopisna, osim to atribut year od entiteta film opisuje
godinu proizvodnje filma, a atribut nty od entiteta star opisuje dravljanstvo filmske
zvijezde. Uoljivo je da je cinema_id po definiciji identifikator entiteta cinema.
Identifikatori ostalih entiteta su manje jasni. U ovom primjeru, film se identificira preko
njegovog naslova, a filmska zvijezda se identificira preko njenog imena (uz pretpostavku
da ne moe biti vie od jednog filma sa istim nazivom ili vie od jedne filmske zvijezde
sa istim imenom u bazi podataka). Sale za projekciju (platna) se ne mogu identificirati
samo preko njihovih brojeva, nego moraju koristiti i identifikator kina za potpunu
identifikaciju.
Svako platno (sala) moe prikazivati samo jedan film, a kina imaju dvije vrste ulaznica
(za standardna i luksuzna mjesta), ija cijena zavisi od filma i sale u kojoj se prikazuje.
Filmske zvijezde mogu igrati pojedine uloge u filmu. Na osnovu ovoga moemo
konstruisati slijedee relacije:
shows izmeu screen i film, sa atributima standard i luxury i
cast izmeu star i film, sa atributom role.
Postoji takoe i skup pravila vezanih za samu filmsku industriju:
1. Kino moe imati jednu ili vie sala (platana) za projekciju.
2. Svaka sala je vezana za samo jedno od kina.
3. Svaka sala moe prikazivati jedan ili nijedan film (baza podataka sadri samo
aktuelne podatke, a ne historijske ili vezane za budue projekcije).
4. Film se moe prikazivati u vie, jednoj ili nijednoj sali.
5. Filmska zvijeza moe igrati u jednom ili vie filmova.
6. U filmu moe igrati vie, jedna ili nijedna filmska zvijezda.
Sve ove informacije se mogu modelirati i predstaviti pomou E-R dijagrama na slici 2.13.
Zavisnost entiteta i identificirajuih relacija izmeu screen i cinema su ve opisana.
Relacija shows izmeu screen i film je ograniena, prema pravilima 3 i 4, na tip vie-najedan sa opcionalnom participacijom instanci iz ovih entiteta (pravilo 3). Relacija cast
(igra) izmeu star i film je ograniena, prema pravilima 5 i 6, na tip vie-na-vie sa
mandatornom participacijom instanci iz star i opcionalnom participacijom instanci iz
film.
E-R model je jo uvijek najrasprostranjeniji alat za modeliranje prilikom projektovanja
baza podataka. Ocjenjujui ga preko triju kriterija datih na poetku sekcije 2.3.1., moe
se rei da on visoko kotira u odnosu na ostale tehnike modeliranja.

61

Slika 2.13: E-R dijagram za bazu podataka CINEMA

Dakle, E-R modeliranje ini odlino sredstvo komunikacije izmeu sistemskih analitiara
i korisnika za specifikaciju sistema. U odnosu na trei kriterij, njegovo koritenje
omoguava translaciju iz konceptualne u relacionu logiku formu modela podataka. Kada
je u pitanju drugi kriterij, koji se odnosi na posjedovanje dovoljno konstrukta (gradivnih
elemenata) za modeliranje, pojavljuju se manjkavosti u pogledu koritenja osnovnog E-R
modela. One su posebno izraene u sluaju modeliranja u domeni primjene koja ne
odgovara standardnom uzorku i kada se zahtjevaju kompleksni tipovi podataka i relacija.
Obzirom da su takvi sistemi upravo predmet ovog kursa, fokus izlaganja emo usmjeriti
prema ekstenziji (proirenju) E-R modela, s kojom se otklanjaju nedostatci njegove
osnovne verzije. Cijena koja se plaa prilikom poboljanja izraajnosti modela jeste
izvjesni gubitak prirodne razumljivosti i jednostavnosti dijagrama koju osnovni E-R
model posjeduje.
Proireni (extended) E-R model (EER model)
Proireni, odnosno poboljani entitetsko relacijski model (EER model) posjeduje dodatne
mogunosti u odnosu na standardni E-R model. One ukljuuju konstruktore za podtipove,
supertipove i kategorije koji su blisko vezani za generalizaciju i specijalizaciju, te
mehanizam nasljeivanja atributa. Ova metoda omoguava veu izraajnost prilikom
opisivanja baze podataka. Ona vodi prema objektno-orijentisanom modeliranju.
Meutim, objektno-orijentisani pristup ne obuhvata samo strukturu, nego i dinamiko
ponaanje informacionog sistema.
Entitetski tip E1 je podtip entitetskog tipa E2 ukoliko je svaka instanca tipa E1 takoe i
instanca tipa E2. Operacija kojom se od tipova formira podtip se naziva specijalizacija,
dok se suprotna operacija kojom se od tipova formiraju supertipovi naziva generalizacija.
Ove dvije operacije su meusobno inverzne.
Specijalizacija je korisna kada je potrebno napraviti razliku izmeu nekih instanci istog
tipa omoguavajui im da imaju svoje sopstvene specijalizovane atribute ili relacije sa
drugim entitetima. Na primjer, entitet prevoz moe imati generine atribute i relacije, kao
to je relacija sa tipom putnik. Entiteti put i eljeznica se mogu modelirati kao podtipovi
entiteta prevoz sa sopstvenim specifinim svojstvima. Entitet put moe imati atribute
kao to su max_brzina dodate na atribute entiteta prevoz. Slino, entitet eljeznica moe
imati razliite atribute uz atribute entiteta prevoz.

62

U svrhu prikaza specijalizacije se moe koristiti proireni E-R dijagram. Slika 2.14.
prikazuje navedeni primjer u formi dijagrama. Relacija podtip-supertip je indicirana
simbolom za poskup . Slika takoe prikazuje da su put i eljeznica rastavljeni
(disjoint) podtipovi entiteta prevoz, indicirajui to slovom d u krugu. Tipovi su
rastavljeni ukoliko nijedna instanca iz jednog tipa nije instanca drugog tipa, i obrnuto. U
navedenom primjeru, nijedna saobraajna veza nemoe biti istovremeno i put i
eljeznica.

Slika 2.14: Specijalizacija u EER modelu

Takoe, na slici su prikazana i dva preklapajua (overlapping) podtipa. Entiteti


korisnik_puta i korisnik_eljeznice su preklapajui podtipovi entiteta putnik, to je
indicirano slovom o u krugu. U naem primjeru, putnik moe koristiti i put i eljeznicu.
Kao i kod E-R dijagrama, dupla linija indicira mandatornu participaciju (to jest, da svaki
putnik mora koristiti najmanje jedan put ili eljeznicu).
Specijalizacija, u osnovi, predstavlja kreiranje novih tipova takvih da:
svaka instanca podtipa je takoe i instanca supertipa,
podtip ima iste identifirajue atribute kao supertip,
podtip ima sve atribute supertipa, a moe imati i jo drugih, i
podtip je ukljuen u sve relacije u koje je i supertip, a moe biti i u jo druge.
Cjelokupna kolekcija podtip-supertip relacija u nekom EER modelu se naziva hijerarhija
naslijeivanja.
U odnosu na specijalizaciju, generalizacija predstavlja reverzan proces modeliranja. Za
dati skup tipova, ponekad elimo identificirati njihove zajednike osobine
generalizirajui ih u supertip. Na primjer, za entitete korisnik_puta i
korisnik_eljeznice moemo prepoznati mnoge zajednike osobine. Njihovi tipovi mogu
imati sline identifikatore i ostale atribute (na primjer, ime, starost, pol, adresa), a takoe
i zajednike relacije sa entitetom grad u kojem ive. Ove iste osobine mogu biti
generalizovane kreiranjem novog entiteta putnik. Rezultat modeliranja je isti, bilo da se
radi o specijalizaciji ili generalizaciji, ali postupak kojim se stie do njega je bio
drugaiji.
EER za prostorne informacije
E-R ili EER tehnika se moe koristiti za modeliranje konfiguracije prostornih entiteta.
Struktura koju koristimo za primjer predstavlja simplifikaciju modela koji je u pozadini
veine vektorski baziranih GIS-ova. Slika 2.15 prikazuje ogranien region ravni
izdjeljene na podregione. Svaki podregion, kojeg emo zvati povrinom, je omeen
kolekcijom usmjerenih linija, koje imaju vorove na krajevima. Slika 2.16 prikazuje
EER dijagram za ove tipove konfiguracija.

63

Slika 2.15: Planarna konfiguracija vorova, usmjerenih linija i povrina

Slika 2.16: EER model planarne konfiguracije vorova, usmjerenih linija i povrina.

Da bi opisali relaciju izmeu vora i usmjerene linije, vorovi mogu biti specificirani kao
poetni i zavrni. Za relaciju izmeu povrine i usmerene linije, mogu se specificirati
povrine sa njene lijeve i desne strane. Ove relacije se mogu opisati kreiranjem podtipova
povrina i vor. Obje specijalizacije su preklapajue: vor moe biti i poetni (za jednu
liniju) i zavrni (za drugu liniju), a povrina moe biti i lijeva (za jednu liniju) i desna (za
drugu liniju). Takoe, mandatorna priroda participacije vorova i povrina u relacijama
vezanim za specijalizaciju indicira da svaki vor mora biti ili poetni ili zavrni za
najmanje jednu liniju (nema izolovanih vorova), a svaka povrina mora biti sa lijeve ili
desne strane za najmanje jednu liniju (povrine bez menih linija nisu dozvoljene). Sve
relacije izmeu usmjerene linije i ostalih entiteta su vie-na-jedan. Usmjerena linija mora
imati tano jednu povrinu sa lijeve i jednu povrinu sa desne strane, te jedan vor na
svom poetku i jedan vor na svom zavretku. Iz ovih ogranienja slijedi da usmjerena
linija nemoe postojati bez poetnog i zavrnog vora, kao i da za ogranienu podjelu
ravni mora biti definisana vanjska povrina.

64

2.3.2 Projektovanje relacione baze podataka


Dizajniranje baze podataka, u sluaju relacione baze, odnosi se na konstruisanje njene
sheme. U narednom izlaganju e se opisati neki principi na kojima se zasniva
projektovanje relacionih baza podataka i prikazae se kako se E-R model moe
transformisati u shemu relacione baze. Centralno pitanje je: ta karakterizira dobro
dizajniran skup relacija u nekoj aplikaciji?
U ovom smislu postoje dvije osnovne prednosti:
gubitak redudantnih podataka u relacijama (redudantni podaci nepotrebno
zauzimaju prostor u bazi podataka i uzrokuju probleme sa integritetom baze),
brz pristup podacima iz relacija.
Ove dvije osobine predstavljaju znaajan kompromis izmeu prostora (i integriteta) i
vremena. Povezivanje (join) relacija (tabela) je najskuplja (najzahtjevnija) od svih
operacija relacione baze podataka, tako da manje povezivanja znai bri pristup
podacima, a to opet znai manje relacija. Dakle, nije uvijek efikasno imati mnogo
manjih tabela koje moraju biti povezane (joined) da bi odgovorili na uobiajene upite. Sa
druge strane, koritenje manjeg broja tabela vodi ka manjem broju povezivanja, ali i
drugim problemima, kao to emo vidjeti u narednom primjeru sa bazom podataka
CINEMA.
Pretpostavimo da smo odluili sve informacije o filmskim zvijezdama i filmovima u
kojim igraju uvati u jednoj tabeli u bazi podataka. Ovakva shema bi izgledala kao to
slijedi:
STAR_FILM (FILM_TITLE, DIRECTOR, FILM_CNTRY, RELEASE_YEAR, LNGTH, STAR_NAME,
BIRTH_YEAR, STAR_GENDER, STAR_NTY, ROLE)

Ovakva shema bi u velikom stepenu bila pogodana kada bi postojala potreba za velikim
brojem pozivanja podataka o zvijezdama i filmskim detaljima istovremeno. Problem je,
meutim, to ova shema rezultira redudantnom duplikacijom podataka.
Primjer u tabeli 2.7 ilustruje ovaj problem ve sa samo nekoliko atributa iz tabele, ije se
vrijednosti viestruko ponavljaju. Redundantnost podataka zauzima prostor i stvara
probleme sa integritetom. Na primjer, moe se desiti da se vrijednost koja se ponavlja
aurira samo na jednom mjestu, a na ostalim mjestima propusti.
Tabela 2.7: Dio redova i kolona relacije STAR_FILM

Specifini problemi u tabeli STAR_FILM se mogu rijeiti cijepanjem sheme tako da se


podaci o filmu uvaju u jednoj tabeli (relaciji), a podaci o filmskoj zvijezdi u drugoj.
Takoe, postoji potreba i za treom tabelom u kojoj bi se uvali podaci o ulogama
zvijezda u filmovima, ime bi se ostvarila konekcija izmeu informacija iz prve dvije
tabele. Modificirana shema relacija (tabela) bi sada izgledala ovako:
FILM(TITLE, DIRECTOR, CNTRY, YEAR, LNGTH)

65

STAR(NAME, BIRTH_YEAR, GENDER, NTY)


ROLE(FILM STAR, FILM TITLE, ROLE)

Relacije (tabele) sa n-torkama (zapisima) iz tabele 2.7 rasporeene na ovaj nain su


prikazane u tabelama 2.8a, b i c. U ovom sluaju nema redudantnog ponavljanja
podataka.
Pored izbjegavanja redudantne duplikacije informacija, dekompozicija relacionih shema
ima prednost i u tome to je manjim relacijama lake upravljati i to je omogueno da se
odvojene komponente informacija pohranjuju u odvojene relacije. Naravno, relacije se ne
mogu cijepati proizvoljno, jer njihova nepropisna dekompozicija moe unititi konekcije
koje one formiraju izmeu podataka u bazi.
Tabela 2.8: Relacija STAR_FILM je pocijepana u tri relacije: FILM, STAR i CAST.
(a)

(b)

(c)

Jedna dobra preporuka za propisnu dekompoziciju je ve predstavljena u sekciji 2.2.1, sa


relacijama (tabelama) u prvoj normalnoj formi (1NF) sa atominim atributima. Potrebno
je naglasiti da postoji hijerarhija meu normalnim formama u relacionim bazama
podataka. U tom smislu, vie normalizirana forme zahtjeva vii nivo dekompozicije
konstitutivnih relacija. Proces propisne dekompozicije relacija u normalnu formu se
naziva normalizacija. Normalne forme predstavljaju korisne smjernice za projektovanje
baze podataka. Ipak, u bilo kojem logikom modelu podataka nivo normalne forme (to
jest, stepena dekompozicije relacije) se mora balansirati u odnosu na gubitak performansi
koji se javlja zbog potreba rekonstrukcije relacijskih veza operacijom povezivanja (join).
E-R model nekog sistema moe biti direktno transformisan u skup relacionih shema u
bazi podataka. Opi princip, koji se redovno koristi, je da svaki entitet i relacija iz E-R
modela rezultira relacijom (tabelom) u shemi baze podataka. Slijedei primjer prikazuje
koncepte koji se koriste prilikom transformacije iz E-R modela u logiki model.

66

Posmatrajmo E-R model baze podataka CINEMA koji je prikazan na slici 2.13. Nezavisni
entiteti i njihovi atributi su dijelomino opisani slijedeim skupom relacionih shema:
CINEMA(CIN ID, NAME, MANAGER, TEL_NO, TOWN, GRID_REF)
FILM(TITLE, DIRECTOR, CNTRY, YEAR, LNGTH)
STAR(NAME, BIRTH_YEAR, GENDER, NTY)

Zavisni entitet screen zahtjeva posebnu panju. Da bismo identificirali svaki zapis (ntorku) u relaciji, moramo dodati identifikator CINEMA_ID iz CINEMA u SCREEN (sa
promjenjenim imenom od CIN_ID). U tom sluaju ova relaciona shema dobija slijedei
oblik:
SCREEN(CINEMA ID, SCREEN NO, CAPACITY)

Ostalo je jo da razmotrimo relacijske veze u E-R modelu. Relacijske veze u relacijama


se pojavljuju na dva razliita naina. U navedenom primjeru, svaka relacijska veza
rezultira (vodi do) daljom relacijom (tabelom). Ova relacija za svoj identifikator koristi
identifikatore participiranih entiteta. Tako, relacijska veza cast vodi do relacijske sheme
CAST sa identifikatorom (FILM_STAR, FILM_TITLE), gdje je FILM_STAR preimenovano od
NAME iz relacije (tabele) STAR, a FILM_TITLE je preimenovano od TITLE iz relacije FILM.
Reimenovanje slui samo da bi relacione sheme bile itljivije i manje dvosmislene.
Relacija CAST takoe preuzima atribut ROLE iz relacijske veze cast.
CAST(FILM_STAR, FILM_TITLE, ROLE)

Druga relacijska veza, na slian nain, vodi do relacije:


SHOW(CINEMA_ID, SCREEN_NO, FILM_NAME, STANDARD, LUXURY)

Nije uvijek neophodno za svaku relacijsku vezu obezbjediti novu relaciju u E-R modelu.
Na primjer, na slici 2.17 je prikazan E-R dijagram za vektorski model prostornih
podataka, koji je ve ranije dat u EER formi (slika 2.16).

Slika 2.17: E-R model planarne konfiguracije vorova, usmjerenih (orijentisanih) linija i povrina.

67

Ukoliko se prihvati princip da svaki enitet i relacijska veza definiu relaciju, onda imamo
slijedeu shemu baze podataka:
POVRINA(POVRINA_ID)
VOR(VOR_ID)
LINIJA(LINIJA_ID)
LIJEVO_GRANII(ARC_ID, AREA_ID)
DESNO_GRANII(ARC_ID, AREA_ID)
POINJE(ARC_ID, NODE_ID)
ZAVRAVA(ARC_ID, NODE_ID)

Ova shema baze podataka se moe pojednostaviti bez gubitka povezanosti (u smislu
strukture baze podataka). Relacijska veza poinje izmeu usmjerena linija i vor ima
osobinu da svaka linija ima tano jedan poetni vor. Ovako, umjesto da imamo jednu
relaciju vie (POINJE) u bazi podataka, jednostavnije je relaciji LINIJA dodati
identifikator NODE_ID, u svojstvu poetnog vora. Ovakva konstrukcija se naziva
postavljanje stranog kljua. Tehnikim jezikom reeno, postavili smo identifikator NODE
kao strani klju u relaciju LINIJA. Zbog njihove iste prirode, sve etiri relacijske veze
vode do postavljanja stranih kljueva u relaciji LINIJA, to rezultira slijedeom
pojednostavljenom shemom baze podataka:
POVRINA(POVRINA_ID)
VOR(VOR_ID)
LINIJA(LINIJA_ID, BEGIN_NODE, END_NODE, LEFT_AREA, RIGHT_AREA)

Ukoliko relacijska veza ima oblik kakav je prikazan na slici 2.18, postavljanje stranog
kljua predstavlja prihvatljiviju opciju nego dodavanje nove relacije.

Slika 2.18: Relacijska veza za koju postoji mogunost postavljanja stranog kljua

Relacijska veza r je vie-na-jedan i mandatorna je na strani e1, to znai da je svaka


instanca entiteta e1 povezana sa tano jednom instancom entiteta e2. Stoga, ukoliko
omoguimo postavljanje stranog kljua iz e2 u e1 zbog ostvarenja veze, onda e za svaku
n-torku (zapis) u relaciji za e1, postojati jedna i samo jedna vrijednost za atribute stranog
kljua. Kao rezultat ovoga, nee postojati mogunost pojavljivanja ni nul vrijednosti, ni
ponavljajuih vrijednosti.

2.3.3 Rezime
Relacione baze podataka imaju jednostavan model koji omoguava implementaciju
mnogih aspekata filozofije baza podataka o kojim je diskutovano u prvom poglavlju. Iako
je nastao prije vie od 30 godina, relacioni model zajedno sa RDBMS-om i SQL jezikom
za interakciju, ostaje globalni lider meu paradigmama baza podataka. Meutim, i dalje
postoje problemi sa kompleksnijim formama podataka koje su teke za upravljanje sa
68

standardnom relacionom tehnologijom. Razvoj baze podataka predstavlja vjetinu


koritenja mnogih alata i metodologija. Prethodno izlaganje je obuhvatilo pristup razvoja
sa E-R modelom. Njegova prednost se ogleda u jednostavnosti i sposobnosti
transformacije u odgovarajuu shemu baze podataka. Meutim, postoje i drugi pristupi,
koji se takoe mogu uspjeno primjenjivati.

2.4 Objektna orijentacija


U ovom dijelu se uvodi objektno-orijentisani pristup kao alternativa za paradigmu
relacionog modela informacionih sistema. Reprezentacija procesa razvoja informacionog
sistema (slika 1.12) iz sekcije 1.3.4, nas je ostavila sa problemom koji motivie uvoenje
i primjenu objektno-orijentisanog pristupa. Procjep izmeu konstrukta (gradivnih
elemenata) koji su raspoloivi u razliitim fazama razvojnog procesa ini tranziciju iz
jedne faze u drugu neefikasnom. Kao rezultat ovoga se moe desiti da tokom razvoja
(projektovanja) informacije budu izgubljene ili da se jednostavan koncept izgubi u
kompleksnoj paradigmi modeliranja. Problem gubitka informacija, koji se moe desiti u
svakom koraku (fazi) razvoja sistema se naziva impedanca (otpor) neusklaenosti (eng.
impedance mismatch). Zadatak objektno orijentisanog pristupa modeliranju jeste
minimiziranje ovog problema, pribliavanjem konstrukta nieg (sistemskog) nivoa
konstruktima vieg (konceptualnog) nivoa.

2.4.1 Osnove objektno orijentisanog pristupa


Kao to se moe pretpostaviti, koncept objekta je centralni za objektno-orijentisani
pristup. Prije od zapisa (n-torke) u tabeli (kod relacionog modela), objekat bolje modelira
statine, podatkovno-orijentisane aspekte informacija. Na primjer, objekat grad moe
izmeu ostalih atributa imati naziv, centar ili stanovnitvo. Cjelokupnost atributnih
vrijednosti za dati objekat u nekom vremenu konstituie stanje objekta.
Za razliku od relacija u relacionom modelu, objekat ide prema modelu dinamikog
ponaanja sistema. Ponaanje objekta je izraeno kroz skup operacija koje objekat moe
izvoditi u odgovarajuim uslovima. Na primjer, ideja (pojam) regije nije samo opisana
specificiranim skupom taaka ili krivih linija koje odreuju njenu granicu (prostorni
podaci), nego takoe i operacijama koje se mogu nad njom sprovoditi. Ove operacije
mogu ukljuivati raunanje povrine i obima regiona, tampanje regiona u odgovarajuoj
razmjeri i sa razliitim nivoima detalja, kreiranje i brisanje regiona iz sistema i tako dalje.
Za objektno orijentisani pristup, kljuni izraz je:
objekat=stanje + ponaanje
Objekti sa stanjem i ponaanjem su temelj objektno orijentisanog pristupa, koji je
zajedniki za sve objektno orijentisane sisteme. Interakcija izmeu objekata se provodi
slanjem poruka izmeu njih, koje mogu aktivirati pojedina ponaanja drugih objekata.
Posebno ponaanje objekta se ponekad naziva metodom. Kako e tano objekat
odgovoriti na poruku u nekom posebnom sluaju zavisi od stanja objekta. Objekat je
stoga karakteriziran svojim ponanjem, koje predstavlja cjelokupnost njegovih odgovora
na poruke. Objekti sa slinim ponaanjem su organizovani u klase. Skup ponaanja klase
objekata oblikuje intefejs, koji definie meusobnu interakciju objekata i interakciju
objekata sa vanjskom okolinom.

69

Kao ilustracija moe posluiti objekat prozor koji moe imati razliita stanja kao to su
otvoren ili zatvoren, te razbijen ili itav. On takoe moe imati ponaanja koja utiu na
njegovo stanje, kao to su otvoriti, zatvoriti ili udariti. Efekat objekta golf loptice koja
udara u prozor je modeliran tako to golf loptica alje prozoru poruku da aktivira
ponaanje prozora udariti. Na koji nain e prozor odgovoriti na poruku zavisi od
njegovog stanja. Ako je prozor ve otvoren, poruka nee uticati na njegovo stanje (golf
loptica e proletiti). Ako je prozor zatvoren, on e promjeniti svoje trenutno stanje itav
u stanje razbijen (slika 2.19).

Slika 2.19: Objekti alju poruke koje aktiviraju ponaanja drugih objekata,
koja ponekad mjenjaju njihovo stanje.

Iz perspektive samog modeliranja, objektna orijentacija u osnovi nudi etiri glavne


prednosti:
Reducira kompleksnost: Dekomponovanje kompleksnih fenomena u objekte sa stanjem i
ponaanjem pomae izradu konceptualnih modela kojim se jednostavnije upravlja.
Eliminie problem gubitka informacije (impedance mismatch): Prilikom prevoenja
informacije iz jedne faze modeliranja (nivoa apstrakcije) u drugu (na primjer iz logikog
u fiziki nivo apstrakcije) spreava otpor neusklaenosti. Objektno orijentisani pristup u
sistemima se moe primjeniti na svakom nivou ivotnog ciklusa sistema. Na primjer,
postoje tehnike objektno orijentisane analize (OOA), metodologije objektno
orijentisanog dizajna (OOD), kao i objektno orijentisani programski jezici (OOPL) za
njihovu implementaciju. Konzistentna primjena istih objektno orijentisanih koncepata
kroz cijeli razvojni proces sistema reducira problem razmimoilaenja koje se javlja
prilikom preslikavanja informacija izmeu vie nivoa apstrakcije.
Promovie viestruko koritenje: Sistem se moe efikasnije razvijati ukoliko se on moe
sastavljati od kolekcije dobro razumljivih i specificiranih podkomponenti. Kada je on
dobro opisan objektno orijentisanim modelom, onda se moe vie puta koristiti kao
gotova podkomponenta unutar drugih kompleksnijih modela.
Metaforina mo: Tretiranje kompleksnih fenomena kao objekata je korisna metafora, jer
nam je sposobnost rukovanja objektima (poput prozora) vrlo bliska. esto se iste
objektno orijentisane metafore mogu primjenjivati na virtualne (digitalne) objekte (kao
to je prozor u grafikom korisnikom interfejsu MS Windows-a) na slian nain kako se
primjenjuju i za neke druge apstraktne koncepte (upravljanje projektima).

70

2.4.2 Objektno orijentisani konstrukti


Opisane osnovne ideje objektne orijentacije podrazumjevaju etiri vana konstrukta koji
figuriu u objektno orijentisanom pristupu: identitet, ahurenje, polimorfizam i
asocijacija. Ovi konstrukti nisu jedinstveni za objektnu orijentaciju, i ne ukljuuju svi
objektno orijentisani sistemi sve pomenute konstrukte. Meutim, ova svojstva su blisko
vezana za objektnu orijentaciju i pojavljuju se u odreenim kombinacijama u skoro svim
objektno orijentisanim sistemima.
Identitet objekta
Objekti imaju jedinstvene identitete, nezavisne od njihovih atributnih vrijednosti. Ovo
odgovara prirodnoj ideji, koja se moe jednostavno ilustrovati pomou slijedeeg
primjera (izjave):
Moje ime je Mike, ali ja nisam moje ime.
Moje ime se moe promjeniti, ak tavie
svaka elija u mom tijelu se moe promjeniti,
ali moj identitet ostaje uvijek isti.
Prilikom modeliranja entiteta pomou E-R modela, svaki entitet ima mogunost
jedinstvene identifikacije. Atributi koji identificiraju entitete su uvijek prisutni i ukljueni
su u listu atributa za svaki entitet. Svaka instanca takvog entiteta je jedinstveno odreena
datim vrijednostima za identificirajue atribute. Zbog ovoga se ponekad za E-R model i
relacioni model kae da su vrijednosno bazirani (value-based). Nasuprot tome, objektni
model nije vrijednosno baziran. Jedna objektna instanca zadrava svoj identitet ak i ako
svi njeni atributi promjene svoje vrijednosti. Svaki objekat ima interni identitet, naovisan
od bilo kojih vrijednosti svojih atributa (i ako je model implementiran, ovaj identitet e
biti pohranjen u raunar). Ovaj identitet je nepromjenjiv. On je kreiran istovremeno kada
je kreiran i objekat, nikada se na mjenja i prestaje postojati onda kada i objekat prestaje
postojati. Zbog toga je nepotrebno da postoje varijable instance koje slue samo u svrhu
identificiranja objekta.
ahurenje (enkapsulacija)
ahurenje omoguava da su interni mehanizmi ponaanja nekog objekta strogo odvojeni
od vanjskog pristupa njemu, kao i od efekata njegovog ponaanja. Na primjer, kada smo
u autu i kada pritisnemo gas papuu (aljemo poruku) da bi ubrzali kretanje auta
(aktiviramo ponaanje ubrzavanje) ne vodimo rauna o stanju auta (interno stanje
instance klase auto).
ahurenje pomae daljem smanjivanju kompleksnosti u OO modelu, tretirajui koja
ponaanja objekat eksponira odvojeno od naina kako je objekat postigao ova ponaanja.
ahurenje takoe promovie viestruko koritenje. Klju uspjenog viestrkog koritenja
je u tome da se podkomponente trebaju ponaati na predvidiv nain u svakoj postavci.
Ovo se moe postii samo ukoliko su interne radnje objekta uahurene tako da ga izoluju
od vanjske okoline.
ahurenje ima vane implikacije za OO baze podataka. Relacione baze su bazirane na
call-by-value principu, gdje se n-torkama pristupa i povezuje ih se sa drugim n-torkama
pomou njihovih vrijednosti. Meutim, vrijednosti sadrane unutar objekta (dio stanja
objekta) su uahurene i pristupane su samo indirektno putem ponaanja objekta. Ovaj

71

nivo indirektnosti moe rezultirati neprihvatljivim performansama DBMS-a baziranog na


OO modelu podataka, ako se sa njim rukuje nepropisno.
Naslijeivanje i polimorfizam
Naslijeivanje omoguava klasama, a tako i objektima, da dijele zajednike osobine.
Upravo kao i kod hijerarhija naslijeivanja u EER modelu, naslijeivanje se realizuje na
dva naina: generalizacijom i specijalizacijom, koje su meusobno inverzne.
Generalizovane klase pokazuju osobine koje su zajednike svim svojim specijaliziranim
podklasama. Obrnuto, klase se specijaliziraju, adaptiraju i dodaju prema osobinama
generalizovanih superklasa.
Za razliku od naslijeivanja u EER modelu, koje samo dozvoljava specijalizaciju ili
generalizaciju atributa, naslijeivanje u objektno orijentisanom modelu takoe
dozvoljava specijalizaciju i generalizaciju ponaanja. Na primjer, slika 2.20 prikazuje
dvije klase, trougao i pravougaonik, koje su podklase od klase poligon (indicarano
strlicom). Kao podklase one naslijeuju sve atribute i ponaanja superklasa, na isti nain
kao to dodaju i svoje sopstvene. U hijerarhiji naslijeivanja prema slici 2.20,
generalizovana klasa poligon ima ponaanje (crtati, povrina) zajedniko podklasama
trougao i pravougaonik. U naem primjer, trougao i pravougaonik takoe ima
specijalizovane operacije jeIstostrani i jeKvadrat, koje vraaju Boolove objekte koji
odreuju da li su geometrijski oblici jednakostranini ili kvadratni, respektivno. Dijagram
poput onog na slici 2.20 koji prikazuje hijerarhiju naslijeivanja i osobine klasa se naziva
dijagramom klasa (klasni dijagram). Relacija naslijeivanja se esto naziva je
relacijom. Tako u naem primjeru pravougaonik je poligon.

Slika 2.20: Primjer dijagrama klasa

Naslijeivanje omoguava objektima da odigraju odreene uloge u razliitim


kontekstima, to predstavlja osobenost polimorfizma (vie formi). Specifino je da
instanca podklase moe uvijek biti zamjenjena za instancu superklase. Na primjer, u
nekom algoritmu koji izraunava ukupnu povrinu objekata iz skupa poligon, objekti iz
skupa pravougaonik i trougao mogu biti zamjenjeni za objekte iz poligon, jer sve

72

podklase od poligon posjeduju ponaanje povrina. Ova sposobnost zamjene podklase za


superklasu je poseban tip polimorfizma koji se naziva inkluzivni (ukljuivi) polimorfizam.
Drugi vaan tip polimorfizma se pojavljuje kada podklase implementiraju svoje
sopstvene specijalizovane algoritme za postizanje generalizovanog ponaanja
(preoptereavanje).
Na primjer, trougao moe implementirati ponaanje povrina koristei poznatu formulu
bh (polovina osnovice b pomnoene sa visinom trougla h), dok pravougaonik moe
koristiti formulu bh.
U literaturi se mogu nai i druge referense, kao i drugi tipovi polimorfizma.
Vrijedi pomenuti jo jednu osobinu naslijeivanja. Hijerarhija naslijeivanja prikazana na
slici 2.20 je poznata kao jednostruko naslijeivanje, to znai da specijalizovana klasa
objekata naslijeuje sve atribute i ponaanje od jedne generine klase. Notacija
jedostrukog naslijeivanja se moe proiriti na viestruko naslijeivanje, koje oznaava
da je nekoj klasu dozvoljeno da naslijedi osobine iz vie od jedne superklase. Viestruko
naslijeivanje uvodi dodatnu sloenost u objektno orijentisane modele i sisteme, poto
podklasa moe naslijeivati razliite verzije istog ponaanja iz razliitih superklasa. U
takvim sluajevima, potrebno je da postoji neki protokol koji rjeava ovakve konflikte.
Asocijacija
Vezano za predhodno izlaganje, asocijacijom se grupiu objekti zajedno da bi se
modelirala pojava sa kompleksnom internom strukturom. Relacijska veza izmeu glumca
i filma iz relacione baze podataka CINEMA je primjer jedne asocijacije. Poseban tip
asocijacije je agregacija, koja se odnosi na djelominu odnosno cijelu asocijaciju izmeu
objekata. Na primjer, objekat iz klase objekata auto je agregacija vie komponentnih
objekata iz klasa sjedalo, toak, motor i drugih. Ovi komponentni objekti mogu i sami
biti agregacije drugih komponenata (na primjer, motor moe biti agregacija od objekata
klip, alnaser, cilindar i slino). Relacijske veze asocijacije se ponekad nazivaju dio od
relacijama, jer, na primjer, motor je dio od auta. Agregacija je antisimetrina (ako je
A dio od B, to znai da B nemoe biti dio od A). Hijerarhija agregacijskih veza se naziva
partonomijom ili ponekad mereologikom hijerahijom (to je u kontrastu sa hijerarhijom
naslijeivanja, koja se naziva taksonomijom). Neki od estih tipova asocijacije su:
homogena asocijacija, koja je formirana od skupa objekata koji pripadaju istoj
klasi (na primjer, fudbalski tim je homogena asocijacija (agregacija) fudbalskih
igraa);
ureena asocijacija je asocijacija kod koje je vaan poredak komponentnih
objekata (na primjer, sekvenca_taaka predstavlja objekat koji se sastoji od
ureenog niza taaka).

2.4.3 Objektno orijentisano modeliranje


Modelirajui alati koji se odnose na relacionu tehnologiju su dovoljni za analizu struktura
informacija prisutnih kod veine tradicionalnih aplikacija. Meutim, poto se tehnologija
primjenjuje za iru klasu aplikacija, mane u pristupu sa E-R modelom postaju vidljive.
Ovo se posebno odnosi na GIS aplikacije, gdje entiteti mogu imati kompleksnu
podstrukturu ili organizaciju (poput partonomije ili taksonomije).

73

Vaan inicijalni korak u objektno-orijentisanom modeliranju predstavlja definisanje klasa


u aplikaciji, kao i pripadajuih atributa, ponaanja, asocijacija i naslijeivanja za ove
klase. Atributi svake klase se definiu na slian nain kao i atributi u E-R modeliranju.
Na primjer, auto moe imati atribute kao to su proizvoa, boja i godina. Individualan
objekat klase auto e doznaiti posebne vrijednosti ovim atributima, koji konstituiu
stanje objekta (na primjer, za objekat moje_auto proizvoa je Chevrolet, boja je
smea, a godina je 1993). Ponaanja za klasu mogu pripadati nekoj od tri slijedee
kategorije:
Konstruktori odreuju ponaanja koja se aktiviraju prilikom kreiranja objekata,
dok se destruktori aktiviraju prilikom brisanja objekata. Konstruktori i destruktori
su posebno korisni za osiguranje integriteta podataka. Na primjer, objekat put bi
trebao uvijek imati osovinsku_liniju, koja opisuje geometriju puta. Konstruktor
bi mogao osigurati da se novi put moe kreirati samo specifikacijom njegove
geometrije. Pored ovakvih osnovnih konstruktora, koji kreiraju novi objekat na
osnovu specifikacije njegove klase i atributa, mogu postojati i sloeniji tipovi koji
kreiraju objekte u odnosu na druge postojee (referentne) objekte. Na primjer:

Generisanje (generate) kreira objekat


koji je zavisan od referentnog objekta,
potujui njegov tip, stanje ili
ponaanje.
Reprodukovanje (reproduce) kreira
identinu kopiju referentnog objekta
potujui sve njegove karakteristike (tip,
stanje, ponaanje) osim identiteta.
Cijepanje (split) kreira skup objekata
ija kompozicija (agregacija) predstavlja
referensirani objekat.
Povezivanje (merge) kreira jedinstveni
objekat koji predstavlja kompoziciju
(agregaciju) od referentnih objekata.
Dakle, reprodukovanje predstavlja poseban sluaj generisanja, dok su cijepanje i
povezivanje meusobno inverzni tipovi.
Aksesori (pristupi) su ponaanja koja se koriste za ispitivanje stanja objekta. Na
primjer, ukupnoj duini objekta puta se moe pristupiti pomou ponaanja
duina.
Transformeri su ponaanja koja mjenjaju stanje objekata. Na primjer, mjere
usporavanja saobraaja koje reduciraju maksimalnu brzinu vozila utiu da se
smanji vrijednost atributu brzina koji pripada objektu put. Ova promjena moe
biti komunicirana sa odgovarajuim objektom pomou ponaanja
postavlja_brzinu.
Definisanje asocijacija i relacija naslijeivanja izmeu klasa je obino iterativan i
aplikacijski zavisan proces. Korisno pravilo prepoznavanja postojanja relacija
naslijeivanja i agregacije je koritenje je i dio od u reenici kojom se povezuju
razliite klase. Na primjer, reenica Brza cesta je put ima smisla, jer sugerie da
brza_cesta moe biti podklasa klase put. Suprotno gledano, reenice Put je dio od brze

74

ceste kao i Put je brza cesta nemaju puno smisla i sugeriu da odgovarajue relacije
agregacije i naslijeivanja nisu ispravne.
Klasni dijagrami, kao to je onaj na slici 2.20, su vani alati za razvoj objektnoorijentisanih modela. Na slici 2.21 je prikazan primjer klasnog dijagrama koji ukljuuje
razne atribute, ponaanja i asocijacije, kao i relacije naslijeivanja. Postoji nekoliko
razliitih grafikih notacija za klasne dijagrame. Notacija koritena u ovom izlaganju je
bazirana na najprihvaenijoj notaciji, to jest na UML-u (Unified Modelling Language).
Na slici 2.21 su prikazane klase (taka, osovinska_linija, put i brza_cesta) u
naznaenim okvirima. Relacija naslijeivanja izmeu put i brza_cesta (brza cesta je put)
je indicirana pomou strelice koja je povuena od podklase do superklase.
Asocijacija je indicirana koritenjem linije izmeu dvije klase. Kao i u E-R dijagramima,
na liniju se moe dodati kardinalnost asocijacije. Svaki put je asociran sa jednom
osovinskom_linijom, a osovinska_linija moe biti asocirana sa nula (nijednim) ili
jednim objektom puta. Agregacija je indicirana pomou linije sa romboidnom glavom
koja ide od klase dijela prema klasi cjeline. U ovom primjeru, taka je dio
osovinske_linije. Mogue je indicirati i kardinalnost agregacije, tako da je
osovinska_linija komponovana od dvije ili vie taaka, a taka je dio nule (nijedne) ili
vie osovinskih_linija. Moemo dalje dodavati jo vie detalja, kao to je anotiranje
agregacione linije sa rijei ureen koja indicira da je poredak taaka u osovinskoj liniji
vaan.
Klasni dijagram takoe izlistava atribute za svaku klasu, nakon kojih slijede ponaanja.
Na primjer, put ima atribute naziv i brzina. Vaan aspekt objektno orijentisanog
modeliranja je da atributne vrijednosti i same predstavljaju objekte. Na primjer, atribut
naziv od objekta put i sam predstavlja objekat koji pripada klasi string. Klasa nekog
atributa se u klasnom dijagramu indicira iza imena atributa.

Slika 2.21: Klasni dijagram za put

75

Konano, klasni dijagram izlistava i ponaanja vezana za svaku klasu. Na primjer, klasa
put ima ponaanje duina, koja vraa duinu puta (to jest, objekat klase real). Rije
void (prazan) je koritena u definiciji za ponaanje duina da bi se indiciralo da se ne
zahtjeva ulazna informacija za ovo ponaanje, poto se duina puta moe sraunati preko
asocijacije izmeu objekta put i njegove osovinske_linije (primjenom neke procedure
koja jo nije definisana). Ponaanja duina i prikaz, koje prikazuje put u odreenoj
razmjeri, su primjeri aksesora (pristupnih operacija). Ponaanje postavlja_brzinu
predstavlja operaciju transformera, koja mjenja atribut brzina. Ponaanje
postavlja_brzinu zahtjeva objekat integer za unos nove brzine, koji ne vraa nikakvu
vrijednost.
Ponaanje kreira je primjer konstruktora. Ono za unos zahtjeva objekat klase
osovinska_linija. Ovim se osigurava da se objekat put ne moe kreirati bez predhodno
kreiranog objekta osovinska_linija. Kao to je ve navedeno, ovakvi konstruktori su
korisni za osiguranje integriteta podataka. Konstruktori i destruktori koji ne podravaju
ovakvu funkcionalnost vezanu za integritet su obino izostavljeni iz klasnih dijagrama.
Veina ponaanja i atributa naslijeenih u podklasi brza_cesta iz superklase put su
takoe izostavljeni. Oni su suvini, jer podklasa mora posjedovati sva ponaanja
superklase. Izuzetak od ovog pravila za brzu_cestu ini ponaanje prikaz, koje je ovdje
ukljueno, jer ono specijalizira (ini posebnom) ovakav tip puta, to rezultira drugaijim
stilom prikaza u odnosu na ostale tipove puteva. Viestruko koritenje prikaza je
ilustracija polimorfizma, o kojem je ranije bilo rijei.
Klasni dijagrami pomau u komunikaciji koncepata izmeu razliitih faza u procesu
modeliranja, jer se na taj nain isti objektno orijentisan koncept protee kroz cijelukupni
ivotni ciklus objektno orijentisanog sistema. Upravo kao to se E-R dijagrami mogu
jednostavno implementirati u RDBMS, tako se i klasni dijagrami jednostavno
implementiraju koritenjem OOPL-a (Object Oriented Programming Language) ili
OODBMS-a. Pored opisanih klasnih dijagrama postoje i drugi takoe vani dijagrami za
razvoj OO sistema. Dijagrami instanci ili objekata prikazuju relacije izmeu objekata (a
ne klasa), unutar nekog posebnog konteksta. Dijagrami interakcije se koriste za
ilustraciju izvravanja ponaanja objekata kao odgovora na pojedine poruke.

2.4.4 Objektno orijentisani DBMS


DBMS koji koristi objektno orijentisani model podataka se naziva objektno orijentisnim
sistemom za upravljanje bazom podataka (OODBMS). Pored podravanja predhodno
opisanih objektnih konstrukcija, za OODBMS su neophodne i druge sposobnosti. One
ukljuuju:
upravljanje shemom, to ukljuuje sposobnost kreiranja i mjenjanja shema za
klase;
automatsku optimizaciju upita koji su formulisani u oviru deklarativnog jezika za
upite, kao dijela raspoloive upitne okoline;
upravljanje skladitenjem i pristupom podacima;
upravljanje transakcijama, ukljuujui kontrolu konkurentnog pristupa,
integriteta podataka i sigurnosti sistema.
Na alost, postoje tehnoloki problemi koji onemoguavaju postizanje nekih od
nabrojanih sposobnosti od strane OODBMS-a. Na primjer, kompleksnost objektnih klasa

76

u sistemu moe optimizaciju upita uiniti tekom za primjenu. Dalje, transakcije koje se
odvijaju u objektno orijentisanoj bazi podataka mogu biti kompleksnije od jednostavnih
transakcija u relacionoj bazi podataka. Zbog hijerarhijske prirode objektnih podataka,
transakcije mogu kaskadno silaziti i uticati na veliki broj drugih objekata, smanjujui na
ovaj nain performanse sistema.
Performanse OODBMS-a su uvjek slabije od RDBMS-a, meutim OODBMS ima
ogromne prednosti u specifinim aplikacijama u odnosu na RDBMS, jer korisnika
koncepcija u domeni primjene moe biti blia konceptualnom, logikom i fizikom
(implementacionom) modelu podataka. Tradicionalni sistemi uvijek prisiljavaju korisnike
da se prije prilagode i prihvate visoko sistemski orijentisane koncepte, nego aplikaciono
orijentisane koncepte. To je isto kao kada bi se Beethovenova sonata za klavir izvodila na
trombonu, to jest instrumentu koji konceptualno ne odgovara nainu interpretacije ovog
muzikog djela i ijom primjenom bi se uglavnom izgubio smisao same kompozicije
prilikom njenog izvoenja.
Neke od DBMS softverskih kompanija su pokuale integrisati relacioni i objektni
koncept, to jest kombinovati najbolje karakteristike i jednog i drugog pristupa, dobijajui
hibridni model sa RDBMS-om kao jezgrom DBMS-a i sa objektno orijentisanom
ljuskom preko koje korisnik pristupa jezgri DBMS-a. Ovakav hibridni sistem se naziva
objektno relacionim sistemom za upravljanje bazom podataka (ORDBMS). On ima sve
prednosti koje pruaju oba koncepta, uz dobre performanse nastale podrkom korisniki
definisanih tipova podataka i izraajnog objektno orijentisanog modela podataka. Iako se
ovaj pristup moe uspjeno primjeniti za veinu sistemskih koncepata, on openito ne
rjeava probleme relacionog pristupa, niti moe rjeiti neke druge probleme koji su
prisutni prilikom koritenja geoprostornih informacija u RDBMS-u.

77

3
3 Fundamentalni prostorni koncepti
Kratak pregled
Mnoge razliite reprezentacije prostora se svakodnevno koriste u GIS-u, a ovo poglavlje
obrauje upravo koncepte na kojim se one zasnivaju. Poznata reprezentacija je
Euclidova geometrija, u kojoj se mogu definisati duine, uglovi i koordinate. Meutim, i
druge reprezentacije su isto tako vane. Skupovi elemenata tvore mnogo jednostavniju
reprezentaciju prostora. Topologija moe biti uspostavljena na osnovu koncepta
susjedstva. Grafom, koji sadri vorove povezane sa stranama (ivicama), se mogu
predstavljati mreni prostori poput putne mree. Metrinim prostorom se formalizira
koncept rastojanja izmeu taaka u prostoru.
ta je prostor? Termin prostor nije jednostavan za definisanje. Gatrell (1991.) definie
prostor kao relaciju koja je definisana nad skupom objekata, koja ukljuuje ba bilo
koju struktuiranu kolekciju. Ova definicija je isuvie openita za opis svih reprezentacija
prostora koji su interesantni za GIS. esto se pravi distinkcija izmeu prostora kojeg
moemo obuhvatiti naom vizuelnom percepcijom (takozvani perceptualni ili prostor
malih razmjera) i prostora koji je isuvie velik za ljude da bi ga odjednom mogli sagledati
(takozvani transperceptualni, prostor velikih razmjera ili geografski prostor). Zubin
(1989.) prostor dijeli na etiri tipa:
A-prostor koji sadri objekte u svakodnevnoj upotrebi (knjige, telefoni ...),
B-prostor koji sadri objekte vee od ljudi, ali jo uvijek uoljive sa jednog
stajalita (zgrade, autobusi ...),
C-prostor koji sadri geografske scene koje su prevelike da bi se obuhvatile i
razumjele odjednom (dijelovi Zemljine povrine) i
D-prostor koji sadri objekte koji su isuvie veliki da bi ih ljudi mogli istinski
iskusiti (solarni sistem, galaksije...).
Freundschuh i Egenhofer (1997.) daju potpuni pregled i sintezu razliitih klasifikacija
prostora koje su do tada predlagane. U GIS-u se prevashodno tretira geografski prostor,
iako takoe postoji i veliki interes za relacijama izmeu geografskog prostora u GIS-u i
drugih openitijih tipova informacionog prostora, kao to su Internet i cyber prostor
(cyber geografija).
Svi mi imamo svoj intuitivni pojam o konkretnom prostoru u kojem se naa tijela kreu.
U kontekstu GIS-a, mi standardno koristimo izraz prostor koji se odnosi na geografski
prostor, to jest strukturu i svojstva relacija izmeu lokacija na povrini Zemlje. U
narednom izlaganju e se paljivije istraiti prostor, odnosno razliiti naini
reprezentacije i rezonovanja vezanog za geografski prostor.

78

Fundamentalni koncept koji lei iza razliitih reprezentacija prostora je njihova


geometrija. Geometrija obezbjeuje formalnu reprezentaciju apstraktnih svojstava i
struktura unutar prostora. Moderni pristupi geometriji su zasnovani na pojmu invarijance:
geometrije se mogu klasificirati saglasno grupi prostornih transformacija pod kojim
njihove propozicije ostaju da vae. Ova ideja je prvi put predloena 1872. godine od
strane njemakog matematiara Felixa Kleina u njegovom govoru prilikom inauguracije
na Univerzitetu u Erlangenu (Erlangen Program).
Da bi ovo ilustrovali, posmatrajmo trodimenzionalni prostor i nae uobiajeno poimanje
rastojanja izmeu dvije take. Na osnovu predloene ideje, geometrija je formirana
skupom svih transformacija, pri kojim se rastojanja ne mjenjaju (to jest, za koje rastojanje
predstavlja invarijantu). U ovaj skup spadaju translacija i rotacija, jer je rastojanje
izmeu dvije take isto i prije i poslije primjene translacije i rotacije. Promjena razmjere
ne pripada ovom skupu, jer ona standardno mjenja rastojanje izmeu taaka.
Posmatrajui ovo, dolazimo do definicije geometrije kao studije o invarijantama skupa
transformacija. Na ovaj nain invarijante skupa transformacija koji se sastoji od
translacije, rotacije i promjene razmjere ukljuuju ugao i paralelizam, ali ne i rastojanje.
Koordinatna Euclidova geometrija nudi intuitivniji pogled na prostor i zato predstavlja
polaznu taku prilikom daljeg izlaganja o razliitim pristupima prezentacije prostora. U
narednom izlaganju e se diskutovati najprimitivniji od svih prostora koji samo sadri
kolekciju objekata bez bilo koje druge strukture, a potom e se prei na prostore
izgraene sa bogatijim geometrijama. U zavrnom dijelu poglavlja upoznaemo se sa
fraktalnom geometrijom, koja se bavi invarijancom vezanom za osobine objekata pri
promjeni razmjere.

3.1 Euclidov prostor


Geoprostorne pojave se obino modeliraju unutar nekog koordinatnog prostora, to
omoguava odreivanje duine i azimuta izmeu njihovih lokacija koritenjem poznatih
trigonometrijskih izraza. Ovakav koordinatni model prostora je definisan kao Euclidov
prostor. U njemu se prostorne karakteristike pojava (objekata) transformiu u relacije ntorki realnih brojeva. Zbog jednostavnosti prezentacije, u narednom izlaganju se koristi
2-dimenzionalni prostorni model, iako se svi koncepti, koji se pominju, mogu
generalizovati i za viedimenzionalne prostorne modele. Za Euclidovu ravan moemo
uspostaviti koordinatni okvir koji se sastoji od fiksne take koordinatnog poetka i para
ortogonalnih linija (osa) koje se sjeku u ovoj taki.

3.1.1 Takasti objekti


Taki koja lei u ravni je pridruen jedinstven par realnih brojeva (x, y) koji opisuju njenu
udaljenost od koordinatnih osa u pravcu svake ose, respektivno. Skup svih ovakvih
2
taaka ini Kartezijevu ravan, esto notiranu kao . esto se koristi vektorska
reprezentacija Kartezijevih taaka (x, y), odreenih pomou pravca i intenziteta
usmjerenog linijskog segmenta od koordinatnog poetka do take (x, y), kao to je
prikazano na slici 3.1. Na ovaj nain se vektori mogu sabirati, oduzimati i mnoiti
skalarima saglasno datim pravilima:

79

(x1, y1) + (x2, y2)= (x1 + x2, y1 + y2)


(x1, y1) - (x2, y2)= (x1 - x2, y1 - y2)
k(x, y) = (kx, ky)
Za vektor date take a=(x, y) moemo odrediti njegovu normu:

a (x2y2)

Slika 3.1: Duina, ugao i orijentacija izmeu taaka (vektora) u Euclidovoj ravni.

U koordinatnom sistemu duina se moe odrediti na razliite naine. Euclidova ravan


predstavlja Kartezijevu ravan u kojoj se duine i uglovi odreuju na svojstven nain.
Ovaj koncept je sastavni dio veine nastavnih predmeta koji izuavaju geometriju
prostora, a temelji se na slijedeim izrazima.
2
Za date take (vektore) a, b iz , udaljenost od a do b , |ab| je data sa (slika 3.1):
|ab|= a b
2
Pretpostavimo da take a, b iz imaju koordinate (xa, ya) i (xb, yb), respektivno. U tom
sluaju, udaljenost se odreuje Pitagorinim pravilom (koje nam je poznato jo iz ranih
kolskih dana), koje kae:
2
2
x

x
)

(
y

y
)
|ab|= (
b
a
b
a

Ugao (slika 3.1) izmeu vektora a i b se moe odrediti iz trigonometrijskog izraza:


x
y
a
b
ay
b
cos
x
ab

Ugao orijentacije (slika 3.1) sa take a na taku b se moe dobiti iz trigonometrijskih


izraza:

80

x x
sin
b a
ab
y y
cos
b a
ab

3.1.2 Linijski objekti


Linijski objekti se veoma esto koriste kao komponente GIS-a. Oni reprezentuju
prostorne atribute objekata i njihove granice. Slijede njihove definicije vezane za
pravolinijsku reprezentaciju:
2
za dvije date razliite take (vektora) a i b iz , linija koja prolazi kroz a i b je
.

(
1

)
b

definisana kao skup taaka

za dvije date razliite take (vektora) a i b iz , linijski segment izmeu a i b je

(
1

)
b

,
1
definisan kao skup taaka
.
2

2
za dvije date razliite take (vektora) a i b iz , polulinija koja poinje od b i
.

(
1

)
b
0
prolazi kroz a je definisana kao skup taaka
Ove definicije predstavljaju razliite tipove linija date u parametarskom obliku.
Parametar je ogranien na interval u okviru kojeg varira, zavisno od tipa objekta.
Njegovim variranjem, definie se skup taaka koje konstituiu linijski objekat. Slika 3.2
prikazuje primjere ovih objekata.

Slika 3.2: Parametarska reprezentacija linearnih objekata.

Nisu samo prave linije interesantne za GIS. Prave linije se mogu specificirati
jednostrukom bivarijantnom polinomalnom jednainom prvog stepena (ax+b=k). Vii
stepeni bivarijantnih polinoma specificiraju ostale klase jednodimenzionalnih objekata.
Na ovaj nain, polinomi drugog stepena (kvadratici izraza ax2+bxy+cy2=k) specificiraju
konusne presjeke koji mogu predstavljati krunice, elipse, hiperbole ili parabole. Dalje, i
kubni polinomi se iroko koriste u grafici za specifikaciju glatkih krivih linija.

81

3.1.3 Poligonalni (poligoni) objekti


2
Polilinija u je definisana kao konaan skup linijskih segmenata (zvanih ivicama ili
stranama), gdje je svaka krajnja taka segmenta zajednika za dvije ivice (strane), osim u
sluaju ekstremnih (zavrnih) taaka polilinije. Ukoliko se ivice (strane) ne presjecaju ni
u jednom svom dijelu, osim eventualno u svojim krajnjim takama, ovakva polilinija se
naziva prostom polilinijom. Ukoliko polilinija nema ekstremnih (krajnjih) taaka, onda se
2
naziva zatvorenom polilinijom. Prosti poligon u je definisan kao povrina
obuhvaena prostom zatvorenom polilinijom. Polilinija formira granicu poligona. Svaka
krajnja taka ivice poligona se naziva verteksom poligona. Neki mogue varijante su
prikazane na slici 3.3. Proirenjem definicije dobija se da poligon moe sadrati rupe,
ostrva unutar rupa i druge varijante.

Slika 3.3: Polilinije i tipovi poligona

U literaturi o raunarskoj geometriji su date mnoge definicije razliitih tipova poligona.


Korisnu kategoriju ini skup konveksnih poligona, ija je unutranjost konveksna,
odnosno svaki od njihovih internih uglovi ne prelazi 180. Za konveksni poligon vrijedi
da je svaka unutarnja taka vidljiva sa svake druge unutarnje take u smislu da svaka
linija dogledanja u cijelosti lei unutar poligona. Zvjezdasti poligon ima u ovom pogledu
slabija svojstva, jer je u njegovom sluaju neophodno da postoji najmanje jedna taka
koja je vidljiva iz svake take poligona (slika 3.3).
Definicija monotonih poligona je zasnovana na konceptu monotonog lanca (polilinije).
Pretpostavimo da lanac C=[p1, p2, ..., pn] predstavlja ureenu listu od n taaka u
Euclidovoj ravni. C je monotoni lanac, ako i samo ako postoji takva linija u Euclidovoj
ravni, na kojoj projekcije verteksa (lomnih taaka) iz lanca zadravaju svoj poredak iz
liste. Slika 3.4 prikazuje monotoni i nemonotoni lanac.

82

Slika 3.4: Monotoni i nemonotoni lanac

U ovom kontekstu, poligon je monotoni poligon ukoliko se njegova granica moe


pocijepati na dvije polilinije, tako da lanac verteksa (lomnih taaka) svake polilinije
predstavlja monoton lanac. Naravno, svaki konveksan poligon jeste i monoton. Meutim,
inverzija ove izjave ne vrijedi. Takoe ne vrijedi i da je svaki monotoni poligon
zvjezdast, to se moe vidjeti na slici 3.5.

Slika 3.5: Monoton ali ne i zvijezdast poligon

Triangulacija poligona predstavlja dijeljenje poligona na trouglove koji se dodiruju samo


na mjestu njihovih zajednikih granica. Nije teko pokazati da se triangulacijom prostog
poligona sa n verteksa, koja uvodi dodatnih m unutarnjih verteksa, dobija tano n+2m-2
trougla. Ukoliko nema unutarnjih verteksa (Steinerovih taaka), ovakva podjela poligona
se naziva dijagonalnom triangulacijom i rezultira sa n-2 trougla.
Slika 3.6 prikazuje dijagonalnu i nedijagonalnu triangulaciju poligona sa 11 verteksa.
Kao to formula odreuje, dijagonalna triangulacija rezultira sa 9 trouglova, a
nedijagonalna triangulacija, koja uvodi jo 3 unutarnje take, rezultira sa 15 trouglova.

83

Slika 3.6: Dijagonalna i nedijagonalna triangulacija poligona

3.1.4 Transformacije Euclidove ravni


Translacije, refleksije i rotacije
U narednom izlaganju se opisuju neke standardne transformacije Euclidove ravni.
2
2
Transformacija jeste funkcija od koja je transformie u sebe. Na ovaj nain svaka
taka iz ravni je transformisana u drugu (mogue istu) taku. Neke transformacije uvaju
pojedina svojstva pripadajuih objekata:
Euclidove transformacije (kongruencije): uvaju oblik i veliinu objekata. Primjer
Euclidove transformacije je translacija.
Transformacije slinosti: uvaju oblik ali ne uvijek i veliinu objekata. Primjer ovakve
transformacije je promjena razmjere; sve Euclidove transformacije su takoe i
transformacije slinosti.
Afine transformacije: uvaju afina svojstva objekata, kao to je paralelizam. Primjeri
afinih transformacija su rotacije, refleksije i razvlaenje; sve transformacije
slinosti su takoe i afine.
Projekcione transformacije: uvaju projekcione osobine objekata. Na primjer, centralna
projekcija nastaje preslikavanjam objekta pomou zraka koje polaze od jedne
centralne take, ire se do objekta i daju njegovu sliku u nekoj ravni (krunica se
moe preslikati na elipsu i slino). Sve afine transformacije su takoe i
projekcione.
Topoloke transformacije: (homeomorfno ili bikontinualno preslikavanje) uva topoloka
svojstva objekata.
Slijedei izrazi opisuju neke od pomenutih klasa transformacije:
Translacija: preko realnih konstanti a i b
(x, y) (x + a, y + b)
Skaliranje: pomou realnih konstanti a i b
(x, y) (ax, by)

84

Rotacija: preko ugla u odnosu na koordinatni poetak


(x, y) (xcos ysin, xsin + ycos)
Refleksija: u odnosu na liniju koja prolazi kroz koordinatni poetak i pod uglom u
odnosu na x osu
(x, y) (xcos2 + ysin2, xsin2 + ycos2)
Razvlaenje: paralelno sa x osom koristei konstantu a
(x, y) (x + ay, y)

3.2 Geometrija prostora bazirana na skupovima


Euclidova ravan je visoko organizirana vrsta prostora, sa mnogim dobro definisanim
operacijama i relacijama koje se mogu primjeniti na objekte unutar njega. U narednom
izlaganju se razmatra skupovno baziran prostor postepeno prelazei na vie struktuiran
topoloki i metrini prostor.

3.2.1 Skupovi
Skupovno baziran model prostora nema tako bogat skup konstruktora kao to je to sluaj
kod Euclidove ravni. Ovaj model se jednostavno bazira na slijedeim terminima:
Konstituentni objekti za modeliranje se nazivaju elementima ili lanovima.
Kolekcije elemenata se nazivaju skupovima. Za raunarski bazirane modele,
ovakve kolekcije su obino konane, ili u najmanjem prebrojive.
Relacija izmeu elemenata i skupova kojim oni pripadaju se naziva pripadnou.
Notacija s S indicira da elemenat s pripada (jeste lan) skupu S.
Skupovno baziran model je apstraktan i nudi malo mogunosti u smislu naina
konstrukcije prilikom modeliranja prostornih osobina i relacija. Bez obzira na to, skupovi
predstavljaju bogat izvor modelirajuih konstruktora i fundamentalni su za modeliranje
geoprostornih informacija. Na primjer, relacije izmeu razliitih osnovnih jedinica koje
su prostorno referensirane se mogu modelirati koritenjem teorije skupova. Kantoni
mogu biti pripadajui elementi drava, koje opet mogu biti sadrani unutar kontinenata.
Gradovi mogu biti elementi drava. Ovakve hijerarhijske relacije se mogu adekvatno
modelirati koritenjem teorije skupova. Ponekad, povrinskim jedinicama nije
jednostavno rukovati. Na primjer, u Velikoj Britaniji nije mogue ostvariti jednostavne
skupovno bazirane relacije regiona sa potanskim kodovima (koji se koriste za
dostavljanje pote) i distrikta, odnosno kantona. Ova neslaganja uzrokuju znaajne
probleme kada je podatke, koji se odnose na jedan skup jedinica, potrebno uporediti ili
kombinovati sa podacima referensiranim na drugaiji skup.
Russelov paradoks: iako koncept zasnovan na skupovima izraava najrudimentarnije relacije i
struktuiranje prostora, iznenaujue je teko obuhvatiti sutinu jednog skupa sa malo rijei. Prvi
pokuaj moe biti: skup je svaka kolekcija objekata, ali on dalje lei otvoren za Russelov
paradoks (Bertrand Russel, britanski matematiar). On se moe objasniti slijedeim primjerom.

85

Sadraj knjige predstavlja skup naslova koji se pojavljuju u knjizi. Ukoliko sadraj umetnemo u
knjigu on i sam postaje naslov, te tako postaje i dio sadraja knjige. Znai on je naslov samoga
sebe, a to znai da ne moe biti istovremeno i sadraj naslova, to jest ne moe biti istovremeno i
sadraj i naslov.
Ovaj problem se moe ilustrovati i matematiki na slijedei nain. Pretpostavimo da skup S
predstavlja skup svih skupova koji nisu lanovi samih sebe. Ukoliko skup S moe biti lan samoga
sebe, onda on po definiciji ne pripada skupu S, a sa druge strane, ako S nemoe biti lan samoga
sebe, onda on mora pripadati skupu S (samome sebi), to je po svemo kontradiktirno. Ovaj
paradoks je podsticao je priline napore u 20 stoljeu da se iznae odgovarajua definicija
skupa, ali ni jedna definicija do danas nije u potpunosti zadovoljila.

Dalje, problem se moe pojaviti i u slijedeoj formi: u jednom selu ive dvije skupine
mjetana koji iskljuivo pripadaju ili onima koji se briju sami, ili onima koje brije brico.
Postavlja se pitanje kojoj skupini pripada brico?
U klasinoj teoriji skupova jedan objekat je elemenat ili nije elemenat odgovarajueg
skupa. U ovoj teoriji, dakle, nema poluistine, odnosno nema stepenovane pripadnosti
nekom skupu. Ukoliko se binarna priroda (istina ili la) uslova pripadnosti pokua
relaksirati, mogue je postii neto izraajnije prostorne modele. Neki od ovakvih
pristupa (na primjer, fuzzy skupovi) su od posebne vanosti za modeliranje neizvjesnosti
u geoprostornim informacijama.
Na osnovu pomenutih osnovnih konstruktora (elemenat, skup i pripadnost) mogue je
konstruisati veliki broj alata za modeliranje, kao to su:
Jednakost je definisana relacijom izmeu dva skupa koja sadre u potpunosti iste
lanove.
Relacija izmeu dva skupa gdje je svaki lan jednog skupa istovremeno i lan
drugog skupa se naziva podskupom i obiljeava se sa znakom .
Glavni skup (superskup) je skup svih podskupa u skupu. Glavni skup skupa S se
obiljeava sa P(S).
Prazan skup je skup koji ne sadri ni jednog lana i obiljeava se sa .
Broj lanova u skupu se naziva kardinalnost. Kardinalnost od S se oznaava se sa
#S.
Presjek skupova je binarna operacija koja uzima dva skupa i vraa skup elemenata
koji su lanovi i jednog i drugog originalnog skupa. Presjek S i T se obiljeava sa
ST.
Unija skupova je binarna operacija koja uzima dva skupa i vraa skup elemenata
koji su lanovi najmanje jednog od originalnih skupova. Unija skupova S i T se
oznaava sa ST.
Razlika skupova je binarna operacija koja uzima dva skupa i vraa skup elemenata
koji su lanovi prvog skupa, ali nisu lanovi drugog skupa. Razlika skupova S i T
se obiljeava sa S\T.
Komplement skupa je unarna operacija koja kad se primjeni na neki skup vraa
skup elemenata koji nisu u tom skupu. Komplement se uvijek primjenjuje u
odnosu na neki implicitan univerzalni skup. Komplement od S se obiljeava sa S'.

86

Na slici 3.7 su sjenenjem prikazane neke od pomenutih Boolovih operacija nad


skupovima.

Slika 3.7: Presjek, unija i razlika skupova

Neki skupovi, a posebno skupovi brojeva, se koriste tako esto da imaju svoje posebno
ime i simbol. Neki od njih su prikazani u tabeli 3.1. Boolov skup B se koristi u sluaju
kada postoje dva izbora koja se mogu napraviti (istina/la, 1/0). Skup cijelih (integer)
brojeva Z se korist za diskretne modele. Ponekad se koriste iskljuivo pozitivni cijeli
brojevi, koji se obiljeavaju sa Z+. Za kontinualne modele se zahtjevaju realni brojevi,
odnosno skup . Nemogue je interpretirati sve realne brojeve pomou raunara, pa se
u praksi koriste racionalni brojevi, koji predstavljaju realne brojeve koji se mogu iskazati
kao omjer (razlomak) cjelobrojnih vrijednosti, na primjer 123/46. Poput realnih brojeva, i
racionalni brojevi imaju svojstvo zbijenosti (gustine), odnosno za bilo koja dva racionalna
broja a i b, gdje je a b, bez obzira na njihovu bliskost, uvijek je mogue nai trei
racionalan broj c takav da je a b c (slika 3.8). Na ovaj nain, racionalni brojevi
predstavljaju korisnu aproksimaciju za modeliranje kontinualnih procesa. Meutim,
svaku specifinu raunarsku implementaciju e pratiti odreena restrikcija u pogledu
preciznosti racionalnih brojeva.
Tabela 3.1: Neki brojni skupovi

Naziv
Boolov skup
Cjelobrojni brojevi
Realni brojevi
Realna ravan
Zatvoreni interval
Otvoreni interval
Poluotvoreni interval

Oznaka
B
Z

2
a, b
a, b
a, b

Opis
Skup sa dvije vrijednost: True/False, On/Off, 1/0
Pozitivni i negativni cijeli brojevi ukljuujui nulu
Vrijednosti na brojnoj liniji
Ureeni parovi realnih brojeva (Euclidova ravan)
Svi realni brojevi izmeu a i b (ukljuujui a i b)
Svi realni brojevi izmeu a i b (iskljuujui a i b)
Svi realni brojevi izmeu a i b (ukljuujui a i
iskljuujui b)

87

Slika 3.8: Racionalni brojevi su zbijeni

Neki podskupovi realnih brojeva su posebno korisni. Intervali su povezani skupovi


realnih brojeva. Oni mogu, a ne moraju sadravati svoje krajnje take (brojeve) i stoga se
mogu nazivati zatvorenim, odnosno otvorenim, respektivno. Intervali mogu biti sa jednog
kraja otvoreni, a sa drugog zatvoreni i u tom sluaju se nazivaju poluotvorenim.

3.2.2 Relacije
Sami po sebi, skupovi su ogranieni za primjenu u modeliranju. Njihova izraajnost
postaje zanimljivija tek kada se modeliraju relacije izmeu dva ili vie skupova. Da bi se
obezbjedili ovakvi alati neophodno je definisati neke operacije nad skupovima:
Binarna operacija proizvoda vraa skup ureenih parova, kod kojih je prvi
elemenat lan prvog skupa, a drugi elemenat lan drugog skupa. Proizvod
skupova S i T se oznaava sa S T .
Primjer proizvoda je skup taaka u Kartezijevoj ravni. Svaka taka u Kartezijevoj ravni je
predstavljena sa ureenim parom realnih brojeva, koji predstavljaju vrijednosti
udaljenosti take od koordinatnog poetka po x i po y osi. Prema terminologiji teorije
skupova, kolekcija svih ovakvih taaka je skup koji je nastao proizvodom skupa realnih
2
brojeva sa samim sobom. Ovaj skup se oznaava sa ili sa . Ovakva notacija se
3
n
moe generalizovati i na Kartezijev 3-prostor , ili ak na Kartezijev n-prostor .
U ovom kontekstu, binarna operacija proizvoda se moe opisati i pomou skupa taaka
jedininog kvadrata datim sa svojim verteksima (0, 0), (0, 1), (1, 0) i (1, 1) u Kartezijevoj
ravni. Ovaj skup je proizvod dva intervala, 0, 1 i 0, 1. U ovom sluaju vrijedi
2
0,10,1 .
Prostori koji su nastali proizvodom obezbjeuju sredstvo za definisanje relacija izmeu
objekata. Na osnovu ovoga slijedi konstrukcija:
Binarna relacija je podskup proizvoda dva skupa, iji ureeni parovi prikazuju
relacije izmeu lanova prvog i lanova drugog skupa.
Predpostavimo da imamo dva skupa: S={Fred, Mary} i T={jabuke, kruke, banane}.
Formalan nain izraavanja odnosa (relacije) voli izmeu osoba i voa je pomou
relacije konstruisane kao skupa ureenih parova {(Fred, jabuke), (Fred, banane), (Mary,
jabuke)}. Ovaj skup ureenih parova je podskup cjelokupnog prostora proizvoda S T,
koji sadri 6 parova.
Relacije se mogu openito primjeniti na proizvod od dva (binarne) i vie skupova (kao
kod relacija u relacionom modelu baze podataka). Meutim, binarne relacije mogu imati
razliite naine primjene u modelima. Na primjer, ako su data dva skupa: T skup
interesnih taaka (odredita) i G skup gradova. Relacija R1 S T moe odreivati za
88

svaku interesnu taku (odredite) tT najblii grad gG za t. Slika 3.9 ilustruje ovaj
primjer.
2
Kao to smo vidjeli sa relacijom , relacija moe postojati i nad jednim istim skupom.
Predpostavimo za skup taaka T, da je interesna taka tT u relaciji t'T, ako je t'
najblia taka interesnoj taki t. Ova relacija R2 T T je prikazana na slici 3.10.

Slika 3.9: Binarna relacija nad skupovima interesnih lokacija (odredita) i gradova

Neke binarne relacije izmeu objekata iz jednog istog skupa imaju posebna svojstva.
Relacija gdje je svaki elemenat skupa u relaciji sa samim sobom se naziva
refleksivnom relacijom.
Relacija gdje je x u relaciji sa y, ali i y u relaciji sa x se naziva simetrinom
relacijom.
Relacija gdje kada je x u relaciji sa y, i y u relaciji sa z, slijedi i da je x u relaciji sa
z, se naziva tranzitivnom relacijom.
U predhodnom primjeru (slika 3.10), postoji implicitna predpostavka da taka ne moe
biti u relaciji sama sa sobom, te ova relacija (najblie take) nije refleksivna. Takoe, ova
relacija nije ni simetrina (to se ne moe na prvi pogled utvrditi). Dalje, relacija nije ni
tranzitivna, jer ako je za p najblia lokacija q, a za q najblia lokacija r, onda ne mora
biti sluaj da je za p najblia lokacija r.
Binarne relacije koje imaju svojstva refleksije, simetrije i tranzicije se nazivaju
ekvivalentnim relacijama. Druga korisna klasa relacija su ureene relacije, koje
zadovoljavaju osobinu tranzitivnosti, ali su nerefleksivne i antisimetrine.

89

Slika 3.10: Binarna relacija nad skupovima interesnih lokacija

3.2.3 Funkcije
Funkcija je specijalan tip relacije koja ima svojstvo da je svaki lan prvog skupa u relaciji
sa tano jednim lanom iz drugog skupa. Na ovaj nain funkcija ima pravilo da
transformie svakog lana prvog skupa, koji se naziva domena, u lana drugog skupa,
koji se naziva kodomena. Koristi se notacija:
f:ST
to oznaava da f predstavlja funkciju, S domenu, a T kodomenu. Ukoliko je y rezultat
primjenjene funkcije f na elemenat x iz S, onda se pie y=f(x) ili f : x y. Slika 3.11
shematski ilustruje relaciju izmeu funkcije, domene, kodomene i slike (preslika).

Slika 3.11: Apstraktna funkcija f

90

Na primjer, predpostavimo da je S skup taaka na sferoidu, a T skup taaka u ravni.


Kartografska projekcija je funkcija sa domenom S i kodomenom T. Obino, funkcije
kartografske projekcije su razvijene tako da zadre neke osobine skupova invarijantnim,
na primjer duine, uglove ili povrine. Svima poznata UTM (Universal Transverse
Mercator) projekcija je funkcija koja uva uglove. UTM projekcija ima dodatnu osobinu
da bilo koje dvije razliite take u domeni transformie u dvije razliite take u
kodomeni. Za ovakvu funkciju se kae da je injekcija. Nisu sve funkcije injektivne. Na
primjer, funkcija kvadriranja cjelobrojnih vrijednosti. Poto je kvadrat i za 2 i za -2, isti
broj (4), kvadratna funkcija nije injekcija. Dvije relacije prezentirane na slikama 3.9 i
3.10 su takoe funkcije, ali nisu injektivne.
Skup izlaznih elemenata iz primjene funkcije na take u njihovoj domeni obrazuje
podskup kodomene. Na ovaj nain, UTM projecira sferoid na konaan podskup (u) ravni.
Skup svih moguih izlaznih vrijednosti se naziva slikom ili rangom (opsegom) funkcije.
Ako je slika jednaka kodomeni, onda je funkcija surjekcija. UTM projekcija nije
surjekcija, jer ona projecira sferoid samo na konaan dio ravni, a ne na cijelu ravan.
Funkcija koja je i injekcija i surjekcija se naziva bijekcijom.
Injektivne funkcije imaju posebno svojstvo, a to je da imaju svoju inverznu funkciju.
Posmatrajmo ponovo UTM funkciju preslikavanja iz sferoida u ravan. Za datu taku u
ravni koja je dio slike transformacije, mogue je rekonstruisati taku na sferoidu iz koje
ona dolazi. Ovaj reverzibilni proces nam omoguava da formiramo novu funkciju ija
domena je slika UTM projekcije, i koja preslikava sliku nazad na sferoid. Ovakva
funkcija se naziva inverznom.

3.2.4 Konveksnost
Konveksnost je ve diskutovana u kontekstu poligona i moe se generalno proiriti sa
istim svojstvima i na proizvoljan skup taaka u Euclidovoj ravni. Ista notacija vrijedi i za
Euclidov 3-prostor, a definicije se lako proiruju i na ovaj sluaj. Esencijalna ideja je da
je skup konveksan ukoliko je svaka taka vidljiva iz svake druge take unutar skupa. Da
bi se ova ideja preciznije izrazila, potrebno je definisati vidljivost i konveksnost.
Neka je S skup taaka u Euclidovoj ravni. Onda je taka x iz S vidljiva iz take y u
S ako je x=y ili ako je mogue nacrtati pravolinijski segment izmeu x i y koji u
potpunosti (iskljuivo) sadri take iz skupa S.
Neka je S skup taaka u Euclidovoj ravni. Taka x iz S je observacijska taka za
skup S ako je svaka taka iz S vidljiva iz x.
Neka je S skup taaka u Euclidovoj ravni. Skup S je semikonveksan (zvijezdolik
ako S predstavlja poligonalnu regiju) ukoliko postoji neka observaciona taka za
S.
Neka je S skup taaka u Euclidovoj ravni. Skup S je konveksan ako je svaka taka
skupa S i observaciona taaka za S.
Slika 3.12 prikazuje relaciju vidljivosti unutar skupa izmeu tri take x, y i z. Take x i y
su meusobno vidljive, kao i take y i z. Meutim, take x i z nisu meusobno vidljive.
Relacija vidljivosti je refleksivna i simetrina, ali nije tranzitivna. Takoe, moe se
vidjeti da svaki konveksan skup mora biti i semikonveksan (ali ne vai obrnuto). Slika

91

3.13 daje neke primjere skupa koji nije semikonveksan, koji je semikonveksan, ali nije
konveksan i koji je konveksan.

Slika 3.12: Vidljivost izmeu taaka x, y i z.

Slika 3.13: Stepen konveksnosti u skupu taaka

Presjek kolekcije konveksnih skupova je takoe konveksan skup, te na ovaj nain svaka
kolekcija konveksnih skupova zatvorena pod presjekom ima minimum lanova. Ovo vodi
2
do definicije konveksne ljuske (convex hull) skupa taaka S u kao presjeka svih
konveksnih skupova koje sadri skup S. Iz ovoga slijedi da konveksna ljuska mora biti
jedinstven najmanji konveksni skup koji sadri S (slika 3.14). Konveksna ljuska
konanog skupa taaka je uvijek poligonalna regija.

Slika 3.14: Konveksna ljuska skupa taaka

92

3.3 Topologija prostora


Rije topologija je izvedena iz grkog jezika i u literaturi se prevodi kao studija forme
(oblika). Njen pojam je na neki nain u suprotnosti sa rijei geometrija, koja se
prevodi kao mjerenje Zemlje. Topologija je grana geometrije, koja se bavi posebnim
skupom geometrijskih osobina onih koje ostaju invarijantne prilikom topolokih
transformacija. ta su onda topoloke transformacije? U irem smislu, topologija je
pojam koji se moe primjeniti na mnoge razliite vrste prostora.

3.3.1 Topoloki prostori


Da bismo dobili neku topoloku predstavu, zamislimo Euclidovu ravan kao neogranienu
ravnu povrinu (opnu) od elastine gume koja ima sposobnost razvlaenja i skupljanja do
eljenog stepena. Zamislimo figuru koja je nacrtana na ovoj gumenoj povrini.
Dozvolimo ovoj povrini da se razvlai (deformie), ali da se ne pocjepa ili nabora.
Izvjesne osobine originalne figure e ostati, dok e se neke druge izgubiti. Na primjer,
ako je nacrtan poligon sa takom unutar njega, prilikom svakog razvlaenja povrine,
taka e ostajati unutar poligona, dok e se povrina i oblik poligona mjenjati. Osobina
unutranjosti je topoloka osobina (jer je invarijantna pod uticajem tranformacije
gumene opne), dok povrina nije topoloka osobina. Transformacija uzrokovana
razvlaenjem gumene povrine se naziva topolokom transformacijom ili
homeomorfizmom. Odavdje, moemo izvesti slijedee definicije:
Topoloke osobine: osobine koje su sauvane prilikom topolokih transformacija
prostora.
Topologija: studija topolokih transformacija i osobina koje ostaju invarijantne pod
uticajem ovih transformacija.
Tabela 3.2 navodi neke topoloke i netopoloke osobine objekata u Euclidovoj ravni. Za
tipove objekata su uzete take, krive i povrine. Kasnije e se ovi tipovi preciznije
definisati, a za sada moemo uzeti da pod krivom podrazumjevajmo zakrivljeni linijski
objekat (iji radijus zakrivljenosti kod pravca moe biti beskonano velik), a pod
povrinom podrazumjevamo 2-dimenzionalni dio ravni, koji moe imati rupe i ostrva.
Tabela 3.2: Topoloke i netopoloke osobine objekata u Euclidovoj ravni sa uobiajenom (realnom)
topologijom.

Topoloke osobine

Netopoloke osobine

Taka je na kraju krive.


Taka je na granici povrine.
Taka je u unutranjasti/spoljanjosti povrine.
Kriva je prosta.
Povrina je otvorena/zatvorena/prosta.
Povrina je povezana.
Udaljenost izmeu dvije take.
Orijentacioni ugao na taku sa neke take.
Duina krive.
Obim povrine.

93

U narednom izlaganju e se diskutovati o dvije grane topologije: topologiji skupa taaka


(analitika topologija) i kombinatornoj (algebarskoj) topologiji. U topologiji skupa
taaka fokus e se staviti, kao to se moe oekivati, na skupove taaka i to posebno na
koncepte susjedstva, bliskosti i otvorenog skupa. Vidjee se da se nekoliko vanih
prostornih relacija, kao to su povezanost i granica, mogu izraziti pojmovima topologije
skupa taaka. Druga vana grana topologije koja se primjenjuje u modeliranju prostornih
podataka je kombinatorna topologija, a posebnu vanost ima teorija simpleksnih
kompleksa. Kroz sve ove ideje se stvaraju osnove za nekoliko prominentnih
konceptualnih modela za prostorne sisteme i GIS. injenica je da se upravo na ovim
idejama zasnivaju generini prostorni modeli koji su se intenzivno istraivali.

3.3.2 Opa topologija skupa taaka


Topoloki prostor je mogue definisati na nekoliko razliitih naina. Definicija koja
slijedi je zasnovana na samo jednom primarnom pojmu, to jest na susjedstvu. Skup nad
kojim je primjenjiv dobro definisan pojam susjedstva, predstavlja topoloki prostor. Ovaj
pristup podrazumjeva da se za bilo koji dati skup definie kolekcija njegovih podskupova
(koji konstituiu susjedstva), i na taj nain obezbjedi topologija susjedstva nad skupom.
Slijedi formalna definicija:
Neka je S dati skup taaka. Topoloki prostor je kolekcija podskupova od S, koji
se nazivaju susjedstva, i koji zadovoljavaju slijedea dva uslova:
1. Svaka taka u S je u nekom susjedstvu.
2. Presjek bilo koja dva susjedstva bilo koje take x u S sadri neko susjedstvo od x.
Slika 3.15 prikazuje ova dva uslova topolokog prostora na djelu. Susjedstva su prikazana
zaokruivanjem svake take u skupu, a prikazana su i dva susjedstva kako se preklapaju i
u svom presjeku sadre drugo susjedstvo.

Slika 3.15: Take i susjedstva u topolokom prostoru

Najvaniji primjer topolokog prostora, za namjenu koja nas interesuje, je uobiajena


topologija za Euclidovu ravan. Ona se tako naziva jer je njena priroda u duhu Euclidove
ravni i odgovara topologiji gumene povrine (opne) koju smo ranije pominjali. Mogue je
definisati i druge (neuobiajene) topologije za Euclidovu ravan, a jedan vaan njihov
primjer je i topologija vremena putovanja.
94

Topoloki prostori: Postoji mnogo topolokih prostora drugaijih od uobiajene topologije. Na


primjer, neka je S bilo koji skup , i sva susjedstva su definisana kao podskupovi od S. Jednostavno
je dokazati da ovakva struktura susjedstva definie topoloki prostor (provjerom 1. i 2. uslova).
Ovakav prostor se naziva diskretnom topologijom, jer najmanje susjedstvo svake take x u S je
{x}, tako da je svaka taka u S susjedstvom odvojena od svake druge take. Drugi primjer
ekstremne topologije pojavljuje se ako imamo da je S bilo koji skup, i definiemo da jedino
susjedstvo bude sam skup S. Opet se jednostavno moe pokazati da je i ovo topoloki prostor, koji
se naziva indiskretna topologija. Uobiajena topologija Euclidove ravni se moe proiriti na
Euclidov prostor bilo kojeg broja dimenzija. Ovo je ilustrovano sa uobiajenom topologijom
Euclidove linije. Za bilo koji realan broj x , moemo definisati susjedstvo od x kao bilo koji
otvoren interval koji sadi x. Ovo je jednodimenzionalni ekvivalent uobiajene topologije za
Euclidovu ravan, i moe se pokazati da zadovoljava 1. i 2. uslov topolokog prostora na slian
nain.

Uobiajena topologija Euclidove ravni


Definiimo otvoreni krug (disk) kao skup taaka ogranien krunicom u Euclidovoj
ravni, koji ne ukljuuje granicu (slika 3.16). Po konvenciji, isprekidana linije granice
indicira da su granine take iskljuene, dok puna linija indicira da su granine take
ukljuene.

Slika 3.16: Otvoreni krug (disk) u Euclidovoj ravni sa uobiajenom topologijom


2
Definiimo susjedstvo take x u kao bilo koji otvoren krug koji ima x unutar sebe
2
(slika 3.17). Sada pokaimo da, podrazumjevajui ovu definiciju,
predstavlja
topoloki prostor. Za provjeru da li vrijedi 1. uslov topolokog prostora, dovoljno je
2
vidjeti da svaka taka u moe biti obuhvaena otvorenim krugom. Za provjeru 2.
2
uslova, uzmimo neku taku x u i obuhvatimo je sa dva njena susjedstva (otvoreni
krug sa takom x unutar njega), N1 i N2. Sada x lei unutar presjeka ova dva susjedstva i
uvijek je mogue obuhvatiti x sa otvorenim krugom koji potpuno lei unutar ovog
presjeka. Da bismo ovo pokazali, neka je d1 minimalna udaljenost take x od granice N1,
a d2 njena minimalna udaljenost od granice N2. Dakle, otvoreni krug sa centrom u x i
radijusom sa najmanjom vrijednou od date dvije udaljenosti (d1 i d2), e sadrati taku
x i u potpunosti biti unutar presjeka N1 i N2 (slika 3.18). Na ovaj nain su 1. i 2. uslov
2
topolokog prostora zadovoljeni, te je po definiciji susjedstva topoloki prostor, koji
2
se naziva uobiajenom topologijom za .

95

Slika 3.17: Susujedstvo od x u

Slika 3.18: Za

2 sa uobiajenom topologijom

2 sa uobiajenom topologijom je zadovoljen i 2. uslov topolokog prostora

Topologija vremena putovanja


Druga vana topologija za geoprostorne informacije je topologija vremena puta. Neka je
S skup taaka u nekog regiji ravni. Pretpostavimo da ova regija sadri saobraajnu
(transportnu) mreu i da su nam poznata prosjena vremena putovanja izmeu bilo koje
dvije take u mrei (podrazumjevajui optimalne rute izmeu njih). Da bi ovaj primjer
posluio ilustarciji, neophodno je prihvatiti da je relacija vremena puta simetrina, to jest
da je vrijeme puta od x do y jednako vremenu puta od y do x. Za svako vrijeme t vee od
0, definiimo t-zonu oko take x kao skup svih taaka do kojih se moe stii iz take x za
manje od vremena t. Za ilustraciju, slika 3.19 prikazuje 5-zonu, 10-zonu i 15-zonu oko
date take. Neka imamo susjedstva za sva vremena t oko svih taaka. Odavdje je 1. uslov
topolokog prostora jasno zadovoljen, poto svaka taka ima neke t-zone koje je
obuhvataju. Dokaz da je i 2.uslov zadovoljen je slian onom koji je koriten i za
uobiajenu topologiju Euclidove ravni, i nee se posebno navoditi. Simetrinost relacije
vremena puta se zahtjeva zbog kritinog momenta u ovom dokazu. Vrijeme puta mjereno
izmeu dvije take je primjer (tip) metrike, a topologija vremena puta je specijalan sluaj
topologije koja se moe uspostaviti za bilo koju metriku u prostoru.

Slika 3.19: Primjer topologije vremena puta sa prikazom nekih susjedstva (t-zona)

96

3.3.3 Osobine topolokog prostora


Iznenaujue je da se i bez primjene primitivnog pojma susjedstva mogu konstruisati
skoro sve odlike i osobine topolokog prostora. U narednom izlaganju se opisuju takve
konstrukcije poevi sa definicijom bliskosti. Prethodno treba napomenuti da mnogi
teoretiari kroz literaturu koriste frazu granina taka u zamjenu za ovdje koriteni
pojam bliske take.

Neka je S topoloki prostor. U tom sluaju S ima skup susjedstva vezanih za


njega. Neka je X podskup taaka u prostoru S, a x individualna taka u prostoru S.
Definiimo da je x blizu X ukoliko svako susjedstvo take x sadri neku taku iz
X.

Na primjer, neka je C otvoreni jedinini krug, u Euclidovoj ravni sa uobiajenom


topologijom, centriran u koordinatnom poetku, C={(x, y)x2 + y2 1}. Onda je taka (1,
0), iako nije lan skupa C, blizu C, jer bilo koji otvoreni krug (bez obzira koliko je mali)
koji obuhvata taku (1, 0) mora posezati u C. Odnosno, svaka taka na periferiji (obimu)
kruga C je bliska krugu C, kao i svaka taka unutar C. Meutim, svaka taka koja je
izvan C i koja nije na periferiji, nije blizu C, poto se uvijek moe obuhvatiti (ma kako
malim) susjedstvom, koje je odvaja od C (to jest, ije take ne padaju u C) (slika 3.18).

Slika 3.20: Take koje su blizu i koje nisu blizu otvorenom jedininom krugu C
u Euclidovoj ravni sa uobiajenom topologijom

Fundamentalna topoloka invarijanta bilo kojeg skupa je njegova granica. Ovaj pojam se
moe konstruisati i bez naih primitiva (susjedstva) na slijedei nain. Za poetak e se
koritenjem ideje susjedstva predstaviti otvoren i zatvoren skup. Otvoreni skup e se
predstaviti kao skup koji ne sadri svoje granice, a zatvoreni skup kao skup koji sadri
sve svoje granice.

Neka je skup S topoloki prostor i neka je X podskup taaka iz prostora S. Onda je


X otvoren skup ukoliko svaka taka iz X moe biti obuhvaena susjedstvom koje
je u cijelosti unutar X.
Neka je skup S topoloki prostor i neka je X podskup taaka iz prostora S. Onda je
X zatvoren skup ukoliko on sadri sve svoje bliske take.

97

Otvoreni jedinini krug C (iz predhodnog primjera) je oito otvoren, jer svaka taka, bez
obzira koliko bila blizu periferiji (obimu), moe biti obuhvaena susjedstvom, dovoljno
malim da je ono cjelokupno unutar C. Krug C nije zatvoren skup, jer su take na periferiji
bliske take krugu C, ali nisu sadrane u C. Da bi C bio zatvoren skup, on treba
ukljuivati svoju periferiju. To nas dovodi do definicije zatvorenja koja je povezana sa
ovim navodom. Treba pomenuti da topoloki prostor moe sadrati i skupove koji su
istovremeno i otvoreni i zatvoreni, odnosno koji nisu ni otvoreni ni zatvoreni.
Topoloki prostori (otvoreni i zatvoreni skupovi): Pozovimo se na prethodni naslov Topoloki
prostori u ijem se sadraju diskretna topologija prostora S definie susjedstvima koja su
podskupovi prostora S. Neka je X bilo koji podskup od S. Onda vrijedi da jedine bliske take
skupa X jesu same take iz X (poto bilo koja taka koja nije iz X moe biti obuhvaena
susjedstvom koje sadri upravo tu taku). Na ovaj nain X je zatvoren. X je takoe i otvoren, jer
se svaka taka iz X moe obuhvatiti sa susjedstvom koje u cjelosti lei u X i sadri upravo tu
taku. Diskretna topologija je zbog toga dvojaka u smislu da je svaki skup obuhvaen sa njom i
otvoren i zatvoren. Ovo nije sluaj sa indiskretnom topologijom. Neka je S skup nad kojim je
definisana indiskretna topologija i neka je X bilo koji podskup od S. Onda jedino susjedstvo u S
jeste samo S. Zbog toga svaka taka u S jeste bliska taka od X. Na ovaj nain, sve osim ako X
nije prazan ili jednak S, on nije ni otvoren ni zatvoren. Za topologiju vremena puta , primjer
otvorenog skupa je skup svih taaka manjih od 1 satnog vremena puta od neke specificirane
take. Ovaj skup ima za svoju granicu skup svih taaka koje su tano vremenski udaljene 1 sat od
specificirane take, a kao svoje zatvorenje skup svih taaka ija vremena puta nisu vea od 1 sat.

Definicija zatvorenja:

Neka je S topoloki prostor, i neka je X podskup taaka u S. Onda zatvorenje od X


jeste njegova unija sa skupom svih njegovih bliskih taaka, i obiljeava se sa X.

Jasno je da je zatvorenje skupa i sama zatvoren skup. U stvari zatvorenje skupa X je


najmanji zatvoren skup koji sadri X. U naem primjeru zatvorenje otvorenog jedininog
kruga C je formirana pridruivanjem njegove periferije (krunice), odnosno C={(x, y)x2
+ y2 1}. Ovakav skup se naziva zatvorenim jedininim krugom. Takoe se skup moe
forsirati (prisliti) da bude otvoren iskljuivanjem neeljenih bliskih taaka, to jest,
konstruisanjem unutranjosti skupa na slijedei nain:

Neka je S topoloki prostor i neka je X podskup taaka od S. Onda unutranjost od


X sadri sve take koje pripadaju skupu X i koje nisu bliske take od X', to jest
komplementu od X. Unutranjost skupa X se obiljeava sa X.

Naglasimo da za taku x, da bi bila blizu komplementu skupa X, mora vrijediti da svako


susjedstvo od x prelazi u X'. Zbog toga, taka u X koja nije bliska taka od X' ima
najmanje jedno svoje susjedstvo koje je u cijelosti unutar X. Na ovaj nain, unutranjost
skupa je otvorena. U stvari, unutranjost skupa S je najvei otvoren skup sadran u X. Na
primjer, ako je D zatvoreni jedinini krug, onda je D otvoreni jedinini krug. Slika 3.21
prikazuje naredni primjer jednog otvorenog i zatvorenog skupa u Euclidovoj ravni sa
uobiajenom topologijom.

98

Slika 3.21: Otvoreni i zatvoreni skup u Euclidovoj ravni sa uobiajenom topologijom

Sada su se stekli svi uslovi za definisanje granice skupa u pravom topolokom smislu.
Neka je S topoloki prostor i neka je X podskup taaka iz S. Onda se granica od X
sastoji od svih taaka koje su bliske i za X i za X'. Granica skupa X se obiljeava
sa X.
Neka je taka x lan (elemenat) granice X. Poto je taka x blizu za skup X, onda x
mora biti u X. Poto je taka x blizu za skup X', onda x ne moe biti u X. Zbog toga, X
predstavlja razliku skupova X i X. U sluaju jedininog kruga C u Euclidovoj ravni sa
uobiajenom topologijom, X je periferija (krunica) od C. Kao jo jedan primjer koji
koristi Euclidovu ravan sa uobiajenom topologijom, pretpostavimo da je S povezani
region ravni koja sadri rupu (slika 3.22). Vidi se da je vanjska granica od S iskljuena iz
S, ali unutarnja granica (granica rupe) je ukljuena u S. Unutranjost, zatvorenje i granica
od S su prikazani na slici 3.22. S sadri sve take od S iskljuujui njegovu unutarnju
granicu. S ukljuuje i unutarnju i vanjsku granicu. S je unija unutarnje i vanjske
granice od S.

Slika 3.22: Unutranjost, zatvorenje i granica regije u Euclidovoj ravni sa uobiajenom topologijom

99

Vano je biti svijestan da nije mogue razmatrati topoloke osobine skupova bez ireg
prostora za kojeg su one vezane. Da bi se ovo ilustrovalo, razmotrimo konanu duinu
prave linije. Ukoliko se linija nalazi u dvodimenzionalnom (ili viedimenzionalnom)
Euclidovom prostoru (slika 3.23a), onda je njena unutranjost prazan skup, a njena i
granica i zatvorenje predstavljaju samu liniju. Sa druge strane, ukoliko se ista linija nalazi
u jednodimenzionalnom Euclidovom prostoru, to jest, u liniji realnih brojeva (slika
3.23b), onda njena unutranjost predstavlja liniju bez njenih krajnjih taaka, njeno
zatvorenje je sama linija, a njena granica se sastoji od krajnjih taaka linije.
O ovom razmatranju e se kasnije donjeti zakljuak u okviru topologije skupa taaka,
odnosno nakon uvoenja definicije pojma povezanosti. U stvari, topologija skupa taaka
prepoznaje nekoliko razliitih tipova povezanosti. U ovom dijelu izlaganja se definie
njen jednostavan oblik zasnovan na osobinama susjedstva topolokog prostora. U
slijedeem dijelu se daje opis i njenih ostalih oblika, ukljuujui slabu i jaku (strogu)
povezanost, te povezanost putanjom.

a. Topologija linije u Euclidovom 2prostoru

b. Topologija linije u Euclidovom


2-prostoru

Slika 3.23: Unutranjost, zatvorenje i granica linijskog segmenta u Euclidovom 2-dimenzionalnom i 1dimenzionalnom prostoru sa uobiajenom topologijom

Neka je S topoloki prostor i neka je X podskup taaka u S. Onda je X povezan


ukoliko vrijedi da, svaki put kad je on podjeljen u dva neprazna razdvojena
podskupa A i B, ili A sadri taku blizu B, ili B sadri taku blizu A, ili vrijedi
oboje.

100

Slika 3.24: Povezani (a, b) i nepovezani (c) skupovi u Euclidovoj ravni sa uobiajenom topologijom

Razmotrimo tri skupa prikazana na slici 3.24. U sluaju slika 3.24a i 3.24b, nije vano
kako e se skup podjeliti, podjela e uvijek zadovoljiti uslov gornje definicije
povezanosti. ak, ukoliko je skup na slici 3.24a razdjeljen na svoj gornji i donji krug, sa
takom presjeka ukljuenom u gornji krug, onda ova taka predstavlja blisku taku za
donji krug. Zbog toga su skupovi na slikama 3.24a i 3.24b povezani, a na slici 3.24c nisu
povezani. Pri podjeli na slici 3.24c, ne postoji taka iz gornjeg kruga koja je bliska za
donji krug, i obrnuto. Ovaj primjer govori da je topoloka definicija povezanosti u skladu
sa naom intuicijom.

3.3.4 Topologija skupa taaka u Euclidovoj ravni


Euclidova ravan sa uobiajenom topologijom predstavlja izuzetno vaan primjer
topolokog prostora za primjenu u GIS-u. Homeomorfizam (topoloka transformacija)
2 je bijekcija ravni koja transformie svako susjedstvo iz domene u susjedstvo u slici
(presliku koji pripada kodomeni). ta vie, svako susjedstvo iz slike mora biti rezultat
primjene transformacije na susjedstvo u domeni. Govorei jednostavnije,
homeomorfizam odgovara pojmu transformacije gumene povrine (opne), koja razvlai i
deformie ravan bez kidanja i naborivanja. Ukoliko je rezultat primjene homeomorfizma
na skup taaka X skup taaka Y, kaemo da su X i Y topoloki ekvivalent. U ovom
smislu, za krug S i povrinu T na slici 3.25 moemo rei da su topoloki ekvivalenti, ali
da ni jedan primjer sa ove slike nije topoloki ekvivalent za povrinu sa rupom U.
Raznim razvlaenjem i skupljanjem gumene povrine mogue je krug S transformisati u
T (i obratno), ali je jedini nain transformisanja S u U mogu uz kidanje ravni (opne)
kako bi se oblikovala (stvorila) rupa u U. Kidanje nije dozvoljeno i stoga S i U nisu
topoloki ekvivalenti. Skup V, koji se moe formirati spajanjem kruga sa samim sobom
(naboravanjem) u jednoj taki, takoe nije homeomorfan ni sa jednim od skupova S, T ili
U.

101

Slika 3.25: Topoloki ekvivalentni i neekvivalentni povrinski objekti

Mnoge ideje preslikavanja su zasnovane na ideji homeomorfizma. Na primjer, slike 3.26


i 3.27 prikazuju dvije karte autobuskog saobraaja, pri emu prva predstavlja
transformaciju (slinosti) aktuelnih ruta (zanemarujui Zemljinu zakrivljenost), a druga
predstavlja topoloku transformaciju aktuelnih ruta. Ove dvije karte su topoloki
ekvivalentne.
Osobine koje su sauvane pomou homeomorfizma se nazivaju topolokim
invarijantama. Iz same definicije homeomorfizma, jasno je da konfiguracija susjedstva u
prostoru predstavlja topoloku invarijantu. Drugi konstruktori, kao to su otvoreni skup,
zatvoreni skup, i granica, su takoe topoloke invarijante poto su u potpunosti definisani
preko pojma susjedstva.

Slika 3.26: Karta (transformacija slinosti) autobuskih ruta

102

Slika 3.27: Karta autobuskih ruta, koja je topoloki ekvivalentna karti na slici 3.26

Paradigma za sve otvorene skupove u Euclidovoj ravni je otvoreni jedinini krug, sa


centrom u koordinatnom poetku. Sve povrine koje su njemu topoloki ekvivalentne su
takoe otvorene. Bilo koji skup koji je homeomorfan otvorenom jedininom krugu,
naziva se otvorenom elijom. Bilo koji skup koji je homeomorfan zatvorenom
jedininom krugu, naziva se zatvorenom elijom. Dakle, otvorena elija predstavlja
otvoren skup, a zatvorena elija predstavlja zatvoren skup. Openito, ukoliko skup taaka
posjeduje svoju cjelokupnu granicu, onda je on zatvoren, a ako on ne posjeduje svoju
granicu onda je otvoren.
Brouwerova teorema fiksirane take: Pojam elije se smatra osnovnim pojmom u teoriji
topolokih prostora i predstavlja najintrigantniji predmet izuavanja s kojim se moete sresti pri
uvodnim razmatranjima u topologiji. Zamislimo eliju koja izgleda kao gumena figura u ravni.
Deformiimo eliju uvijanjem, razvlaenjem, ak boranjem, ali ne cijepanjem, a onda smjestimo
eliju u ravan na takav nain da je u cijelosti unutar svoje originalne konture. Uvijek e postojati
najmanje jedna taka koja nije pomjerena iz svog originalnog poloaja. Ovakva taka se naziva
fiksnom takom, a teorema o njoj je poznata kao Brouwerova teorema fiksirane take. Ova
teorema vrijedi za Euclidov n-dimenzionalni prostor i ima mnoge intrigirajue i nimalo intuitivne
implikacije. Ona igra vanu ulogu u raunarstvu (teorija rekurzije).

Povezanost je ve definisana u kontekstu opeg topolokog prostora. Povezanost je u


potpunosti definisana u smislu topologije, tako da ona predstavlja topoloku invarijantu.
U biti, povezan skup je u jednom komadu, bilo da je to linija, elija ili prsten. Povezani
skupovi ne moraju biti homeomorfni meusobno; elija nije homeomorfna prstenu, poto
bi se gumena povrina trebala pokidati da bi se oblikovala rupa. Povezani skupovi koji
nemaju rupe se nazivaju prosto povezanim. Biti prosto povezan (konektovan) je
topoloka invarijanta. elije su prosto povezane, dok prstenovi nisu prosto povezani.
Dva vana tipa jednodimenzionalnih objekata su pravolinijski segment i krunica
(granica kruga). Koristei pojam homeomorfizma, ova dva osnovna tipa objekata se
mogu generalizovati na slijedei nain. Prosta kriva je topoloki ekvivalent
pravolinijskom segmentu: povezana je. Homeomorfizam iz pravolinijskog segmenta u
prostu krivu je bijekcija, tako da nije mogu sluaj da prosta kriva sijee samu sebe ili da
se njene krajnje take podudaraju. Ukoliko se uslov o samopresjecanju relaksira, onda se
rezultirajui jednodimenzionalni objekat naziva samo krivom. Ukoliko se krajnje take
mogu podudarati, a samopresjecanje nije dozvoljeno, onda se ovakav objekat naziva
103

prosta petlja. Ukoliko se krajnje take podudaraju, a samopresjecanje je dozvoljeno, onda


se objekat naziva petljom. Prosta petlja je topoloki ekvivalent krunici. Primjeri nekih
jednodimenzionalnih povrinskih objekata su prikazani na slici 3.28.

Slika 3.28: Neki jednodimenzionalni povrinski objekti

Preemo li na prostor sa dimenzijom vie, ve imamo eliju koja je definisana kao


primarni dvodimenzionalni topoloki objekat, koji je topoloki ekvivalentan krugu i
prosto je povezan. Druga klasa povrinskih objekata koje vrijedi pomenuti su uplji
objekti, odnosno elije sa rupom. Ova rupa moe biti ispunjena ostrvima (slika 3.29).

Slika 3.29: Rupe unutar rupa unutar rupa...

U slijedeim paragrafima se detaljnije razmatra koncep povezanosti, posebno u relaciji sa


povrinskim objektima. Topoloko svojstvo povezanosti je ve definisano u sekciji 3.3.2
Sada poinjemo sa uvoenjem jedne drugaije definicije.

Skup u topolokom prostoru je poveziv putanjom ako bilo koje dvije take u
skupu mogu biti spojene pomou putanje koja u potpunosti lei u tom skupu.

Ova definicija se temelji na definiciji pojma putanje u topolokom smislu. U


Euclidovoj ravni sa uobiajenom topologijom, za putanju moemo kao sinonim
koristiti prosta kriva.
Kako se ovdje daju dva pojma povezanosti, naime pojam povezanosti kakav je ve
definisan ranije, i povezanost putanjom, prirodno se namee pitanje: Dali ovi pojmovi
definiu isto svojstvo? Openit odgovor na ovo pitanje je: Ne. Iako je mogue
pokazati da je svaki putanjom povezan skup i povezan (u opem smislu), postoje skupovi

104

koji su povezani, ali nisu povezivi putanjom. U specijalnom sluaju za Euclidovu ravan
sa uobiajenom topologijom, svaki primjer povezanog, ali putanjom nepovezivog skupa
se svodi na putologian (sa logikom putanje) oblik figure sa beskonanim brojem
uvijanja i zavoja. Zbog ovoga, iz praktinih razloga, potrebno je identificirati pojmove
povezivosti i povezivosti putanjom, a posebno u sluaju povrinskih objekata. Povezivost
putanjom je ak intuitivniji (shvatljiviji) pojam nego prava povezivost, i moe se kao
takav koristiti kao test za povezanost u praktinim sluajevima. U ovom smislu se moe
postaviti pitanje: Za bilo koje dvije date take u skupu (povezanim skupovima), da li je
mogue doi sa jedne na drugu kreui se putanjom koja u potpunosti lei unutar ovog
skupa (skupova)?
Mnoge primjene prostorne analize zahtjevaju klase planarnih objekata koji su pravi
povrinski objekti, to jest, nisu mjeavina taaka, linija i povrina. Takoe, oni nemaju
izolovanih taaka koje nedostaju (punktura) ili nedostajuih krivih linija (pukotina).
Mogue je definisati pojam pravog (regularnog) povrinskog objekta koritenjem jedino
topolokih pojmova.

Neka je X skup taaka u Euclidovoj ravni sa uobiajenom topologijom. Onda


definiimo regularizaciju od X kao zatvorenje od unutranjosti skupa X, to jest,
reg(X)=X.

Proces regularizacije ima efekat eliminacije bilo kakvih putologinih i nepovrinskih


objekata iz skupa. Razmotrimo primjer prikazan na slici 3.30a, koji predstavlja
punktiranu i rasjeenu eliju sa izolovanim krivim linijama i izolovanom takom.
Regularizacija skupa (slika 3.30b) skida sve pukotine, punkture, suvine krive i izolovane
take. Regularizacija prvo pronalazi unutranjost objekta, pomou koje skida vanjske
krive i take. A onda, preko zatvorenja skida pukotine i punkture. Ono to ostaje je uvijek
zatvoreni, regularni povrinski objekat (elija).

Slika 3.30: Prostorni objekat X koji se sastoji od povrine sa pukotinom, punkturom,


krivim i takama, i njegova regularizacija reg(X)

Koncept regularizacije se sada moe koristiti za karaketrizaciju regularne povrine.


Ukoliko je neki objekat ve ista (regularna) povrina, onda regularizacija nad njim nema
efekta i on se naziva regularno zatvorenim. Regularno zatvoreni skupovi su upravo isti
povrinski objekti kakvi se najee zahtjevaju. Slijedi formalna definicija:

105

Neka je X skup taaka u Euclidovoj ravni pod uobiajenom topologijom. Onda je


X regularno zatvoren ako i samo ako je X= X.

Stigli smo do topoloke karakterizacije objekata koji su prave (regularne) povrine. Sada
emo detaljnije razmotriti pojam povezanosti. Na slici 3.31 su prikazana 3 povezana
skupa.

Slika 3.31: Tri povezana skupa

Ovdje postoje jasne razlike u tipovima povezanosti. U prva dva sluaja X i Y, za bilo koje
dvije date take u skupu, putanja je ograniena samo na to da poinje u prvoj taki, ostaje
unutar skupa i zavrava se u drugoj taki. Meutim u sluaju Z, ukoliko je jedna taka u
gornjem dijelu, a druga u donjem dijelu objekta, onda je putanja ograniena na prolaz
kroz jednu od dvije take koje povezuju gornji i donji dio objekta. Razlika u ovom
sluaju se izraava pojmovima da su X i Y jako (strogo) povezani skupovi, a Z je slabo
povezan skup. Da bi doli do formalne definicije, zapazite da se Z moe uiniti
nepovezanim uklanjanjem (iskljuivanjem iz skupa) konanog broja taaka (u stvari
samo dviju taaka). Sa druge strane, bez obzira koliko veliki konaan broj taaka da
skinemo iz X i Y, oni e i dalje ostati povezani.

Skup X u Euclidovoj ravni sa uobiajenom topologijom je slabo povezan ako ga


je mogue transformisati u nepovezan skup uklanjanjem iz njega jednog
konanog broja taaka.
Skup X u Euclidovoj ravni sa uobiajenom topologijom je jako (strogo) povezan
ukoliko on nije slabo povezan.

Slika 3.32 prikazuje neke jako i slabo povezane skupove. Pojmovi jake i slabe
povezanosti igraju vanu ulogu u kasnijoj kategorizaciji planarnih (povrinskih) objekata
u objektno baziranom pristupu u prostornom modeliranju.

Slika 3.32: Primjer jako i slabo povezanih skupova

106

3.3.5 Kombinatorna topologija Euclidove ravni


Druga topoloka oblast koja se razmatra u ovom poglavlju je kombinatorna topologija.
Na neki nain, kombinatorna toplogija je vie svojstvena raunarsko baziranim
modelima, nego topologiji skupa taaka. esto su konane i diskretne strukture, koje se
pojavljuju u kombinatornoj topologiji, veoma podobne za reprezentaciju u raunarsko
baziranim strukturama podataka. Tipian primjer kombinatorne topologije je uvena
Eulerova formula:

Za dati poliedar sa f oblija (ploha, figura), e rubova (ivica) i v tjemena (verteksa)


vrijedi jednakost: f e + v = 2.

Na primjer, slika 3.33a prikazuje kocku (6 ploha, 12 ivica i 8 tjemena). Iskljuimo jednu
plohu poliedra (na primjeru slike 3.33a iskljuimo plohu F) i primjenimo
trodimenzionalni homeomorfizam da bi spljotili (razmotali) ovu figuru (oblik) na ravan.
Ono to e se dobiti je konfiguracija elija, sa linijama koje formiraju zajednike granice,
i vorovima koji formiraju presjene take linija. Preslikavanjem (razmotavanjem) kocke
sa slike 3.33a u ravan kao rezultat dobijamo planarnu konfiguraciju prikazanu na slici
3.33b.

a) Kocka

b) Planarna konfiguracija
homeomorfna kocki

Slika 3.33: Primjer poliedra i trodimenzionalnog homeomorfizma

Veoma slina formula se primjenjuje i na ureenost elija u ravni.


Poto smo uklonili plohu iz poliedra (ona je praktino postala eksterna povrina elijske
konfiguracije na slici 3.33b), moemo jednostavno modificirati Eulerovu formulu u oblik
koji odgovara njenoj reprezentaciji u ravni.

Za dato elijsko ureenje u ravni, sa f elija, e ivica i v tjemena (verteksa), vrijedi


jednakost f e + v = 1.

Na slici 3.34 je prikazan primjer planarne konfiguracije elija, sa 7 povrina, 17 ivica i 11


vorova.

107

Slika 3.34: Planarno elijsko ureenje gdje je f=7, e=17 i n=11.

Topoloki sadraj ovakvog ureenja postaje jasan ako posmatramo predhodna pravila
koja kau da, bez obzira na poliedarsko ureenje u prostoru, rezultat f e + v je uvijek 2,
odnosno za ravan je uvijek 1. Rezultirajui broj 2 karakterizira trodimenzionalni prostor,
po emu se on razlikuje od planarnog prostora (sa rezultatom 1). Rezultat f e + v se
naziva Eulerova karakteristika povrine.
Simpleksi i kompleksi
Kao to e se diskutovati u narednom izlaganju, jako puno rada na generinim modelima
prostora je uloeno koristei varijacije predhodno opisanih planarnih elijskih ureenja.
Veina fundamentalnih formalnih modela koristi pojam simplificiranih (uproenih)
kompleksa. U dvodimenzionalnom sluaju, simplificirani kompleksi predstavljaju
jednostavne triangulacione mrene strukture u Euclidovoj ravni. Konstrukcije, koje se
pojavljuju u ovoj sekciji, su planarne, ali se ideje vezane za njih mogu generalizovati i na
strukture sa veim brojem dimenzija.

0-simpleks je skup koji sadri jednu taku u Euclidovoj ravni.


1-simpleks je zatvoren konaan pravolinijski segment.
2-simpleks je skup koji sadri sve take na granici i unutar trougla ija tjemena
nisu kolinearna.

n-simpleks ima n dimenzija. Tjemena nekog simpleksa su odreena: za 0-simpleks sa


samom takom, za 1-simpleks sa njegovim krajnjim takama i za dvo-simpleks sa
tjemenima trougla. Oblije (figura) simpleksa S je simpleks ija tjemena formiraju
pravilan podskup tjemena od S. Slika 3.35 prikazuje primjere 0-, 1- i 2-simpleksa.
Naravno, dimenzionalnost se moe proiriti i na vie od 2 dimenzije. Na ovaj nain, 3simpleks predstavlja tetraedar. Granica simpleksa S, koja se obiljeava sa S , predstavlja
uniju svi njegovih oblija (likova). Na primjer, predpostavimo da jedan 2-simpleks S ima
tjemena x, y i z. Onda su likovi (oblija) od S : tri 1-simpleksa xy, xz i yz i tri 0-simpleksa
x, y i z. Granica od S je unija ovih likova (oblija), to na ovaj nain odgovara definiciji
uobiajene topologije skupa taaka.

Slika 3.35: Primjeri 0-, 1- i 2-simpleksa.

108

Simpleksi su gradivni blokovi veih (sloenijih) struktura, koje se nazivaju simplificirani


kompleksi (kompleksi simpleksa). Kompleksi su izvedeni od simpleksa na precizan
nain. Simplificirani kompleks C je konaan skup simpleksa koji zadovoljavaju uslove:
1. Oblije (lik) simpleksa u C je takoe u C.
2. Presjek dva simpleksa u C je ili prazan ili je takoe u C.
Slika 3.36 prikazuje primjere konfiguracija, od kojih su dva simplificirana kompleksa, a
dva nisu. U stvari, kompleksi na desnoj strani su formirani dodavanjem dovoljnog broja
vorova i ivica na konfiguracije sa lijeve strane, kako bi se zadovoljila pravila formacije
simplificiranih kompleksa, odnosno kompletirala topologija. U sluaju 2-simpleksa abc
i def, njihov presjek ne predstavlja lik (oblije) drugog simpleksa. Ovo je popravljeno
dodavanjem vorova k i l i dekompozicijom originalnih simpleksa abd i def u simplekse
akf, afb, bfc, cfl, fkl, dkl i del. Ovi simpleksi, du njihovih likova (oblija) ab, af, ak, bc,
bf, cf, cl, dk, dl, de, el, fl, fk, kl i tjemena (vertrksi) a, b, c, d, e, f, k, l, formiraju
simplificirani kompleks. Jedno-simpleksi u donjem dijelu slike su unaprijeeni na slian
nain, odnosno dodavanjem verteksa m.

Slika 3.36: Agregacije simpleksa

Skup taaka sadranih u konstituirajuim simpleksima simplificiranog kompleksa


predstavlja skup u Euclidovoj ravni, koji se naziva planarno ugraen (smjeten)
kompleks. Slika 3.37 prikazuje planarno ugraivanje gornjeg kompleksa sa slike 3.36.

Slika 3.37: Planarno ugraivanje simplificiranog kompleksa iz slike 3.46

ak iako mislimo da smo ovim dali apstraktnu prezentaciju simplificiranih kompleksa,


ovakve strukture se redovno koriste u naukama koje izuavaju prostore. Dimenzija
simplificiranog kompleksa predstavlja maksimalnu dimenziju od svih njegovih
konstituirajuih simpleksa. Za n-kompleks C, granica od C, to jest C predstavlja
109

simplificirani kompleks dimenzije n-1. Jednodimenzionalni kompleksi su grafovi, o


kojima e se vie diskutovati u narednoj sekciji. Dvodimenzionalni kompleksi se mogu
koristiti u modelu triangulacionih neregularnih mrea (TIN) koje se koriste za
modeliranje terena, ili bilo kakvih drugih povrina.
Drugaiji pristup kombinatornoj topologiji predstavlja pristup takozvane kombinatorne
karte. Veina GIS prektiara je bliska sa standardnom NAA (node-arc-area, vor-linijapovrina) reprezentacijom planarne konfiguracije, o kojoj e se diskutovati u 5. poglavlju.
Ova reprezentacija podrazumjeva topoloki opis planarnog objekta, na nain da su linije
povezane sa poligonima sa njihove lijeve i desne strane. Meutim, NAA reprezentacija je
uskraena od pune topoloke reprezentacije u najmanje dvije stvari:
1. Detaljnija povezanost objekta nije eksplicitno data. Na ovaj nain ne postoji
eksplicitna reprezentacija slabe, jake ili proste (jednostavne) povezanosti.
2. Ovakva reprezentacija nije vjerna u smislu da dvije razliite topoloke
konfiguracije mogu imati istu reprezentaciju.
Kombinatorna karta pokuava na neki nain da zadovolji ova dva nedostatka. Problem je
u tome to jedan isti oblik moe biti vien na razliite naine. Posmatrajmo slabo
povezano elijsko ureenje na slici 3.38. Da li je to krug sa uklonjenom elipsom ili unija
dviju figura mjeseevog oblika?

Slika 3.38: Dvosmislenost u reprezentaciji objekta u ravni

Pojam kombinatorne karte pomae u ovom smislu. Pretpostavimo da je granica elijskog


ureenja dekomponovana na proste linije i vorove koji formiraju mreu. Pridruimo
pravac svakoj liniji tako da se (kretanjem du linije) objekat ogranien linijom nalazi sa
njene desne strane. Na ovaj nain objekat ima graninu mreu kao to je prikazano na
slici 3.39. Potrebno je obezbjediti pravilo poretka slijedeih linija: nakon praenja linije
do vora, zaokrenimo u smjeru suprotnom kazaljci na satu oko vora i nastavimo prvom
neposjeenom (nekoritenom) vanjskom linijom. Pretpostavimo da putovanje poinjemo
od x i idemo du linije 1. Kada stignemo u y zarotirajmo oko y u smjeru suprotno od
kretanja kazaljke na satu, traei prvu vanjsku graninu liniju. Ovo je linija 2. Kada se
vratimo na x, odaberimo liniju 1. Linija 1 je ve na naoj listi (kruenju), tako da se
postupak nastavlja. Poinjemo sa linijom kojom se nije putovalo i ponavljamo postupak
kruenja. Kada vie nema linija kojim se nije putovalo, postupak se zaustavlja. Na ovaj
nain su naena dva ciklusa 1, 2 i 3, 4.

110

Slabo povezani objekat na slici 3.39 je reprezentovan kao unija dviju figura mjeseevog
oblika, od kojih je svaka homeomorfna jednoj eliji. Mogue je pokazati da za bilo koju
elijsku konfiguraciju, kombinatorna karta obezbjeuje skup ciklusa, od kojih svaki
odgovara participirajuoj (komponentnoj) eliji te konfiguracije. Na ovaj nain
reprezentacija je jedinstvena i nedvosmislena.

Slika 3.39: Usmjereni grafikon povezan sa objektom objektom na slici 3.38

3.4 Mreni prostori


Veliki broj mnogih geografskih problema moe biti reprezentovan pomou mree. Na
primjer, sistem puteva ili eljeznikih veza je esto povezana u vidu mree. esto se
rijeava problem najpovoljnije rute izmeu dva vora u mrei. Nekoliko uvenih
prostornih problema je rijeeno zahvaljujui njihovoj mrenoj reprezentaciji, kao to je,
na primjer, problem Kningsbergskog mosta. U narednom izlaganju se uvodi graf kao
formalni mreni model, poevi sa apstraktnim grafovima pa prelazei do definicije
pojma planarnog grafa.
Problem Kningsbergskog mosta: Ovaj problem se bavi pitanjem da li je mogue etati
putanjom koja presjeca svaki od sedam mostova (prikazanih na slici) u gradu Kningsbergu
samo jedanput. Moete sami pokuati pronai ovu rutu. Meutim, ne pokuavajte dugo traiti
rjeenje, jer je 1786 godine matematiar Leonard Euler uspio dokazati da je zadatak nemogue
rijeiti. Eulerov dokaz je zasnovan na modelu topolokih relacija izmeu Kningsberskih
mostova (na slici desno). vorovi, oznaeni sa w, x, y i z, su apstrakcije suhih regiona. Rubovi
izmeu vorova su apstrakcije mostova koji povezuju ove regione. Euler je primjetio da osim
poetne i zavrne take, putanja kroz neki vor mora doi du jednog ruba i napustiti ga du
drugog ruba. Dakle, ukoliko je problem rijeiv, onda broj rubnih incidenata sa vorom izmeu
njih mora biti paran. Meutim, u Kningsbergu nijedan od vorova nije sluaj sa parnim brojem
rubova (svi vorovi povezuju po tri ruba). Na ovaj nain, Euler je dokazao da je nemogue svaki
od mostova prei samo jednom.

111

Ilustracija mrene prezentacije problema Kningsbergskog mosta

3.4.1 Apstraktni grafovi


Graf G je definisan kao konaan neprazan skup vorova zajedno sa skupom neureenih
parova razliitih vorova (takozvanih rubova). Ako su x i y vorovi od G, a e=xy je rub
od G, onda se za e kae da povezuje x sa y, odnosno e je incident sa x i y. Na slian nain,
x i y su incident sa rubom e.
Graf je visoko apstrahovani model prostornih relacija, i predstavlja samu povezanost
izmeu elemenata u prostoru. Meutim, u mnogim situacijama takav model moe biti
veoma koristan, posebno ukoliko omoguimo neka proirenja, kao to su:

Usmjereni (direkcioni) graf je graf u kojem su rubovima doznaeni smjerovi.


Usmjereni rubovi su na dijagramu obino indicirani linijama sa strelicama.
Oznaeni (labelirani) graf je graf u kojem je svakom rubu dodjeljena oznaka
(labela) koja moe biti broj ili naziv. Ovakve oznake (labele) su na dijagramu
obino indicirane uz odgovarajue rubove.

Moe se lako zamisliti koliko je koristan usmjereni graf u modeliranju putne mree u
centru grada u kojem postoji mnogo jednosmjernih ulica. Sa oznaenim grafom se takoe
mogu modelirati mnoge situacije, kao na primjer, duina i vrijeme putovanja, ili
saobraajno optereenje pojedinih dionica u mrei.
Spojevi u grafu se obino prikazuju pomou dijagrama. Graf G na slici 3.40 se sastoji od
est vorova a, b, c, d, e i f, i devet rubova ab, ac, af, bd, be, cd, ce, df i ef. Stepen nekog
vora je broj rubova koji su za njega incident. Na taj nain, stepen svih vorova u grafu G
je tri. Putanja izmeu dva vora je povezani niz rubova izmeu ta dva vora i obino se
obiljeava vorovima kroz koje prolazi. Primjeri putanje izmeu vorova a i d u G su afd,
acd, abd i abecafd. Povezani graf je graf u kojem postoji putanja izmeu bilo koja dva
njegova vora (G je povezan graf).

Slika 3.40: Graf G sa 6 vorova i 9 rubova

112

Ako dva grafa prikazuju potpuno iste relacije povezanosti, za njih se kae da su
izomorfni. Ponekad se izomorfizam moe teko otkriti, poto sam graf moe biti prilino
zamren (zamaskiran). U ovom smislu, graf H na slici 3.41 je izomorfan za graf G na
slici 3.40, poto on ima tano iste vorove i rubove. U ovom sluaju, situacija se moe
uiniti jasnijom oznaavanjem (labeliranjem) vorova, ime se pokazuje izomorfizam.

Slika 3.41: Graf H koji je izomorfan grafu G na slici 3.40

Putanja od jednog vora do samoga sebe preko najmanje jednog ruba se naziva ciklus.
Primjeri ciklusa u G (ili H) su abeca i abdfeca. Ciklus kojim se svaki vor posjeuje
samo jednom (kao abdfeca na slici 3.41) se naziva Hamiltonovom krunom putanjom.
Graf koji nema ciklusa se naziva aciklinim grafom. Posebno korisnu klasu grafova
predstavlja stablo (drvo). Stablo je povezani aciklini graf. Slika 3.42 prikazuje 3
neizomorfna stabla sa po pet vorova.

Slika 3.42: Tri neizomorfna stabla sa po pet vorova

Ukorjenjeno stablo (stablo sa korijenom) je stablo kojem jedan od njegovih vorova


predstavlja korijen, u emu se razlikuje od ostalih. Ukorijenjena stabla (esto se izostavlja
rije ukorijenjena) se po konvenciji crtaju sa korijenom u vrhu i vorovima koji
popunjavaju donje nivoe, u zavisnosti od njihove udaljenosti (u smislu putanje) od
korijena. vorovi koji su odmah ispod korijena se nazivaju najbliim (prvim) potomcima
korijena. Ovi vorovi mogu i sami imati svoje potomke i tako dalje. vor koji nema

113

potomaka se naziva listom. Slika 3.43 prikazuje primjer raslojenog ukorijenjenog stabla.
Stabla obezbjeuju neke korisne strukture podataka u raunarstvu (kojim emo se vratiti
u kasnijim poglavljima).

Slika 3.43: Ukorijenjeno stablo sa pet nivoa i osam listova

Pojmove putanje i ciklusa je mogue proiriti i na usmjerene grafove. Na ovaj nain, od


vora a do vora b postoji usmjerena putanja, ako postoji niz ispravno orijentisanih
usmjerenih rubova koji vode od a do b. Stoga, usmjereni ciklus je usmjerena putanja od
nekog vora do samoga sebe. Klasa usmjerenih grafova koji nemaju ciklusa je od
posebnog znaaja za veliki broj raznih aplikacija. Ovi grafovi se nazivaju usmjerenim
aciklinim grafovima (DAG directed acyclic graphs). DAG definie djelimini poredak
(parcijalno ureenje) nad njegovim vorovima. Ovakvo ureenje predstavlja posebnu
formu relacija u skupu, koje su nerefleksivne, antisimetrine i tranzitivne. Tranzitivne
relacije (ako je x relativno sa y, y relativno sa z, onda je i x relativno sa z) su ve opisane.
Nerefleksivne i antisimetrine relacije su definiu na slijedei nain:

Relacija je nerefleksivna ako svaki elemenat skupa nije relativan (nije u relaciji)
prema samom sebi.
Relacija je antisimetrina ako za svaki par elemenata, x i y, vrijedi da ako je x
relativno prema (u relaciji sa) y onda y nije relativno prema (u relaciji sa) x.

Primjer parcijalnog ureivanja je relacija vei od izmeu dva realna broja. Ova relacija
je nerefleksivna, antisimetrina i tranzitivna, jer ni jedan broj nije vei od samoga sebe
(nerefleksivna relacija). Dalje, ako je x vee od y, nije mogue da y bude vee od x
(antisimetrina relacija). Na kraju, ako je x vee od y i y vee od z slijedi da je x vee od z
(tranzitivna relacija).
Ako definiemo takvu relaciju R gdje (a, b) R koja znai postoji putanja od a do b,
onda se za DAG grafove moe pokazati da ova relacija predstavlja parcijalno ureenje.

3.4.2 Planarni grafovi


Posmatrajui graf koji je smjeten u Euclidovu ravan, teorijski model grafa se moe
proiriti sa narednim nivoom informacija. Planarni graf je graf koji se moe smjestiti u
neku ravan na nain da ouva svoju strukturu. Na ovaj nain, rubovi planarnog grafa u
ravni se predstavljaju linijama koje (za koje se moe ostvariti prikaz da) se mogu

114

presjecati jedino u vorovima grafa. Slika 3.44a prikazuje planarni graf dok slika 3.44b
prikazuje neplanarni graf. Za neplanarni graf na slici 3.44b nije mogue preurediti linije u
ravni na nain da se sauva izvorna povezanost, bez presjecanja rubova igdje drugo osim
u voru.

Slika 3.44: Planarni i neplanarni graf

Openito, moe postojati vie topoloki neekvivalentnih planarnih varijanti prikaza nekog
planarnog grafa u ravni. Slika 3.45 prikazuje tri ovakva prikaza planarnog grafa iz slike
3.44. Gornja dva su homeomorfna, ali nisu homeomorfni sa najniim prikazom, u smislu
uobiajene topologije Euclidove ravni. Nema naina da se topolokim transformacijama
(geometrija gumene opne) vor drugog stepena, koji se nalazi unutar trougla, pomjeri
na poziciju izvan trogla.
Ova diskusija pobuuje interesantno razmatranje. Konfiguracije koje su uzete kao
ekvivalentne u jednom modelu mogu itekako biti neekvivalentne u drugom. Druga i trea
konfiguracija na slici su ekvivalentne u smislu teorije grafova, jer su obje identino
povezane. Meutim, one su neekvivalentne u topolokom smislu (a sigurno i u
metrinom smislu). Sve ovo zavisi od nivoa apstrakcije. Planarna implementacija nekog
planarnog grafa podrazumjeva podjelu ravni u oblija (figure, likove) ili regione. Prosta
ogranienja vezana za integritet planarnih grafova pomenuta u ranijem izlaganju su data
Eulerovom formulom za ravan, koja opisuje relaciju izmeu broja tjemena (vorova) n,
ivica (linija) a i oblija (figura) f, kao f a + n =1.

Slika 3.45: Tri prezentacije (naina ugraenosti) planarnog grafa u ravni

115

Veoma koristan koncept vezan za implementaciju planarnih grafova jeste koncept


dualiteta (dvojnosti). Dualni graf (dual) G* od planarnog grafa G se dobija
povezivanjem vora iz G* sa svakom povrinom (figurom) iz G. Dva vora u G* su
povezana ivicom, ako i samo ako su njihove odgovarajue povrine susjedne. Za datu
ivicu e u grafu G, dualna ivica e* od ivice e spaja vorove u G* koji odgovaraju dvijema
povrinama u G koje su incidentne sa e. Slika 3.46 prikazuje planarni graf (vorovi
ispunjeni crno, ivice obiljeene punim linijama) i njegov dualitet (vorovi nisu ispunjeni,
ivice su isprekidane linije).
Kada planarni graf G predstavlja dijagonalnu triangulaciju od poligona (bez Steinerovih
taaka), onda dualni graf G* ima osobine da stepen svakog vora nije vei od 3 (jer
trouglovi imaju 3 strane), i da je G* aciklian i povezan graf, odnosno da je drvo graf.

Slika 3.46: Graf i njegov dualitet

3.5 Metrini prostori


Izlaganje koje slijedi istrauje osobine prostornog modela kada je primjenjen koncept
rastojanja izmeu objekata u protoru. Ovakav prostor se naziva metrini prostor.
Prezentirae se formalne definicije, pri emu treba imati na umu da one nisu uvijek
saglasne sa naom uobiajenom predstavom udaljenosti (duine).
Za skup taaka S kaemo da je metrini prostor ukoliko postoji takva funkcija udaljenosti
d, koja (uzimajui) ureene parove (s, t) od elemenata iz skupa S transformie (ih i vraa)
u (kao) udaljenost d, pri emu zadovoljava slijedea tri uslova:
1. Za svaki par s, t iz S, vrijedi d(s, t) > 0 ako su s i t razliite take, a d(s, t) = 0, ako
su s i t identine take.
2. Za svaki s, t iz S, udaljenost od s do t je jednaka udaljenosti od t do s, odnosno
d(s, t)= d(t, s).
3. Za svaki trojku (s, t, u) iz skupa S, suma udaljenosti od s do t i od t do u je uvijek
najmanje jednaka udaljenosti od s do t, to jest: d(s, t) + d(t, u) d(s, u).
Govorei vie neformalnim jezikom, prvi uslov kae da udaljenost (duina) izmeu
taaka mora biti pozitivan broj, osim ako take nisu iste, u kojem sluaju e udaljenost
biti 0. Drugi uslov osigurava da je udaljenost izmeu dvije take neovisna o smjeru
mjerenja izmeu njih. Trei uslov kae da je put izmeu dvije take preko neke tree
take dui ili najmanje iste duine u odnosu na direktnu udaljenost izmeu njih.

116

U cilju motivacije boljeg poimanja ove definicije, u narednom izlaganju su date neke
mogue funkcije udaljenosti koje se razmatraju u kontekstu navedena tri uslova. Na
primjer, posmatrajmo skup gradova S na Zemljinoj povrini (globusu) i udaljenost
(duinu) izmeu dva grada iz S definisanu na slijedee naine (slika 3.47):
Geodetska udaljenost: To je udaljenost koja je u navedenom primjeru priblino opisana
putanjom koja nastaje presjekom Zemljine povrine i njoj vertikalne ravni koja
prolazi kroz centre dva grada (i sredita Zemlje).
Sferna Manhattan udaljenost: Termin Manhattan udaljenost je nastao kao asocijacija
na ortogonalnu ureenost mree ulica u Manhattanu. Posmatrajuu u ravni,
Manhatan udaljenost jednostavno predstavlja zbir koordinatnih razlika po x i y
izmeu dvije take u ravni. Analogno tome, sferna Manhattan udaljenost
predstavlja zbir koordinatnih razlika po geografskoj irini i duini.
Geografska irina i duina: Mnogi modeli koji se pominju u izlaganju se zasnivaju na planarnoj
reprezentaciji. Ravna povrina je korisna aproksimacija Zemljine povrine na kraim
udaljenostima. Meutim, Zemlja nije ravna, tako da je za due udaljenosti potreban drugaiji
oblik aproksimacije. Najee se kao takav oblik koristi lopta (sfera). Njena povrina je
dvodimenzionalna (i pored toga to je definisana u Euclidovom trodimenzionalnom prostoru), jer
se svaka taka na njoj moe predstaviti pomou dvije brojane vrijednosti. Poznat i iroko
primjenjen sistem koordinata za prezentaciju taaka na povrini sfere su geografska irina i
duina. Na slici ispod su sa slovima O, P i Q oznaeni koordinatni poetak, proizvoljna taka na
sferi i njena projekcija na xy ravan, respektivno. Ugao izmeu OP i OQ je irina take P. Ugao
izmeu OQ i x ose je duina take P. Veliki krug lopte koji lei u xy ravni je ekvator, a veliki krug
u xz ravni je meridijan. Uobiajena topologija sferne povrine je slina uobiajenoj topologiji
Euclidove ravni.

Ilustracija sistema kooordinata sa geografskom irinom i duinom

Udaljenost trajanja puta: Ova udaljenost je opisana minimalnim trajanjem putovanja


izmeu dva grada.
Leksikografska udaljenost: Apsolutna vrijednost razlike izmeu poloaja gradova opisana
listom toponima (naziva mjesta kroz koja se prolazi) se naziva leksikografskom
udaljenosti.

117

Slika 3.47: Geodetska, Manhattan i leksikografska udaljenost sa udaljenou trajanja puta

Prvo svojstvo metrinog prostora nije nimalo proturijeno, i zadovoljeno je od bilo koje
funkcije udaljenosti. Osjetljivim vrijednostima za udaljenost (bliskim nuli) nije
dozvoljeno da budu negativne. Takoe, udaljenost izmeu nekog elementa i samog sebe
je uvijek jednaka nuli, dok je udaljenost izmeu razliitih elemenata uvijek vea od nule.
Sve funkcije udaljenosti u izloenom primjeru gradova zadovoljavaju ove osobine.
Drugo svojstvo specificira da je u metrinom prostoru udaljenost simetrina, to jest, da je
udaljenost od a do b uvijek ista kao i od b do a. Geodetska, Manhattan i leksikografska
udaljenost zadovoljavaju ovaj uslov. Meutim, udaljenost trajanja puta nije simetrina.
Na primjer, jasno je mogue (i ak uobiajeno zbog uticaja rue vjetrova) da vrijeme
avionskog leta izmeu gradova bude razliito u pojedinim smjerovima. Funkcija
udaljenosti koja posjeduje prvu i treu, ali ne drugu osobinu se naziva kvazimetrinom.
Tree svojstvo se naziva triangulaciona nejednakost zbog konfiguracije prikazane na
slici 3.48. Jednostavnim rjenikom, iz triangulacione nejednakosti slijedi da je uvijek
blie ii direktnim putem u odnosu na indirektni (okolni) put. Sve prethodno navedene
udaljenosti ispunjavaju triangulacionu nejednakost.

Slika 3.48: Triangulaciona nejednakost

118

Dakle, kolekcija gradova zajedno sa funkcijom geodetske, Manhattan i leksikografske


udaljenosti predstavljaju tri metrina prostora. Kolekcija gradova sa funkcijom
udaljenosti vremena putovanja je kvazimetrini, a ne metrini prostor. Tipian primjer
metrinog prostora je Euclidov prostor, gdje je udaljenost izmeu dvije take definisana
ve pomenutom Pitagorinom formulom. Ova funkcija udaljenosti se moe jednostavno
proiriti i za vie dimenzija. Kao naredni primjer prostora (koji nije metrini), moe se
uzeti ravan teren (bez uticaja vjetrova) sa djelimino pogodnim (travnatim) djelovima za
etanje i teko prohodnim (stjenovitim) dijelovima prostora. Funkcija udaljenosti je
definisana prosjenim vremenom potrebnim za prelazak (pravolinijskim kretanjem) od
jedne do druge take. Moe se primjetiti da ova funkcija ispunjava uslove prvog i drugog
svojstva, sa mogunou da ne ispunjava uslov treeg svojstva metrinog prostora.
Odnosno, u navedenim okolnostima u ovom prostoru se moe desiti sluaj da je znatno
bre kretanje zaobilaenjem stjenovitog dijela prostora nego prelaskom preko njega (slika
3.49). Na ovaj nain triangulaciona nejednakost nije podrana, te ovakav prostor nije
simetrian.

Slika 3.49: Prostor sa funkcijom udaljenosti trajanja puta koji nije metrian

3.5.1 Topologija metrinih prostora


Ispostavlja se da metrini prostor ima prirodnu toplogiju. Neka je S metrini prostor sa
funkcijom udaljenosti d. Za svaku taku x u S i svaki realni broj r, moemo definisati
otvorenu loptu B(x, r) kao skup taaka ija je udaljenost od take x manja od broja r, to
se moe formalno izraziti kao:
B(x, r) = {yd(y, x) r}
Definiimo skup susjedstva kao skup otvorenih lopti. Nije teko utvrditi da ovo definie
topologiju za S. U sluaju Euclidove metrike, ovaj primjer se reducira na uobiajenu
topologiju Euclidove ravni. U sluaju Manhattan metrike, otvorena lopta B(x, r) sadri
sve take za koje je suma horizontalnih i vertikalnih udaljenosti (odnosno razlika duina
po jednoj i drugoj koordinati) od x manja od r. U sluaju Manhattan metrike primjenjene
na prostor ravne povri, otvorene lopte B(x, r) e biti kvadrati sa dijagonalom 2r, kako je
prikazano na slici 3.50.
Metrika vremena (trajanja) puta ima neke vrlo interesantne osobine. Vidjeli smo
openito, da ona ne vodi metrinom prostoru, jer po pravilu nije simetrina (na primjer,
sistem jednosmjernog saobraaja). Napravimo za trenutak pojednostavljenu pretpostavku
da su udaljenosti vremena puta simetrine. Ovome odgovara topologija vremena puta

119

koja je prethodno opisana u okviru Ope topologije skupa taaka. U ovom sluaju,
raunanje topolokih susjedstva moe biti jasnije. Slika 3.51 prikazuje susjedstvo trajanja
puta (t-zona) kojeg je kao primjer razmatrao Tobler (1993.). Siva regija prikazuje
povrinu unutar 1-satnog trajanja puta od centra (oznaenog zvjezdicom). Ovo susjedstvo
nije povezano, tako da predstavlja uniju konanog broja razdvojenih elija. Ovakav tip
uzorka je nastao zbog diskontinuirane prirode putovanja sredstvima javnog saobraaja.
Kao to je i Tobler zakljuio, ovakva konfiguracija vremena puta nije podlona
modeliranju u okviru Euclidovog prostora. Ovakvi problemi nas prisiljavaju na koritenje
mrenih modela. U narednim poglavljima e biti vie govora o ovoj temi.

Slika 3.50: Otvorena lopta u sluaju Manhattan metrike

Slika 3.51: Susjedstvo vremena puta. Sive regije prikazuju dijelove u koje se moe stii u unutar vremena
od 1 sata, ukoliko bi se koristila kombinacija prevoza tramvajem, autobusom i pjeice.

120

3.6 Fraktalna geometrija


Pojave i karakteristike mnogih geografskih i prirodnih fenomena, poput krajolika ili
obala, zavise od razmjere u kojoj se ovi fenomeni opaaju, to se naziva zavisnot od
razmjere. Na primjer, slika 3.52 prikazuje satelitsku sliku delte rijeke Gang u Bangladeu
u tri razliite razmjere. Na svakoj krupnijoj razmjeri se otkriva sve vie detalja. tavie,
detalji u krupnijoj razmjeri imaju tendenciju da lie detaljima u sitnijoj razmjeri, to se
naziva samoslinost. Na slici 3.52 zemljine forme i vijugavost rijeka su slini u svakoj
razmjeri, to oteava ocjenu veliine zemljinih oblika na ovoj slici. Razmjera na slikama
je namjerno izostavljena i na prvoj slici je dat prikaz za povrinu sa dijagonalom od 100
milja, a za treu od 10 milja. Zamislimo da moemo nastaviti proces uveanja ove slike,
odnosno viestrukog zumiranja, ak i do mikriskopskih razmjera. Za svaku razmjeru bi se
otkrivao novi detalj i njegova samoslinost (slinost sebi).
Prave linije i glatke krive Euclidove geometrije nisu posebno pogodne za modeliranje
samoslinosti i skalarne zavisnosti. Poljski matematiar Benoit Mandelbrot (1982.) je
ustanovio da fundamentalno razliit tip geometrije, kojeg on imenuje fraktalnom
geometrijom, osigurava bogatiju reprezentaciju ovakvih prirodnih i geografskih pojava.
Fraktalna geometrija se bavi prouavanjem oblika, koji se nazivaju fraktali, koji su
samoslini (ponavljaju se) u svim razmjerama. Iako je fraktal skoranji termin,
fraktalni oblici i problemi koje oni stvaraju matematiarima su poznati stotinama godina.
Teorema Jordanove krive. Francuski matematiar Camille Jordan je 1887.godine formulisao
uvenu teoremu o prostim petljama, danas poznatu kao teoremu Jordanove krive. Teorema kae
da, za bilo koju datu prostu petlju (zatvorenu krivu), njen komplement nije povezan, nego je
podjeljen na dvije povezane komponente, od kojih je jedna ograniena (i zove se unutranjost
petlje), a druga je neograniena ( i zove se spoljanjost petlje). Ovo pravilo izgleda toliko oito
da spada u one stvari koje se smatraju otkrivanjem tople vode. Meutim, vrlo je teko za njega
pruiti uvjerljiv dokaz. Problem lei u velikom broju pojava raznovrsnih oblika, ukljuujui i neke
fraktale, koji se kvalificiraju kao petlje. Na primjer, Kochova pahulja na slici 3.53 predstavlja
petlju, ali nema definisan nagib ni u jednoj pripadajuoj taki. Tehniki, ona nigdje nije
diferencijabilna (vidi slijedee poglavlje). Istraivaki napori motivisani potrebom za
dokazivanjem teoreme Jordanove krive su rezultirali razvojem tehnika koje su bile instrumenti
stvaranja topologije kao jedne od glavnih matematikih oblasti. Ova teorema ima praktinu
primjenu na polju GIS-a i smatra se temeljnom za primjenu operacije take-u-poligonu
(opisanom u petom poglavlju).

Fraktali su samoslini (slini sebi) jer su definisani rekurzivno, a ne direktnim


opisivanjem svog oblika. Na primjer, na slici 3.53 su prikazana prva etiri koraka u
konstrukciji uvenog fraktala, Kochove pahulje (po vedskoj matematiarki Helge von
Koch). Konstrukcija Kochove pahulje poinje sa jednakostraninim trouglom, i ova faza
se naziva korakom inicijatora. Zatim se svaka prava linija dijeli na tri jednaka dijela.
Srednji dio svake linije se zamjenjuje sa novim jednakostraninim trouglom, koji je
odgovarajue razmjere i bez osnovice. Ova faza se naziva korakom generatora. Kochova
pahulja predstavlja rezultat beskonanog broja iteracija generatorskog koraka. Bez obzira
na razmjeru prikaza Kochove pahulje, za nju je uvijek prikazan isti nivo detalja.

121

Slika 3.52: Prikaz delte rijeke Gang sa tri nivoa detalja (NASA Landsat-7, 2000.)

122

Slika 3.53: Prva etiri koraka konstruisanja Kochove pahulje

Prosti fraktali poput Kochove pahulje obrazuju korisnu analogiju prirodnim samoslinim
pojavama. Kompleksniji fraktali mogu proizvesti oblike koji izgledaju mnogo
realistinije. Slika 3.54 prikazuje sintetiki fraktalni krajolik. Poput Kochove
pahulje, ovaj krajolik (ukljuujui oblake i vodu) je rezultat rekurzivne primjene
generatora fraktalnog uzorka. Generatorski korak Kochove pahulje u biti predstavlja
transformaciju slinosti, koja sa svakom iteracijom uvodi kopiju originalnog oblika
srazmjernu jednoj treini veliine iz prethodne iteracije. U tom smislu, da bi bili
samoslini, fraktali poput onih na slici 3.54 su samoafini (afini sami sebi). Samoafini
fraktali se konstruiu koritenjem afinih transformacija unutar generatora, tako da se osim
promjene razmjere koriste rotacija, refleksija i razvlaenje (podsjetimo se na navod iz
sekcije 3.1.4 koji kae da su sve afine transformacije takoe i transformacije slinosti).
Osim to se koristi za izradu interesantnih prikaza, fraktalna geometrija ima brojne
ozbiljnije primjene u GIS-u. Jedan od jednostavnih primjera koritenja fraktala u GIS-u
predstavlja kartografska simplifikacija i poboljavanje (detaljnosti). Za proizvodnju
karata u odreenom rangu razliitih razmjera, esto je vana primjena tehnike
generalizacije, odnosno smanjenja (ili ponekad i poveanja) nivoa detalja prilikom
prezentacije geoprostornih podataka, zadravajui pri tome bitne karakteristike samog
prikaza objekata (na primjer, krivudavost linije). Na primjer, za aproksimaciju oblika
rijeke, kao fraktal se jednostavno moe generisati reprezentacija iste ove rijeke sa
proizvoljnim nivoima detalja, pri emu simplifikacija podrazumjeva manji, a
poboljavanje vei nivo prikaza detalja.
Druge primjene fraktala se esto zasnivaju na konceptu fraktalne dimenzije. Fraktalna
dimenzija je vana osobina fraktala, koja obezbjeuje mjerenje stepena do kojeg je novi
detalj otkriven za razliite razmjere prikaza. Fraktalna dimenzija nekog oblika lei negdje
izmeu Euclidovih dimenzija samog oblika koji se posmatra i dimenzija njemu
pripadajueg prostora. Na primjer, fraktalna dimenzija Kochove pahulje na slici 3.53 lei
izmeu 1 (dimenzija linije, jer je oblik predstavljen linijom) i 2 (dimenzija Euclidove
ravni, u kojoj oblik egzistira). U stvari fraktalna dimenzija Kochove pahulje je preciznije
izraena vrijednou 1,26. Fraktalna dimenzija predstavlja indikator kompleksnosti
oblika. Oblik sa veoma visokom fraktalnom dimenzijom je dovoljno kompleksan da
skoro u potpunosti ispuni cijeli prostor u kojem se nalazi. Na primjer kriva sa fraktalnom
dimenzijom od 1,8 skoro da u potpunosti ispunjava ravan. U ovom smislu, fraktali su
esto povezani sa osobinom prostorne popunjenosti. Karateristike prostorne popunjenosti
fraktala su korisne za indeksiranje geoprostornih informacija, koje e se diskutovati u
estom poglavlju.

123

Slika 3.54: Sintetiki fraktalni krajolik

Fraktalna dimenzija se moe koristiti kao metrika za opisivanje geografskog oblika.


Fraktalna dimenzija rijeke se moe koristiti kao indikator geomorfolokoh i hidrolokih
procesa koji su uzrokovali njenu formaciju, odnosno uticali na formiranje njenog
geometrijskog oblika. Na slian nain se koristi analiza fraktalne dimenzije u ekologiji
zemljine povri za procjenu kompleksnosti geoprostornih ekolokih karakteristika, kao
to su biljna ili ivotinjska stanita. Fraktalna dimenzija istinskog fraktalnog oblika,
poput Kochove pahulje, se moe odrediti teoretskom analizom fraktalnog generatora.
Meutim, fraktalne dimenzije prirodnih geografskih pojava, poput rijeka, terenskih
povrina ili ivotinjskih stanita, se moraju odreivati empirijskim putem. Ovakva
empirijska mjerenja fraktalnih dimenzija su krajnje nepouzdana i zahtjevaju paljivu
analizu.

124

125

4
4 Modeli geoprostornih informacija
Kratak pregled
Model definie reprezentaciju dijelova jedne domene u drugu. U GIS-u su modeli
neophodni za definisanje relacija izmeu nae geografske okoline (izvorna domena) i
reprezentacije ove okoline u raunaru (ciljna domena). Ovo poglavlje prouava dvije
osnovne klase modela visokog nivoa za GIS: onog zasnovanog na neprekidnom polju i
objektno baziranog modela. Model zasnovan na polju tretira prostor kao apsolutni okvir
unutar kojeg su mjereni odreeni atributi. Objektno bazirani model tretira prostor kao
jednu relativnu konstrukciju definisanu objektima koji je konstituiu.
Fundamentalni koncepti baze podataka i prostorni koncepti koji su izloeni u predhodna
dva poglavlje predstavljaju neophodne raunarske i geometrijske osnove za pohranjivanje
i upravljanje geoprostornim informacijama pomou raunara. Meutim, GIS ini i vie
od prostog pohranjivanja i procesiranja geometrije. Geoinformacioni sistemi i
geoprostorne informacije koriste modele (visokog nivoa apstrakcije) geografskog svijeta
oko nas.
Ovo izlaganje zapoinjemo sa problematikom vezanom za predmet modeliranja, a zatim
se definie pojam modela i ispituju procesi modeliranja. Nakon ovoga se detaljno
istrauju dva prostorna modela visokog nivoa apstrakcije, koji su karakteristini za GIS:
model polja i model objekata. Efekti adaptacije ovih modela mogu imati dalekosene
implikacije na strukturu prostornih podataka i njenu implementaciju, kao i na samo
razumjevanje geoprostornih podataka.

4.1 Modeliranje i ontologija


Prije nego to preemo na sam proces modeliranja, pokuajmo prvo precizno specificirati
ta je to to pokuavamo modelirati. U GIS-u smo primarno zainteresovani za
modeliranjem dijelova geografskog svijeta (prostora), koji se sastoji od entiteta koji nisu
ni u kosmikoj, ni u mikroskopskoj razmjeri, nego su to srednjorazmjerni entiteti iz naeg
normalnog iskustva (podsjetite se na diskusiju ta je prostor s poetka treeg
poglavlja). Precizna analiza onoga to konstituie svijet je posao kojim se bavi ontologija,
odnosno studija o opoj klasifikaciji i relacijama izmeu onih stvari koje ine svijet.
Na primjer, osnovna ontoloka distinkcija lei u podjeli svijeta na one entitete koji imaju
trajanje ili stalnost egzistencije kroz vrijeme, i onih koji se povremeno pojavljuju. U prvu
kategoriju moemo svrstati, radni sto, ili grad u kojem ivimo, dok u drugoj imamo
fudbalsku utakmicu, pojavu erozije ili neiji ivot. Drugim rijeima, u prostom smislu

126

svijet se dijeli na objekte - kontinuente (continuants) i dogaaje i procese - okjurente


(occurerents).
Objekti (kontinuenti) se dalje mogu kategorizirati kao substance, dijelovi substanci,
agregati substanci, lokacije za substance i osobine substanci. Na ovaj nain Zemlja
konstituie substancu, povrina Zemlje je dio Zemlje, Solarni sistem je agregacija svih
planeta Sunevog sistema, SAD predstavljaju lokaciju, a ukupna povrina Zemlje je
osobina Zemlje. Kategorizacija dogaaja i procesa (okjurenti) e biti tema 10. poglavlja.
Primjer ontoloke distinkcije, posebno relevantne za geografske pojave, je razlika izmeu
fiat (proglaenih, uspostavljenih) i bona fide (stvarnih) granica.
Fiat i bona fide granice: Filozof Barry Smith(1995.) je predstavio ontoloku distinkciju izmeu
fiat i bona fide granica. Fiat granice su one granice koje su uspostavljene kao rezultat ljudskog
razumjevanja, dok bona fide granice postoje kao rezultat fizikih diskontinuiteta u stvarnosti,
odnosno nezavisno od ljudskog razumjevanja. Geopolitike granice, kao to je granica izmeu
kotske i Engleske, su dobar primjer fiat granica. Morske obale, rijeke ili zidovi su primjeri bona
fide geografskih granica. Ponekad se fiat i bona fide granice koencidiraju. U Rimskoj Britaniji,
granica izmeu kotske i Engleske (fiat granica) je oznaena Hadrijanovim zidom (bona fide
granica), iji ostatci i danas postoje, iako se oni, zbog brojnih promjena fiat granice u proteklih
2000 godina, nalaze u potpunosti unutar Engleske. Ontoloke distinkcije, kao to su ove izmeu
fiat i bona fide granica, nastoje uspostaviti klasifikaciju stvarnog svijeta bez vezanja za bilo koju
pojedinanu aplikacionu domenu. ta vie, fiat i bona fide granice nisu ograniene samo na
geografske entitete. Koa obrazuje bona fide granicu oko ljuskog tijela, dok granica izmeu glave
i vrata predstavlja fiat granicu.

Ontologija je prvenstveno filozofska disciplina, iako ona, u neto drugaijem poimanju


svijeta, takoe predstavlja i vaan predmet prouavanja u vjetakoj inteligenciji i
raunarstvu. Iako se ne oekuje da svi dizajneri modela trebaju biti filozofi, ipak postoji
neka osnovna ontoloka sofistikacija koja je komplementarna aktivnostima vezanim za
modeliranje. Razumjevanje osnovnih ontolokih distinkcija moe pomoi da se izbjegnu
neki osnovni propusti prilikom modeliranja. Tipine greke pri modeliranju nastaju zbog
nedostatka ontoloke svijesti, koja ukljuuje razlikovanje entiteta iz stvarnog svijeta, od
entiteta iz informacionog sistema, kao i razlikovanje substanci od njihovih osobina. Tako,
na primjer, termini uma, poloaj ume i umovitost (tip pokrivenosti zemljita)
pripadaju razliitim ontolokim kategorijama.
U kontekstu informacionog sistema, prouavanje ontologije je na neki nain analogno
modeliranju podataka. Kljuna razlika izmeu ontologije i modeliranja podataka je u
tome to je cilj ontologije da razvije openitu taksonomiju onoga to postoji, a cilj
modeliranja je da razvije klasifikaciju unutar pojedine aplikacione domene. Na ovaj
nain, distinkcija izmeu supstance i osobine nije predmet modeliranja podataka, iako za
njega igra vanu ulogu. Sa druge strane, odluka da li put u navigacionom sistemu treba
predstaviti polilinijom ili povrinom je pitanje izrade modela podataka, a ne ontoloko
pitanje.

4.2 Modeliranje procesa


Rije model je u ranijem izlaganju koritena u raznim kontekstima. Model je vjetaka
konstrukcija u kojoj su dijelovi jedne domene (izvorna domena), reprezentovani u drugoj

127

domeni (ciljna domena). Konstituenti izvorne domene mogu, na primjer, biti entiteti,
relacije, procesi, ili bilo koje druge pojave interesovanja. Svrha modela je da
pojednostavi i apstrahuje sadraj iz izvorne domene. Konstituenti izvorne domene se
pomou modela prevode u ciljnu domenu, gdje se sagledavaju i analiziraju u ovom
novom kontekstu. Spoznaje, rezultati, prorauni ili bilo koji zakljuci do kojih se dolo
unutar ciljne domene se onda mogu interpretirati u izvornoj domeni. Jednostavan primjer
modela je simulator leta. Objekti iz realnog svijeta kao to su letjelica, instrumentalna
tabla, zvukovi, pokreti, pogledi iz kabine i navigacioni prostor, su simulirani unutar
vijetake okoline. Pilot moe kontrolisati ovu okolinu (model), simuliranjem, na primjer,
slijetanja na odreeni aerodrom po loim vremenskim uslovima. Ovo iskustvo steeno
unutar ciljne domene se onda moe prenjeti nazad na iskustvo sa letom u pravom avionu.
Korisnost nekog modela je odreena nivoom vjerodostojnosti simulacije izvorne domene
i jednostavnosti prelaska izmeu ove dvije domene. Matematiki koncept koji lei iza
ovoga je morfizam. Morfizam je funkcija koja prilikom translacije iz jedne u drugu
domenu uva odreeni dio njihove strukture. Kao primjer morfizma, moemo se iz
matematike prisjetiti logaritmiranja, gdje logaritamska funkcija prevodi multiplikativnu
strukturu pozitivnih realnih brojeva u aditivnu strukturu realnih brojeva (podsjetimo se:
da bismo mnoili dva broja, sabiramo njihove logaritme). Nakon toga je dobijeni rezultat
mogue vratiti u originalnu domenu (antilogaritmiranje).
Kao drugi primjer navodimo sluaj iz praktine primjene kartografije za potrebe traenja
rute putovanja. Za izvornu domenu posmatrajmo geografski prostor, koji je modeliran
kartom, koja predstavlja ciljnu domenu. Korisnik koji treba autom putovati od
Edinburgha do Londona, posmatra i analizira kartu, a onda rezultate analize prenosi
nazad na navigaciju kroz putnu mreu. Ukoliko je ova karta vjerodostojan model stvarne
putne mree Velike Britanije, putovanje za njenog korisnika e predstavljati ugodno
iskustvo.

Slika 4.1: Proces modeliranja: izvorna domena, funkcija modeliranja i ciljna domena

Proces modeliranja je prikazan ematski na slici 4.1. Lijevi oval predstavlja izvornu
domenu koju treba modelirati. Pretpostavimo, u ovom primjer, da je izvorna domena dio
elektrodistributivne mree. Dalje, pretpostavimo da trebamo izvriti neku mrenu analizu,
kao to je predvianje tokova struje u sluaju prekida napajanja u nekoj taki.

128

Odgovarajua ciljna domena u ovom sluaju moe biti matematika struktura mree.
Funkcija modeliranja povezuje elemente izvorne domene sa elementima ciljne domene.
Mrena transformacija i analiza se mogu izvriti u ciljnoj domeni, a rezultati se mogu
prevesti nazad i interpretirati u izvornoj domeni.

Slika 4.2: Modeliranje kao morfizam

Slika 4.2 prikazuje proces modeliranja koji je jo vie apstraktan u smislu morfizma.
Izvorna domena D je modelirana koritenjem funkcije m. Transformacija t u izvornoj
domeni je modelirana pomou transformacije m(t) u ciljnoj domeni. Rezultat
transformacije u ciljnoj domeni se onda ponovo reinterpretira u D, koristei inverznu
funkciju modeliranja inv(m). Cijeli proces pravilno operie ukoliko model tano
refleksira transformaciju t u domeni D. Ovo se izraava sa jednakou:
inv(m) m(t) m = t
gdje indicira kompoziciju funkcija. Ova relacija se moe jednostavnije izraziti kao:
m(t) m = m t
Ovakve strukturne relacije su predmet matematike teorije kategorija. Ukoliko se
funkcije (prikazane strelicama) realiziraju zajedno na zadovoljavajui nain (slika 4.2)
onda kaemo da dijagram komutira (saobraa), odnosno ovakav dijagram se naziva
komutativni dijagram. Ovakva apstrakcija je u ovom kontekstu openito zahvalna, ali nas
trenutno udaljava od glavne niti izlaganja u ovom poglavlju.
GIS modeli operiu u irokom spektru razliitih aplikacija, od modela pojedinih
aplikacionih domena (na primjer, transportni modeli), pa do specifinih raunarski
baziranih modela fizikih informacija u sistemu. Slika 4.3 je verzija (vie openitog)
procesa modeliranja sa slike 4.1, koja je zasnovana na ivotnom ciklusu sistema
prikazanog na slici 1.13. Kreui se sa lijeva na desno, aplikaciona domena predstavlja
predmet (objekat) modela aplikacione domene, kojeg uobiajeno konstruiu (modeliraju)
eksperti iz te domene. Primjer aplikacione domene bi bio mrea autobuskog saobraaja.
Model ove aplikacione domene bi onda bio jednostavan mreni model, popularisan
(nastanjen) sa entitetima, kao to su ulice, autobuske stanice i autobuske linije.

129

Slika 4.3: Faze modeliranja u GIS-u

U konceptualnom raunarskom modelu, elementi transportne mree mogu biti


reprezentovani koritenjem objektno orijentisanog modeliranja, kao tipovi objekata sa
atributima, ponaanjem i relacijama. Na primjer autobuska linija moe imati broj
linije kao atribut, duinu kao ponaanje (aksesor), i asocijaciju (vezu) sa ulicama i
stanicama kroz koje prolazi.
Konceptualni raunarski model je obino konstruisan od strane analitiara sistema u
saradnji sa ekspertima iz te domene. Logiki raunarski model se dobija daljim razvojem
(dizajniranjem) rezultata dobijenim analizom sistema (iz konceptualnog modela), i to
specifikacijom u skladu sa datom sistemskom paradigmom (na primjer, OODBMS,
RDBMS ili ORDBMS). Konano, fiziki raunarski model je konstruisan od strane
sistemskih programera, koji implementiraju logiki raunarski model za specifini
softverski sistem ili hardversku platformu.

4.2.1 Polje ili objekat?


Postoje dvije iroko prihvaene klase modela geografskih informacija koje su po svom
koncepu suprostavljene: modeli polja i modeli objekata.
Objekti u odnosu na polja: Prostor je mogue konceptualizirati na dva razliita naina: ili
skupom lokacija sa osobinama (apsolutni prostor, koji egzistira u samom sebi) ili kao skup
objekata sa prostornim osobinama (relativni prostor, zavisan od drugih objekata). Sa ovakvom
dihotomijom (podjelom) se ispostavlja da imamo dalekosenije implikacije za prostorno
modeliranje, gdje je apsolutni prostor modeliran kao skup polja, a relativni prostor kao kolekcija
prostorno referensiranih objekata. Couclelis (1992.) pravi paralelu izmeu konceptualne razlike
objekata i polja, i openitije distinkcije u filozofiji nauke, kao to su dvojnosti prirode irenja
talasa i estica, teorije atoma i drugih teorija. Prirodno je razmiljati o neprekidnim promjenama
geografskih pojava, poput temperature ili padavina, kao o poljima. Slino, prirodno je razmiljati
o diskretnim geografskim pojavama, poput zgrada ili puteva, kao o objektima. U nekim
aplikacijama, moe biti prihvatljivije grupe objekata tretirati kao polja, ili regije polja tretirati
kao objekte. Na primjer, stepen urbanizacije se moe konceptualizirati modelom polja,
zasnovanom na gustini kua (objekata). Sa druge strane, zone sa veoma malo padavina (polja) se
mogu konceptualizirati kao objekti (pustinje). Ovakva digresija bi nam trebala pribliiti i jedan i
drugi koncept kako bismo razumjeli distinkciju izmeu njih i njihovih primjena.

130

Model zasnovan na poljima tretira geografske informacije kao kolekcije prostornih


distribucija (rasprostranjenosti) pojave. U ovakvom modelu, svaka distribucija
(rasprostranjenost) moe biti formalizirana kao matematika funkcija izmeu prostornog
okvira (na primjer, regulana mrea smjetena nad idealiziranim modelom Zemljine
povrine) i atributne domene. Uzorci topografskih altituda, padavina i temperatura se
blisko uklapaju u ovakav pristup. Objektno baziran model tretira prostor kao populiziran
(nastanjen) sa diskretnim entitetima (koji se mogu identificirati), od kojih je svaki
georeferensiran (povezan sa prostorom).
Sa stanovita relacionog modela (drugo poglavlje), mjerljiva geografska pojava moe biti
zapisana kao kolekcija n-torki (tuples). Slika 4.4 prikazuje kolekciju n-torki kojim su
zapisani godinji vremenski uslovi na razliitim geografskim lokacijama. Ovim ntorkama su opisani lokacija (prostorni identifikator), prosjek, maksimalne i minimalne
temperature i prosjek ukupnih godinjih padavina. Iako se openito koristi, ovakav
pristup ne mora biti i najkorisniji: velike kolekcije n-torki ne obezbjeuju nikakav
trenutni opis uzorka i mogu rezultirati nepreglednom koliinom podataka. Pristupi
zasnovani na poljima i na objektima su pokuaji da se uspostavi struktura i opie uzorak
na osnovu ovakvih podataka.

Slika 4.4: Relacija koja sadri godinje klimatske podatke (temperature su u C, a padavine u mm)

Slika 4.5: Pristup prikaza geografskih pojava zasnovan na poljima

131

Slika 4.6: Pristup prikaza geografskih pojava zasnovan na objektima

Pristup zasnovan na poljima tretira informacije kao kolekciju polja. Svako polje definie
prostorne promjene atributa kao funkciju od skupa lokacija u nekoj atributnoj domeni.
Slika 4.5 prikazuje polja prosjene i maksimalne temperature, konstruisana od podataka
sa slike 4.4. Na ovaj nain polje predstavlja funkciju, a ne skup atributnih vrijednosti.
Pristup zasnovan na poljima konceptualizira relaciju (tabelarno ureen skup podataka)
kao izdjeljenu po varijacijama jednog ili viestrukih atributa (u kolonama). Alternativni
objektno bazirani pristup grupie relaciju po jednoj ili vie n-torki. U primjeru sa slike
4.4, moemo karakterizirati odreene grupe mjerenja klimatskih varijabli koje padaju
unutar konanog skupa (tipa). Na ovaj nain, topla regija ima relativno vie
temperaturne vrijednosti, a hladna regija relativno nie. Regije se mogu predstaviti
objektima koji su prostorno referensirani. Ovakvo struktuiranje date relacije je prikazano
na slici 4.6.
Modeli zasnovani na poljima i objektima su u nekom smislu meusobno inverzni. U
pristupu sa poljima, prvoklasni entiteti su funkcije od prostornog okvira (osnove ili
mree). Sa druge strane, objektno zasnovan pristup konstruie populaciju entiteta koji
pripadaju prostoru, to jest konstruie funkciju od entiteta (slika 4.7).

Slika 4.7: Prostorno polje i objekat su inverzni konstruktori (konstrukcije)

132

4.3 Modeli bazirani na poljima


Pretpostavimo da imamo zadatak da formiramo bazu podataka datog regiona i da smo
odabrali da koristimo model zasnovan na poljima za informacije unutar nje. Jedan od
prvih zadataka je da konstruitemo odgovarajui prostorni okvir za ovaj model. Prostorni
okvir (osnova) je dio regije prostora, koji formira konanu teselaciju od prostornih
objekata (tessellation podjela na dijelove razliitih oblika). U ravni, elementi
prostornog okvira su poligoni. Prostorni okvir za dati skup podataka zasnovanih na
poljima se ponekad naziva podrkom tog skupa podataka.
Teselacija koritena u prostornom okviru (osnovi) moe biti regularna, kao to je mrea
kvadrata, ili neregularna, kao to je TIN (mrea neregularnih trouglova). Na teselaciju
emo se vratiti u narednom poglavlju. Prostorni okvir (osnova) je konana struktura (ona
mora biti takva da bi bila izvodljiva za raunanje, odnosno raunarski prihvatljiva). esto
aplikaciona domena nije konana, ili ako jeste u smislu prostornog obuhvata onda nije u
smislu gustine pojave. Ovo dovodi do toga da pojave koje se modeliraju trebaju biti
uzorkovane, ime se kroz proces uzorkovanja nuno uvodi i nepreciznost. Nepreciznost
je jedna od tema kojoj emo se vratiti u devetom poglavlju.
Kombinacija prostornog okvira i polja koje dodjeljuje vrijednosti svakoj lokaciji u
prostornom okviru se naziva sloj. Openito, u prostornoj bazi podataka moe biti bezbroj
slojeva, koji se odnose na isti ili razliite prostorne okvire. Na primjer, slika 4.8 prikazuje
dva sloja za isti prostorni okvir. Gornji sloj prikazuje visine, pri emu svjetlije nijanse
prikazuju via podruja. Drugi sloj prikazuje vlanost zemljita, pri emu svjetlije nijanse
indiciraju regije sa manje vlage. Granice svake povrine povezuju lokacije sa istim
atributnim vrijednostima (visine ili vlanosti). Linija svih taaka u polju sa istim
atributnim vrijednostima se naziva izolinijom.

Slika 4.8: Dva sloja u modelu zasnovanom na poljima

Prostorni model zasnovan na poljima je sada preciznije definisan. Zbog jednostavnosti,


pretpostavimo da svako polje u modelu ima isti prostorni okvir F. Openito moemo
ostvariti da je prostorni okvir zasnovan na bilo kojem matematikom prostornom modelu.

133

U praksi, veina prostornih okvira su zasnovani na 2-dimenzionalnom Euclidovom


prostoru (Euclidova ravan).
Ovakav model se moe formalno opisati na slijedei nain:

Model baziran na poljima, koji je zasnovan na nekom prostornom okviru F se


sastoji od konane kolekcije od n prostornih polja {fi : 1 i n}.
Za 1 i n , svako prostorno polje fi je funkcija od F (koja se moe izraunati)
koja rezultira vrijednostima konane atributne domene Ai.

Da bi ovakav model bio raunarski prihvatljiv, za broj polja, kardinalnost (prebrojivost)


domena Ai i prostorni okvir F je usvojeno da budu konani. Takoe funkcije polja fi su
definisane tako da ih je mogue raunarski procesirati. U specijalnom sluaju gdje
prostorni okvir predstavlja Euclidova ravan, a atributna domena je podskup skupa realnih
brojeva, polje moe biti predstavljeno povrinom na prirodan nain. Euclidova ravan igra
ulogu horizontalne xy-ravni, a vrijednosti prostornog polja daju z-koordinate, ili visine
iznad ravni. Da bi se realizovao metod modeliranja koritenjem pristupa baziranog na
poljima potrebno je:
konstruisati ili koristiti dati odgovarajui model prostora koji predstavlja prostorni
okvir F,
pronai odgovarajue domene za atribute Ai (1 i n),
uzorkovati pojavu uzimajui u obzir lokacije unutar prostornog okvira, kako bi se
konstruisala prostorna funkcija polja fi (1 i n),
obezbjediti (alate za) analizu koritenjem (operacija) prostornih funkcija polja.
Primjer jednostavnog modela polja predstavlja model regionalnih klimatskih promjena.
Pretpostavimo da je nad regijom uspostavljena mrea kvadrata na osnovu koje su mjereni
klimatski aspekti na svakom voru mree. Za realistiniji model bi koristili neregularni
prostorni okvir koji preslikava stvarni razmjetaj meteorolokih stanica za prikupljanje
podataka o vremenskim uslovima. Mjerene vrijednosti (temeratura, padavine, pritisak) su
u ovom primjeru povezane sa lokacijama preko razliitih polja (funkcija) koja se odnose
na odgovarajue atributne domene (za temperaturu, za padavine, za pritisak).
Kao drugi primjer se moe navesti prikaz pokazatelja (varijacija pojave bolesti) vezanih
za ljudsko zdravlje u nekoj regiji. U ovom sluaju bi za prostorni okvir prije odgovarala
neregularna teselacija kantona ili regiona koji su nastanjeni ljudima. Unutar svake regije
je mogue za odreenu populaciju mjeriti pojave odreenih bolesti. Ovakav model se
onda moe koristiti za analizu prostornih uzoraka specifinih bolesti ili njihovo
povezivanje sa drugim prostornim poljima u istom prostornom okviru.
Kao trei primjer se moe navesti digitalni visinski model (DEM Digital Elevation
Model), gdje je visina terena mjerena za odreeni prostor na povrini Zemlje.
Digital Elevation Model: Digitalni visinski modeli (DEM) su vane primjene modela polja koji
datiraju jo od 50-tih godina prolog vijeka. U njima prostorni okvir predstavlja skup lokacija
unutar dijela Zemljine povrine, a vrijednosti polja su visine povrine terena na ovim lokacijama.
Poto je funkcija polja jednoznana (ima samo jednu vrijednost), nadvijeeni terenski oblici,
poput klifova i peina, ne mogu biti predstavljeni ovim modelom. Posljedica ovog nedostatka je
da se DEM-ovi ponekad nazivaju 2.5 dimenzionalnim objektima (iako ovaj termin ne treba
mjeati sa fraktalnim dimenzijama iz fraktalne geometrije).

134

Prostorni okvir za DEM je esto u obliku regularne mree, koja ima prednost zbog svoje
jednostavnosti. Meutim, neregularne teselacije poput TIN-a, mogu omoguiti strukturu polja
koja priblinije opisuje strukturu terena, na primjer slijedivi grebene i ravnice. Mnoge
svakodnevne GIS aplikacije zahtjevaju DEM kao svoj osnovni izvor podataka, ukljuujui analizu
vidljivosti (kojom se odreuje ta se moe vidjeti sa pojedinih lokacija), analizu padova i
aspekata (orijentacija terena), izraunavanje rute i najkrae putanje i slino. DEM-ovi se
ponekad nazivaju i digitalnim modelom terena (DTM), iako DTM, po miljenju nekih krugova,
treba predstavljati i druge topografske oblike osim same visine terena.

Vrijedilo bi naglasiti da su diskutovani konceptualni modeli nezavisni od bilo kakve


implementacije ili fizike reprezentacije podataka, iako izvjesni tipovi prostornog okvira
mogu biti praeni odreenim tipovima strukture podataka. Na primjer, ukoliko je
prostorni okvir regularna teselacija, a posebno regularna kvadratna mrea, prirodno je da
e se model reprezentovati koritenjem rasterski baziranih struktura podataka. Nasuprot
ovome, neregularne teselacije, a posebno triangulacije, obino koriste vektor bazirane
strukture podataka.

4.3.1 Osobine polja


Kao to je ve naglaeno, prostorni okvir je sastavni dio koji moe biti zasnovan na bilo
kojem rangu razliitih matematikih modela prostora, kao to su oni koji su ve
diskutovani u predhodnom poglavlju. Iz perspektive modela zasnovanog na poljima,
vana karakteristika prostornog okvira je njegova regularnost, odnosno neregularnost.
Osim prostornog okvira, i atributne domene i polja imaju nekoliko vanih karakteristika
koje e se opisati.
Osobine atributne domene
Atributna domena moe sadrati vrijednosti koje su, po originalnoj podjeli od Stevensa
(1946), uobiajeno klasificirane u etiri tipa atributa:
Atributna domena koja sadri jednostavne labele (oznake) se naziva nominalnim
atributima. Land cover je klasifikacija pokrivenosti zemljita koja sadri tipove
zemljita (na primjer, umovito zemljite, poljoprivredno zemljite, urbane
povrine) i predstavlja primjer nominalne atributne domene. Po definiciji,
nominalne atributne domene su kvalitativne, ne mogu se poredati, odnosno
urediti, i primjena aritmetikih operatora nad njima nema smisla.
Atributna domena koja sadri ureene labele (nazive) se naziva ordinalnim
atributima. Na primjer, rezultati analize traenja najpogodnije lokacije za
prodajna mjesta se mogu izraziti vrijednostima iz ordinalne atributne domene:
vrlo pogodno, pogodno, manje pogodno i nepogodno. Poput nominalnih
atributa, i ordinalne atributne domene su kvalitativne i ne mogu biti predmet
primjene aritmetikih operatora, osim ureivanja (uspostave poretka).
Atributna domena koja sadri koliine prema nekoj ljestvici bez fiksne take se
naziva intervalnim atributima. Celsijusova i Fahrenheitova ljestvica su primjeri
intervalnih atributa. Intervalni atributi se mogu meusobno porediti po veliini
razlike njihovih magnituda, ali ne i po omjeru njihovih intervala. Na primjer, ako
je u Madridu 20C, a u Edinburghu 10C, onda ima smisla rei da je Madrid za
10C topliji od Edinburgha, ali je besmislena uporedba da je Madrid dva puta

135

topliji od Edinburgha (jer ljestvica temperaturnih vrijednosti ne podrazumjeva


postojanje fiksne referentne take).
Atributna domena koja sadri koliine prema nekoj ljestvici u odnosu na neku
fiksnu (referentnu) taku se naziva razmjernim atributima. Kelvinova
temperaturna ljestvica je primjer razmjernog atributa, jer nula Kelvina predstavlja
apsolutnu nulu, odnosno najmanju fiziki moguu temperaturu. Razmjerne
vrijednosti podravaju iroki spektar aritmetikih operacija, ukljuujui sabiranje,
oduzimanje, mnoenje i dijeljenje. Postoje mnogi geografski primjeri domena
razmjernih atributa, ukljuujui godinje kine padavine i topografske visine
iznad nivoa mora. U ovom kontekstu, ima smisla rei da Boston ima dva puta vie
kie u martu od Washingtona, ili da je neko mjesto tri puta vie od drugog u
odnosu na nivo mora.
Postoje i drugi tipovi atributa kao to su ciklini (atributne vrijednosti koji se ciklino
ponavljaju: strane svijeta, sferne geografske koordinate, uglovi...) i drugi.
Iako se Stevensova podjela iroko koristi, treba napomenuti da sa svrstavanjem atributa u
neku od ovih kategorija treba biti oprezan. Jedan takav primjer predstavljaju uobiajeni
geografski podaci gustine naseljenosti. Gustina naseljenosti ima svoju fiksnu taku (ne
moe biti ispod nule) i moe se uporeivati kao razmjerni atribut (na primjer, gustina od
200 stanovnika po kvadratnom kilometru je dva puta vea od gustine od 100 stanovnika).
Meutim, gustina naseljenosti se ne ponaa u potpunosti kao omjer pojave. Na primjer,
nije mogue direktno sraunati kombinovanu gustinu naseljenosti dva regiona koji imaju
100 i 200 stanovnika po kvadratnom kilometru (kombinovana gustina e leati negdje
izmeu 100 i 200 stanovnika po kvadratnom kilometru, zavisno od relativnih veliina
ovih regiona).
Kontinualna, diferencijabilna i diskretna polja
Za prostorno polje se kae da je kontinualno ukoliko male promjene u poloaju pojave
vode malim promjenama vrijednosti odgovarajueg atributa (pozovimo se na postavku da
prostorno polje predstavlja funkciju od prostornog okvira za neki atribut). Kontinualnost
jedino vrijedi ukoliko je pojam male promjene dobro definisan i za prostorni okvir i za
atributnu domenu, to jest ukoliko su ove domene i same kontinualne. Prostorno polje je
diferencijabilno ukoliko se njegov odnos promjene prirasta (nagib) moe definisati na
svakoj lokaciji. Kao i kod kontinualnosti, diferencijabilnost ima smisla jedino za
kontinualni prostorni okvir i atributnu domenu. Svako diferencijabilno polje takoe mora
biti i kontinualno, ali svako kontinualno polje ne mora biti i diferencijabilno.
Primjeri koji ovo ilustruju su dati na slici 4.9. Zbog jednostavnosti, uzmimo da je
prostorni okvir jednodimenzionalan i rangiran du horizontalne linije. Ovakvo polje se
moe prikazati linijom koja opisuje vrijednosti atributa nad prostornim okvirom. Na slici
4.9a promjene su predstavljene kao kontinualna glatka kriva, koja je oito
diferencijabilna, jer se nagib krive moe definisati u svakoj taki. Na slici 4.9b, iako je
polje kontinualno (graf je povezan), ono nije svugdje diferencijabilno. Posoji
dvoznanost (dvosmislenost) nagiba u artikulisanoj taki izmeu dva linijska segmenta.
Na slici 4.9c, graf nije povezan i stoga polje nije kontinualno, a samim tim a fortiori nije
ni diferencijabilno. Fraktali, poput Kochove pahulje koja je diskutovana u predhodnom
poglavlju, ine etvrti sluaj funkcija, koje su kontinualne, ali nisu diferencijabilne ni u
jednoj taki (nigdje diferencijabilne funkcije).

136

(a)

(b)

(c)

Slika 4.9: Primjeri kontinuiteta i diferencijabilnosti za polja iscrtana nad jednodimenzionalnim prostornim
okvirom du x ose i sa atributnim vrijednostima du y ose.

U sluaju gdje prostorni okvir uzima dvije dimenzije (ili vie), nagib ne zavisi samo od
pojedine lokacije, nego i od orijentacionog ugla na toj lokaciji (slika 4.10).

Slika 4.10: Polje sa elevacijam gdje pad u nekoj taki zavisi i od orijentacionog ugla

Izotropijska i anizotropijska polja


Karakteristino svojstvo prostornog polja je postojanost pravca variranja njegovih
osobina. Polje ije osobine nemaju pravac variranja (nezavisne od pravca) se naziva
izotropijskim poljem. Razmotrimo vrijeme putovanja u prostornom okviru. Krenimo sa
najjednostavnijom moguom pretpostavkom da je vrijeme potrebno za kretanje izmeu
lokacija direktno propocionalno Euclidovoj udaljenosti izmeu njih. Na ovaj nain kriva
linija (izohrona) koja predstavlja sve take konstantne vremenske udaljenosti od
proizvojne take X je krunica (vidi sliku 4.11a). Ovo polje je izotropijsko, jer je vrijeme
od take X do neke take Y zavisi samo od udaljenosti izmeu X i Y, a ne i od
orijentacionog ugla izmeu njih.
Posmatrajmo sada neto interesantniji sluaj. Pretpostavimo da u prostornom okviru
imamo veoma brzu vezu od A do B (slika 4.11b). Zbog jednostavnosti, uzmimo da je ova
veza toliko brza da je vrijeme putovanja od A do B neuporedivo u odnosu na bilo koje
drugo unutar polja. Tako, kada se putuje izmeu dvije take, postoji dvojba da li koristiti
brzu vezu. Posmatrajmo take blizu X (na primjer unutar 14 vremenskih jedinica) na slici
4.11b. Za mnoge take blizu X, prisustvo ove veze ne utie bitno na vrijeme putovanja.

137

Meutim, za putnika koji putuje od X do neke take blizu B, bolje je putovati do A,


iskoristiti brzu vezu do B (nulto vrijeme), i nastaviti od B do ciljne take.

(a) Izotropijsko polje

(b) Anizotropijsko polje

Slika 4.11: Vrijeme putovanja od take X u izotropijskom i anizotropijskom polju

Hiperbola na slici 4.11b oznaava granicu izmeu regija za koje je izbor brze veze bolji,
odnosno loiji. U ovom sluaju, vrijeme putovanja od take X jasno zavisi i od
orijentacionog pravca prema ciljnoj lokaciji. Za ovakvo polje se kae da je
anizotropijsko.
Anizotropijska polja su uobiajene situacije u stvarnosti. Njihova pojava je esto vezana
za mree (poput predhodno opisanog sluaja). Drugi primjeri su openito situacije sa
poljima u kojima se podrazumjevaju neke prirodne ili vjetake prepreke koje utiu na
prisupanost pojedinih lokacija.
Prostorna autokorelacija
Prostornom autokorelacijom se odreuje (mjeri) stepen okupljanja (degree of clustering)
vrijednosti (pojave) u prostornom polju. Prostorna autokoleracija je kvantitativni izraz
uvene teoreme Waldo Toblera, esto citirane kao prvog zakona geografije (Tobler,
1970) koji kae: sve je povezano sa svim ostalim, meutim blie stvari su bolje
povezane od udaljenijih. Ukoliko prostorno polje ima osobinu da sline vrijednosti tee
zajednikom okupljanju (clustering), onda za njega postoji odreeni stepen pozitivne
prostorne autokorelacije. Ukoliko ne postoji vidljiva povezanost izmeu atributne
vrijednosti i susjednih lokacija, onda polje ima nultu prostornu autokorelaciju. Ukoliko
postoji sklonost slinih vrijednosti da budu locirane dalje jedne od drugih, onda postoji
negativna prostorna korelacija. Na ovaj nain, prostorna autokorelacija predstavlja mjeru
povezanosti izmeu atributnih vrijednosti na jednoj lokaciji i atributnih vrijednosti na
okolnim (susjednim) lokacijama. Slika 4.12 predstavlja primjere visoke pozitivne (bivolje
oko sa lijeve strane), nulte (sluajna buka) i visoke negativne prostorne autokorelacije
(ahovska tabla na desnoj strani).

138

Slika 4.12: Uzorci sa visokom pozitivnom, nultom i visokom negativnom prostornom autokorelacijom.

4.3.2 Operacije nad poljima


Operacije sa poljima uzimaju za ulaznu vrijednost jedno ili vie polja i vraaju jedno
rezultantno polje. U narednom izlaganju se opisuju neke tipine operacije koje modeli sa
poljima omoguavaju, koje se djele u tri osnovne klase: lokalne, fokalne i zonalne
operacije. Sistem moguih operacija nad poljima u modelu polja se naziva kartografskom
algebrom, koja je prvi put klasificirana i formalizirana od Tomlina (1983). Prije nego to
se opiu razliite klase operacija kartografske algebre, neophodno je definisati pojam
funkcije susjedstva.
Za dati prostorni okvir F, funkcija susjedstva n : F P (F) je funkcija koja sa
svakom lokacijom x vezuje skup lokacija koje su joj blizu.
U sekciji 3.2.1 je definisan super skup od skupa F, P(F), kao skup svih podskupova od F.
Svaki lan od P(F) je stoga podskup od F. Za svaku lokaciju x u F, n(x) e onda biti
podskup od F, odnosno susjedstvo od x (saglasno topologiji susjedstva opisanoj u treem
poglavlju). Slika 4.13 ilustruje ideju funkcije susjedstva. Definicija susjedstva zavisi od
prostornog okvira nad kojim se izvodi. Ukoliko se radi o Euclidovom prostoru (kao to je
sluaj za veinu aplikacija u praksi), onda je susjedstvo od x skup taaka unutar
specificirane udaljenosti i/ili orijentacionog ugla od x. Ukoliko je prostor metrian, onda
susjedstvo od x predstavlja skup taaka unutar specificirane udaljenosti od x. Ukoliko je
prostor topoloki, onda se susjedstvo moe definisati u smislu topolokog susjedstva.
Susjedstvo od x obino sadri i samo x, iako se ovo po samoj definiciji susjedstva ne
zahtjeva.

Slika 4.13: Funkcija susjedstva n

139

Lokalne operacije
Lokalne operacije se primjenjuju nad jednim ili vie prostornih polja za izraunavanje
novog polja. Ono to izdvaja lokalne operacije od ostalih jeste da vrijednost novog polja
na bilo kojoj lokaciji zavisi jedino od vrijednosti funkcija prostornih polja za istu lokaciju
(funkcija prostornog polja je funkcija koja opisuje atributne vrijednosti nad prostornim
okvirom tog polja). Lokalne operacije mogu biti unarne (koje transformiu jedno polje),
binarne (koje transformiu dva polja) ili n-arne (koje transformiu bilo koji broj polja).
Za formalne definicije veinom se koristi binarni sluaj, iz kojeg se moe ekstrapolirati
opi sluaj.
Formalno gledajui, za dati okvir F i prostorne funkcije nad poljima f i g, uzevi da je
binarna operacija primjenjena nad atributnim domenama od f i g za dobijanje vrijednosti
u drugoj atributnoj domeni, moemo definisati novu funkciju h nad prostornim poljima:
1. Za svaku lokaciju x, h(x) = f(x) g(x).
Ova binarna kombinacija dvaju polja f i g sa prostornim okvirom F je prikazana na slici
4.14. Na slici je naglaen jedan elemenat (x) prostornog okvira. Oito da iako prostorni
okvir predstavlja regularnu kvadratnu teselaciju, ovo ne podrazumjeva imperativ za
primjenu operacija nad poljima, odnosno svaki prostorni okvir (osnovna podjela) je
prihvatljiv.

Slika 4.14: Lokalna (binarna) operacija nad dva polja, f i g

Na primjer, pretpostavimo da su atributne domene dvaju polja g i f realni brojevi koji


opisuju populaciju i pojavu bolesti karcinoma. Za lokacije sa populacijom veom od
nulte vrijednosti, pojava karcinoma se moe podjeliti sa populacijom. U tom sluaju,
operacija predstavlja dijeljenje, a f g predstavlja relativni omjer pojave karcinoma i
populacije po prostornoj jedinici. Derivacija vrijednosti za neku lokaciju je zavisna jedino
od vrijednosti pojave karcinoma i vrijednosti populacije za istu tu lokaciju. U ovom
smislu ova operacija je lokalna.

140

Fokalne operacije
Za fokalnu operaciju, atributna vrijednost derivirana na lokaciji x moe zavisiti, ne samo
od atributa izraenih ulaznim funkcijama prostornih polja za lokaciju x, nego takoe i od
atributa vezanih za njeno susjedstvo n(x). Na ovaj nain, na vrijednost izvedenog polja na
nekoj lokaciji uticaj imaju i vrijednosti ulaznog polja u njenoj blizini. Za unarni sluaj,
pretpostavimo da je F prostorni okvir, n je funkcija susjedstva, f je funkcija prostornog
polja, a je unarna fokalna operacija. Fokalna operacija za svaku lokaciju x:
1. izraunava n(x) kao skup susjednih taaka od x (obino ukljuujui i samo x),
2. izraunava vrijednosti funkcije polja f primjenjene u odgovarajuim takama u
susjedstvu n(x),
3. derivira (izvodi) jednostruku vrijednost (x) deriviranog polja od vrijednosti
sraunatih u 2. koraku, sa mogunou uzimanja u obzir i vrijednosti polja u
lokaciji x.
Unarna fokalna operacija nad poljem f sa funkcijom susjedstva n je prikazana na slici
4.15.
Dobar primjer fokalne operacije je operacija koja izraunava gradijent za polje
topografskih altituda nad kontinualnim prostornim okvirom. U ovom sluaju f je
topografsko polje, n(x) definie bliske susjede od x, a izraunava razlike izmeu
vrijednosti susjeda od x u razliitim pravcima, to rezultira vektorom nagiba.

Slika 4.15: Fokalne operacije nad poljem

Zonalne operacije
Zonalne operacije agregiraju vrijednosti polja nad svakom od skupa zona (koje se
openito pojavljuju iz drugog polja) u prostornom okviru. Zonalna operacija (zeta)
derivira (izvodi) novo polje zasnovano na prostornom okviru F, prostornom polju f, i
skupu od k zona {Z1, ..., Zk} prema podjeli F. Zonalna operacija za svaku lokaciju x:
1. pronalazi zonu Zi u kojoj je x sadrano,
2. izraunava vrijednosti funkcije polja f primjenjene na svaku taku u Zi,

141

3. derivira jednostruku vrijednost (x) novog polja iz vrijednosti sraunatih u 2.


koraku.
Unarna zonalna operacija nad poljem f sa zonama {Z1,..., Zk} je prikazana na slici 4.16.
Na primjer, za dati sloj oborina i administrativnih zona, zonalna operacija moe derivirati
sloj prosjenih oborina za svaku zonu. U ovom sluaju f je polje oborina, {Z1,..., Zk} su
razliite administrativne zone, a izraunava prosjenu vrijednost oborina nad svima
lokacijama unutar svake zone.

Slika 4.16: Zonalna operacija nad poljem f sa zonama {Z1,..., Zk}

Rezime o operacijama nad poljima


U vidu preglednika, tabela 4.1 sadri kratke opise vezane za pojedine operacije nad
poljima. Za neke primjere, gdje se za prostorni okvir podrazumjeva Euclidova ravan sa
vrijedostima polja izraenim realnim brojevima, polje je korisno posmatrati kao povrinu.
Lokalne operacije opisane u tabeli 4.1 izraunavaju lokalne aritmetike kombinacije
polja. Fokalne operacije u tabeli 4.1 su sve unarne, i izraunavaju vrijednost na svakoj
lokaciji zavisno od susjedstva te lokacije. Zonalne operacije iz tabele 4.1 su takoe
unarne, i na svakoj lokaciji izraunavaju vrijednost zavisnu od vrijednosti polja u zoni
koja sadri tu lokaciju.
Jedna od fundamentalnih kartografskih operacija je preklapanje jednog sloja preko
drugog, ime se realizuje jedna kompozitna funkcija za dati prostor. Bez eksplicitne
upotrebe samog jezika preklapanja, jasno je da su preklapanja implicitna za mnoge
predhodno izloene operacije. ta vie, primjer lokalne operacije je uveo preklapanje
populacije sa pojavom oboljelih od karcinoma, kako bi se izvela aritmetika operacija
djeljenja nad individualnim parovima elemenata u slojevima. Slino ovome, zonalne
operacije se mogu posmatrati i kao preklapanje nekog sloja preko sloja sa zonama.

142

Tabela 4.1: Primjeri operacija nad poljima


Tip operacije
Lokalna

Naziv operacije
lsum, ldiff, lprod, lquot

Stepen
binarni

Fokalna

lmax, lmin
lmean
slope

n-arni
n-arni
unarni

aspect

unarni

fmean

unarni

fsum, fprod

unarni

zmin, zmax

unarni

zsum, zprod

unarni

zmean

unarni

Zonalna

Opis
Takaste sume, razlike, prozvodi i
kvocijenti (kolinici)
Takasti maksimum i minimum
Srednja vrijednost u taki
Maksimalni gradijent na
lokacijama
Orijentacioni ugao nastrmijeg
nagiba na svakoj lokaciji
Ponderisana srednja vrijednost
zasnovana na susjedstvu
Suma i proizvod vrijednosti u
susjedstvu svake lokacije
Minimalna i maksimalna
vrijednost u svakoj zoni
Suma i proizvod vrijednosti u
svakoj zoni
Srednja vrijednost polja u svakoj
zoni

4.4 Objektno bazirani modeli


Objektno bazirani modeli dekomponuju informacioni prostor u objekte ili entitete. Pri
tome entitet mora biti:
identifibilan (prepoznatljiv, da se moe razlikovati, identificirati),
relevantan (biti od interesa) i
deskriptibilan (opisljiv, sa karakteristikama).
Obzirom na posljednju stavku, opisivanje entiteta se vri pomou njegovih statinih
osobina (kao to je naziv grada), karakteristika ponaanja (kao to je metoda iscrtavanja
grada u posebnoj razmjeri) i strukturalnih karakteristika (smjetaja objekta u cijeloj
strukturi informacionog prostora).
Model baziran na poljima, o kojem je ranije diskutovano, koristi fiksan prostorni okvir
kao referentni sistem (poput regularne mree), mjerei (prikazujui) promjene atributnih
vrijednosti u odnosu na njega (kao to su visine na svakoj lokaciji). Suprotno od ovoga, u
objektno baziranom modelu su u informacionom prostoru populisani (nastanjeni)
prostorno referensirani entiteti (na primjer, gradovi, sela, kantoni) sa atributima (na
primjer, gustina populacije, centroid, granica). U objektno baziranom pristupu nije
unaprijed definisan cjelokupan prostorni referentni okvir kao to je sluaj sa pristupom
koji je baziran na poljima (prostorna mrea), nego je definisan samim entitetima
(podsjetimo se na opis Objekti u odnosu na polja). U openitijem kontekstu, objektno
baziran model je preciznije predstavljen objektno orijentisanim pristupom modeliranju
podataka, koji je diskutovan u 2. poglavlju, iako objektna orijentacija i objektno-bazirani
model nisu direktno u vezi.
Objektno baziran ili objektno orijentisan? Iako su objektno orijentisan pristup sistemima i
objektno bazirani model u biti slini, oni posjeduju neke razlike po kojim meusobno
odstupaju. Za implementaciju objektno baziranih modela nije neophodno koristiti

143

objektno orijentisani pristup. Sa druge strane, objektno orijentisani pristup se moe


koristiti kao radni okvir (radna matrica) za opisivanje modela zanovanog i na objektima i
na poljima. Za objektno bazirane modele, sluaj je jasan, ali modeli bazirani na poljima
mogu takoe biti postavljeni u objektno orijentisanom kontekstu. injenica je da su u
predhodnom dijelu izlaganja u ovom poglavlju polja opisana u smislu svojstava i
ponaanja objekata (polja), ukljuujui i skup operacija koje se primjenjuju nad njima.
Ovakav opis upravo predstavlja objektno orijentisan pristup. Odavde je potpuno
razumljivo zato se u GIS-u za modeliranje prostornih fenomena zasnovanih na poljima
koristi upravo objektno orijentisana metodologija kao i OODBMS razvojni alati.
Na ovom mjestu, korisno bi bilo objasniti razliku izmeu objekata i literala, to ini jo
jednu odliku OO koncepta. Literali (vrijednosti podatka koje se koriste za opis, na
primjer u OO programiranju) se razlikuju od objekata u tome to oni imaju
nepromjenjivo stanje u smislu da ne mogu biti kreirani, mjenjani ili uniteni. Na primjer,
slika 4.17 prikazuje prostorno referensiran objekat kua. Kua ima nekoliko atributa,
kao to su datum registracije, adresa, vlasnik i granice, koji su i sami objekti. Meutim,
aktualne vrijednosti ovih atributa su literali. Na primjer, aktuelni datum 5. septembar,
2004.g se ne moe kreirati, unititi ili promjeniti. Ukoliko se u budunosti kua
registruje na nekog novog vlasnika, mogue je promjeniti atribut registracije na novi
datum, recimo 5. oktobar, 2009.g.. Ova promjena e zamjeniti datum sa novim, ali to
nee uticati na sam datum (literal). Na ovaj nain, 5. septembar, 2004.g jo postoji kao
datum i na njega nije uticala ova zamjena. Druge kue registrovane sa istim datumom
upuuju na isti literal. Slino, nadogradnja kue moe rezultirati promjenom njenih
granica, koje su reprezentovane drugaijim poligonom u odnosu na prethodni. Meutim,
take i linije pomou kojih je predstavljena neka granica su literali i nemogu (kao
pojmovi ili sredstva opisivanja granice) biti kreirani, promjenjeni ili uniteni (izbrisani).

Slika 4.17: Prostorno referensiran objekat kua

4.4.1 Prostorni objekti


Prostorni objekti se nazivaju prostornim, jer postoje unutar prostora, koji se naziva
pripadajuim prostorom. Specifikacija prostornog objekta zavisi od strukture prostora
kojem pripada. Na primjer, nije lako definisati krunicu koja postoji u prostoru tako da

144

svaka taka koja joj pripada ima samo cjelobrojne koordinate. U treem poglavlju su
predstavljeni razliiti tipovi prostora, ukljuujui Euclidov, metrini, topoloki i
skupovno-orijentisani prostor. Najea situacija u praksi je da se koristi Euclidov prostor
i da je svaki prostorni objekat specificiran pomou skupa koordinatnih n-torki ili
jednaina iji je oblik prihvatljiv za raunare. Drugaiji pristup od ovog je da se
specificira skup primitivnih objekata (primitiva), na osnovu kojih se u aplikacionoj
domeni mogu konstruisati svi ostali objekti, koritenjem specificiranog skupa operacija.
Klase primitivnih prostornih objekata (do sada predlagane) ukljuuju zatvorene poluravni
(uprkos svojstvu beskonanog irenja), simplificirani kompleksi (koji zahtjevaju velike
raunarske resurse pri konstrukciji objekata) i taka-linija-poligon primitive (standardne
primitive u postojeim sistemima).
Razmotrimo veoma jednostavan analitiki zadatak u GIS-u koji se moe pojaviti u
situacijama slinim ovoj.
Za italijanski glavni grad Rim, potrebno je odrediti koja je ukupna duina rijeke
Tibera unutar kruga sa radijusom od 2.5 km i centrom unutar Koloseuma.

Slika 4.18: Satelitska slika Rima centrirana nad Koloseumom (Izvor: DigitalGlobe 2009)

Slika 4.18 prikazuje satelitski snimak Rima, koji je centriran iznad Koloseuma (naglaen
sa zvjezdom). Podaci u ovakvoj formi nisu ba povoljni za traenje odgovora na
postavljeno pitanje. Pored toga to objekti poput Koloseuma nisu eksplicitno
reprezentovani, ovi podaci sadre previe nepotrebnog detalja. Da bismo pristupili
analitikom procesu, prije svega je potrebno modelirati relevantne dijelove Rima
(dijelove od interesa) kao objekte. Moemo zapoeti identifikacijom objekta rijeke (sa
Tiberom kao njenim nazivom) i objekta graevine (sa nazivom Koloseum).
Prostorne referense za ove objekte mogu biti linije (krive) i take, respektivno. Prostorni
objekat klase krug je takoe vaan, poto on opisuje region unutar radijusa od 2.5 km od
Koloseuma. Operacija duina e se primjeniti nad linijom, vraajui realan broj, a

145

operacija presjek e vratiti komad linije koja je zajednika i za nju i za krug.


Konfiguracija prostornih objekata je prikazana na slici 4.19.
Ova analiza se moe izloiti kroz etiri faze, od kojih svaka koristi objekte definisane
modelom, kao i dozvoljene operacije koje se mogu primjeniti nad ovim objektima.
1. nalaenje kruga koji ima radijus 2.5 km, i centriran je nad takom koja
reprezentuje Koloseum
2. nalaenje presjeka kruga dobijenog u prvoj fazi sa linijom koja predstavlja rijeku
Tiber,
3. nalaenje duine svake od isjeenih linija iz druge faze i
4. sumiranje duina dobijenih u treoj fazi koje se nalaze u krugu.

Slika 4.19: Kontinualni prostorni objekti u primjeru sa Rimom

Predhodno opisani objekti i operacije nisu podesni za raunarsku obradu, jer su


kontinualni (neprekidni) i beskonani. Ove objekte je potrebno kroz postupak
diskretizacije konvertovati u tipove koji su raunarski prihvatljivi. Na primjer, krug se
moe predstaviti diskretnom poligonalnom povrinom, linije pomou nizova linijskih
segmenata, a take se mogu umetnuti u neki diskretan prostor. Operacije kao to su
presjek i duina se onda mogu izraunati koritenjem standardnih algoritama iz
raunarske geometrije. Slika 4.20 prikazuje diskretizovanu verziju naeg primjera iz
Rima.

Slika 4.20: Diskretni prostorni objekti u primjeru sa Rimom

146

Tipovi prostornih objekata u Euclidovoj ravni


Slika 4.21 prikazuje moguu hijerarhiju naslijeivanja za objekte u kontinualnom
dvodimenzionalnom prostoru Euclidove ravni sa uobiajenom topologijom.

Slika 4.21: Hijerahija naslijeivanja za neke kontinualne tipove prostornih objekata

Najopenitiji tip prostornog objekta prostor je na vrhu ove hijerarhije. Ovaj tip je
rastavljena unija tipova taka i du, koji opisuju jednostruke take i dune objekte (dui)
koji lee u dvodimenzionalnom prostoru. Klasa du moe biti specijalizirana po
dimenzionalnosti u tipove 1-du i 2-du. Dva podtipa jednodimenzionalnih dui su
opisana u 3. poglavlju kao (kriva) linija i petlja, koji se specijaliziraju u prosta linija i
prosta petlja (koje iskljuuju presjecanje samih sebe). Osnovni areal (povrinski
objekat) je opisan u 3. poglavlju kao regularni zatvoreni skup, koji se ovdje naziva
imenom tipa povrina. Povezanu povrinu nazivamo regionom. Region koji je prosto
povezan (nema rupa) je elija, koja je homeomorfna jedininom krugu.
Euclidova ravan nije raunarski pogodna i mora se diskretizovati da bi se mogla
primjenjivati za raunarsku obradu. Da bi se mogli primjenjivati u raunarskom
okruenju, realni brojevi (Euclidov 1-prostor) se diskretizuju pohranjivanjem cifara do
odreenog (konanog) nivoa preciznosti. Na primjer, pri koritenju 32-bitne preciznosti
brojeva sa pokretnim zarezom, mogue je pohraniti broj sa do est decimalnih cifara (na
primjer, broj 0.1234567 se zaokruuje na 0.123457). Za sve kontinualne tipove prikazane
na slici 4.21 postoje diskretne forme. Take se mogu diskretizovati pohranjivanjem
njihovih koordinata kao konano preciznih brojeva. Linijski segmenti mogu biti
diskretizovani pohranjivanjem njihovih ekstremnih taaka kao diskretnih taaka.
147

Diskretna polilinija je sekvenca linijskih segmenata koje sukcesivno povezuju


diskretizovane take. Kontinualna 1-du moe biti reprezentovana koritenjem
diskretizovane polilinije. Ukoliko se ekstremne take diskretizovane polilinije
koencidiraju, onda ova polilinija predstavlja diskretnu petlju, a u suprotnom bi
predstavljala diskretnu (krivu) liniju. Unutranjost i granica proste petlje (polilinije)
definiu diskretnu eliju, i tako dalje. Iako se u GIS-u, kao gradivni blokovi diskretnih
prostornih dui, najee koriste prave linije, mogue je koristiti i raunarski
specificirane krive sa diskretnim parametrima, to je od posebne vanosti za dizajnerske
aplikacije.
Polinomalne krive: Poligoni i polilinije predstavljaju dvodimenzionalne i jednodimenzionalne
linijske oblike dobijene aproksimacijom taaka prvostepenim polinomom. Vei stepeni
polinomalnih aproksimacija su takoe raunarski izvodljivi i mogu odgovarati u nekim
okolnostima, na primjer, kada se zahtjevaju glatke konturne linije, a ne iskrzane ivice. Takoe,
viestepene krive mogu biti zahvalnije za pohranjivanje nekih oblika prostornih objekata od
polilinija sa velikim brojem linijskih segmenata. Dok su jednostepeni polinomi karakteristiniji za
GIS, viestepene krive bazirane na kubnim polinomima se iroko primjenjuju u grafikoj obradi i
CAD sistemima. Kubni polinom ax3 + bx2 + cx + d ima etiri koeficijenta (a, b, c i d), odnosno
etiri kontrole (stepena slobode) koji mogu varirati prikazujui razliite oblike. Najire koriteni
kubini oblici su: Bzier, Hermite i B-spline. Bzierova i Hermitova kriva su definisane sa po
dvije krajnje take i dvije kontrole, dok je B-spline kriva definisana sa dvije take i etiri
kontrole. Ispod je prikazan primjer Bzierove kubine krive sa njenim kontrolama.

Ilustracija Bzierove kubine krive sa dvije postavke kontrolnih taaka

Take A i B su krajnje take krive. Na lijevom crteu, take C i D kontroliu oblik krive, a vektori
AC i BD predstavljaju tangentne vektore na krajnjim takama. Desni crte prikazuje kako oblik
krive moe biti promjenjen pomjeranjem tangentnih vektora. Krajnje take ostaju na istoj pozicji,
ali su formirani novi tangentni vektori AC' i BD'.

4.4.2 Prostorne operacije


U narednom izlaganju se diskutuju neke od operacija koje se mogu primjeniti na
kontinualne prostorne objekte koji lee u Euclidovoj ravni. Ove operacije zahtjevaju
odreenu modifikaciju kada se primjenjuju nad tipovima diskretnih prostornih objekata.
Tabela 4.2 katalogizira operacije nad kontinualnim prostornim objektima koji lee u
Euclidovoj ravni, prema njihovoj grupi, tipu operanda i rezultirajuem tipu.

148

Tabela 4.2: Katalog prostornih operacija


Grupa
Ope
Skupovno
orijentisane

Operacija
jednako je
jednako je
lan od
je prazan
podskup od
rastavljen od
presjek
unija
razlika

Simbol
=
=

granica

unutranjost

zatvorenje*

dodiruje
preklapa
je unutar
pokriva
je povezan
komponente
ekstremi
je unutar
Euclidove
udaljenost

orijentacija, ugao

duina

povrina
obim
centroid
*u nekoj literaturi se koristi i termin pokriva
Topoloke

Operand(i)
geoprostor, geoprostor
du, du
taka, du
du
du, du
du, du
du, du
du, du
du, du

Rezultat
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
prostorni objekat
du
geoprostor

povrina
povrina
povrina
povrina, povrina
povrina, povrina
povrina, povrina
povrina, povrina
povrina
povrina
linija
taka, prosta petlja
taka, taka
taka, taka
1-du
povrina
povrina
povrina

skup (petlja)
otvorena povr
zatvorena povr
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
Boolova vrijednost
skup (region)
skup(take)
Boolova vrijednost
realni broj
[0, 2)
realni broj
realni broj
realni broj
taka

Ulazi za neku operaciju se nazivaju operandi, dok se izlaz naziva rezultatom. Operacije u
tabeli mogu biti unarne (primjenjene na jednostruki operand) ili binarne (primjenjene na
dva operanda). Za svaku operaciju su dati tipovi objekata koji igraju uloge operanda i
rezultata. Naravno, svaki podtip od nekog tipa operanda je takoe sposoban naslijediti
istu operaciju. Na primjer, operacija unija moe biti primjenjena na uniju objekta tipa
linija sa objektom tipa region.
Operacije u tabeli 4.2 su grupisane u ope, skupovno-orijentisane, topoloke i Euclidove.
Operacija pada u pojedinu grupu kada njena definicija zahtjeva struktuiranje prostora koji
odgovara toj grupi. Operacija jednako je izmeu geoprostor i geoprostor ne zahtjeva
posebnu strukturu, i samim tim je odreeno da li su dva objekta ista ili nisu. Skupovno
orijentisane operacije zahtjevaju svoju specifikaciju struktuiranja prostora u skupove
taaka. Prostorni objekti tipa du se mogu tretirati isto kao skupovi taaka. Operacije
klasificirane kao skupovno orijentisane su definisane u sekciji 3.2.1 i nee se ovdje dalje
razmatrati, osim napomene da one nisu nezavisne od opih naela skupova, odnosno da
su za njih zadrana sva uobiajena ogranienja vezana za teoriju skupova. Na primjer, za
bilo koji objekat X, Y i Z tipa du, imamo slijedee jednakosti (De Morganovi zakoni):
X\(YZ)=(X\Y) (X\Z)
X\(YZ)=(X\Y) (X\Z)

149

Kao to smo vidjeli u sekciji 3.3, osobine prostornih objekata i njihova povezanost su
kompleksniji u topolokoj postavci nego u predhodno izloenom skupovno orijentisanom
kontekstu. Objektni tipovi (sa pripadajuom topologijom u pozadini) su linija, petlja i
povrina (a ponekad i taka). Tabela 4.2 prikazuje neke od moguih topolokih
operacija. Operacije granica, unutranjost, zatvoranost (pokriva) i je povezan se
definiu na uobiajen nain (sekcija 3.3). Operacija komponente vraa skup
maksimalnih povezanih komponenata od neke povrine. Operacija ekstremi se
primjenjuje na svaki objekat tipa linija i vraa par taaka linije koje konstituiu njene
krajnje take. Operacija je unutar pokazuje povezanost izmeu take i proste petlje,
vraajui vrijednost true ukoliko je taka sadrana u prostoj petlji. Ova operacija je esto
koritena za analizu taaka u poligonu (point-in-polygon).
Boolove topoloke operacije dodiruje, preklapa, je unutar, i pokriva se oenito
primjenjuju na povrine. Slini topoloki operatori se mogu definisati i za linije i petlje.
Primjeri ova etiri operatora su prikazani na slici 4.22.
Slijede neformalne definicije ovih operacija:
Neka su X i Y objekti tipa povrina.
X dodiruje Y, ukoliko se X i Y eksterno dodiruju u zajednikom dijelu svojih
granica.
X pokriva Y, ukoliko je Y podskup od X, a X i Y se interno dodiruju u
zajednikom dijelu svojih granica.
X preklapa Y, ukoliko unutranjosti od X i Y meusobno prodiru jedna u drugu.
X je unutar Y ukoliko je X podskup od Y, a X i Y ne dijele zajedniki dio granice.
Slika 4.22 ilustruje da su navedene topoloke operacije vie diskriminirajue (izraajnije)
od skupovno orijentisanih operacija. Slika prikazuje dva para objekata (lijevi i desni par)
ije su relacije nezamjetljive prilikom koritenja iskljuivo skupovno orijentisanih
operacija. Na osnovu unutranjosti strukture samih skupova, za data dva objekta X i Y
tipa povrina, ne moemo razlikovati relaciju X dodiruje Y od relacije X preklapa
Y. Sa skupovno orijentisanog aspekta, relacije su za oba sluaja iste, to jest za oba
sluaja vrijedi relacija X nije rastavljen od Y. Na slian nain, relacije X je unutar
Y i Y pokriva X, su obje instance jedne iste Boolove skupovno orijentisane operacije,
to jest relacije X je podskup od Y. Kao to smo rekli i za skupovno orijentisane
operacije, navedene topoloke operacije se ne mogu se posmatrati neovisno od opih
topolokih naela.

Slika 4.22: Topoloke i skupovno orijentisane operacije

150

Sada slijede neki primjeri meusobne zavisnosti operacija granica, unutranjost i


zatvorenje (pokriva).
Neka je X objekat tipa koji podrava topologiju. Onda vrijedi:
X ini razliku skupova X i X,
X ini komplement skupa unutranjosti od komplementa skupa X i
X ini komplement skupa zatvorenja (pokrivaa) od komplementa skupa X.
Operacije u topolokoj sekciji tabele 4.2 obezbjeuju kompletnu topologiju razliitih
prostornih relacija u topoloki struktuiranim prostorima. Slika 4.23 prikazuje neke od
beskonanog broja moguih topolokih relacija koje su raspoloive izmeu objekata tipa
elija. U gornjem lijevom uglu slike je sluaj relacije dodiruje, koja zadovoljava nau
neformalnu definiciju za ovu operaciju. Meutim, konfiguracija objekata X i Y nije
homeomorfna za objekte X i Y koji se dodiruju na slici 4.22. Na slian nain, postoji
beskonano mnogo relacija pokriva i preklapa. Prostorna relacija izmeu dvije elije
prikazane u donjem desnom uglu slike 4.23 izgleda kao kombinacija dodirivanja,
pokrivanja i preklapanja. U stvari, kao to emo kasnije i vidjeti, ona bi se mogla
formalno opisati kao preklapanje.

Slika 4.23: Topoloke relacije izmeu elija

Operacije udaljenost, orijentacija/ ugao, duina, povrina i obim, koje su raspoloive


u metrinom i Euclidovom prostoru su ve predstavljene u treem poglavlju. Operacija
centroid vraa centar gravitacije za povrinski objekat kao objekat tipa taka.
Udaljenosti i uglovi u prostoru su definisani izmeu (dva ili vie) elemenata tipa taka. U
praksi esto postoji potreba da se izmjere udaljenosti i uglovi izmeu objekata razliitih
dimenzija. Na primjer, kada je potrebno odrediti udaljenost grada od autoputa, javlja se
vie nejasnoa: da li mjeriti do centra grada ili od cijele povrine grada, onda da li mjeriti
udaljenost putevima do grada ili pravolinijski od najblie take na autoputu, i tako dalje.
Ove nejasnoe se moraju razrijeiti prije nego se postavi upit vezan za odreivanje ovih
vrijednosti. Definicije udaljenosti i orijentacije/ugla mogu biti proirene i na operacije
nad objektima koji nisu samo tipa take, nego to mogu biti i podtipovi dui (duinski
objekti).

151

Topoloke relacije izmeu prostornih objekata


Kada govorimo o topologiji i topolokim operacijama nad prostornim objektima postoji
jedna karakterizacija topolokih relacija kojoj je u literaturi posveena posebna panja. U
narednom izlaganju se daje kratak pregled ove karakterizacije, koja je originalno
razvijena od Maxa Egenhofera i njegovih saradnika.
Veina prostornih operacija datih u tabeli 4.2 se mogu definisati pomou operacija
granica i unutranjost (odnosno kao kombinacija dviju odgovarajuih operacija od
slijedee tri: granica, unutranjost i zatvorenje). Iako se metod moe primjeniti na bilo
koje tipove objekata za koje je mogue definisati topologiju, ovdje emo ga opisati u
kontekstu objekata tipa elija. Sutina metode se moe iskazati kroz pitanje: ta se moe
zakljuiti o topolokoj relaciji izmeu dva prostorna regiona na osnovu presjeka (kao
skupovno orijentisane relacije) izmeu njihovih unutranjosti i granica? Ovo se moe
preciznije iskazati i na slijedei nain.
Neka su X i Y prostorne elije. Dalje, pretpostavimo da su njihove granice X i Y, kao i
unutranjosti X i Y poznate. Da bi odredili topoloku relaciju izmeu X i Y, treba da
naemo presjeke (kao skupovno orijentisane relacije) izmeu X , X , Y i Y.
Odnosno, prilikom odreivanja topoloke relacije, sve to se zahtjeva je testiranje dali su
ovi presjeci prazni ili neprazni skupovi. Stoga, razmatrajmo slijedea etiri presjeka:
X Y

X Y

X Y
X Y

Svaki od ovih presjeka moe biti ili prazan ili neprazan skup. Postoji 16 razliitih
moguih kombinacija rezultata ovih presjeka (4 presjeka sa po dva rezultata). Svaka od
ovih kombinacija predstavlja neki odnos presjeka granica i unutranjosti elija. Ovaj
odnos izmeu elija ostaje sauvan prilikom topolokih transformacija
(homeomorfizama).
Openito, u topologiji skupova taaka, svaka od 16 kombinacija moe egzistirati i
opisivati razliitu topoloku relaciju izmeu dva skupa X i Y. Meutim, kako za sada
razmatramo samo prostorne elije koje su prisutne u Euclidovoj ravni, od svih 16
kombinacija moe se pojaviti samo osam njih. U tabeli 4.3 je prikazano ovih osam
mogunosti sa odgovarajuim prostornim operacijama koje su predhodno opisane u tabeli
4.2.
Tabela 4.3: Osam relacija koje se mogu desiti izmeu elija u Euclidovoj ravni

X Y

X Y

X Y

X Y

152

Operacija
X je rastavljen od Y
X dodiruje Y
X je jednako Y
X je unutar Y
Y pokriva X
Y je unutar X
X pokriva Y
X preklapa Y

Sada se moe vidjeti da operacije dodiruje i preklapa predstavljaju topoloko


poboljanje (rafiniranost) od (skupovno orijentisane) operacije presjek, dok su operacije
je unutar i pokriva topoloka poboljanja operacije podskup od (vidi sliku 4.22). Poto
se ovom metodom vri testiranje da li su etiri presjeka prazna, to se ovakav pristup esto
naziva i modelom etiri presjeka.
Ova logika se moe proiriti i za viedimenzionalne prostore, gdje kodimenzija nije nula
(to jest, gdje je dimenzija prostornih objekata manja od dimenzije prostora u kojem je
objekat prisutan). U ovom sluaju se koriste tri topoloke operacije: granica, unutranjost
i komplement skupa. Binarna prostorna relacija izmeu dva prostorna objekta X i Y je
klasificirana provjerom praznosti/nepraznosti 9 kombinacija od operacija primjenjenih na
X i Y, to je poznato kao model devet presjeka. Za topoloki prostor T u koji su X i Y
umetnuti (tako da su T\X i T\Y komplementi skupova X i Y , odnosno spoljanosti od X i
od Y , koje se oznaavaju sa X' i Y') ovih devet kombinacija su:
X Y
X Y
X' Y

X Y

X Y'

X Y
X' Y

X Y'
X' Y'

Operacije nad prostornim objektima


Prostorne operacije opisane u ovoj sekciji se mogu smatrati operacijama nad prostornim
literalima. Primjena samih operacija nad operandima nema uticaja. Na primjer,
izraunavanje duine neke linije ne moe uticati na samu liniju. Meutim postoji i druga
klasa prostornih operacija koje se primjenjuju nad prostorno referensiranim objektima, a
koje mjenjaju stanje ovih objekata. U tom smislu, tri fundamentalne dinamike operacije
su kreiraj, uniti (izbrii) i auriraj. Ve smo vidjeli neke primjere operacija
jednostavnog kreiranja, destrukcije i auriranja prilikom diskusije o objektno
orijentisanom modeliranju (sekcija 2.4.3) i o afinoj transformaciji u geometriji (sekcija
3.1.4).

4.4.3 Formalne teorije o prostornim objektima


Mogu se navesti razne formalne teorije (logical calculi) vezane za relacije izmeu
prostornih objekata, koje imaju veoma uopene interpretacije. Ovakve teorije su
postavljene u logine okvire, sa dobro definisanim pojmovima i dobro postavljenim
formulama i aksiomima. Jedan takav primjer kojim rezimiramo ovo poglavlje, je
Clarkeov calculus of individuals, odnosno teorija poznata kao RCC - region connection
calculus (teorija povezanosti regija).
Fokus Clarkeove teorije individua je binarna relacija povezanosti (konekcije) izmeu
regija. U ovom kontekstu, rije regija se moe smatrati odgovarajuim izrazom za
objekat tipa povrina (prema ranije izloenoj topologiji), ali se sutinski moe
interpretirati i u irem (neprostornom) smislu. Opis C(X, Y) je skraenica za region X je
povezan (konektovan) sa regionom Y. Relacija konekcije je refleksivna i simetrina,
odnosno zadovoljava slijedee aksiome:
1. Za svaki region X, C(X, X)
153

2. Za svaki par regiona X, Y, ako vrijedi C(X, Y), onda vrijedi i C(Y, X).
Posebno iznenaujui dio Clarkeovog rauna je opisan u slijedeem koraku. On nas
navodi na zakljuak da mnoge skupovno orijentisane i topoloke relacije izmeu
prostornih objekata mogu biti konstruisane koritenjem samo minimalnog dijela opisanog
mehanizma povezanosti (konekcije). U tabeli 4.4 je izloen primjer ovakvih moguih
konstrukcija, gdje su relacije imenovane tako da naglase konekciju sa tipologijom
prostornih operacija iz tabele 4.2. Relacija dio od iz tabele 4.4 odgovara operaciji
podskup od iz tabele 4.2.
Tabela 4.4: Definisanje skupovno orijentisanih i topolokih relacija zasnovanih na regionima i konekcijama

X je rastavljen od Y
X je dio od Y
X preklapa Y
X dodiruje Y
X pokriva Y
X je unutar Y
X je jednak Y

Ne postoji sluaj da je C(X, Y)


Za svaki region Z, ako je C(Z, X) onda je C(Z, Y)
X nije dio od Y i Y nije dio od X i postoji region Z takav da je
Z dio od X i Z je dio od Y.
Vrijedi C(X, Y) i ne postoji sluaj da X preklapa Y.
Y je dio od X, a X nije dio od Y i postoji region Z takav da Z
dodiruje X i Z dodiruje Y.
X je dio od Y, a Y nije dio od X i ne postoji region Z takav da
Z dodiruje X i Z dodiruje Y.
X je dio od Y i Y je dio od X.

154

155

5
5 Reprezentacije i algoritmi
Kratak pregled
Nain na koji su prostorni podaci reprezentovani u informacionom sistemu je klju za
efikasnost raunarskih procesa koji e se odvijati nad njima. U ovom poglavlju se
diskutuje o reprezentaciji prostornih podataka za modele zasnovane na objektima i
poljima, i o nekim algoritmima koji se koriste za obradu podataka. Uobiajene
reprezenacije diskretnih prostornih objekata ukljuuju prikaze podataka u formama
pageti i sa vorovima, linijama i povrinama. Reprezentacije bazirane na poljima
uvode teselaciju (podjelu) prostora. Opisuju se neki od uobiajenih prostornih
algoritama, ukljuujui diskusiju o vremenu koje ovi algoritmi zahtjevaju za izvravanje
svojih funkcija.
U prvom poglavlju je predstavljen pristup razvoju informacionog sistema kroz nekoliko
faza, poevi od koncepualnih modela visokog nivoa preko raunarskih modela nieg
novoa, pa do njegove same implementacije. Davanje razliitog znaaja svakoj od ovih
faza osigurava da ovi sistemi budu jednostavni za razumjevanje i efikasni za koritenje
(vidi sekciju 1.3.4). U predhodnom poglavlju, fokus je bio na konceptualnim modelima
visokog nivoa. U ovom poglavlju emo se baviti reprezentacijama geoprostornih
podataka u GIS-u, te nainom na koji se razne prostorne operacije primjenjuju nad ovim
podacima.
Prvi dio ovog poglavlja diskutuje neke generalna raunarska pitanja u GIS-u. Posebno se
razmatraju pitanja multidimenzionalnosti geoprostornih podataka, razlika izmeu
reprezentacija zasnovanih na poljima i objektima, te pitanje raunarske efikasnosti. Kao
jedno od velikih pitanja vezanih za objektno baziranu repezentaciju, navodi se pitanje
diskretizacije. Pristup rijeavanja problema koji rezultiraju iz diskretizacije se diskutuje u
sekciji 5.2. Sekcija 5.3 opisuje neke raunarske reprezentacije prostornih objekata.
Sekcija 5.4 se bavi reprezentacijom podataka u sistemima baziranim na poljima
koritenjem teselacije. U sekciji 5.5 se diskutuju fundamentalni geometrijski algoritmi
koji formiraju osnovne mehanizme GIS-a i bez kojih nije mogue izvesti procesiranje
prostornih podataka na viem nivou. Zavrno izlaganje se odnosi na reprezentaciju
prostornih podataka i algoritme koji se koriste za mrene prostorne modele.

5.1 Raunarstvo i geoprostorni podaci


Tradicionalno raunarstvo je bazirano na reprezentaciji jednodimenzionalnih podataka.
Da bi stekli osjeaj prelaska sa jedne na dvije dimenzije posluie nam slijedei primjer.

156

Na slici 5.1 su prikazane neke od razliitih moguih relacija, koje mogu postojati izmeu
dva pravolinijska segmenta, od kojih svaki lei u istom jednodimenzionalnom
Euclidovom prostoru (realna linija).

Slika 5.1 Relacije izmeu dva linijska segmenta koji lee u jednodimenzionalni Euclidovom prostoru

Pogledajmo sada ta se deava kada nae razmatranje proirimo na dvije dimenzije. Sa


jedne strane (za jednu dimenziju)
imamo da je najjednostavniji konaan
jednodimenzionalni objekat linijski segment (1-simplex). Za dvije dimenzije,
podrazumjevajui diskretnost, odgovarajui objekat je trougao (2-simplex). irina
problema se moe ilustrovati analizom topolokih relacija koje mogu postojati izmeu
dva trogla koji lee u istoj ravni. Slika 5.2 prikazuje neke od velikog broja moguih
topolokih relacija. Interesantan zadatak bi svakako bio pokuaj prebrojavanja svih ovih
mogunosti. Vjerovatno bi se iznenadili koliko ih ima.
Poto su trouglovi u nekom smislu najjednostavniji dvodimenzionalni objekti (sa
minimalnom geometrijskom sloenou), jasno je da bi prelaz sa jedne na dvije dimenzije
za bilo koji objekat (figuru) podrazumjevao mnogo vie mogunosti (topolokih relacija).
Odavde se
prirodno zakljuuje da raunarske operacije koje podravaju
dvodimenzionalne modele podataka imaju odgovarajuu algoritamsku osnovu koja
zahtjeva vie elaboracije. Analogno ovome, dalji prelaz na tri dimenzije uveo bi jo vie
kompleksnosti.

Slika 5.2: Devet razliitih topolokih relacija izmeu dva trougla u Euclidovoj ravni

157

5.1.1 Geometrijski algoritmi i raunarska geometrija


Algortam je specifikacija raunarskih procesa koji se zahtjevaju da bi se izvrila neka
operacija. Na ovaj nain, algoritam za sabiranje brojeva precizno specificira korake
zahtjevane za raunanje njihove sume. Algoritmi se mogu izravno prevoditi u mainske
instrukcije (obino pomou programskog jezika visokog nivoa) koje je raunar u stanju
da procesira.
Geometrijski algoritam je algoritam koji opere nad geometrijskim (ili prostornim)
objektima. Geometrijski algoritmi imaju neka posebna svojstva. Razmotrimo problem
odreivanja da li je neka taka unutar zatvorene petlje (poligona) ili nije (point-inpolygon analiza). Sve dok petlja nije krajnje komplikovana, ljudsko oko i um su sposobni
ovo trenutno uoiti i donjeti zakljuak bez nekog primjetnog napora. Meutim, ako ovo
posmatramo sa aspekta raunarstva, postavlja se pitanje koje bi se sve instrukcije trebale
specificirati kako bismo raunaru omoguili da izvri ovakav zadatak? Vidjeemo da
ovakva klasina procedura zakljuivanja o postojanju take u poligonu, iako ne izgleda
sloena, nije ba ni trivijalna. Ovo svojstvo geometrijskih algoritama je u potpunoj
suprotnosti od svojstva aritmetikih algoritama da se mnoge kompleksne kalkulacije koje
zahtjevaju papir, olovku i mnogo ekanja po glavi, mogu jednostavno rijeiti pomou
raunara.
Druga karakteristika geometrijskih algoritama je da oni esto nisu direktno primjenjivi u
specijalnim sluajevima. Ono to na poetku izgleda kao jednostavan problem esto
postaje sloenije kada se razmatraju specijalni sluajevi. Ovu osobinu je ivopisno opisao
David H.Douglas (1990) u svom radu, gdje je ono to se u poetku trebalo pojaviti kao
trivijalan algoritam za odreivanje da li se dva pravca sijeku, preraslo u sloeno rjeenje
okrueno gomilom specijalnih sluajeva.
Raunaska geometrija je studija o svojstvima algoritama za rjeavanje geometrijskih
problema. Standardna pitanja u raunskoj geometriji ukljuuju:
1. Da li je mogue iznai neki algoritam za rjeavanje odreenog geometrijskog
problema?
2. Koji je najefikasniji algoritam za rjeavanje odreenog geometrijskog problema?
3. Koji je najbolji nain struktuiranja geometrijskih podataka koji ine traenje
rjeenja za neki problem nejefikasnijim?
Prvo pitanje je vezano za mogunost izraunavanja, gdje je funkciju ili problem mogue
izraunati (rijeiti) ukoliko je mogue iznai algoritam za izraunavanje funkcije ili
rjeavanje problema. Interes za geometrijskim algoritmima i mogunou izraunavanja
datira jo od vremena drevne Grke.
Geometrijski algoritmi i raunanje: Pojam geometrijskog algoritma nas u najmanjem vraa do
geometra Euclida, koji je ivio i poduavao u gradu Aleksandriji oko 300. godine p.n.e. u ijim
radovima su geometrijske konstrukcije predstavljale vaan sadraj. U Euclidovoj geometriji,
konstrukcije su izvoene koritenjem posebnih kolekcija instrumenata, ravnala, uglomjera i
postupka saglasno datom skupu osnovnih pokreta (koraka). U to vrijeme poenta nije bila na
efikasnosti konstruisanja nego na klasi objekata koji su rezultirali iz njega. Standardan problem
traenja je bila mogunost trisekcije (djeljenja na tri jednaka dijela) ugla koritenjem samo

158

ravnala i uglomjera. Tek je u prolom stoljeu postala vana i efikasnost izraunavanja. Rad
Kurta Gdela, matematiara ekog porijekla, je pokazao da velika klasa logikih sistema
(ukljuujui i aritmetiku) mora biti nekompletna, to u formalnom smislu znai da ove logike
moraju sadravati istinite izjave koje se ne mogu dokazati. Britanski matematiar Alan Turing je
doao do istog rezultata u raunarskim okvirima pokazavi da su ista ogranienja primjenjiva na
bilo koji raunarski sistem.

Traenje algoritma za rjeavanje problema u teoriji se prilino razlikuje od njegovog


rjeavanja u praksi. Ovo je problematika koja je nastala na osnovu drugog i treeg
pitanja. Efikasnost algoritma (algoritamska kompleksnost) se moe mjeriti u smislu
vremena koje algoritam troi (vremenska kompleksnost) ili koritenog skladinog prostora
(prostorna kompleksnost). Vrijeme potrebno nekom algoritmu za njegovo izvravanje
odgovara sumi vremena izvravanja svih sastavnih operacija algoritma. Gotovo uvijek je
sluaj da se vrijeme i prostor koriteni za rjeavanje problema poveavaju proporcionalno
koliini ulaznih podataka. Na primjer, za oekivati je da e se vrijeme potrebno za
izraunavanje povrine prostog poligona produiti poveanjem broja njegovih tjemena. U
ovom smislu moe se postaviti pitanje: kakav je odnos izmeu koliine ulaznih podataka
i vremena, odnosno prostora potrebnog za izvravanje algoritma? Ovaj odnos se moe
izraziti funkcionalno, odnosno funkcijom kompleksnosti.
U sluaju raunanja povrine prostog poligona nije teko pokazati da je vrijeme potrebno
za izraunavanje njegove povrine direktno proporcionalno broju njegovih tjemena.
Stoga, za ovo izraunavanje funkcija kompleksnosti glasi:
f : n kn,
gdje je k konstanta proporcionalnosti, a n je broj tjemena. Openito gledano, raunarsko
vrijeme je povezano sa veliinom ulaza (koliinom ulaznih podataka), pri emu u ovoj
konstataciji sama vrijednost konstante k nema poseban znaaj. U svakom sluaju njena
vrijednost zavisi od detalja vezanih za brzinu raunarskog sistema, kao i od drugih
faktora. Takoe, veliina ulaza nije n (broj tjemena) nego je proporcionalna sa n. Ono to
je u svemu ovome vano jeste linearnost povezanosti raunarskog vremena sa veliinom
ulaza (koliinom ulaznih podataka).
Ovakva razmatranja nas vode do pojma O(n). Openito O(f(n)) je skup funkcija koje
imaju vrijeme kompleksnosti onoliko veliko koliko iznosi proizvod neke konstante i
vrijednosti f(n), naznaene kao red funkcije. Sam ovaj pojam se naziva big-oh (veliko o)
veliina. Pojam big-oh nam omoguava da opiemo ponaanje odnosa izmeu
raunarskog vremena (ili prostora) i veliine ulaza, bez preciznog poznavanja skalarnih
multiplikatora.
Najvanije funkcije koje su koritene kao skale za mjerenje kompleksnosti algoritma su
prema rastuem redu veliina: logaritmi, razlomljeni stepeni (na primjer, kvadratni
korijen), polinomi i eksponencijalne funkcije. Kako bi se dobila slika o razmjeri rasta
ovih funkcija, u tabeli 5.1 su date pribline vrijednosti za ulaze od 1 do 100. Moe se
uoiti da nije samo vana statina vrijednost funkcije, nego i nain na koji se ona mjenja
sa poveanjem veliine ulaza n. esto je vano posmatrati i asimptotsku prirodu
(konvergenciju) funkcije, odnosno kako se ona ponaa za veoma velike veliine ulaza.

159

Tabela 5.1: Pribline vrijednosti nekih standardnih funkcija

Red (oblik) funkcije se onda moe povezati sa algoritmom kako bi se indicirao nain na
koji on ovisi o veliini ulaza. Naravno, promjene (vrijednosti) na ulazu za neki algoritam
e obino rezultirati promjenama njegovih performansi, pa ak i ako veliina ulaza ostaje
konstantna. Obino se koristi pesimistini pristup i biraju funkcije koje odgovaraju
performansama algoritma u najloijem sluaju. Drugim rijeima, za svaku veliinu ulaza
se uzimaju performanse koje daju najloije rezultate (najdue vrijeme izvravanja,
odnosno najvei koriteni prostor). Takoe, mogue je odrediti i prosjene sluajeve
performasi, ali je uvijek teko odrediti na koji nain sraunati ove prosjeke. Na primjer,
posmatrajmo pokuaj generisanja jednog sluajnog uzorka 10-stranog poligona u ravni,
kao osnovu za procjenu prosjenog sluaja vremenske kompleksnosti.
Vrativi se najloijem sluaju kompleksnosti (standardna mjera), tabela 5.2 nam daje
grubu sliku performansi algoritama sa razliitim funkcijama kompleksnosti.
Tabela 5.2: Gruba podjela vremenske kompleksnosti

O(1)
O(log n)
O(n)
O(n log n)
O(nk)
O(kn)

Konstantno vrijeme
Logaritamsko vrijeme
Linearno vrijeme
Pod-linearno vrijeme

Veoma brz, nezavisan od ulaza


Brz (na pimjer, binarno pretraivanje)
Umjeren (na primjer, linearno pretraivanje)
Umjeren (na primjer, algoritmi za optimalno
sortiranje)
Polinomsko vrijeme
Umjeren ili spor (na primjer, algoritmi najkrae
rute)
Eksponencijalno vrijeme Izuzetno spor, sa tendencijom usporavanja (na
primjer, algoritmi trgovakog putnika)

Algoritmi koji su reda O(kn) (to jest, sa eksponencijalnom vremenskom kompleksnou) i


vieg od ovog, se esto nazivaju slabim (usporavajuim), jer se mogu koristiti samo za
male ulazne veliine.
Za svaku geometrijsku operaciju moemo uporeivati performanse raznih algoritama koji
izvravaju ovu operaciju. Poreenje moe biti izvedeno eksperimentalnim putem,
odnosno pomou generisanja skupova ulaznih vrijednosti i mjerenja performansi rada
raunarskog sistema (za svako pokretanje algoritma nad svakim skupom ulaznih
vrijednosti).
Nedostatci ovakvog pristupa su:

da su rezultati zavisni od pojedinih raunarskih sistema koji su koriteni kao


platforma za eksperimente i

160

da generisanje reprezentativnog uzorka ulaza (odnosno, skupa ulaznih vrijednosti


kakvi se mogu pojaviti u stvarnosti) moe biti teko ili ak neizvodljivo.
Alternativno, moemo koristiti prethodno diskutovan teoretski pristup, koji se sastoji od
traenja i uporedbe funkcijske klase svakog algoritma. Nedostaci ovog pristupa su:

da izraunavanje kompleksnosti algoritama moe biti sloeno,


da analiza zasnovana na najloijem sluaju moda nee biti prava refleksija
iskustva (na primjer, neki algoritam moe pokazati veoma loe performanse u
samo malom broju sluajeva koji se u praksi nikad ili veoma rijetko pojavljuju) i
da uporedba klase funkcija moe biti neizvodljiva ukoliko se skalarni
multiplikatori veoma razlikuju.

Nadasve, teoretski pristup je openitiji i nezavisan je od bilo koje pojedinane raunarske


platforme (to se moe razumjeti kao prednost).

5.2 Diskretna Euclidova ravan


Pitanja vezana za reprezentaciju podataka baziranu na poljima i objektima se prilino
razlikuju. Za model podataka zasnovan na pristupu sa poljima, funkcije polja su ve
diskretizovane na lokacije (elije) u fiksnom prostornom okviru. Sa druge strane, kod
objektno baziranog modela, pristup diskretizaciji ima ira grananja (ravanja), jer nema
eksplicitnog prostornog okvira. Prostorno referensirani objekti u GIS-u su obino
bazirani na parovima Cartesievih koordinata unutar Euclidove ravni. Meutim, Euclidova
geometrija podrazumjeva kontinuum u svojoj osnovi, koji se jedino u konanom smislu
moe aproksimirati koritenjem digitalnog raunarskog modela. Kao to se moe
pokazati, ovakva aproksimacija moe voditi do velike i nekontrolisane akumulacije
greaka, koje mogu izmjeniti geometrijsko ureenje, pa ak i naruiti topologiju.

5.2.1 Geometrijska domena


Pretpostavimo da smo za reprezentaciju taaka u diskretizovanom Euclidovom prostoru
odabrali brojne parove sa cjelobrojnim vrijednostima. Dalje, uspostavimo koordinatni
okvir koji se sastoji od fiksne poetne take (koordinatnog poetka) i para meusobno
ortogonalnih linija (osovina) koje se sijeku u koordinanom poetku. Taka u ravni je
povezana sa njom preko jedinstvenim parom cjelobrojnih vrijednosti (x, y) koje
predstavljaju mjeru udaljenosti od koordinatnog poetka u pravcu svake od koordinatnih
osa. Kolekcija svih moguih ovakvih taaka predstavlja diskretnu Euclidovu ravan Z2.
Pravolinijski segmenti se mogu definisati preko etvorostrukih cjelobrojnih vrijednosti,
odnosno dva para ovih vrijednosti koje reprezentuju take na krajevima linijskog
segmenta.
Sada moemo dati precizniju definiciju pojma geometrijske domene kao tripleta G, P, S,
gdje je:

G mrea domene, odnosno konaan povezani dio diskretne Euclidove ravni Z2,
P skup taaka u Z2 i
S skup linijskih segmenata u Z2.

161

i za koje vrijede slijedei zatvoreni uslovi:

Svaka taka iz P je taka u mrei domene G.


Bilo koji linijski segment iz S mora imati svoje krajnje take koje pripadaju P.
Bilo koja taka iz P koja predstavlja incident sa linijskim segmentom u S mora
biti jedna od njegovih krajnjih taaka.
Ukoliko se bilo koja dva linijska segmenta iz S presjecaju u nekoj taki, onda ta
taka mora pripadati P.

Osnovna zamisao je da se prostorni objekti vieg nivoa mogu konstruisati od objekata iz


geometrijske domene. Slika 5.3a prikazuje jednostavan primjer geometrijske domene.
Ovdje je triplet G, P, S opisan sa G kao kvadratnom mreom 10x10, skup P={a, b, c, d,
e, f, g, h, i}, a skup S={ab, ac, dh, eh, fh, gh}. Moe se primjetiti da su dozvoljene samo
take koje lee na mrei. Konfiguracija na slici 5.3b nije geometrijska domena, jer se
linijski segmenti moraju presjecati u takama iz S.

Slika 5.3: Mrene (grid) strukture: struktura koja formira geometrijsku domenu (lijevo)
i struktura koja ne formira geometrijsku domenu (desno)

5.2.2 Diskretizacija i Green-Yaoov algoritam


Euclidov prostor, zasnovan na realnim brojevima, je topoloki bogat (gust) i sposoban da
podri potencijalno beskonaan nivo preciznosti. Diskretizovan prostor, zasnovan na
cijelim brojevima, ima sposobnost da koristi samo konaan nivo preciznosti. Zbog toga,
prilikom diskretizacije (odnosno, prevoenja podataka iz kontinualne u diskretnu
domenu) dio preciznosti e neizbjeno biti izgubljen. Gubitak preciznosti je nepoeljan,
jer moe voditi ka nakupljanju greaka. Veina ljudi koji su koristili raunar ili kalkulator
za diskretne numerike operacije svijesni su pojave greaka nastalih zaokruivanjem
vrijednosti. Slini tipovi greaka, koje emo sada opisati, se mogu pojaviti i u
geometrijskih domeni.

162

a) Ukljuivanje mrene take x u domenu


(koja je najblia presjeku linija)

b) Da li je presjena taka iznad ili ispod linije ef?

c) Nove podjeljene linije se dodiruju u taki


presjecanja x

d) Linija ab je otklonjena od svog originalnog


poloaja i prolazi kroz popravljena presjecitima

Slika 5.4: Smicanje taaka i otkloni (skretanja) linija

Slika 5.4a prikazuje konfiguraciju koja nije klasificirana kao geometrijska domena.
Problem je u tome to se linijski segmenti ab i cd presjecaju u taki koja ne pripada
skupu taaka domene. U stvari ovu taku presjecanja nije ni mogue dodati u ovaj skup
taaka, jer ona jednostavno nije taka koja moe pripadati mrenoj domeni. ta se u
ovom sluaju moe uraditi? Jedno rjeenje ja da se u ovu domenu uvede mrena taka x,
koja je najblia taki presjecanja (ili da se prema nekoj konvenciji odabere jedna od
taaka, ako imamo vie mrenih taaka podjednako udaljenih od presjecita). Ovakav
pristup je dvodimenzionalni ekvivalent numerikom zaokruivanju i ilustrovan je na slici
5.4a. Naravno, ovde nemamo konfiguraciju koja bi zadovoljila sve aksiome domene, ali
bismo mogli proiriti na pojam geometrijske domene kako bi podrali ovakve strukture.
Meutim, ovo rjeenje samo po sebi nije zadovoljavajue, jer su s njim naruena
topoloka ogranienja. Na primjer, nije zadran sluaj relacije da taka presjecanja dviju
linija lei na obje ove linije. Takoe, kao to pokazuje slika 5.4b, postoji mogunost da
taka bude otklonjena tako da pree sa jedne strane linije na drugu. Stvarna taka
163

presjeka linije ab sa linijom cd lei ispod linije ef, ali zaokruena taka presjecanja x lei
iznad linije ef.
Prvi pokuaj modifikacije kojom bi se izbjegli ovi problemi, bio bi da se linijski segmenti
pocjepaju tako da budu povezani sa zaokruenom presjenom takom, kao to je
prikazano na slici 5.4c. Na ovaj nain bi se linije ab i cd pocjepale na linije ax, bx, cx i
dx. Ova konfiguracija sada predstavlja geometrijsku domenu. Problem sa ovakvim
rjeenjem je u tome to se srazmjerno dinamici pojava sve veeg broja presjecita gubi
kontrola nad smicanjem linijskih segmenata. Slika 5.4d prikazuje nekoliko unaprijeenih
linijskih segmenata koji su dodati. Opazite da je lanac axyzb dobro odetao u odnosu na
originalni linijski segment ab.

b) Presjecita nastala primjenom Green-Yao


algoritma

a) Green-Yao algoritam primjenjen na ab i cd

Slika 5.5: Green-Yaoov mehanizam upravljanja segmentnim presjecitima

Problem smicanja linija (plivajuih linija) se moe rijeiti Green-Yaoovim algoritmom.


Zamislimo da su mrene take iode na plutanoj tabli, a da su linije ab i cd elastine trake
(gumice) razvuene izmeu svojih krajnjih taaka, kao to je prikazasno na slici 5.5a.
Prilikom pomjeranja njihove presjene take (vora) do najblie take u mrei, nije
dozvoljeno da gumica prelazi preko ioda, tako da se ona zatee oslanjajui se na iode
koje joj se nalaze na putu otklona. U naem primjeru take e i f stvaraju barijeru
pomjeranju segmenta ax i xb, respektivno. Na ovaj nain, segment ab se ne dijeli na dva
nova segmenta (kao to je prikazano na slici 5.4c), nego u ovom sluaju na etiri
segmenta: ae, ex, xf i fb.
Ovim primjerom se pokuava potaknuti razumjevanje mehanizma djelovanja ovog
algoritma. De facto, formalan izraz algoritma zahtjeva izvjesno matematiko znanje o
neprekidnim razlomcima (continued fractions), to je izostavljeno iz ovog razmatranja.
Vaan rezultat koji se postie primjenom ovog algoritma je da on ograniava otklanjanje
linijskih segmenata na prostor omeen svojim najbliim mrenim takama (takozvanom
envelopom segmenta), bez obzira na broj presjenih taaka koje su involvirane. U
predhodno opisanom primjeru, smaknuta presjecita prikazana na slici 5.5b ne formiraju
isto otklanjanje linije kao u primjeru sa slike 5.4d. Prema tome, sada imamo proces

164

diskretizacije koji je i dobro definisan, a i rezultira jednom ogranienom akumulacijom


greaka.

5.2.3 Diskretizacija krivih linija


Ova sekcija se fokusira na probleme uzrokovane od taaka i pravolinijskih segmenata u
diskretizovanoj ravni. Poto su mnogi prostorni objekti sastavljeni od glatkih krivih,
ovdje e se opisati pristupi u aproksimaciji krivih linija u diskretnom prostoru.
Uobiajena tehnika je aproksimacija krive polilinijom (iako, kako je to diskutovano u
sekciji 4.4.1, raunarske krive sa diskretnim parametrima takoe mogu biti koritene).
Postoji neogranien broj naina, sa aspekta broja i poloaja segmenata, na koje se neka
kriva moe aproksimirati polilinijom. Openito, to se koristi vie segmenta, to je bolja
aproksimacija (uz obezbjeenje da se segmenti biraju na propisan nain). Problem
aproksimacije krive sa polilinijom je blisko povezan sa problemom simplifikacije linije.
Simplifikacija linije predstavlja zadatak redukcije nivoa detalja prilikom reprezentacije
polilinije, zadravajui njene esencijalne geometrijske karakteristike. Simplifikacija linije
se esto koristi u kartografskoj generalizaciji, kada postoji potreba prezentacije karata u
raznim razmjerana i sa razliitim nivoima detalja.

Slika 5.6: Douglas-Peuckerov algoritam za diskretizaciju krive linije

Na slici 5.6 je prikazana tehnika za simplifikaciju krive linije bazirana na DouglasPeuckerovom algoritmu. Razmotrimo krivu prikazanu na slici 5.6a. Prvo se krajevima
krive dodjele take a i b. Potom se konstruie pravolinijski segment ab. Ovom skupu
taaka se pridrui taka c koja lei na krivoj i ima najveu ordinatu u odnosu na segment
ab. Sada je kriva podjeljena na dva dijela: ac i cb. Postupak se dalje ponavlja po istom
principu na svaki od novonastalih dijelova krive. Na slici 5.6b, kriva je podjeljena na

165

etiri dijela: ad, dc, ce i eb. Kada udaljenost od pravolinijskog segmenta do najudaljenije
ordinatne take koja pripada krivoj linije dosegne unaprijed zadani prag, iterativni
postupak se zaustavlja. Na slici 5.6c je isprekidanom segmentnom linijom pokazano ovo
svojstvo za dijelove krive ce i eb. to je vrijednost praga nia, to e se umetnuti vie
taaka i aproksimacija e biti bolja. Algoritam se izvrava sve dok imamo dijelova krive
koji se dalje mogu dijeliti (slika 5.6d). Ova faza je u naem primjer dostignuta na slici
5.6e sa dijelovima krive ah, hf, fd, dg, gj, ji, ik, kc, ce i eb. Aproksimativna polilinija je
prikazana na slici 5.6f.

5.3 Domena prostornih objekata


Ova sekcija razmatra neke razliite pristupe za reprezentaciju strukture prostornih
objekata, koja se esto naziva uspostavljanje topologije. Prva reprezentacija koja se
navodi je pageti model koji obezbjeuje samo minimalan nivo topolokih informacija.
Zatim se prelazi na reprezentacije koje topologij koriste mnogo eksplicitnije. Neke od
ovih reprezentacija kombinuju topologiju sa prostornim prikazom objekata.

5.3.1 pageti
pageti kao tip strukture podataka predstavlja planarnu konfiguraciju taaka, linija i
povrina. Geometrija je reprezentovana kao skup listi (nizova) pravolinijskih segmenata.
Svaka od listi predstavlja diskretizaciju linije koja moe egzistirati neovisno ili kao dio
granice neke povri. Ne postoji eksplicitna reprezentacija topolokih meusobnih relacija
unutar konfiguracije, kao to su relacije susjedstva izmeu sastavnih povrina. Termin
pageti (spaghetti) je izraajna metafora za reprezentaciju ovakve strukture, jer liste
pravolinijskih segmenata u geometriskom smislu podsjeaju na pagete u tanjiru.
Njihov primjer je u obliku planarne konfiguracije prikazan na slici 5.7. Svaka od
poligonalnih povrina (poligona) je predstavljen svojom graninom petljom. Svaka petlja
je diskretizovana kao zatvorena polilinija (na primjer, primjenom Douglas-Peuckerovog
algoritma iz sekcije 5.2.3). Svaka ovakva polilinija je reprezentovana kao lista taaka, od
kojih svaka taka ekstremna (krajnja) taka pravolinijskog segmenta iz ove polilinije. Za
primjer prikazan na slici 5.7, liste taaka su:
A: [1, 2, 3, 4, 21, 22, 23, 26, 27, 28, 20, 19, 18, 17]
B: [4, 5, 6, 7, 8, 25, 24, 23, 22, 21]
C: [8, 9, 10, 11, 12, 13, 29, 28, 27, 26, 23, 24, 25]
D: [17, 18, 19, 20, 28, 29, 13, 14, 15, 16]
Da bi se ostvario njihov geometrijski prikaz u ravni, svaka taka je specificirana svojim
koordinatnim parom. Ovakve sekvence (nizovi) su struktuirane ciklino, tako da je, na
primjer, [w, x, y, z]=[x, y, z, w]=[y, z, w, x]=[z, w, x, y]. Zbog ovoga se prostorna struktura
prevodi u skup ovakvih listi taaka.

166

Slika 5.7: Planarna konfiguracija (kontinualna i diskretna) koja dio ravni dijeli na povrine A, B, C i D

Bilo koja geometrijska konfiguracija bazirana na takama i linijama koje lee u


Euclidovoj ravni se mogu reprezentovati na ovakav nain. pageti obezbjeuju osnovnu
povezanost unutar prostorne konfiguracije, ali se ovakvom strukturom vrlo malo drugih
prostornih relacija moe eksplicitno reprezentovati. Na primjer, susjedstvo izmeu
povrina A i B se moe ustanoviti jedino kalkulacijom zasnovanom na prepoznavanju
niza zajednikih taaka u njihovim pripadajuim spiskovima taaka. Zbog toka je ova
reprezentacija neefikasna za klasu operacija geoprostorne analize zasnovanih na ovakvim
prostornim relacijama. Takoe, ona je neefikasna i za koritenje memorijskog prostora jer
sadri redudantnu duplikaciju podataka (nizovi graninih taaka koje su zajednike za
dvije susjedne povrine se pohranjuju u okviru listi za obje ove povrine ponaosob).
pageti reprezentacije su korisne u situacijama sa velikom brojem jednostavnih
geometrijskih operacija, gdje se ne zahtjevaju strukturne relacije. Na primjer, ovakva
reprezentacija je dovoljna kada se zahtjeva samo grafika prezentacija geoprostornih
podataka na kompjuterskom ekranu ili drugom izlaznom ureaju. pageti reprezentacija
potie iz konceptualno jednostavnog modela podataka i bila je popularna u GIS-u. Njenu
osnovnu strukturu je mogue poboljati kako bi se omoguila bogatija reprezentacija. Na
primjer, mogue je sa spiskovima taaka povezati dodatne atribute (kao to je tip objekta
ili stil prikaza linije).

5.3.2 Reprezentacije sa vie topologije


U narednom izlaganju e se predstaviti reprezentacije koje eksplicitno sadre vie
prostornih relacija, a koje sa pageti strukturom nisu podrane. Ovakve reprezentacije su
esto nazivane topolokim, s ciljem da se naznai da su one sposobne prihvatiti i
reprezentovati razne topoloke relacije (kao to je, na primjer, susjedstvo). Meutim,
ovaj termin nije od posebne koristi, obzirom da su ak i pageti sposobni da izraze
relaciju topoloke povezanosti izmeu zajednikih ivica.
Reprezentacija sa nazivom NAA (node-arc-area), ije izlaganje slijedi, je sposobna
eksplicitno prezentirati relacije susjedstva izmeu datih povrina (subdivision of a
surfice). NAA svojom simetrijom jasno prikazuje dualitet izmeu datih vorova i
povrina. Za nju je obiajeno da se opisuje u formi skupa relacionih ema u relacionoj
bazi podataka. U stvari, ova reprezentacija je koritena kao primjer za E-R modeliranje u
sekciji 2.3.1. Primarni entiteti od koji se sastoji su: usmjerena linija, vor i povrina,

167

gdje se pod povrinom smatra lik obuhvaen linijama koje su homeomorfne eliji, osim
kod vanjske (eksterne) povrine. Sistem pravila za NAA obuhvata:
Svaka usmjerena linija ima tano jedan poetni i jedan zavrni vor.
Svaki vor mora biti poetni ili zavrni vor (mogue i oboje) od najmanje jedne
usmjerene linije.
Svaka povrina je ograniena jednom ili vie usmjerenih linija.
Usmjerene linije se mogu presjecati samo u svojim zavrnim vorovima.
Svaka usmjerena linija ima tano jednu povrinu sa svoje desne i jednu povrinu
sa svoje lijeve strane.
Svaka povrina mora biti ili lijeva ili desna povrina (mogue i oboje) od
najmanje jedne usmjerene linije.
Ova pravila se mogu izraziti EER dijagramom, kao to je ranije pokazano na slici 2.16.
Entitet tipa povrina ima preklapajue podtipove lijeva povrina i desna povrina (ista
povrina za neke usmjerene linije moe biti lijeva, a za neke druge desna povrina).
Svaka instanca ovih podtipova ulazi u vie-na-jedan relaciju sa onim usmjerenim
lukovima koji granie sa njom sa lijeve i desne strane, respektivno. Entitet tipa vor ima
preklapajue podtipove poetni vor i zavrni vor (isti vor za neke usmjerene linije
moe biti poetni, a za neke druge zavrni vor). Svaka instanca od ovih podtipova ulazi
u relaciju vie-na-jedan sa onim linijama za koje je on poetni, odnosno zavrni vor,
respektivno.
Slika 5.8 prikazuje dekompoziciju konfiguracije sa slike 5.7, i to na vorove, usmjerene
linije i povrine pripremljene za NAA reprezentaciju. Sastavne povrine su oznaene sa
A, B, C i D. Eksterna povrina X je neophodna zbog zadovoljenja svih pravila u sistemu.
Linije su oznaene sa a, ..., i , a vorovi sa 1, ..., 6. Povrina A je ograniena sa etiri
linije a, e, h i g. Linije a i e imaju A kao lijevu povrinu, dok linije g i h imaju A kao
desnu povrinu. vor 1 ima incidentne linije a, b i e. Linije e i b imaju vor 1 kao zavrni
vor, dok linija a ima vor 1 kao poetni vor.

Slika 5.8: Dekompozicija planarne konfiguracije sa slike 5.7 na vorove, usmjerene linije i povrine

Dualitet izmeu vora i povrine dovodi do zadovoljavajue simetrije u NAA


reprezentaciji. Ova simetrija je jedino uspostavljena zahvaljujui postojanju posebno
oblikovane eksterne povrine (X na slici 5.8). (Ne postoji vanjski vor koji je na takav
nain oblikovan.) Meutim, ukoliko promjenimo prikaz prostora u ravni u prikaz na
168

povrini sfere (idealan 2-prostor), onda ne postoji vie potreba za vanjskom povrinom i
tada imamo idealnu simetriju.
Slijedivi uobiajene procedure projektovanja baze podataka, EER dijagram obrazuje
osnovu za normaliziranu relacionu shemu baze podataka kao jednostruku relacionu
shemu:
ARC(ARC ID, BEGIN_NODE, END_NODE, LEFT_AREA, RIGHT_AREA)

Odgovarajua relacija za primjer sa slike 5.8 je prikazana u tabeli 5.3.


Tabela 5.3: Relacija koja odgovara konfiguraciji povrina sa slike 5.8

NAA reprezentacija je do sada pokazala samo relacije povezanosti i susjedstva izmeu


planarnih objekata. Ona se moe proiriti tako da ukljui i detalje o prezentaciji
prostornih objekata. Za diskretizovanu prezentaciju prostornih objekata je neophodno
ukljuiti nove entitetske tipove, to jest taku, poliliniju i poligon. Takoe se zahtjeva i
entitetski tip koordinata, kako bi se predhodni entiteti mogli prezentirati sa tanim
poloajem. Na slici 5.9 je dat EER dijagram za proirenu NAA reprezentaciju. Opazite da
svaki poligon prezentira povrinu i da je konstituisan kao sekvenca (ciklus) entiteta
polilinije. Svaka polilinija prezentira (usmjerenu) liniju koja je konstituisana kao
sekvenca entiteta take. Svaki vor je taka, ali svaka taka nije vor, jer se takama
opisuju i putanje linija izmeu vorova.
Kao i prije, ovaj dijagram se moe koristiti kao osnova za izradu normalizovane relacione
sheme baze podataka. Da pojednostavimo stvari, poto neki entiteti meusobno
korespondiraju jedan-na-jedan i nemaju dodane atribute, onda moemo napraviti
identifikaciju izmeu povrine i poligona, kao i izmeu linije i polilinije. U ovom
sluaju imamo slijedee tabele:

169

Slika 5.9: EER dijagram za proirenu NAA reprezentaciju

Relacija ARC je nepromjenjena u odnosu na diskusiju o osnovnoj NAA relacionoj shemi.


Relacija POLYGON daje prikaz svake povrine kao sekvence linija (polilinija), gdje bi
svaka sekvenca (niz) linija trebala biti interpretirana ciklino. Relacija POLYLINE daje
prikaz svake linije kao sekvence taaka. Relacija POINT daje prikaz svake take, a relacija
NODE daje prikaz vorova (onih taaka koje odgovaraju svakom voru).

5.3.3 Lista dvostruko povezanih linija (DCEL-doubly connected edge


list)
Lista dvostruko povezanih linija (DCEL-doubly connected edge list) daje vee topoloke
mogunosti u povrinskim (surficial) konfiguracijama. DCEL obezbjeuje kompletnu
reprezentaciju topologije povezanog planarnog grafa. Ona izostavlja detalje o aktuelnim
prikazima (to jest, poligonima, lancima i koordinatama taaka), dok se fokusira na
topoloke relacije koje se odnose na entitete vora, linije (ivice) i povrine (lika). DCEL
pohranjuje (u jednostruku tabelu) sve informacije koje su neophodne za konstrukciju:
sekvence (ciklusa) linija oko vora za svaki vor u konfiguraciji, i
sekvence (ciklusa) linija oko povrine za svaki vor u konfiguraciji.
Rije sekvenca ovde ima posebno znaenje. Kod ve opisane NAA reprezentacije
skupovi linija opasavaju (okruuju) povrinu, odnosno sastaju se u nekom verteksu

170

(voru), ali se sekvenciranje ne moe odrediti sve dok nije dat prikaz elemenata sadraja
(koordinate, polilinije, poligoni).
Sa EER dijagramom za DCEL (na slici 5.10) je predstavljeno proirenje NAA
reprezentacije. Ovde su dodane dvije nove relacije: svaka linija ima jedinstvenu narednu
liniju i jedinstvenu predhodnu liniju. Za datu liniju a, da bi pronali predhodnu liniju od
a, potrebno je selektovati poetni vor (recimo n) od a i, poevi od a, okrenuti se oko n
u pravcu suprotno od kretanja kazaljke na satu dok ne naiemo na prvu liniju. Da bi
pronali slijedeu liniju od a, potrebno je okrenuti se oko zavrnog vora od a u pravcu
suprotnom od kretanja kazaljke na satu, poevi od a, dok ne naiemo na prvu liniju.
Relacije predhodni i slijedei su prikazane na slici 5.11. Primjer DCEL reprezentacije je
dat u tabeli 5.4, koja reprezentuje konfiguraciju sa slike 5.8.

Slika 5.10: EER dijagram koji prikazuje DCEL strukturu podataka

Algoritmom 5.1 je data procedura raunanja sekvence (ciklusa) linija koje okruuju vor
n za DCEL strukturu. Ulaz u algoritam je NODE_ID n. Algoritam onda proizvoljno
selektuje jednu liniju x koja predstavlja incident sa n (1. linija koda). Za relaciju DCEL iz
tabele 5.4, moemo specificirati ovaj korak koritenjem SQL-a ili kao izraz relacione
algebre, na primjer:
ARC_ID(BEGIN_NODE=n OR END_NODE=n (DCEL))
koja vraa relaciju koja sadri sve linije koje su incident sa vorom n (u 2. poglavlju je
objanjena notacija koja se koristi u relacionoj algebri). Algoritam pohranjuje ovu
inicijalnu liniju x kao prvu u sekvenci (to je indicirano sa naznakom operatora u 2.
linij koda), a onda trai prvu liniju kruei u pravcu suprotnom od kazaljke na satu od
linije x (5. 8. linija koda). Izraz relacione algebre:
NEXT_ARC(ARC_ID=x (DCEL))
se moe koristiti za pozivanje relacije koja sadri slijedeu liniju od x (slina operacija
poziva i prethodnu liniju). Nova linija je pohranjena u sekvencu (4. linija koda), a proces
se iterativno nastavlja sve dok se ne vratimo do poetne linije x.
171

Slika 5.11: Relacije za jednu liniju u DCEL strukturi

Tabela 5.4: DCEL relacija koja reprezentuje konfiguraciju sa slike 5.8

Algoritam 5.1: Raunanje sekvence linija (suprotno od kretanja kazaljke na satu) koje okruuju vor n

Za ilustraciju razmotrimo primjenu algoritma 5.1 na vor 6 sa slike 5.8 (tabela 5.4).
Algoritam e selektovati liniju i kao inicijalnu liniju (vor 6 je zavrni vor za i). Prva
iteracija algoritma bi onda pohranila i, a zatim pronala h (h je slijedea linija za liniju i).
Algoritam onda pohranjuje h i iterativno se izvrava dok ne nae slijedeu liniju g.
Konano, g se pohranjuje, a algoritam se zaustavlja obzirom da prethodna linija za g jeste
i, ime je sekvenca kompletirana.
Na slian nain, sekvenca (ciklus) linija oko povrine X (u pravcu kretanja kazaljke na
satu) se moe sraunati modifikacijom algoritma 5.1 u algoritam 5.2.

172

Algoritam 5.2: Raunanje sekvence (u pravcu kretanje kazaljke na satu) linija koje okruuju povrinu X

Na primjer, povrina C je lijeva povrina za liniju c. Na prvoj iteraciji algoritma


pohranjuje se linija c, a linija i se selektuje kao predhodna linija od c. U slijedeoj
iteraciji se pohranjuje i, a selektuje h kao slijedea linija, koja se ponovo pohranjuje i
koristi za selekciju linije f. Konano, i linija f se pohranjuje. Algoritam se zaustavlja, jer
je c predhodna linija od f, ime je sekvenca cihf kompletirana. Opet, da bi obezbjedili
neke od koraka algoritma, moemo specificirati SQL izjavu ili izraz relacione algebre.
Na primjer, SQL izraz bi bio:
SELECT ARC_ID FROM DCEL
WHERE LEFT_AREA = A OR RIGHT_AREA = X

to vraa one linije koje okruuju povrinu X iz relacije DCEL.

5.3.4 Objektni DCEL


Ista vrsta DCEL strukture se moe koristiti za opisivanje agregacija jako (strogo)
povezanih povrinskih objekata. Pretpostavimo da razmatramo objekte u Euclidovoj
ravni koji su regularno zatvoreni, to jest, koji su iste povrine. Formalni koncept
kombinatorne karte je predstavljen u sekciji 3.3.5. Reprezentacija koju emo sad opisati,
koja se naziva objektni DCEL, je bazirana na kombinatornoj karti i ima vanu
karakteristiku da je vjerna, u smislu homeomorfizma i ciklinog poretka linija oko
poligona. Ovo znai da dvije ovakve povrinske agregacije koje nisu homeomorfne
moraju imati razliite reprezentacije sa izmjenjenim ciklinim poretkom linija oko
poligona.
Povrinski objekat A prikazan sivim tonom na slici 3.38 izgleda kao da ima dvije
reprezentacije iste prirode: unije dva polumjeseca B i C ili razlike krunog i elipsastog
diska D i E. Zaista nije vano koja je odabrana sve dok smo konzistentni. Objektna
DCEL reprezentacija se zasniva na pojmovima stroge i slabe povezanosti, diskutovane u
sekciji 3.3.5. Za sliku 3.38, sam objekat A nije strogo povezan, postoje dvije artikulisane
take na svakom kraju njegovog vertikalnog prenika. A je slabo povezan i ima
polumjesece B i C kao strogo povezane komponente. Objektna DCEL reprezentacija ima
efekat dekompozicije nekog povrinskog objekta u njegove strogo povezane komponente.

173

Dakle, postavlja se zahtjev za metodom koja e omoguiti specifikaciju jedinstvene i


vjerne reprezentacije kompleksnih slabo povezanih povrinskih objekata tipa kakav je
prikazan na slici 5.12.

Slika 5.12: Kompleksni slabo povezan povrinski objekat

Slijedi prezentacija jedne ovakve metode. Kao prvo, preklopimo ovaj objekat sa
kolekcijom usmjerenih linija i vorova kao to je prikazano na slici 5.13. Neka su linije
usmjerene tako da se povrine koje one ograniavaju uvijek nalaze sa njihove desne
strane. Kao i kod DCEL reprezentacije, slabo konektovani povrinski objekat se moe
reprezentovati u objektnoj DCEL tabelarnoj formi (tabela 5.5). U ovom sluaju nije
potrebno dodati identifikatore povrina, jer se podrazumjeva da je cijela struktura
prostorno referencirana kao jedan povrinski objekat. Takoe, nedostaju i informacije o
odreenim vorovima, obzirom na injenicu da se zavrni vor neke linije moe smatrati
poetnim vorom naredne linije.

Slika 5.13: Objekat sa slike 5.12 sa definisanim linijama i vorovima

Granine linije strogo konektovanih elija koje su komponente ovog slabo konektovanog
objekta se mogu jednostavno pozvati pomou praenja sekvenci linije do slijedee linije
dok se ne vratimo nazad do poetne linije. Granine linije iz ovog primjera su:

174

[a, c, e, l, i]
[f, k, g]
[b, j, h, d]
Ukratko, objektna DCEL reprezentacija ukljuuje listu linija koje ograniavaju strogo
konektovane komponente objekta. Ovakva reprezentacija obezbjeuje kompletan i vjeran
opis topologije ovog objekta. Pored ove i ostalih navedenih reprezentacija postoje jo
dvije koje su kao alternativne opisane u narednom izlaganju.
Alternativne reprezentacije prostornih objekata: pageti, NAA, DCEL i objektni DCEL su etiri
od najredovnije koritenih reprezentacija planarnih prostornih objekata. Meutim, postoji i
nekoliko drugih reprezentacija, posebno namjenjenih sa specijalizirane domene. Jedna od njih je
reprezentacija krilate ivice (Baumgart, 1975), koja predstavlja varijantu DCEL-a. Ona se moe
koristiti za reprezentaciju podjele orijentisanih povrina (to jest, onih povrina za koje je pojam
smjera kretanja kazaljke na satu dobro definisan). Za razliku od DCEL-a, gdje je orijentacija
ivice (granine linije) eksplicitno pohranjena u formi poetnih i zavrnih vorova, u
reprezentaciji sa krilatim ivicama orijentacija je implicitno unutar strukture podataka. Kod ove
reprezentacije je svaka ivica (linija) povezana sa etiri druge ivice po obrascu: slijedea ivica u
smjeru kretanja kazaljke na satu, prethodna ivica u smjeru kretanja kazaljke na satu, slijedea
ivica u smjeru suprotnom od kretanja kazaljke na satu i prethodna ivica u smjeru suprotnom od
kretanja kazaljke na satu.
Jo jedna alternativna reprezentacija je reprezentacija kvadratine ivice (Guibas i Stolfi, 1985.),
koja omoguava da se mogu reprezentovat orijentisane ili neorijentisane povrine i koja je
openito sloenija od predhodne.
Tabela 5.5: Objektna DCEL relacija koja predstavlja slabo povezani povrinski objekat sa slike 5.13

Prije nego zavrimo izlaganje vezano za reprezentacije planarnih povrinskih objekata,


vano je dati napomenu vezanu za objekte sa rupama i ostrvima. U kontekstu regularno
(pravilno) zatvorenih povrinskih objekata, rupa (ili ostrvo) je definisana kao podregion
(koji je sadran u glavnom regionu), sa granicom koja je rastavljena od granice glavnog
regiona. Slika 5.14 predstavlja primjere kombinacija rupa i ostrva. Moe se zapaziti da
rupa moe i ne mora dodirivati granicu glavnog regiona ili druge rupe. Stoga, povrinski
objekti sa rupama mogu biti reprezentovani koritenjem ekstenzija predhodnih struktura,
pri emu treba obratiti panju ukoliko se jo zahtjeva vjernost reprezentacije.

175

Slika 5.14: Povrinski objekti sa promjenjivim brojem rupa i ostrva

5.4 Reprezentacije modela zasnovanih na polju


Cijelokupno dosadanje izlaganje je ilo u pravcu detaljnijih opisa reprezentacija
prostornih objekata koji se nalaze u ravni. Ove reprezentacije eksplicitno sadre
informaciju o topolokim relacijama izmeu sastavnih dijelova prostornih objekata.
Naredni tok izlaganja ide u pravcu opisivanja jedne vane klase reprezentacija
zasnovanih na strukturama sa teselacijom, za koje su topoloke relacije esto implicitne.
Teselacije su ve predstavljene u kontekstu pojma prostornog okvira opisanog u
predhodnom poglavlju. Teselacija je podjela (izdjeljenost) ravni, ili dijela ravni, tako da
predstavlja uniju skupa rastavljenih povrinskih objekata (areala). Ukoliko su svi ovi
objekti vjerne kopije jednog istog regularnog poligona i svaki verteks (vor) je takoe
regularan, onda je teselacija regularna, a u suprotnom je neregularna. Najvanija u klasi
reprezentacija sa regularnom teselacijom je grid ili rasterska reprezentacija, zasnovana
na teselaciji sa kvadratima. Od velikog interesa je i TIN (triangulated irregular networks)
reprezentacija koja pripada skupini reprezentacija sa neregularnom teselacijom.
Trouglovi su najjednostavniji diskretni povrinski objekti koji nastanjuju Euclidovu
ravan, te ih je zbog toga interesantno koristiti kao primitive povrinskih elemenata u
raprezentacijama.

5.4.1 Reprezentacije sa regularnom teselacijom


U smislu diskretnih povrinskih objekata, teselacija povrine praktino predstavlja njeno
pokrivanje sa skupom nepreklapajuih poligona. Regularni poligon je poligon kod kojeg
sve ivice imaju istu duinu i svi unutranji uglovi su isti. Na svakom voru teselacije,
vorna figura predstavlja poligon formiran povezivanjem tako da je srednja (zajednika)
taka svih ivica incident sa ovim vorom. Teselacija povrine za koju su svi poligoni i
vorne figure regularni i isti se naziva regularnom teselacijom. Na primjer, kod regularne
teselacije jednakostraninih trouglova vorne figure su regularni heksagoni.
Regularne teselacije: Teselacije se koriste ve stotinama godina u dekorativnom oblaganju
podova i zidova i stropova objekata. U 17. stoljeu, matematiar i astronom Johannes Kepler je

176

bio prva osoba koja je sistematino studirala geomettriju teselacija. Kepler je opazio da je su u
sluaju Euclidove ravni mogue jedino tri regularne teselacije, to jest one bazirane na
jednakostraninim trouglovima, kvadratima i regularnim heksagonima. Mogue je pokazati da
nema drugih regularnih teselacija, uz konstataciju da interni uglovi regularnog poligona na
svakom voru teselacije moraju biti faktor od 360. Troglovi (unutarnji ugao 60), kvadrati
(unutarnji ugao 90) i heksagoni (unutarnji ugao 120) su jedini regularni poligoni koji
zadovoljavaju ovaj kriterij.

Ilustracija pravilne (regularne) teselacije (prostorne podjele)

Dakle, za prostorne reprezentacije daleko najvie koritena regularna teselacija je mrea


kvadrata. Ona omoguava rastersku reprezentaciju prostornih podataka, gdje su planarne
prostorne konfiguracije dekomponovane sa uzorkom kvadrata (piksela) u mrei (gridu).
Regularna triangulaciona i heksagonalna teselacija se rijetko koriste za planarnu
reprezentaciju podataka. Ugnjeene regularne triangulacione teselacije se predlau (u
estom poglavlju) za reprezentovanje sfernih podataka. Reprezentacija sa regularnom
kvadratnom teselacijom se dobro uklapa sa standardnim i dobro podranim
programerskim tipovima podataka, kao to su dvodimenzionalni nizovi (matrice).
Meutim, ovakve reprezentacije nisu uvijek u saglasnosti sa nainom prikupljanja
podataka (kada se mjerne lokacije nepravilno rasprostiru preko regije od interesa). U
ovom sluaju podobnije su neregularne teselacije, koje e se razmatrati u narednom
izlaganju.

5.4.2 Reprezentacije sa neregularnom teselacijom


Neregularna teselacija je teselacija kod koje sastavni poligoni nisu svi regularni i isti.
Najee koritena neregularna teselacija je TIN. TIN moe reprezentovati varijaciju
funkcije polja nad prostornim okvirom. Njena neregularnost omoguava prostornoj
rezoluciji da varira u zavisnosti od lokalne uestalosti promjena pojave koja se opisuje
(opisujui finije detalje tamo gdje se to zahtjeva). Koristan koncept koji ovu teselaciju
slijedi je pojam dualiteta planarnih grafova, diskutovan u sekciji 3.4.2, gdje likovi postaju
vorovi, a vorovi postaju likovi (figure). Ako svakom triangulacionom liku doznaimo
vor i poveemo ga sa ivicama (stranama) ovih likova koji su susjedni u TIN-u, onda
planarna mrea koja iz ovoga rezultira jeste dual (dualitet) originalne mree. Ako je T*
dualitet TIN-a T, onda stepen svakog vora (broj ivica koje su incident sa ovim vorom)
u T* mora biti tri.
Visina svake take u TIN-u se moe odrediti koritenjem linearne interpolacie. Slika 5.15
prikazuje postupak linearne interpolacije primjenjen openito za jedan trougaoni
elemenat na povrini. Trougaona ploha abc je dio TIN-a. Podrazumjeva se da su
koordinate (u vektorskoj formi) vorova a, b i c poznate, kao i visine nad njima ha, hb i
hc.

177

Slika 5.15: Za traenje visine take X je neophodna interpolacija

Zadatak je odrediti visinu hx nad takom x sa poznatim koordinatama. Taka x je unutar


ili na granici trougla abc, tako da vrijede slijedee relacije:
x = a + b + c
gdje su , i skalarni koeficijenti koji se mogu jedinstveno odrediti, tako da je:
++=1
Visina hx se moe odrediti koritenjem jednakosti:
hx = ha + bh + hc
Predhodna jednakost izraunava visinu take koja se nalazi izmeu mjerenih taaka, uz
pretpostavku da je povrina diskretizovana u ravne plohe, to jest u povrine prvog reda
(linearne). Takoe, mogue je bazirati ovu interpolaciju i nad povrinama viih redova
(Akima, 1978.).

5.4.3 Delaunay triangulacija i Voronoi dijagram


Pretpostavimo da je dat skup nepravilno razmjetenih taaka unutar nekog regiona i da
trebamo konstruisati teselaciju nepravilnih trouglova sa vorovima u takama iz datog
skupa. Openito, postoji vie naina konstrukcije ovakve teselacije od kojih neki mogu
biti bolji od drugih. Slika 5.16 prikazuje dvije mogue triangulacije zasnovane na istom
skupu vorova. Triangulacija na desnoj strani ima vei udio izduenih, tanjih trouglova i
zbog toga se moe procjeniti da je inferiorna (loija) za neke namjene.

Slika 5.16: Dvije triangulacije zasnovane na istom skupu verteksa (vorova)

178

Triangulacija koja ima mnoge poeljne osobine, kako svoje tako i svog dualiteta, je
Delaunayeva triangulacija. U irem smislu, moe se rei da su sastavni trouglovi u
Delaunayevoj triangulaciji to je mogue vie jednakostranini. Dualitet Delaunayeve
triangulacije je Voronoi dijagram (ili Thiessenovi poligoni). Delaunayeva triangulacija se
moe predstaviti razmatranjem njenog dualiteta, odnosno Voronoijevog dijagrama.
Zamislimo da raspolaemo skupom lokacija taaka koje predstavljaju vatrogasne stanice
na nekoj regiji. Pretpostavimo da za svaku datu vatrogasni stanicu predstavljenu takom
p trebamo definisati regijom odgovornosti Rp sa svojstvom da je svaka lokacija unutar
ove regije blia taki p nego bilo kojoj drugoj taki, odnosno vatrogasnoj stanici. Zbog
jednostavnosti ilustracije, pretpostavimo da se za vrijednosti udaljenosti izmeu taaka
koristi njihovo pravolinijsko odstojanje (zrana linija) u normalnom Euclidovom
metrinom prostoru. Onda proizilazi da su ove povrine (najblieg susjedstva) Rp
poligoni koji se nazivaju poligoni bliskosti. Skup ovakvih poligona bliskosti konstituie
Voronoijev dijagram. Za dati skup taaka sa svojstvom da u njemu ne postoje tri
kolinearne take (da bi se izbjegli degenerativni sluajevi), Voronoijev dijagram okruuje
(opisuje) svaku taku sa povrinom koja sadri sve lokacije za koje je sjemena taka
(ove povrine) za njih najblia.
Delaunayeva triangulacija se sada moe formulisati kao dualitet Voronoijevog dijagrama.
Take u Voronoi dijagramu postaju vorovi u Delaunayevoj triangulaciji. Ivice u
Delaunayevoj triangulaciji spajaju susjedne poligone bliskosti u Voronoi dijagramu (slika
5.17). Delaunayeva triangulacija ima svojstvo da svaka opisana krunica sastavnog
trougla ne ukljuuje nijednu drugu triangulacionu taku unutar sebe. Ovo svojstvo je
ilustrovano na slici 5.18.
U narednom izlaganju se daju neke vanije osobine Delaunayeve konstrukcije. Za dati
polazni skup taaka P za koji ne postoji skup tri pripadajue take koje su kolinearne (u
cilju izbjegavanja degenerativnih sluajeva) vrijedi:
1. Delaunayeva triangulacija je jedinstvena.
2. Vanjske ivice ove triangulacije formiraju konveksnu ljusku (convex hull) od P (to
jest, najmanje konveksni skup koji sadri P).
3. Opisane krunice trouglova iz ove triangulacije ne sadre lanove iz skupa P u
svojoj unutranjosti. Ukoliko ova osobina vrijedi ona praktino definie
Delaunayevu triangulaciju.
4. Trouglovi u Delaunayevoj triangulaciji, potujui regularnost, to je mogue vie
slie jednakostraninim trouglovima, odnosno oni su to je mogue vie
regularni.
Osobina broj 4 je nejasna i zahtjeva dodatno pojanjenje. Pretpostavimo da imamo neku
triangulaciju (koja ne mora biti Delaunayeva) i da trebamo napraviti listu minimalnih
uglova u svakom sastavnom trouglu na nain da ova lista poinje sa najmanjim uglom i
kree se u nizu do najveeg ugla. Nazovimo ovu listu vektorom poredanih minimalnih
uglova triangulacije. Mogue je uporediti ovakva dva vektora leksikografski. Sada se 4.
osobina moe preciznije opisati na slijedei nain:
4'. Trouglovi u Delaunayevoj triangulaciji imaju najvei vektor poredanih
minimalnih uglova od bilo koje druge triangulacije nad skupom P.

179

Slika 5.17: Voronoi dijagram bliskih poligona i Delaunayeva triangulacija kao njegov dualitet

Slika 5.18: Opisane krunice Delaunayeve triangulacije

Delaunayeva triangulacija ima najvei mogui vektor poredanih minimalnih uglova


(osobina 4'), tako da ona sadri najmanju kolekciju izduenih, tankih trouglova.
Neformalno, ovo implicira da je Delaunayeva triangulacija to je mogue vie
regularna (4. osobina).

5.4.4 Triangulacija poligona


Openito, triangulacija (triangularna teselacija) dijeli neki neogranieni region sa
trouglovima baziranim na skupu vorova. U narednom izlaganju se opisuje nekoliko
pristupa triangluacije ogranienog poligonalnog regiona. Ukoliko koristimo neku
kolekciju taaka koje predstavljaju vorove nekog poligona i formiramo Delaunayevu
triangulaciju zasnovanu na njima, ovo ne mora biti triangulacija ovog poligona, jer neke
od ivica poligona ne moraju biti istovremeno i ivice triangulacije. Meutim, mogue je
koristiti prisilnu Delaunayevu triangulaciju, koja je prisiljena slijediti dati skup ivica.
Slika 5.19 prikazuje jednostavan primjer. Delaunayeva triangulacija je prikaza na slici
5.19a. Triangulacija na slici 5.19b je bila prisiljena datim poligonom (njegova granica je
180

prikazana debelom linijom). Prisiljena triangulacija ukljuuje ivicu ab, koja nije dio
Delaunayeve triangulacije na slici 5.19a.

Slika 5.19: Prisilna i neprisilna Delaunayeva triangulacija

Osim Delaunayeve metode, postoje i mnoge druge metode za triangulaciju skupa taaka i
poligona. Na primjer gramziva (greedy) triangulacija ima za cilj minimizaciju ukupne
duine ivica u triangulaciji. Ovo je postignuto uvoenjem najkrae mogue unutranje
dijagonale za svaki korak (podjele na trouglove). Slika 5.20 prikazuje gramzivu i
Delaunayevu triangulaciju jednog prostog etverougaonika. Algoritmi za triangulaciju e
se razmotriti u kasnijem izlaganju.

Slika 5.20: Gramziva (lijevo) i Delaunayeva triangulacija (desno) prostog poligona

5.4.5 Srednja osovina poligona


Srednja osovina poligona je Voronoijev dijagram koji je izraunat za linijske segmente
koji ine granicu ovog poligona. Na primjer, slika 5.21 prikazuje srednju osovinu (debele
linije) granica poligona (tanke linije). Srednja osovina se koristi u raznim algoritmima, od
kojih e se neki kasnije pomenuti, i ponekad se naziva i skeletom (kosturom) poligona.
Srednja osovina za konveksni poligon je sastavljena od pravolinijskih segmenata, ali
openito moe sadravati i paraboline linije, kao to je prikazano na slici 5.21. Srednja
osovina poligona moe biti izraunata i linerno ovisnom vremenu koritenjem algoritma
sa srednjoosovinsku transformaciju (MAT - medial axis transform), koji predstavlja
ekstenziju algoritma za izraunavanje Voronoi dijagrama.

181

Slika 5.21: Srednja osovina poligona

5.4.6 Teselacija sfere


Reprezentacije koje su do sada opisane se odnose na planarne objekte. Naravno, Zemlja u
topolokom smislu predstavlja sferu i prirodno je razmatrati i reprezentacije koje
odgovaraju sferno referensiranim podacima.
Inae, razlozi zbog kojih je do sada stavljen ovakav naglasak na ravan su:

Planarni podaci su raunarski manje zahtjevni (jednostavniji) od sfernih.


Male povrine Zemljine povri se mogu aproksimirati pomou ravnih povrina.

Regularne (pravilne) teselacije sfere odgovaraju drevnim Platonovim geometrijskim


tijelima (poliedrima): tetraedar (etiri jednakostrane trougaone plohe), kubus (est
kvadratnih ploha), oktaedar (osam jednakostranih trougaonih ploha), dodekaedar (12
jednakostranih pentagonih ploha) i ikosaedar (20 jednakostranih trougaonih ploha). Na
primjer, tetraedarska teselacija ukljuuje etiri sferna trougla ograniena dijelovima
velikih krugova. Svaki sferni trougao ima unutarnji ugao od 120. Tri trougla se sastaju u
istom voru. U sluaju oktaedarske teselacije, inicijalno postoji osam trougaonih sfernih
povrina, od kojih svaka ima unutarnji ugao od 90. etiri trougla se sastaju u istom
voru. Slika 5.22 prikazuje oktaedarsku teselaciju na sferi, sa trouaonim plohama nab,
nbc, ncd, nda, sab, sbc, scd i sda.

Slika 5.22: Oktaedarska teselacija sfere

182

Na alost, za razliku od ravni, regularna teselacija proizvoljno fine rezolucije nije mogua
na sferi. Meutim, mogue je rekurzivno ugnjezditi regularne poligone unutar ploha
platonovih tijela kako bi se dolo do zahtjevane rezolucije.
Ugnjeene teselacije: Ugnjeena teselacija je teselacija elija koje su i same sastavljene od
sebi slinih koritenjem dalje i finije teselacije. Ovaj proces moe biti rekurzivan, obezbjeujui
gradiranu granulaciju do koje se prostorni fenomen moe referensirati. Regularne ugnjeene
teselacije se javljaju tamo gdje se regularni sastavni elementi i sami dalje dijele koritenjem istih
regularnih figura. Primjeri planarnih regularnih i neregularnih ugnjeenih teselacija su
prikazani ispod. Prve dvije (trougaona i kvadratna) su regularne, ali trea (heksagona) nije
regularna, jer se heksagoni ne mogu sloiti zajedno kako bi komponovali vei heksagon.
Ugnjeena kvadratna teselacija u ravni vodi do strukture podataka sa kvadratnim stablom
(quadtree), koja e se diskutovati u 6. poglavlju. Ugnjeena triangulaciona teselacija se moe
koristiti za ugnjeenu oktaedarsku teselaciju sfere, to e se takoe razmotriti u 6. poglavlju.
Ako se vratimo na ravan, postoji distinkcija izmeu hijerarhijskih modela zasnovanih na
rekurzivnim regularnim ili neregularnim teselacijama i slojevitih (stratificiranih) modela u kojim
je svaki stratum (sloj) definisan tako da ima posebna svojstva. Ocjena hijerarhijskih modela je
izvrena od strane De Florianija et al. (1994.) sa posebnim naglaskom na hijerahijski TIN (De
Floriani i Puppo, 1992.). Stratificirana Delaunayeva triangulacija, gdje je zadovoljena osobina
opisanih krunica na svakom nivou, definisana je u Delaunayevoj piramidi od strane De
Florianija (1989.). Openito, stratificirani modeli su diskutovani od strane Bertolottoa et al
(1994.).

Ilustracija ugnjeene teselacije

5.5 Fundamentalni geometrijski algoritmi


Bilo bi teko u okviru samo ovog poglavlja opisati sve prostorne algoritme koji postoje.
Zbog toga je cilj ove sekcije predstaviti samo njihove reprezentativne primjere, dajui
prednost onima koji se redovnije koriste i koji se zasnivaju na generinom pristupu. U
ovim algoritmima e se koristiti reprezentacije koje smo predstavili kroz predhodno
izlaganje.
Za sve algoritme koji e se opisati se pretpostavlja da se odnose na Euclidovu ravan.
Zbog toga takasti objekti imaju poloaj koji se moe zadati koordinatnim parom (x, y).
Skup taaka na pravoj liniji u Euclidovoj ravni moe biti prisiljen linearnom jednainom
datom izrazom {(x, y) | ax + by + c = 0}, gdje su a, b i c konstante. Skup taaka na
prvolinijskom segmentu izmeu dvije razliite take p i q se takoe moe predstaviti
izrazom u parametarskom obliku {p + (1 - )q | [0, 1]} (vidi 3. poglavlje).

183

5.5.1 Metrini i Euclidovi algoritmi


Razdaljina i ugao izmeu taaka
Zbog jednostavnosti navesti emo ponovo formule iz 3. poglavlja. Euclidova razdaljina
|pq| izmeu taaka p = (xp, yp) i q = (xq, yq) je data formulom:
|pq| =

2
2
(
x

x
)

(
y

y
)
q
p
q
p

Ugao orijentacije sa take a na taku b se moe dobiti kao jedinstveno rjeenje u


intervalu [0, 360] iz trigonometrijskih izraza:
x x
sin
b a
pq

y y
cos
b a
pq
Udaljenost od take do linije
Pod udaljenou se ovdje podrazumjeva minimalna udaljenost izmeu prostornih
objekata. Da bi sraunali udaljenost izmeu take i prave linije, najkompaktnija formula
se dobije kada nam je prava linija l data u obliku {(x, y) | ax + by + c = 0}. Pretpostavimo
da je taka p zadata pomou koordinatnog para (xp, yp). Onda je udaljenost od p do l
(mjerena pomou duine od linijskog segmenta koji je ortogonalan na l i prolazi kroz p),
data formulom:

udaljenost(p,l) =

ax
p by
p c
a2 b2

Raunanje udaljenosti izmeu neke take p i nekog pravolinijskog segmenta l predstavlja


poseban oblik predhodnog sluaja sa linijom. Slika 5.23 pokazuje da e se udaljenost
mjeriti kao udaljenost od p do jedne od krajnjih taaka segmenta l, ili od p do linije koja
prolazi kroz krajnje take segmenta l, u zavisnosti od relativnih poloaja p i l. Linijski
segment l definie podjelu ravni na dva skupa taaka, to jest, povezani skup kojeg
nazivamo sredina(l) i rastavljeni skup kojeg nazivamo kraj(l). Nain raunanja kojim
odreujemo udaljenost od p do l zavisi od toga da li p pada u sredinu(l) ili kraj(l)

184

Slika 5.23: Distanca izmeu take p i linijskog segmenta l

Problem postaje jo sloeniji kada imamo poliliniju, kao to je prikazano na slici 5.24.
Prvo se mora sraunati udaljenost do svakog linijskog segmenta koji pripada poliliniji na
ve gore opisan nain. Za konanu udaljenost od p do polilinije e se onda uzeti
minimalna vrijednost svih ovih udaljenosti. Ukoliko je n broj segmenata koji pripadaju
poliliniji, onda vremenska kompleksnost izraunavanja odgovara izrazu O(n) (to jest
linearnom vremenu). Aproksimativna udaljenost se moe odrediti kao udaljenost do
vorova (lomnih taaka) polilinije. Ovakva aproksimacija je dobra openito ako su
duine segmenata male u poreenju sa samom udaljenou od take do polilinije.

Slika 5.24: Distanca izmeu take i polilinije

Takoe, moe se odrediti i udaljenost od take do poligona ili udaljenost izmeu dva
poligona, odnosno njihovih granica. Na ovaj nain, udaljenost izmeu dva poligona se
moe interpretirati kao udaljenost izmeu njihovih najbliih taaka. U ovom sluaju,
izraunavanje na osnovu graninih polilinija postaje neophodno. Ista tako, udaljenost
izmeu dva poligona se moe interpretirati i kao udaljenost izmeu njihovih centroida (o
kojima e se diskutovati kasnije).
Povrina prostog poligona
Neka je P prosti poligon (bez presjecanja samog sebe) sa vektorima vorova (x1, y1), (x2,
y2) ... (xn, yn), gdje je (x1, y1) = (xn, yn) (to jeste, poligon je zatvoren i ima isti poetni i
zavrni vor). U ovom sluaju se povrina rauna iz izraza:
1n
x
x
povrina(P) =
iy
i
1
i
1y
i
2i1

U sluaju trougla pqr, gdje je p=(xp, yp), q=(xq, yq) i r=(xr, yr), povrina se rauna iz
izraza:
povrina(pqr) =

x
y

x
y

x
y

x
y

x
y

x
y
p
q
q
p
q
r
r
q
r
p
p
r
2

Opazite da izraunata povrina moe imati svoj predznak (pozitivan ili negativan).
Takoe, saglasno predhodnom izrazu povrina(pqr) = - povrina(qpr). Ukoliko je taka
p sa lijeve strane usmjerenog segmenta qr, onda e povrina(pqr) biti pozitivna, a
ukoliko je sa desne strane, onda e ona biti negativna. Ukoliko su p, q i r kolinearne
take, onda je povrina(pqr) jednaka nuli. Ovo izlaganje bi bilo korisno zaokruiti

185

algoritmom za odreivanje strane na kojoj se nalazi taka p, odnosno algoritmom za


operaciju strana (slika 5.25).

Slika 5.25: Operacija strana (side)

Centroid poligona
Centroid poligona ili centar gravitacije (prostog) povrinskog objekta je taka u kojoj bi
bila ostvarena ravnotea ukoliko bi se on isjekao iz lista od materijala uniformne
(jednoobrazne) gustine. Za regularan poligon ili skup taaka centroid je prosta sredina
vornih vektora. Izraunavanje centroida neregularnog poligona zahtjeva kompleksniji
proraun, baziran na ponderisanoj sumi vornih vektora. Za (mogue neregularan)
poligon P sa n vornih (tjemenih) vektora (x1, y1), (x2, y2) ... (xn, yn), gdje je (x1, y1) = (xn,
yn), koordinate centroida x i y su odreuju iz izraza:

1
1 n
(
x

x
)(
x
y

x
y
)

i
i

1
i
i

1
i

1
i
6

povrina(P
)
i

1
1 n
(
y

y
)(
x
y

x
y
)

centroidy(P) =
i
i

1
i
i

1
i

1
i
6

povrina(P
)
i

centroidx(P) =

Opazite da centar gravitacije poligona ne mora garantovano leati unutar njegovih


granica (na primjer, kad razmatramo centar gravitacije poligona sa oblikom potkovice,
odnosno banane).

5.5.2 Topoloki algoritmi


Taka-u-poligonu
Taka-u-poligonu je jedna od najee koritenih operacija u GIS-u. Za datu taku p i
poligon P, vrijedi da je taka_u_poligonu(p, P)=true, ako i samo ako se taka p nalazi u
unutranjosti poligona P.
Ukoliko je poligon konveksan, onda se moe koristiti operacija strana, koja je prethodno
diskutovana. Pretpostavimo da su vorovi (tjemena) poligona p1, p2, ..., pn, poredani oko
poligona u smjeru suprotnom od kazaljke na satu (vrijedi opet da je p1=pn). Onda je
taka_u_poligonu(p, P)=true, ako i samo ako:
strana(p, p1, p2) = strana(p, p2, p3) = ... = strana(p, pn-1, pn) = 1

186

Vie koriten i interesantniji sluaj je kada poligon nije nuno konveksan. Dva algoritma
koja se u ovom smislu mogu ovdje razmatrati su polulinijski algoritam i algoritam sa
okretanjem. Osnovni princip koji se koristi u pozadini polulinijskog algoritma je
jednostavan. Za datu taku p i poligon P pretpostavimo da p ne lei na granici od P (kako
bi izbjegli degenerativne sluajeve). Iscrtajmo jednu beskonanu poluliniju (ili zraku) od
take p prema poligonu P. Prebrojimo broj presjeka zrake sa granicom od P. Ukoliko je
ovaj broj paran onda se p nalazi izvan P, a ukoliko je neparan, onda je p unutar P (slika
5.26).

Slika 5.26: Polulinijski algoritam za odreivanje da li je taka unutar poligona

Ipak, kao i sa veinom slinih algoritama, postoje specijalni sluajevi koji se mogu
pojaviti. Na primjer, ukoliko se zraka presjeca sa vorom poligona, kako ovaj presjek
tretirati (kao parni ili kao neparni broj)? Slika 5.27 prikazuje dva ovakva sluaja. U voru
a presjek se ne bi trebao brojati, dok bi se u voru b trebao brojati. Da bi se presjek
brojao (uzeo u obzir), vano je u stvari da zrak prolazi kroz poligon (a ne samo kroz
njegovu granicu), to ne vrijedi u sluaju vora a.
Takoe, slika 5.27 prikazuje presjek zrake i cijelog segmenta cd, gdje se moe primjeniti
isti princip, to jest da se samo prolazak kroz poligon rauna.

Slika 5.27: Specijalni sluajevi u polulinijskom algoritmu

Obzirom na implementaciju, stvar se pojednostavljuje ako se odabere polulinija koja je


horizontalna i usmjerena na desno, a onda se poligon translatorno pomjera tako da
polulinija postaje pozitivna x-osa sa takom p kao koordinatnim poetkom. Jednostavnim

187

izraunavanjem pomou koordinata mogue je za svaku ivicu poligona odrediti da li kroz


nju prolazi ova pozitivna x-osa.
Algoritam sa okretanjem predstavlja alternativni i dosta razliit pristup od predhodnog.
On ima istu kompleksnost kao i polulinijski algoritam, ali je u praksi dosta manje
efikasan zbog trigonometrijskog raunanja.
Zamislimo da se observator kree du granice poligona P suprotno od smjera kazaljke na
satu i to na nain da je uvijek licem okrenut prema taki p. Ukoliko se, nakon prelaska
punog kruga oko P, observator okrene (oko sebe) za puni krug, onda se p nalazi unutar P.
U suprotnom, p je izvan P. Slika 5.28 prikazuje primjere ovog pristupa. U svakom
sluaju putanja je preena posjeivanjem vorova u redoslijedu 1-2-3-4-5-6-1. Na lijevoj
strani slike, sa konfiguracijom gdje je taka unutar poligona, observator e rotirati za je
puni okret. Na desnoj strani sa konfiguracijom gdje je taka izvan poligona, ukupan
efekat okretanja e biti jednak nuli.

Slika 5.28: Obilazak granice poligona 123456 uvijek okreui lice prema taki p

Za date koordinate poligonih vorova mogue je pomou elementarne trigonometrije


(kao u 3.poglavlju) sraunati ugao koji uzastopno formira svaki pojedini vorni
koordinatni par sa takom p. Nakon ovoga ugao ukupnog okretanja tokom cijelog
kretanja (obilaska svih vorova) se dobija sumiranjem svih pojedinih uglova.

5.5.3 Algoritmi bazirani na skupovima


Kroz ovu sekciju prostorni objekti se tretiraju kao skupovi taaka. Podrazumjeva se da
su, ukoliko to nije posebno naglaeno, ovi skupvi topoloki zatvoreni, odnosno da sadre
i svoje granine take sa ivicama.
Kolinearnost
Za dati skup taaka a, b i c, Boolova operacija kolinearno(a, b, c) determinie da li su a,
b i c kolinearne take (lee u istom pravcu). Razvoj algoritma za ovu operaciju ne trai
neke nove ideje. Iz sekcije 5.5.1 vrijedi:
kolinearno(a, b, c) = true ako i samo ako je strana(a, b, c) = 0
Taka na segmentu
Neka pravolinijski segment l ima krajnje take q=(xq, yq) i r=(xr, yr). Za bilo koju taku
p= (xp, yp), operacija taka_na_segmentu(p, l) vraa Boolovu vrijednost true ukoliko
pl.

188

Prvi koraku u izraunavanju vrijednosti taka_na_segmentu(p, l) je primjena


prethodnog algoritma kako bi se odredilo da li su p, q i r kolinearni. Ukoliko nisu, onda je
determinacija negativna i nije potrebno dalje procesiranje. U suprotnom, potrebno je
primjeniti minimalni opisani okvir (granini pravougaonik) (MBB minimum bounding
box), to jest mmb(l), koji je najmanji mogui pravougaonik sa stranicama paralelnim
koordinatnim osama koji sadri segment l.
U tom smislu vrijedi pl , ako i samo ako p mmb(l). Odnosno, p mmb(l), ako i samo
ako vrijede obje od slijedee dvije nejednakosti:
min(xq, xr) xp max(xq, xr)
min(yq, yr) yp max(yq, yr)
gdje operacije min i max vraaju minimalnu i maksimalnu vrijednost odgovarajueg
argumanta.
Presjecanje segmenta
Postoje dvije povezane operacije za presjecanje pravolinijskog segmenta. Jedna je
Boolova, koja testira da li dvije linije imaju najmanje jednu zajedniku taku, a druga
vraa presjenu taku ukoliko ona postoji. Jasno, rezultat ove druge operacije
istovremeno daje i rezultat prve operacije. Pretpostavlja se, kao i obino, da su segmenti
zatvoreni i stoga sadre i svoje krajnje take.
Operacija detekcije presjeka je metoda odluivanja, koja vraa vrijednost true, ako i
samo ako ovi segmenti imaju najmanje jednu zajedniku taku. Ova operacija se moe
definisati primjenom predhodno opisanih operacija, odnosno operacijom strana. Slika
5.29 prikazuje primjer koritenja operacije strana. Segmenti ab i cd e se meusobno
presjecati ukoliko su take a i b na suprotnim stranama od linije koja prolazi kroz
segment cd, a da su istovremeno i take c i d na suprotnim stranama od linije koja prolazi
kroz segment ab. Formalno kazano, ab i cd se meusobno presjecaju ukoliko su
zadovoljene (odnosno, ako su istinite) obje slijedee nejednakosti:
strana (a, b, c) strana (a, b, d)
strana (c, d, a) strana (c, d, b)

Slika 5.29: Primjena operacije strana (side) za detekciju presjecanja

Meutim, konverzija ove izjave (u smislu da se segmenti nemogu presjecati, ako ove
nejednakosti nisu zadovoljene) ne vrijedi. Mogue je da se segmenti ab i cd meusobno
presjecaju kada su jedna ili obje ove nejednakosti nisu istinite. Ova mogunost se
pojavljuje kada jedan od segmenata djelomino lei na drugom. Zbog ovakvih specijalnih
sluajeva se mora uvesti robusniji algoritam za detekciju presjeka kada je vrijednost
189

operacije strana jednaka nuli. Ovo se takoe moe ostvariti pomou operacije
taka_na_segmentu ispitivanjem slijedeih mogunosti:
taka_na_segmentu(a, cd) = true
taka_na_segmentu(b, cd) = true
taka_na_segmentu(c, ab) = true
taka_na_segmentu(d, ab) = true
Meutim na posao jo uvijek nije zavren. ak i ako je pokazano da se dva segmenta
meusobno presjecaju pomou predhodno opisane procedure, jo uvijek preostaje da se
odrediti taka njihovog presjecanja. Izraunavanje take presjecanja dva linijska
segmenta, ukoliko ona postoji, je na prvi pogled trivijalan zadatak u koordinatnoj
geometriji, koji se svodi na istovremeno rijeavanje dvije jednostavne linearne jednaine.
Meutim, kao i sa mnogim geometrijskim algoritmima, specijalni sluajevi (na primjer,
segmenti paralelni sa y-osom) i greke usljed diskretizacije stvaraju degenerativne pojave
zbog koji se moraju primjenjivati robusniji (manje osjetljivi) algoritmi.
Pretpostavimo da su zadata dva segmenta l i l' pomou odgovarajuih parametarskih
formi za njihove skupove taaka:
l = {p + (1 - )q | [0, 1]}
l' = {'p' + (1 ')q' | '[0, 1]}
Neka je r taka presjeka ovih skupova. Onda postoje ,[0, 1] takvi da vrijedi izraz:
p + (1 - )q = r = p' + (1 - )q'
koji se moe preurediti da daje (p q) + (q' - p') = q' - q. Ova vektorska jednaina
moe biti dekomponovana u dvije simultane jednaine sa dvije nepoznate i , bazirane
na x i y koordinatama zavrnih taaka segmenata l i l'. Rijeavanjem ovih jednaina po i
se dobija:

Nakon provjere da l i l' nisu paralelni, rjeenja gornjih jednaina se provjeravaju da bi se


utvrdilo da se segmenti presjecaju (to jest, ,[0, 1] ). Ako ovo vrijedi, koordinate
presjene take se mogu sraunati zamjenom ili u odgovarajuim poetnim
parametarskim jednainama linije.
Presjek, unija i preklapanje poligona
Algoritmi za presjek, uniju i preklapanje poligona su bazirani na iterativnoj primjeni
predhodno opisanog postupka za presjecanje linijskih segmenata. Za dva prosta poligona
P = [l1, ..., lm] i P' = [l1', ..., lm'], koji su zadati kao ciklus straninih segmenata, potrebno
je pronai presjene take linijskih segmenata iz P sa linijskim segmentima iz P'. Za opi
sluaj, potrebno je ispitati svaki par (li, l'j), gdje je 1 i m, 1 j n, i odrediti taku

190

presjecanja, ukoliko ona postoji. (Ukoliko se segmenti preklapaju ili dodiruju u svojim
krajnjim takama, onda se moraju ukljuiti i specijalni sluajevi, to nije predmet ovog
razmatranja). Postoji mn ovakvih parova za ispitivanje, te je stoga vremenska
kompleksnost algoritma presjecanja, unije i preklapanja obino O(mn).
Primjeri pojedinih algoritama se nee ovdje detaljno opisivati. Slika 5.30 ilustruje kljune
osobine presjeka, unije i preklapanja za par presjenih linijskih segmenata ab i cd unutar
dva poligona, P i P'. Opazite da je prilikom odluivanja koje segmente ukljuiti, a koje
iskljuiti (u sluaju presjeka i unije), vana topologija ovih poligona. Prilikom presjeka,
dijelovi presjenih segmenata od taaka a i d do presjene take x formiraju dio
rezultirajue strukture, dok se xc i xb iskluuju. Prilikom unije, take c i b sa dijelovima
segmenata do x su dio rezultirajueg poligona, a ax i dx se iskljuuju. Prilikom
preklapanja, sve take (segmenti) se zadravaju.

Slika 5.30: Presjek, unija i preklapanje dva poligona

5.5.4 Triangulacioni algoritmi


Algoritmi za triangulaciju poligona
U ovom dijelu se opisuju dva jednostavnija algoritma za triangulaciju koji nisu zasnovani
na Delaunayevom pristupu. Tom prilikom e se kao primjer koristiti triangulacija
poligona. Ove triangulacije nee uvoditi bilo kakve unutranje vorove (Steinerove
take). Cilj je doi do prihvatljivo regularnih triangulacija, to jest, sa malo dugih, tankih
trouglova.
Algoritam za gramzivu triangulaciju
Gramziva (greedy) triangulacija je kratko razmatrana u sekciji 5.4.4 i ilustrovana je
slikom 5.20. Openito, gramzivi algoritam je lokalizovana procedura obrade koja se
nikada ne vraa na podatke koji su ve jednom bili procesirani. Algoritam 5.3 izvrava
proceduru za gramzivu triangulaciju prostog poligona. Algoritam prvo slae dijagonale
poligonih vorova po rastuem redoslijedu njihovih duina (2. linija). Za svaku
dijagonalu di, poevi od najkrae, algoritam provjerava da li di presjeca bilo koju

191

dijagonalu koja je ve unutar triangulacije T i da li je di unutranja dijagonala (odnosno,


unutar poligona) (5. linija). Ukoliko ne presjeca, di se dodaje triangulaciji T (6. linija).
Algoritam 5.3: Gramziva triagulacija poligona

Ovaj algoritam se naziva gramzivi (pohlepni), jer on na svakom koraku procesira


narednu raspoloivu dijagonalu, nikada se na vraajui na dijagonale koje su ve bile
procesirane. Meutim, on je takoe gramziv (greedy) i kada je u pitanju vrijeme
izraunavanja. U algoritmu 5.3 obradie se sve dijagonale kojih ima m = n(n-3)/2. Za
svaku od ovih strana (ivica) se mora testirati da li se presjeca sa drugim stranama u
triangulaciji. Triangulacija se sastoji od n strana. Uz pretpostavku koritenja
jednostavnog mehanizma za testiranje presjeka dviju strana i njegovog izvravanja za
konstantno vrijeme O(1), ovaj algoritam ima, u najgorem sluaju, vremensku
kompleksnost O(n3).
Mogue je napraviti neka trenutna poboljanja efikasnosti ovog algoritma zadravanjem
broja strana koje su dodane u triangulaciju. Broj ovakvih strana mora biti n 3, tako da
kada algoritam doe do ove take, on se zaustavlja. Ova promjena nee poboljati
kompleksnost najgoreg sluaja, to jest O(n3), iako e popraviti kompleksnost prosjenog
sluaja. Kao zakljuak se moe navesti da koliko god je gramzivi algoritam zbog
jednostavnog razumjevanja zgodan za ilustraciju, on nije dobar izbor u smislu praktine
implementacije, zbog svoje velike kompleksnosti raunanja.
Gareyev triangulacioni algoritam
Algoritam Gareya et al. (1978.) je vie podesan za triangulaciju prostih poligona.
Obzirom na vremensku kompleksnost, on predstavlja poboljanje u odnosu na predhodni
gramzivi (greedy) pristup. Algoritam zapoinje izvravanje dekomponovanjem poligona
u monotone poligone, a onda vri triangulaciju svakog od monotonih poligona.
Monotonost je predstavljena u dijelu 3.1.3. Monoton poligon ima svojstvo da su njegovi
vorovi sortirani potujui neku posebnu orijentaciju, odnosnu liniju monotonosti.
Zahvaljujui ovoj osobini, monotoni poligoni se mogu triangulirati za linearno vrijeme,
O(n), gdje je n broj vorova.
Procedura za triangulaciju monotonog poligona je opisana algoritmom 5.4. Neka je P
monotoni poligon, orijentisan prema y-osi. Povezivanje dvije monotone polilinije
(usmjerene u pravcu y-ose) koje pripadaju poligonu P, da bi generisali listu vorova V =
[v1, ..., vn], se moe postii za linearno vrijeme, jer su ove dvije polilinije ve ureene.
Naknadnim procesiranjem svakog elemanta iz V, dodavae se dijagonale u triangulaciju, i
to kada par vorova pripada suprotnim monotonim polilinijama ili (ako pripadaju istoj

192

polilinij) kada se meusobno dogledaju, u smislu da njihove dijagonale lee u cijelosti


unutar poligona P.
Da bi ilustrovali algoritam 5.4, razmotriemo monotoni poligon prikazan na slici 5.31.
Prikazana su dvije monotone polilinije [a, b, c, d, e, f, g] i [a, m, l, j, k, i, h, g].
Algoritam 5.4: Triangulacija monotonog poligona

Povezivanjem polilinija se dobija lista vorova V = [a, m, b, c, d, e, l, k, j, e, i, f, h, g].


Lista X se inicijalizira sa [m, a]. Prvi vor kojeg treba procesirati je b. Poto su b i m
lanovi razliitih monotonih polilinija u P, algoritam dodaje mb u triangulaciju. Slijedea
dva vora koja se procesiraju, c i d, nee rezultirati bilo kakvim novim stranama u
triangulaciji. Naredno procesiranje vora l rezultira sa tri nove strane bl, cl i dl.
Procesiranje vora k nee rezultirati novim stranama, ali naredno procesiranje vora j
dodaje novu stranu jl u triangulaciju. Iako su j i l lanovi iste monotone polilinije, oni
zadovoljavaju uslov da strana jl lei kompletno unutar P (10. linija). Algoritam ovako
nastavlja dalje sve dok se ne formira cijelokupna triangulacija (sa 10 strana), a onda se
zaustavlja.

193

Slika 5.31: Triangulacija monotonog poligona (ivice su numerisane prema redoslijedu procesiranja)

Kako je ustanovljeno da je monotoni poligon mogue triangulirati za linearno vrijeme,


postavlja se naredno pitanje: kako podjeliti neki prosti poligon u monotone poligone?
Iako detalji ove procedure izlaze van okvira ovog razmatranja, ovaj postupak se moe
ukratko opisati na slijedei nain. Pretpostavimo takvu monotonost koja je orijentisana u
pravcu y-ose i da ne postoje dva razliita vora poligona koja imaju iste y koordinate.
Onda se ovakav polazni poligon mora regularizirati tako da se:
1. Strane presjecaju samo u poligonim vorovima.
2. Odvojeno od najvieg vora (u odnosu na y-osu), svaki vor povezuje pomou
najmanje jedne strane sa viim vorom.
3. Odvojeno od najnieg vora (u odnosu na y-osu), svaki vor povezuje pomou
najmanje jedne strane sa niim vorom.
Moe se dokazati da ovakav proces regularizacije rezultira poligonom P koji je izdjeljen
u regije, od kojih je svaka monotona. Opazite da ovaj pojam regularizacije ima drugaiji
smisao od onog koji je koriten u 3. poglavlju. Nakon regularizacije, svaka nova strana
koja lei izvan poligona mora biti uklonjena. Vremenska kompleksnost faze
regularizacije je O(nlogn), gdje je n broj vorova poligona. Kao rezultat, vremenska
kompleksnost ove procedure dominira algoritmom, tako da cijelokupni triangulacioni
algoritam moe biti izvren za O(nlogn) vrijeme. Slika 5.32 ilustruje razliite faze
Gareyevog triangulacionog algoritma.

194

Slika 5.32: Faze izvravanja Gareyovog (et.al) triangulacionog algoritma


nad prostim poligonom u O(n logn) vremenu

Algoritmi Delaunayeve triangulacije


Algoritmi za Delaunayevu triangulaciju i njen dualitet Voronoi dijagram su dobro opisani
u literaturi. Vremenska kompleksnost najgoreg sluaja bilo kojeg algoritma Delaunayeve
triangulacije je u najmanjem O(nlogn).
Bri triangulacioni algoritmi. Historija triangulacije je veoma interesantna. Vidjeli smo da
gramziva triangulacija ima vremensku kompleksnost opisanu sa O(n3). Triangulacioni algoritmi
vremenske kompleksnosti O(n2) datiraju unazad jo od poetka XIX stoljea (Lennes, 1911.).
Garey et al. su publikovali svoj O(nlogn) vremenski algoritam 1978. godine, kao dostignue
novoroene oblasti raunarske geometrije. Iako je donja granica vremenske kompleksnosti ope
planarne triangulacije bila poznata kao O(nlogn) vrijeme, nije se znalo da li je mogue ostvariti
jo niu granicu. Ovo stanovite je promjenjeno prije dvadesetak godina kada su Tarjan i Wyk
(1988.) objavili O(nloglogn) vremenski algoritam. Naravno, najbolje emu se moglo nadati je
algoritam linearne vremenske kompleksnosti. Negova objava je usljedila od Chazellea (1991.),
ime je ostvaren vrhunac dugogodinjih intenzivnih istraivakih napora. Koncizan opis ovog
znaajnog algoritma je dat od strane O'Rourkea (1998.). Vremenska kompleksnost najloijeg
sluaja za algoritme Delaunayeve triangulacije je limitirana algoritmom sortiranja vorova, koji
u najmanjem zahtjeva O(nlogn) vrijeme (Aho et al., 1974.). U stvari, dostignut je optimalni
O(nlogn) Delaunayev algoritam ( Shamos i Hoey, 1975., Lee i Schachter, 1980.). Uprkos
vremenskoj kompleksnosti najloijeg sluaja O(n2), inkrementalna metoda koja je poboljana
efikasnom strukturom podataka se esto koristi u praksi (Ohya et al., 1984.), jer je konceptualno
jednostavna i ima linearnu prosjenu vremensku kompleksnost. Dwyer je 1987. godine
publikovao varijantu podjeli-i-osvoji pristupa koja je dovela do algoritma sa optimalnom
vremenskom kompleksnoi najloijeg sluaja i prosjenom vremenskom kompleksnou od
O(nloglogn).

Podjeli-i-osvoji strategija predstavlja korisnu tehniku zajedniku za mnoge algoritme.


Pomou nje se kompleksan problem rekurzivno razbija na manje i jednostavnije
probleme, koji se rjeavaju pojedinano, a onda se njihovom kombinacijom dobija

195

kompletno rjeenje. Algoritam 5.5 daje pregled podjeli-i-osvoji metode primjenjene za


Delaunayevu triangulaciju.
Algoritam 5.5: Podjeli-i-osvoji Delaunayeva triangulacija

Ovdje su opisani vaniji detalji o postupku povezivanja dvije triangulacije (nakon podjele
problema). Ukratko, da bi povezali dvije triangulacije potrebno je formirati njima
odgovarajue konveksne ljuske i konstruisati gornju i donju zajedniku tangentu. Slika
5.33 prikazuje proces ovakvog povezivanja. Poevi od nie zajednike tangente,
dodavanjem i brisanjem odgovarajuih strana, vri se povezivanje datih triangulacija.
Povezivanje pomalo lii na lijepljenje dviju triangulacija. Na slici 5.33b je dat prikaz
na kojem je izbrisana jedna strana (koja je pripadala desnoj triangulaciji), a dodano je
osam veznih strana. Vremenska kompleksnost operacije povezivanja (merging process)
je linearna, to jest O(n). Osnovne parcijalne (podjeljene) triangulacije su konstruisane
samo od skupova po dvije ili tri strane (opisano od 6. do 9. linije algoritma 5.5), tako da
se ova faza moe zavriti u konstantnom vremenu, to jest O(1). Poto faza sortiranja
dominira u vremenskoj kompleksnosti, rezultat ovoga je da se cijeli algoritam izvrava u
O(nlogn) vremenu.

Slika 5.33: Povezivanje dvije Delaunayeve triangulacije

Kao to je navedeno u sekciji 5.4.3, Voronoi dijagram je dualitet Delaunayeve


triangulacije. Kao posljedica ovoga, algoritmi za izraunavanje Delaunayeve triangulacije
se mogu takoe koristiti i za izraunavanje Voronoi dijagrama i obrnuto. Slika 5.34
ilistruje jednu metodu za izraunavanje Voronoi dijagrama inkrementalno (postepeno).
Opa ideja je da se Voronoi dijagram konstruie modifikacijom date triangulacije
postepenim uvoenjem novih vorova iz datog skupa vorova koji se razmatra.
U svakoj fazi se uvodi novi vor koji je na slici 5.34 prikazan praznim kruiem.
Izraunava se poligon u kome ovaj novi vor lei i pomona linija koja dijeli prostor oko
196

njega (isprekidana linija na slici), ime se dobija novi poligoni bliskosti. Nakon toga se
na odgovarajui nain (na osnovu ove linije i ve postojeih strana u dijagramu)
modificiraju ostale strane koje figuriu u dijagramu i postupak se nastavlja sve dok se svi
novi vorovi ne uvedu u njega.

Slika 5.34: Koraci inkremantalne (sa prirastom) metode za Voronoi dijagram

Zakljuak
Raunarska geometrija se tradicionalno bavila mjerama efikasnosti koje su openito
izvedene iz teorije (a posebno iz teorije kompleksnosti). Po obiaju, teorija i praksa su
uvijek u saglasnosti. Metode razvijene u okviru raunarske geometrije koje su teoretski
efikasne ne moraju uvijek biti praktine za implementaciju. Meutim, raunaraska
geometriju daje osnovu iz koje se mogu konstruisati i evaluirati razni praktini pristupi.

5.6 Vektorizacija i rasterizacija


Runa konverzija podataka iz rasterskog u vektorski format (vektorizacija), ponekad i
putem digitajzera, je finansijski zahtjevan i radno intenzivan proces. Ovakav proces
konverzije je takoe sloen za potpunu automatizaciju, jer struktura prostornih objekata
nije eksplicitno reprezenzovana unutar rasterskog formata podataka. Za posljedicu imamo
da je veina sistema za vektorizaciju poluatomatska, jer zahtjeva operatora koji upravlja
sa automatiziranim sistemom, provjeravajui vjerodostojnost (pouzdanost) vektorizacije i
obezbjeujui pomo sistemu kada se pojave odreene dileme za njega. Niz koraka u
procesu (automatske) vektorizacije se moe obuhvatiti sa:
1. Formiranjem binarne slike iz rastera, kroz proces koji se naziva odreivanje
praga (tresholding). Kod prostog odreivanja praga (simple tresholding), za
vrijednost praga na nivou cijelog rastera se bira neka fiksna vrijednost. Kod

197

2.
3.

4.

5.

adaptivnog odreivanja praga, ova vrijednost varira saglasno lokalnim uslovima


za razliite dijelove slike. Tako se u dijelovima slike koji su openito tamniji
birala drugaija vrijednost praga u odnosu na dijelove gdje su preovladavali
svjetliji tonovi.
Otklanjanjem sluajnih smetnji (random noise), obino u obliku mrlja, kroz
proces koji se naziva zaglaivanje (smoothing).
Stanjivanjem linija tako da se one svedu na irinu jednog piksela. Primjer
algoritma za stanjivanje je dat u narednom izlaganju. Drugi algoritmi stanjivanja
se zasnivaju na srednjoj (medijalnoj) osovini regiona.
Transformacijom stanjene rasterske slike u kolekciju lanaca sastavljenih od
piksela gdje svaki lanac predstavlja jednu krivu liniju, to se naziva kodiranjem
lanaca (chain coding).
Transformacijom svakog lanca piksela u sekvencu vektora. U ovoj zavrnoj fazi
postoji balans kojeg treba uspostaviti izmeu zaglaenosti linije i tanosti
konverzje. Vektori koji tanije slijede linijske lance su esto izloeni efektu
stepenastog izgleda (iskrzanost, izlomljenost). Zaobljavanje vektora vodi veim
devijacijama (odstupanjima) od originalnog rastera.

Erozioni algoritam koji se esto koristi za stanjivanje linija (lanaca) vodi porijeklo od
ideje Zhanga i Suena (1984.). Pretpostavimo da binarni raster koristi 0 za reprezentaciju
bijele i 1 za reprezentaciju crne, pri emu elimo istanjiti crne linijske oblike (prikazane
sivim tonom u sluaju naeg dijagrama na slici 5.35). Za svaki poloaj piksela p, neka je
N(p) cjelobrojna vrijednost (integer) koja predstavlja sumu vrijednosti osam susjednih
piksela od p. Takoe, sa pN, pS, pE, pW su oznaene vrijednosti piksela koji su
pozicionirani sa gornje, donje, desne i lijeve strane piksela p, respektivno. Konano, neka
je T(p) sraunati broj tranzicija (pretvorbi) od 0 u 1, posjeivanjem direktnih susjeda od p
(krunim kretanjem). Na slici 5.35 imamo da je N(p) = 5, pN = pW = 1, pS = pE = 0 i T(p) =
2.

Slika 5.35: Susjedstvo piksela

Zhang-Suen algoritam je opisan sa algoritmom 5.6, a primjer koji pokazuje uzastopne


faze erozije je dat na slici 5.36.
Algoritam 5.6: Zhang-Suenov erozioni algoritam za rastersko stanjivanje

198

Slika 5.36: Primjer Zhang-Suenove erozije

Lanci (chains) su formirani od nizova piksela u stanjenoj rasterskoj slici. Za svaki piksel,
potrebno je odrediti da li je on na linijskom segmentu, krajnja taka linijskog segmenta ili
formira taku presjeka izmeu segmenata. Algoritam za kodiranje lanaca (chain-coding)
e pronai piksel koji konstituie krajnju taku linijskog lanca, a onda e slijediti piksele
du ove linije, zaustavljajui se na njenoj krajnjoj taki ili na taki njenog presjeka. Na
ovaj nain e se generisati niz od piksela, odnosno lanac. Algoritam e se izvravati sve
dok se svi pikseli sa rasterske slike ne procesiraju. Ovakav algoritam moe biti malo
rafiniran kako bi se nosio i sa petljama (poligonima) koje nemaju zavrne take.
Konana faza u procesu vektorizacije je svoenje na vektore, odnosno konverzija svakog
lanca u skup vektora. Duga, vijugava linija e prirodno zahtjevati vie vektora, nego neka
pravija linija, zavisno od nivoa tanosti koji se zahtjeva. Za sam proces svoenja na
vektore se esto koristi Douglas-Peuckerov algoritam koji je opisan u sekciji 5.2.3.
Proces vektorsko-rasterske konverzije (rasterizacije) predstavlja osnovnu grafiku
operaciju u veini raunarskih sistema. Rasterski podaci se esto zahtjevaju u svrhu
prikaza podataka na ekranu. Tema koja se bavi ovom problematikom u grafikoj
iteraturi se esto nalazi pod nazivom scan conversion. Meutim, osim za potrebe prikaz,
sama rasterizacija se rijee koristi u GIS-u, te se stoga ovde nee detaljnije opisivati.

199

5.7 Mrena reprezentacija i algoritmi


Mreni modeli su fundamentalni za mnoge primjene GIS-a kao to su, na primjer,
primjene u transportu. Kao to je diskutovano u 3. poglavlju, fundamentalna struktura za
modeliranje mrea je graf. U ovoj sekciji e se istraiti reprezentacija mrea u kontekstu
raunarske primjene, te e se razmotriti odgovarajui algoritmi za neke od najredovnijih
operacija nad mreama.

5.7.1 Mrena reprezentacija


Neposredan pristup za reprezentaciju mrea (u raunarske svrhe) koritenjem grafa se
zasniva na tome da se mrea reprezentuje kao skup parova vorova, gdje svaki ovaj par
reprezentuje jednu stranu (ivicu) u mrei. Ukoliko je dozvoljeno koritenje vie strana
(viestrukih ivica) izmeu dva vora, onda se zahtjeva viestruki skup (multiset). Ukoliko
je mrea usmjerena, onda redoslijed vorova u paru vorova (koji predstavlja jednu
stranu) ima poseban znaaj.
Drugaiji pristup je reprezentacija grafa kao kvadratne (nxn) matrice susjedstva, u kojoj
su svaki red i kolona oznaeni vorom. Za svaki postojeu vezu (stranu, ivicu) izmeu
vorova je u matrici susjedstva upisana vrijednost 1 u odgovarajuem redu i koloni.
Ostali elementi (elije) matrice imaju vrijednost 0. Ukoliko su dozvoljene viestruke
strane izmeu dva vora, onda se broj u matrici moe reprezentovati brojem ovih strana.
Ukoliko se radi o usmjerenoj mrei, onda ova matrica ne mora biti simetrina.
esto je vano dodjeliti odgovarajue oznake uz ove strane. Na primjer, kod saobraajne
mree, gdje vorovi predstavljaju naselja, a strane predstavljaju saobraajnice meu
njima, stranama se mogu doznaiti rastojanja ili frekvencije saobraaja. Ove oznake
(vrijednosti) se mogu smjestiti (priloiti) dodavanjem posebnog polja uz par vorova u
tabeli strana, a za matricu susjedstva se ove vrijednosti smjestiti direktno u matricu. Slika
5.37 prikazuje hipotetiki primjer tramvajske mree sa prosjenim vremenima putovanja
(u minutama) izmeu stanica.

Slika 5.37: Hipotetika mrea tramvajskih linija izmeu nekih lokacija Potterija
sa naznaenim prosjenim vremenom putovanja

200

Mrea na slici 5.37 se moe reprezentovati kao skup doznaenih strana:


{(ab, 20), (ag, 15), (bc, 8), (bd, 9), (cd, 6), (ce, 15), (ch, 10), (de, 7), (ef, 22), (eg, 18)}
U ovom sluaju, svakoj strani je dodjeljeno odgovorajue vrijeme putovanja. Matrica
susjedstva koja predstavlja ovaj primjer mree je data u tabeli 5.6. Vrijednosti koje se
razlikuju od 0 indiciraju postojanje strane izmeu vorova adresiranih odgovarajuim
redovima i kolonama, i uz to predstavljaju vrijeme putovanja koje se odnosi za ove
strane. Nulte vrijednosti indiciraju da nema strana izmeu vorova opisanih
odgovarajuim redovima i stranama.
Tabela 5.6: Matrica susjedstva za mreu sa slike 5.37

Koritenje pristupa za reprezentacuju grafa sa skupom doznaenih strana je visoko


efikasno u smislu iskoritenosti prostora za pohranjivanje, ali je prilino manje efikasno u
odnosu na matricu susjedstva, kada je u pitanju primjena i izraunavanje osnovnih
mrenih operacija.
Matrica susjedstva u tabeli 5.6 sadri ponavljane i redundantne informacije koje inae
nisu prisutne u reprezentaciji sa doznaenim stranama. Na primjer, u matrici susjedstva iz
tabele 5.6, obje strane (i ab, i ba) su pohranjene, ak iako graf nije usmjeren. Dalje, za
sve elije matrice, gdje nema strana izmeu vorova, moraju biti pohranjene nulte
vrijednosti (na primjer, izmeu vora a i vora c). Sa druge strane, izraunavanje da li
pojedina strana postoji unutar grafa koritenjem matrice susjedstva (jednostavnim
provjeravanjem da li postoji vrijednost razliita od nule u odgovarajuoj eliji) se moe
izvriti za konstantno vrijeme O(1). Ista operacija za reprezentaciju sa doznaenim
stranama zahtjeva linearno vrijeme O(n) (jer je potrebno pretraiti cijeli skup doznaenih
strana).
U stvari, algoritmi raunarske geometrije esto koriste zatvorenu relaciju (tabelu) sa
matricom susjedstva, odnosno listu susjedstva. Za svaki vor, lista susjedstva pohranjuje
samo one strane koje su incident sa ovim vorom, ime se efikasno eliminiu sve nule iz
matrice susjedstva. Za posljedicu ovoga imamo da lista susjedstva dostie dobar balans
izmeu efikasnosti pohranjivanja i izraunavanja, i to posebno za relativno oskudne i
razbacane grafove (gdje odgovarajua matrica susjedstva sadri mnogo nula). Tabela 5.7
prikazuje listu susjedstva za mreu sa slike 5.37.
Tabela 5.7: Lista susjedstva za mreu sa slike 5.37

201

5.7.2 Algoritmi za pretraivanje mree prvo-po-irini i prvo-po-dubini


Fundamentalna operacija svake povezane mree je sistematsko pretraivanje (prolaenje)
vorova unutar nje. Ovakva pretraivanja su sastavni dio velikog broja apikacija, na
primjer pretraivanja problemskog prostora (budue mogue pozicije u ahu) ili
pretraivanje kablovske mree za lociranje izvora kvara. Postoje dva glavna alternativna
pristupa: pretraivanje prvo-po-irini i prvo-po-dubini. Dakle, mreu je mogue
pretraivati njenim prolaenjem prvo po irini (to jest, istraivanjem prvo svih vorova
koji su povezani sa datim poetnim vorom prije nego se pree na dublje istraivanje,
odnosno istraivanje vorova koji su povezani sa ve istraenim vorovima), ili
prolaenjem njenih vorova prvo po dubini (to jest, istraivanjem prvo vora koji je
povezan sa datim vorom, a onda vora koji je povezan sa pretraenim vorom i tako do
zadnjeg postojeeg vora po dubini, a onda se prelazi na naredni vor koji je povezan sa
datim poetnim vorim i tako dalje).
Svaki vor iz mree e se posjetiti jednim pretraivanjem (obilaskom) mree (prvo-poirini, odnosno prvo-po-dubini), ako i samo ako je zadati graf povezan (postoji putanja od
svakog vora to svakog drugog vora u mrei).
Algoritam 5.7 izvrava proceduru za pretraivanje grafa prvo-po-irini. Na slici 5.38 je
kroz seriju iteracija (tehnikom prvo-po-irini) ilustrovano pretraivanje tramvajske mree
sa slike 5.37. Poevi od vora b, pretrauju (posjeuju) se vorovi a, c i d, prije nego se
sa traenjem pree na slijedei nivo. Skup V u algoritmu 5.7 obino uva trag (historiju)
o vorovima koji su posjeeni prilikom izvravanja algoritma. Stablo sa lijeve strane slike
5.38 grafiki prikazuje redoslijed traenja.
Algoritam 5.7: Pretraivanje kroz mreu prvo-po-irini (breadth-first)

Algoritam 5.7 koristi poseban tip liste za pohranjivanje aktivnih vorova koji ekaju da
budu procesirani, koja se naziva red ekanja (queue) (Q u 1. liniji). U redu ekanja,
obino su prvi elementi koji se dodaju na listu takoe i prvi koji se skidaju sa liste. Za red

202

ekanja se esto koristi FIFO struktura, to znai prvi-unutra-prvi-napolje (first-in-firstout). Njoj komplementarna struktura koritena u pretraivanju prvo-po-dubini je slog,
odnosno stek (stack), u kojem elementi koji se zadnji dodaju prvi se skidaju. Ova
struktura se naziva LIFO ili zadnji-unutra-prvi-napolje (last-in-first-out).

Slika 5.38: Iteracije za pretraivanje kroz mreu prvo-po-irini (breadth-first)


tramvajskih linija sa slike 5.37

Algoritam 5.8 izvrava proceduru za pretraivanje prvo-po-dubini. Ovaj algoritam je


skoro identian algoritmu 5.7. Kljuna razlika je u tome to algoritam 5.8 koristi slog,
dok algoritam 5.7 koristi red ekanja. Posljedica ovoga je da se u 6. liniji algoritma 5.8
susjedni vorovi dodaju na poetak sloga, osiguravajui na ovaj nain da se zadnji dodani
vorovi u listi prvi procesiraju.
Slika 5.39 ilustruje seriju iteracija za pretraivanje iste tramvajske mree (slika 5.37)
prvo-po-dubini, opet poevi od vora b. Stablo sa lijeve strane slike 5.39 ilustruje nain
na koji algoritam za pretraivanje prvo-po-dubini slijedi svaku putanju dok ne iscrpi
cijelu granu i vrati se istim tragom da bi pretraio slijedeu putanju.

Algoritam 5.8: Pretraivanje kroz mreu prvo-po-dubini (depth-first)

203

Slika 5.39: Iteracije za pretraivanje kroz mreu prvo-po-dubini (depth-first) tramvajskih linija sa slike 5.37

5.7.3 Najkrai put


Druga fundamentalna mrena operacija je izraunavanje najkraeg puta izmeu vorova
u mrei. Algoritmi za izraunavanje najkraeg puta se koriste, na primjer, unutar vozila
za navigaciju kroz mreu ulica, koristei optimalnu rutu do cilja (u smislu Euclidovog
rastojanja). Koritenjem odgovarajuih podataka, isti algoritam se moe primjeniti za
traenje optimalne (najkrae) rute u smislu vremena putovanja, odnosno potronje goriva.
Jedan od najpoznatijih algoritama za rijeavanje ove klase problema je Dijkstrin
algoritam, razvijen od Edsgera Dijkstra (1959.), uticajnog pionira u raunarskim
naukama. Ovaj algoritam, koji je opisan algoritmom 5.9, zahtjeva ponderisani graf (sa
teinama) u kojem teine (ponderi) koje se dodjeljuju stranama nisu negativne. Obino
ovo ogranienje nije problematino, obzirom da negativne udaljenosti ili vremena
putovanja za veinu primjena nisu osjetljive veliine u tom smislu (podsjetimo se
diskusije o metrinim prostorima u sekciji 3.5). U algoritmu 5.9, udaljenosti su
reprezentovane teinskom funkcijom w kojom se elementi skupa strana E preslikavaju u
elemente skupa pozitivnih vrijednosti realnih brojeva R+. Dodatna ciljna teinska funkcija
t : N R+ se koristi za pohranjivanje minimalnih udaljenosti od poetnog vora s do
svakog vora u grafu.
Dijkstrin algoritam inicijalizira ciljne teine t sa beskonanim vrijednostima (1. linija),
osim u sluaju poetnog vora (2. linija, t(s) 0) i vorova koji su susjedi od s (3.-4.
linije). Nakon toga algoritam nastavlja sa pretraivanjem cijelog grafa od poetnog vora,
pri tome sortirajui na svakom koraku neposjeene vorove N\V prema rastuem
redoslijedu ciljnih teina (6. linija) i preraunavajui minimalne ciljne teine t (9. linija).
Algoritam 5.9: Dijkstrin algoritam najkraeg puta

204

Napredovanje Dijkstrinog algoritma najmanjeg puta za tramvajsku mreu sa slike 5.37 je


pokazano na slici 5.40.

Slika 5.40: Prve etiri iteracije Dijkstrinog algoritma za mreu tramvajskih linija sa slike 5.37

Prilikom inicijalne iteracije (slika 5.40a), sve ciljne teine su postavljene na


beskonanost, osim poetnog vora b i njemu susjednih vorova a, c i d. Poto c ima
najniu teinu od svih neposjeenih vorova, to jest t(c)=8, c je slijedei vor koji e biti
posjeen (slika 5.40b). Ciljne teine susjednih vorova od c (h i e) se auriraju, to jest
t(h)=18 i t(e)=23. Prilikom tree iteracije (slika 5.40c) posjeen je vor d. U ovoj iteraciji
je pronaeno rastojanje od b do e preko d, koje je manje od b do e preko c. Kao rezultat

205

ovoga t(e) se aurira, to jest t(e)=16. U slijedeoj iteraciji (slika 5.40d) posjeuje se e, uz
generisanje novih ciljnih teina za f i g. Algoritam nastavlja sa izvravanjem sve dok se
ne posjete svi vorovi, iako se u ovom sluaju vie ne javljaju dalje promjene na ciljnim
teinama. Algoritam 5.9 pohranjuje samo ciljne teine t, koje daju duinu najkraeg puta,
a ne eksplicitno i same aktuelne putanje. Za dodatno pohranjivanje i ovakvih informacije
zahtjeva se samo jednostavna mofifikacija algoritma 5.9.
Opazite da je Dijkstrin algoritam sposoban izraunavati najkrai put od jednog vora do
svih ostalih vorova u mrei. U ovom sluaju se on naziva algoritmom najkraeg puta iz
jednostrukog izvora. Dijkstrin algoritam ovo postie sa vremenskom kompleksnou
O(n2), gdje je n broj vorova (poto on posjeuje svaki vor samo jednom, a mora
preraunati ciljne teine svaki put kada posjeti neki vor). Ukoliko se izraunava najkrai
put od jednog poetnog vora do jednog ciljnog vora, onda se vremenska kompleksnost
prosjenog sluaja poboljava zaustavljanjem algoritma odmah nakon dodavanja ciljnog
vora listi posjeenih vorova. Meutim, ova modifikacija nema efekta na vremensku
kompleksnost najloijeg sluaja, poto ciljni vor moe biti i najudaljeniji vor za
posjeivanje.
Bliski roak Dijkstra algoritma je A* (izgovara se ej-star) algoritam. A* algoritam je
ciljno-usmjerena verzija Dijkstrinog algoritma, koji ima zadatak da nae najkrai put od
poetnog vora do posebne destinacije (cilja). Kako bi ovo postigao, A* koristi
heuristiku: prilikom svake iteracije on preferirano posjeuje one vorove koji su najblii
ciljnom voru. Prilikom ovoga on koristi neku evaluacionu funkciju koja daje
konzistentnu procjenu preostalog rastojanja od svakog vora do destinacije. A* moe biti
posebno koristan za geoprostorne informacije, poto Euclidovo rastojanje izmeu dvije
take esto formira prikladnu evaluacionu funkciju. Na primjer, u putnoj mrei prilikom
putovanja od vora n1 do n2, najmanje mogue rastojanje je Euclidovo pravolinijsko
rastojanje izmeu n1 i n2 (podrazumjevajui da je Zemlja lokalno aproksimirana ravnom
povrinom). Stvarna razdaljina koju treba prei e uvijek biti najmanje duga koliko i
Euclidova udaljenost, poto vijugavost i skretanja u putnoj mrei onemoguavaju
direktno putovanje do destinacije. U primjeru mree na slici 5.37, ne postoji ovakva
evaluaciona funkcija, tako da se A* algoritam ovdje nebi mogao primjeniti.
A* algoritam je u biti isti kao i Dijkstrin algoritam, tako da je vremanska kompleksnost
najloijeg sluaja za A* ista, odnosno O(n2). Meutim, A* u praksi nudi znaajna
poboljanja Dijkstrinog algoritma kod vremenske kompleksnosti prosjenog sluaja
(prilikom izraunavanja ciljno-usmjerenih najkraih puteva, tamo gdje postoji
odgovarajua evaluaciona funkcija).
Postoje okolnosti kada se zahtjeva algoritam za izraunavanje najkraeg puta od svih
moguih poetnih lokacija do svih moguih destinacija u mrei, koji se naziva
algoritmom najkraeg puta svih parova (all-pairs shortest path). Jednostavan nain da se
ovo postigne primjenom Dijkstrinog algoritma je da se on iterativno pokree za svaki
vor u mrei (kao poetni vor). Kao rezultat se dobija da je uobiajeno vrijeme
kompleksnosti ovakvog algoritma O(n3). Postoje i odgovarajui algoritmi, koji ovo
vrijeme neznatno poboljavaju.

206

5.7.4 Druge mrene operacije


Pored operacija koje su ve opisane u ovoj sekciji, postoje mnoge druge korisne mrene
operacije, od kojih e se u kratkim crtama predstaviti jo dvije. Kao to je pomenuto,
izraunavanje najkraeg puta izmeu dva vora podrazumjeva da su ovi vorovi povezani
(to jest, da postoji putanja izmeu njih). Ukoliko vorovi nisu povezani, Dijsktrin
algoritam e sraunati putanju izmeu ova dva vora kao da je njihova razdaljina
beskonana (). Na ovaj nain je mogue odrediti povezanost (konektivnost) izmeu dva
vora n1 i n2, primjenom Dijkstrinog algoritma za n1 (poetni vor) i provjerom da li je
razdaljina najkraeg puta do n2 beskonana.

Slika 5.41: Tranzitivno zatvorenje diskonektovane mree

Meutim, algoritmi najkraeg puta nisu efikasna metoda za testiranje da li su dva vora
povezana unutar mree. Operacija tranzitivnog zatvorenja (transitive closure) proiruje
skup strana date mree dodavanjem strane izmeu dva vora koja su povezana nekom
putanjom. Slika 5.41a prikazuje nepovezanu mreu. Slika 5.41b prikazuje upotpunjavanje
trougla bdh. Slika 5.41c prikazuje puno tranzitivno zatvorenje date mree. Odreivanje
da li su dva vora, na primjer, f i h, meusobno povezani svodi se jednostavno na
pretraivanje strana tranzitivnog zatvorenja date mree (u cilju utvrivanja da li postoji
strana fh).
Drugi algoritam, kojeg emo kratko predstaviti, je algoritam trgovakog putnika (koji je
pomenut u sekciji 1.2.2). Ovaj algoritam izraunava rutu obilaska svih vorova u mrei sa
ponderisanim strana, pri emu se vorovi posjeuju na nain da se ukupna teina obilaska
minimizira. Najprostije rjeenje, kojim bi se izraunale sve mogue rute i odabrala
najbolja od njih, ima eksponencijalnu vremensku kompleksnost i zbog toga ono uope
nije praktino za primjenu (osim za najjednostavnije primjere). Heuristike metode, kao
to je ona gdje se pri svakoj fazi posjeuje najblii neposjeeni vor, omoguavaju dobre
aproksimacije rjeenja uz prihvatljivo vrijeme izvravanja. Inae, problem trgovakog
putnika pripada velikoj klasi problema poznatih kao NP-complete problemi.
NP-complete problemi: Mnogi problemi pretraivanja, poput problema trgovakog putnika,
pripadaju klasi problema poznatih kao NP-complete (nondeterministic polynomial time). Ovi
problemi imaju svojstvo da se za njih moe lako provjeriti ispravnost dobijenog rjeenja, ali je u
stvarnosti veoma teko do njega doi. Na primjer, problem sume podskupa ima za cilj nai da li
suma elemenata nekog podskupa od konanog skupa cijelobrojnih vrijednosti odgovara nekoj
zadatoj vrijednosti. Na primjer, ak i za mali skup S = {-15, -3, 7, 11, 29, 34, 38} rjeenje da li
elementi nekog podskupa od skupa S ine sumu od 55 nije odmah uoljivo. Meutim, provjera da

207

li suma elemenata podskupa {-15, 7, 29, 34} iznosi 55 predstavlja trivijalan zadatak. Na slian
nain, mogue je preformulisati problem trgovakog putnika kao problem odluivanja (problem
sa da ili ne odgovorom) postavljajui pitanje: Da li za graf sa ponderisanim stranama,
postoji Hamiltonovo obilaenje sa ukupnom teinom manjom od k? (Definicija Hamiltonovog
krunog obilaska se moe nai u sekciji 3.4). Openito, odgovor na ovo pitanje zahtjeva
eksponencijalno vrijeme za izraunavanje, dok samo provjeravanje da li je neka specifina ruta
zaista Hamiltonova putanja sa ukupnom teinom manjom od k moe biti veoma brzo
proraunato. Svi poznati NP-complete problemi se mogu rijeiti za eksponencijalno vrijeme (sa
tendencijom usporavanja izvrenja). Meutim, niko nikad nije uspio da dokae da se NPcomplete problemi nemogu rijeiti za polinomalno vrijeme. Ono to ove probleme ini ak i vie
interesantnijim je da su svi oni zamjenjivi, u smislu da ako bi se ikada pronaao neki algoritam
za rjeavanje jednog NP-complete problema u polinomalnom vremenu, isto rjeenje bi se moglo
primjeniti na svaki drugi NP-complete problem. Ovo je i jedan od razloga zato algoritmi za
rjeavanje NP-complete problema predstavljaju predmet intenzivnih istraivanja i stalnog
interesovanja mnogih naunika iz oblasti teoretskog raunarstva.

208

6
6 Strukture i metode pristupa
Kratak pregled
Ovo poglavlje se odnosi na organizaciju podataka u raunarskoj memoriji (skladitu)
koja olakava njihovo efikasno uitavanje (pozivanje). Poglavlje poinje istraivanjem
nekih osnovnih strukura podataka i metoda indeksiranja za openamjenske baze
podataka, a zatim se fokusira na efikasno pozivanje prostornih podataka. Neke od
najvanijih predstavljenih struktura prostornih podataka ukljuuju regionalno
kvadrantno stablo, takasto kvadrantno stablo i 2D stablo. Poglavlje se zakljuuje
pitanjima vezanima za pohranjivanje podataka referensiranih na sferi.
U ovom poglavlju se dalje obrazlae prelazak sa konceptualnih modela visokog nivoa
apstrakcije do mainskog nivoa. U predhodnom poglavlju, naglasak je bio na razliitim
nainima reprezentacije i rukovanja razliitim vrstama prostornih podataka u
raunarskom okruenju. Sada prelazimo na razmatranje pitanja skladitenja, a posebno
struktura za pohranjivanje, koje omoguuju prihvatljive performanse informacionog
sistema. Ovdje se performanse informacionog sistema posmatraju u smislu veliine baze
podataka i vremena odziva prilikom upita. Drugi aspekti performansi, kao to su
pogodnost (podesivost) i upotrebljivost interfejsa, se razmatraju u osmom poglavlju.
Diskusija poinje predstavljanjem glavnih pitanja veznih za performanse kod
openamjenskih baza podataka i posebnim razmatranjem istih pitanja u kontekstu
geoprostornih podataka. Pokazae se da iako su fundamentalni principi indeksiranja baza
podataka iroko primjenjivi, pristup prostornim podacima nosi odreene sebi svojstvene
probleme.

6.1 Ope strukture baza podataka i metode pristupa


Tipina organizacija baze podataka je u obliku kolekcije fajlova, gdje svaki sadri
kolekciju zapisa, pohranjenih na set diskova. U daljem izlaganju e se podrazumjevati da
se diskovi, bilo magnetni ili optiki, koriste kao medij za sekundarno pohranjivanje.
Glavne fizikalne karakteristike raunarskog diska su navedene u prvom poglavlju.
Atomina jedinica podataka koji se uvaju na disku se naziva blokom diska. Vrijeme
potrebno za transfer bloka diska sa ili na disk se sastoji od tri komponente:
vrijeme potrebno za mehaniko pokretanje glava diska (preko diska) do traene
trake, koje se naziva vrijeme traenja,
vrijeme potrebno disku da se zarotira do tane pozicije koje se naziva kanjenje i
vrijeme koje se zahtjeva za transfer bloka u CPU, koje se naziva vrijeme transfera
do/od CPU.
209

Kao to je navedeno u prvom poglavlju, vrijeme traenja je dominantan faktor koji


odreuje performanse vezane za pozivanje podataka sa diska. Struktuiranje podataka u
sekundarnom skladitu, koje smanjuje mehaniko kretanje glava diska, na ovaj nain
rezultira poboljanju performansi baze podataka. Da bi se minimiziralo kretanje glava
diska, podatke je idealno smjestiti na nain da su grupe blokova (kojima se esto pristupa
istovremeno) smjetene zajedno, odnosno da su blokovi blizu jedni drugima na disku.
Smanjivanje kretanja glave diska se takoe moe postii i uvoenjem odgovarajuih
indeksa za pretraivanje podataka, tako da se izbjegnu suvine operacije vezane za
provjeru skupova podataka (ime se mogu izbjei suvina pretraivanja ak i cijelih
fajlova).
Baze podataka su po svojoj prirodi obino dizajnirane da budu fleksibilne i da dobro
odgovore (odazovu se) na raznovrsne upite. Openito, upiti nisu unaprijed poznati,
meutim tamo gdje se njihovi tipovi mogu predvidjeti, treba ih prilikom samog razvoja
sistema unaprijed identificirati. Pored nepoznavanja upita, javlja se i problem kod visoke
dinaminosti koritenja baze podataka. Visoki intenzitet promjena sadraja baze
podataka, tokom njenog ivotnog ciklusa, direktno utie na opadanje njenih performansi.
U ovom smislu, nain fizikog smjetanja podataka na disk moe samo djelomino
rijeiti problem opadanja performansi. Za konano postizanje dobrih performansi
neophodni su efikasno indeksiranje i primjena odgovarajue metode pristupa podacima.

6.1.1 Organizacija fajla i metode pristupa


Prije prelaska na izlaganje vezano za indekse neophodno je navesti fundamentalne
koncepte fajla, zapisa i polja.
Imenovano mjesto (prostor) rezervisano za neku stavku podataka u zapisu se
naziva polje. U ovom smislu polje nema nikakve veze sa njegovim znaenjem u
modelima baziranim na poljima.
Sekvenca (niz) polja povezanih u jedan logian entitet se naziva zapisom.
Sekvenca (niz) zapisa, obino istog tipa, je organizovana u fajl. Polje koje slui za
nedvosmisleno identificiranje svakog zapisa unutar fajla se naziva kljunim
poljem (eng. key field).
Termini polje, zapis i fajl, koji se koriste u kontekstu organizacije pohranjenih podataka,
prirodno su analogni pojmovima atributa, n-torke i relacije (tabele), koji se koriste u
terminologiji vezanoj za teoriju baza podataka. Sa aspekta organizacije fajla, baza
podataka predstavlja kolekciju povezanih fajlova. Slika 6.1 ilustruje organizaciju polja,
zapisa i fajlova unutar primjera baze meteorolokih podataka. Polja, kao to je polje
temperatura za Bangor, obezbjeuju mjesto za stavke podataka. Individualne stavke
podataka, kao to je 28C, su zajedno pohranjene u zapise, kao to je zapis o
vremenskom izvjetaju za Bangor iz okruga Maine na dan 7. jula, 2003.g. Sekvence
(nizovi) povezanih zapisa, kao to su vremenske prilike za Bangor za 2003.g., su
organizovane u fajlovima. Kolekcije povezanih fajlova, kao to su vremenski izvjetaji za
sve gradove okruga Maine, formiraju bazu podataka.

210

Slika 6.1: Organizacija podataka u poljima, zapisima, fajlovima i bazi podataka

Fajlovi se fiziki smjetaju na disk tako to se blokovi diska doznae zapisima koje treba
sauvati. Ukoliko je blok manji od veliine zapisa, onda se zapisi razmjetaju preko vie
blokova. U suprotnom (to je ei sluaj) svaki blok sadri nekoliko zapisa. Termin
fajl(-ovska) organizacija se koristi u smislu fizike organizacije zapisa u sekundarnom
skladitu, koja odreuje nain na koji su blokovi zapisa povezani (linkovani) i na koji se
novi zapisi smjetaju (insertuju) u skladite. U tom smislu, fajl organizacija moe biti
ureena ili neureena.

6.1.2 Neureeni fajlovi i linearno pretraivanje


U neureenoj fajl organizaciji, novi zapisi se mogu proizvoljno smjetati u fajl na tri
naina: na slijedeu slobodnu fiziku poziciju na disku, u posljednji koriteni blok i u
novi blok na disku. Umetanje novog zapisa je na ovaj nain veoma efikasno. Meutim,
neureeni fajl nema strukturu koja odgovara redoslijedu unosa sekvence (niza) zapisa,
tako da se prilikom uitavanja podataka zahtjeva pretraivanje redom svakog zapisa iz
fajla (sa sekvencom zapisa). Kada bi se zahtjevi korisnika odnosili samo na sekvencijalni
pristup, kao na primjer, prilikom tampanja liste vremenskih izvjetaja za pojedine
lokacije, onda je ovakva neureena fajl organizacija prihvatljiva. Meutim, problem
nastaje sa direktnim pristupom, odnosno kada se zahtjeva specifina informacija iz
ciljnog zapisa. Na primjer, kada se pozivaju samo oni dani za koje je temperatura bila
preko 28C, onda se za svaki zapis direktno pristupa vrijednostima iz polja temperature
kako bi se ispitalo da li su vee od 28C. Ovakvi zahtjevi se mogu realizovati samo
nainom pretraivanja koji se naziva linearno traenje, odnosno pristup brutalnom silom,
i treba ga izbjegavati ukoliko je to mogue. Za n zapisa, linearno traenje moe zahtjevati
pozivanje svakog zapisa, iz ega slijedi da ono ima linearnu vremensku kompleksnost,
odnosno O(n). Ovakav pristup se moe unaprijediti uvoenjem indeksa.
Pored slabih performansi, drugi problem koji je posebno izraajan prilikom visoko
dinamikih fajlova, je to se na mjesta izbrisanih zapisa stvaraju rupe (praznine). U
ovom smislu je neureenu fajl organizaciju mogue modificirati markiranjem ovih rupa,
te umetanjem novih zapisa na ove pozicije. Meutim, ovo bi dodatno usporilo operaciju
umetanja.

211

6.1.3 Ureeni (sekvencijalni) fajlovi i binarno traenje


U ureenoj fajl organizaciji, svaki zapis je umetnut u fajl prema redoslijedu vrijednosti iz
jednog ili vie njegovih polja. Na primjer, moemo odluiti da fajl sa vremenskim
izvjetajima uredimo (sloimo) po datumima. U ovom sluaju, polje datuma se naziva
polje ureenja (slaganja)(eng. ordering field). Vrijednosti u ovom polju moraju naravno
biti takvi da se mogu u potpunosti urediti (na primjer, cjelobrojne vrijednosti po svojoj
veliini, karakterni nizovi prema leksikografskom redoslijedu, datumi prema
vremenskom redoslijedu). Velika prednost ureene fajl organizacije je mogunost
primjene binarnog pretraivanja nad ureenim poljima. Algoritam binarnog pretraivanja
je dat generinim prikazom algoritma 6.1. Moe se uoiti da operacija div formira
cjelobrojni dio kolinika dva cjelobrojna broja (integer broja), na primjer 15 div 2 = 7.
Algoritam 6.1: Binarno pretraivanje

Algoritam za binarno pretraivanje koristi prednost ureenja u fajlu na nain to se


njegov sadraj uzastopno presjeca (dijeli) na pola, dok se ne nau i uitaju ciljani zapisi,
ili dok se ne ustanovi da nema ovakvih zapisa. Za fajl koji koristi n blokova, broj
presjecanja moe biti najvie log2(n). Na ovaj nain, za pozivanje jednog zapisa,
vremenska kompleksnost metode binarnog traenja je logaritamska, to predstavlja
ogromno poboljanje u odnosu na linearno traenje.
Pretpostavimo da je za na predhodni primjer pozivanja vremenskih zapisa fajl sa
podacima smjeten nad 1000 blokova. Linearno traenje bi zahtjevalo u prosjeku 500
pristupa blokovima. Ukoliko bi zapisi bili sloeni po datumu, binarno traenje bi
zahtjevalo aproksimativno log2(1000)=10 pristupa. Moe se primjetiti da ukoliko vie
zapisa zadovoljava uslov traenja, onda se vremenska kompleksnost ne ponaa kao
logaritamska funkcija. U najgorem sluaju, ukoliko svi zapisi iz fajla zadovoljavaju uslov
traenja, vremenska kompleksnost e biti linearna. Meutim, u svim sluajevima gdje je
broj zapisa koji se pozivaju mali u poreenju sa koliinom podataka u fajlu,
kompleksnost je aproksimativno logaritamska.
Veina uitavanja (pozivanja) zapisa u praksi je bazirana na upitima sa rangiranim
uslovima traenja, sa manjim brojem onih upita koji se zasnivaju samo na uslovu
jednakosti. Na primjer, pretraivanje se moe odnositi na traenje svih vremenskih
212

zapisa datiranih u julu. Meusobno bliski zapisi iz ovog ranga e biti bliski i po svom
redoslijedu, tako da e binarno traenje takoe znaajno uticati na poboljanje
performansi prilikom rangiranih upita. Algoritam 6.1 se vrlo jednostavno moe
modificirati za izvravanje rangiranog pretraivanja.
Pored brojnih prednosti koje donose ureeni fajlovi, postoje i odreeni nedostatci koji
prate ovakav pristup fajl organizacije. Iako ureeni fajl omoguava veliko poboljanje
performansi prilikom pretraivanja kroz polja ureenja (ordering fields), pozivanje
zapisa putem drugih polja je opet reducirano na linearno traenje. Za redovno auriranje
fajla, umetanje zapisa moe biti zahtjevna (vremenski skupa) operacija, poto svi
slijedei zapisi moraju biti pomjereni za jedan korak iza umetnutog zapisa. Isti problem
se javlja i prilikom brisanja. Ovo se moe ublaiti na nain da se zapis prilikom brisanja
samo markira (oznai) da je izbrisan, a stvarno brisanje se moe izvriti prilikom
periodinog brisanja vezanog za cijeli fajl.

6.1.4 Indeksi
U predhodnom izlaganju su predstavljene neke jednostavne organizacione tehnike.
Meutim, sama fizika organizacija fajlova na diskovima nemoe rijeiti sve probleme
(uglavnom vezane za performanse) koji se mogu pojaviti. Postoje i druge sofisticirane
tehnike organizacije fajlova, kao to je hashing , koje u tom smislu nude izvjesna
poboljanja.
Hashing: Hashing je oblik organizovanja fajla koji ima mnogo zajednikih elemenata sa
jednostavnim indeksom. Hash fajl je organizovan koritenjem hash funkcije. Za svaki zapis, hash
funkcija transformie vrijednosti jednog polja u adrese blokova na disku, koje za svaki zapis
indiciraju gdje je upisan. Polje nad kojim operie hush funkcija se naziva hash poljem. Za
pretraivanje zapisa preko hash polja, za traenu vrijednost se primjeni hash funkcija i srauna
se adresa bloka na disku. Ovo rezultira samo jednim pristupom bloku. Uzevi krajnje
pojednostavljen primjer, pretpostavimo da imamo 1000 blokova za fajl o vremenskom izvjetaju.
Za hash polje moemo koristiti datumsko polje tako to emo koristiti oznaku (labelu) za svaki
blok, koja je bazirana na estocifrenoj vrijednosti (sa po dvije cifre za dan, mjesec i godinu). Na
ovaj nain bi vremenski izvjetaj za 21. august, 2003.g. bio smjeten u bloku sa oznakom 210803.
Za uitavanje zapisa sa ovim datumom dovoljno je pozvati hash funkciju preko koje e se pronai
blok adresa za oznaku (labelu) 210803. Hashing u osnovi predstavlja jednostavnu tehniku za fajl
organizaciju. Meutim, stvari postaju kompleksnije kada se broj blokova dinamiki poveava,
odnosno kada treba osigurati ravnomjernu raspodjelu zapisa preko raspoloivih blokova diska.
U tom smislu je, u cilju odabira najpodesnije hash funkcije, korisno unaprijed poznavati broj
blokova koji e na disku biti alocirani.

Veina baza podataka je realizovana primjenom indeksa kao primarnog mehanizma za


efikasno pretraivanje i uitavanje podataka. Indeks predstavlja pomonu strukturu koja
je posebno dizajnirana da ubrza pozivanje zapisa. Indeksi poveavaju performanse u
smislu brzine uitavanja, a po cijenu dodatnog prostora potrebnog za smjetanje samih
indeksa.
Koncept koritenja indeksa u fajlu je slian koritenju indeksa u knjizi. Na primjer,
indeks u knjizi sadri ureenu sekvencu vanih termina koritenih za referentne dijelove
teksta. Bez indeksa bi knjigu trebalo prelistavati od korica do korica, svaki put kada bi
trebalo pronai neki poseban pojam. Indeks je ureen tako da se on i sam moe brzo
pretraivati (na primjer, pomou binarnog traenja). Za traenje pojma u glavnom tekstu,

213

trai se stavka u indeksu (na primjer, GIS iz abecedne liste), a potom se prema
naznaenoj adresi, na primjer, 2. strana, otvara (poziva) stranica sa tekstom u kojem se
traena stavka pojavljuje.
Jednostruki, odnosno jednorazinski indeks (single-level index) se ponaa upravo na isti
nain kao ve opisan indeks u knjizi. On predstavlja ureen (ordered) fajl sa zapisima od
kojih svaki sadri vrijednosti za dva polja:
indeksno polje sadri ureene vrijednosti indeksirajueg polja u fajlu sa podacima
i
pokazivako polje (pointer field) koje sadri adrese blokova na disku koji imaju
posebne indeksne vrijednosti.
U sluaju da je indeksirajue polje istovremeno i kljuno polje, pokazivako polje e za
svaki indeksni zapis sadrati samo jedan pokaziva. Inae indeksno polje moe zahtjevati
viestruke pokazivae unutar pokazivakog polja. Slika 6.2 prikazuje indeks prezimena
studenata u fajlu sa podacima o studentima, koji je fiziki ureen preko studentskih ID
brojeva.

Slika 6.2: Fajl o studentima koji je indeksiran pomou prezimena

Da bi pozvali zapis iz indeksiranog fajla, potrebno je pretraiti indeks na bazi uslova za


pretraivanje indeksirajueg polja. Kako je indeksni fajl je ureen (na primjer,
alfabetski), mogue je primjeniti binarno traenje. Nakon to je zapis u indeksu lociran,
pokaziva indicira lokaciju zapisa u fajlu sa podacima. Na ovaj nain, kao fajl koji je
ureen, indeks omoguava poboljanje pretraivanja sa nivoa linearne na nivo
logaritamske vremenske kompleksnosti. Za razliku od pristupa sa koritenjem ureenog
fajla, indeks omoguava istovremeni rad sa viestrukim poljima, a neki indeksi su takoe
i jednostavniji za auriranje prilikom umetanja ili brisanja zapisa u odnosu na ureeni
fajl.
214

Faktor kojeg takoe vrijedi posebno diskutovati je smjetenje indeksa u blokove. Za


velike fajlove podataka, indeksni fajl e i sam postati velik, te e se na disku smjestiti
unutar vie blokova. Vrijeme pretraivanja indeksa e biti proporcionalno logaritmu broja
ovih blokova. Mogue je po istom principu skratiti vrijeme traenja, omoguavajui da i
sam indeks bude indeksiran, i tako dalje rekurzivno. Ovo predstavlja princip viestrukog
odnosno vierazinskog indeksa, (multi-level index).
B-stabla
Kako indeksne strukture, uz poveanje broja njihovih nivoa, postaju kompleksnije, to
njihovo odravanje prilikom provoenja promjena i auriranja postaje tee. Kadgod se
neki zapis izbrie ili doda novi u fajl sa podacima, indeks se takoe mora modificirati.
Ukoliko je indeks realizovan na vie nivoa (viestruki), onda njihova modifikacija moe
biti komplikovana. B-stablo (B-tree) je indeksna struktura koja omoguava provoenje
ovih modifikacija na veoma elegantan nain. B-stabla ostaju balansirana u dinamikim
uslovima, u smislu da razne grane stabla ostaju istih duina kako stablo raste.
Pretpostavimo da imamo skup zapisa, indeksiranih pomou jednog cjelobrojnog (integer)
polja (svaki tip podataka koji omoguava linearno ureenje, odnosno poredak se moe
koristiti kao indeksna domena za B-stablo). Poput svakog stabla, B-stablo sadri dvije
vrste vorova: vorove listova i unutranje (interne) vorove. Svako indeksno polje sadri
pokaziva na zapis koji je indeksiran. Zbog jednostavnosti prikaza ovi pokazivai nisu
prikazani u narednim slikama. Svaki vor B-stabla sadri listu indeksnih polja (sa
pokazivaima na podatke). Unutar svakog vora, indeksna polja su u strogo rastuem
poretku. Takoe, interni vorovi sadre listu pokazivaa na direktne sljedbenike.
Slika 6.3 prikazuje primjer jednog internog vora.

Slika 6.3: Interni vor B-stabla

U naem primjeru, za B-stablo se moe rei da ima stepen irenja (fan-out ratio) 3, to
znai da svaki interni vor (koji nije vor lista), moe sadrati najvie dva indeksna polja
i imati najvie tri direktna sljedbenika. Osnovna osobina B-stabla je da je vrijednost
indeksnog polja za sve sljedbenike unutar ranga (obuhvata) postavljenog od indeksnih
polja predhodnog vora. U naem primjeru, lijevi pokaziva pokazuje na vorove koji
sadre vrijednosti indeksa manje od 6, drugi pokaziva pokazuje vorove koji sadre
indeksne vrijednosti izmeu 6 i 14, a desni pokaziva pokazuje vorove vee od 14. Slika
6.4 prikazuje B-stablo sa stepenom irenja 3.
Operacije traenja, umetanja i brisanja sa B-stablom su opisana u narednom izlaganju.
Pretraivanje B-stabla, koje se bazira na vrijednosti indeksirajueg polja, je najzahtjevnija
operacija, poto se njegova primjena zahtjeva bez restruktuiranja samog stabla. Ostale
operacije podrazumjevaju restruktuiranje stabla iz razloga odravanja balansa.

215

Slika 6.4: Dvorazinsko B-stablo sa stepenom irenja 3

Traenje: Traenje zapoinje u korjenskom voru. Zavisno od vrijednosti indeksirajueg


polja, putanja e voditi do jednog od sljedbenika korjenskog vora, a onda e ii prema
niim nivoima do samog dna stabla, sve dok se ne dosegne traena vrijednost. Nakon
toga, vrijednost pokazivakog polja e omoguiti da se traeni zapis uita iz fajla sa
podacima.
Umetanje (insertovanje): Kada je zapis umetnut (upisan) u fajl sa podacima, onda se Bstablo pretrauje kako bi se u njemu odredila pozicija smjetanja indeksa zapisa. Ukoliko
se on moe smjestiti u prazan prostor u B-stablu, restruktuiranje nije potrebno. Na
primjer, novi zapis sa vrijednou indeksa 19 se moe insertovati u B-stablo (slika 6.4)
jednostavnim dodavanjem 19 u prazan prostor postojeeg vora 16. Ukoliko umetanjem
indeksa dolazi do prekomjernog poveanja direktnih sljedbenika na nekorijenskom voru
(prebaaj), onda se takav vor cijepa na dva jednaka dijela, sa srednjom vrijednou
promovisanom na roditeljski nivo. Ukoliko se prekomjernost javlja u korjenskom voru,
ovaj vor se cijepa na dva jednaka dijela, od kojih se svaki degradira za jedan nivo, sa
srednjom vrijednou koja se zadrava kao novi korjenski vor. Na primjer, na slici 6.5,
umetanje indeksne vrijednosti 10 u B-stablo vodi do 7-9 vora koji se cijepa, sa
vrijednou 9 koja se promovie na slijedei nivo. Ovo ponovo vodi do korijenskog vora
koji se cijepa, sa vijednostima 6 i 14 koje se degradiraju za jedan nivo.
Brisanje: Slino umetanju, koristi se i algoritam za brisanje koji osigurava da se prilikom
brisanja zapisa stablo rekonstruie i na taj nain odrava izbalansiranim. Ukoliko brisanje
odgovarajue indeksne vrijednosti iz vora n, ostavlja taj vor manje od napola punog,
onda se primjenjuje proces sjedinjavanja vorova, koji je propagiran od n (podbaaj).
Ovaj proces je inverzan od procesa restruktuiranja pri umetanju, tako da se nee detaljno
objanjavati. Naravno, ukoliko je n jo uvijek najmanje do pola popunjen nakon brisanja,
onda se sjedinjavanje ne primjenjuje.
Struktura B-stabla ima slijedea svojstva, koja se odravaju kako se struktura dinamiki
modificira prilikom umetanja i brisanja zapisa iz fajla sa podacima.
Neka je n broj zapisa u fajlu sa podacima koji se indeksira.
B-stablo je kompletno balansirano: u svakoj fazi njegove evolucije, putanja od
korijena do lista je konstantne dubine. Vrijeme traenja je ogranieno duinom
njegove putanje i zbog toga ima vremensku kompleksnost O(log n).
Umetanje i brisanje zapisa iz fajla (restruktuiranje indeksa) ima vremensku
kompleksnost O(log n).
Za svaki vor je garantovano da bude napola popunjen (ili skoro polu pun za Bstabla sa neparnim stepenom irenja) u svim fazama evolucije stabla.

216

Slika 6.5: B stablo sa slike 6.4 tokom i nakon insertovanja

B-stablo obezbjeuje balansirani viestepeni (vierazinski) indeks u dinamikoj postavci i


konstituie jedan od prvih substantnih dostignua za istraivanja u openamjenskim
strukturama podataka. B-stabla omoguavaju smjetanje indeksa u dinamiku okolinu i
dostizanje znaajnih poboljanja performansi. B-stabla, ili njima bliske relacije, su u srcu
najmodernijih sistema za upravljanje bazom podataka. U stvaru, B+-stablo je njegova
ekstenzija koja se najee koristi u dananjim implementacijama. U B+-stablu,
pokazivai na zapise su pohranjeni samo na lisnim vorovima. Na ovaj nain lisni
vorovi moraju sadrati svaku indeksnu vrijednost i samim tim su brojniji u odnosu na
B-stablo. Sa druge strane, vorovi koji nisu lisni imaju jednostavniju strukturu i
zauzimaju manje memorijskog prostora.

6.2 Od jednodimenzionalnog prema dvodimenzionalnom


Dosadanja diskusija se odnosila na bilo koju openamjensku bazu podataka. Fajlovi u
takvoj bazi podataka su multidimenzionalni, u smislu da svaki entitet ima nekoliko
nezavisnih atributa. Fajl sa studentima, koji je koriten u jednom od predhodnih primjera
iz poetnih poglavlja, ima dimenzije koje se odnose na ID studenta, te njegovo ime,
prezime i godini studija. Iako je mogue da u nekim sluajevima moe postojati zavisnost
meu atributima, veinom su atributi nezavisni. Kada se pojavljuju ovakve zavisnosti,
koje su najee statistike prirode (na primjer, korelacije izmeu opisa poslova i
novanih primanja u bazi podataka o uposlenicima), one se obino mogu eliminisati
normalizacijom.
Kada su u pitanju prostorni podaci, prostorne dimenzije su obino ortogonalne i
meusobno zavisne, to se u Euclidovom prostoru izraava preko Euclidove metrike. Za
ilustraciju moemo, na primjer, koristiti podatke o poloaju taaka koje opisuju lokalitete
sa znamenitostima prikazanim u tabeli 6.1 i na slici 6.6.
217

Tabela 6.1: Take od interesa u Potteries regiji (vidi sliku 1.3)

Slika 6.6: Lokacije nekih znaajnih mjesta u Potteries regiji (labele se odnose na ID brojeve iz tabele 6.1)

Posmatrajmo sada efekte pozivanja ovih podataka. Razlikujemo dva tipa upita nad
takama prikazanim u ravni: upiti sa obuhvatom i upiti sa takama.
Upiti sa takama pozivaju sve zapise koji su lokacijski prostorno referensirani
pomou (upitom) zadatih koordinata taaka.
Upiti sa obuhvatima (rangovima) pozivaju sve zapise koji su lokacijski prostorno
referensirani i nalaze se unutar (upitom) zadatog obuhvata (ranga).
Razmotrimo slijedee primjere upita:
Prvi upit (neprostorni upit): Pozovi znamenitost Trentham Gardens.
Drugi upit (prostorni upit sa zadatim takama): Pozovi sve znamenitosti na lokaciji (37,
43).

218

Trei upit (prostorni upit sa zadatim obuhvatom): Pozovi sve znamenitosti unutar
pravougaonog prostora opisanog tjemenima (20, 20) na jugozapadu i (40, 50) na
sjeveroistoku.
Prvi upit, iako u rezultatu moe sadrati i prostornu lokaciju, odnosi se samo na
pretraivanje fajla koritenjem neprostornog polja. Dakle, za izvrenje ovakvog upita
dovoljne su predhodno opisane openamjenske metode pristupa. Drugi upit se odnosi na
pozivanje podataka koritenjem uslova za prostorno traenje. Bez primjene indeksa ili
ureenja fajla, za izvrenje ovakvog upita bi bilo neophodno linearno (vremensko)
pretraivanje, dato algoritmom 6.2.
Algoritam 6.2: Linearno pretraivanje za prostorni upit sa takom

Za trei upit (sa zadatim obuhvatom), moe se linearno (vremensko) pretraivanje


adaptirati u mehanizam prikazan algoritmom 6.3.
Algoritam 6.3: Linearno pretraivanje za prostorni upit sa obuhvatom

U cilju poboljanja performansi upita sa ovakvim linearnim pretraivanjem, moemo


ugraditi dva indeksa za dva koordinatna polja, koristei pristup sa openamjenskom
bazom podataka. Ovi indeksi su prikazani (sa nazivima lokacija koje indiciraju
pokazivaka polja) u tabeli 6.2, a dva niza taaka su prikazana kao putanje na slici 6.7. Za
drugi upit, izvrava se binarno pretraivanje indeksa za istonu (prvu) koordinatu, kojim
se lociraju zapisi koji imaju vrijednost prve koordinate 37. Onda se za zapise sa ovom
vrijednou provjerava da li druga koordinata (sjever) odgovara vrijednosti 43. Zatim se
pozivaju svi oni zapisi za koje vrijedi ovaj sluaj. Za trei upit, moe se pretraiti indeks
za prvu koordinatu (istok) pomou vrijednosti koje padaju u interval [20, 40], to
rezultira listom pokazivaa za fajl sa podacima. Preko pokazivaa se moe pristupiti
pojedinim zapisima i provjeriti da li odgovarajua vrijednost koordinate (sjever) pada u
interval [20, 50], u kojem sluaju se takav zapis poziva.

219

Tabela 6.2: Istoni i sjeverni indeksi za lokacije od interesa

Slika 6.7: Dva indeksa prikazana kao putanje kroz mjesta od interesa (labele se odnose na tabelu 6.1)

Kljuno zapaanje vezano za ovu diskusiju je da se za pozivanje zapisa koristi samo


jedan od indeksa (istok ili sjever). Ovdje je bila namjera da se opie kako konstrukcija
indeksa moe iskoristi prednosti ureenja (poretka) u dvodimenzionalnom okruenju. Pri
tome je akcenat stavljen na primjeni upita sa prostornim obuhvatom, pri emu su zapisi
ureeni na takav nain da su oni koji su prostorno blii, istovremeno i indeksno blii.

220

6.2.1 Dvodimenzionalna ureenja


Osnovni problem s kojim se suoavaju dizajneri struktura podatka za dvodimenzionalni i
viedimenzionalni Euclidov prostor jeste to je skladini prostor raunara u biti
jednodimenzionalan. ak iako sam disk fiziki egzistira u trodimenzionalnom prostoru,
raunarski model diska je jednodimenzionalan (to ilustruje njegova jednodimenzionalna
shema adresiranja). U ovom smislu je neophodno razmotati viedimenzionalni prostor
uz njegovu minimalnu distorziju, kao to bi razmotali pletivo u njegovu
jednodimenzionalnu preu (nit). U narednom izlaganju se opisuju neke od naprednih
tehnika koje su predloene za postupak razmotavanja u sluaju dvodimenzionalnosti
prostora.
U formalnom smislu, posmatrajmo konaan dio Euclidove ravni P. Bez gubitka
generalnosti, neka S predstavlja realni interval [0, 1], ije je ureenje predstavljeno
prirodno rastuim poretkom realnih brojeva, a P neka predstavlja jedinini kvadrat [0, 1]
[0, 1]. Potrebno je nai bijektivnu funkciju f : P S, koja ima svojstvo takvo da, za
svako x, y P, x je regionalno blizu y, ako i samo ako je f(x) blizu f(y) u intervalu [0, 1].
Za diskretan sluaj, pretpostavimo da je S regularno izdjeljena (teselacija) na kvadrate.
Na ovaj nain, funkcija f moe biti reprezentovana kao putanja kroz mreu (grid).
Odgovarajue funkcije preslikavanja, odnosno tile indeksi (tile - eng. ploica), su one
koje imaju svojstvo da su take koje su meusobno bliske u P, istovremeno bliske i na
putanji, i obrnuto. Praktino, nije mogue pronai tile indekse koji imaju ovu osobinu
bliskosti za sve parove taaka, ali postoji nekoliko funkcija koje su dovoljno dobre za
veinu sluajeva.
Slika 6.8 prikazuje 6 standardnih tile indeksa. Ureenje po redovima (row) koje je
prikazano u gornjem lijevom dijelu slike je po intuiciji prva i najoitija mogunost. Ona
odgovara mehanizmu skeniranja rasterske slike po redovima piksela. Iako jednostavno,
ovo ureenje ima nepovoljnu osobinu da su bliske take na krajevima redova, kretanjem
po putanji, esto poprilino udaljene, posebno u sluajevima sa velikim brojem elija.
Drugi poredak (na slici oznaen sa row prime) predstavlja jednostavnu modifikaciju, koja
donosi neka poboljanja, ali jo uvijek postoji problem udaljenosti taaka (za polovinu
krajnjih taaka).
Neto bolji (u smislu ouvanja bliskosti) su Cantorov dijagonalni poredak (rotirani row
prime, gore desno) i spiralni poredak (dole lijevo).
Mortonov (dole, u sredini) i Peano-Hilbertov poredak (dole desno) su genijalniji.
Mortonovo ureenje se moe posmatrati kao rekurzivno Z, sa slovom Z u raznim
razmjerama, ili ako je rotirano za pravi ugao, kao rekurzivno N.
Peano-Hilbertovo ureenje je u odnosu na Mortonovo slino kao row-prime u odnosu na
ureenje po redovima. I Mortonovo i Peano-Hilbertovo ureenje spadaju u
diskretizovane fraktale, generisane koritenjem konanog broja rekurzivnih iteracija
fraktalnog generatora (vidi poglavlje 3). Mortonovo i Peano-Hilbertovo ureenje imaju
zbog ovoga svojstvo prostorne ispunjenosti (beskonano guste krive) i mogu biti
konstruisana sa proizvoljnim nivoima detalja (vidi sekciju 3.6). Ona su takoe bolja i u
pogledu ouvanja bliskosti od svih ostalih ureenja sa slike 6.8.

221

Slika 6.8: est standardnih tile indeksa

6.3 Rasterske strukture


U ovoj sekciji se daje pregled nekih osnovnih metoda za smjetanje i kompresiju
rasterskih podataka. Svaka elija u rasteru je adresirana pomou njenog poloaja u nizu
(matrici) koji je opisan brojevima redova i kolona. Na primjer, raster moe biti
predstavljen kao rasterska struktura na slici 6.9, koja je reprodukovana iz slike 1.12
(3232 matrica sa vrijednostima elija 0 i 1).

Slika 6.9: Primjer rasterske strukture

Rasterima je mogue raunarski predstaviti veliki broj prostornih objekata. Na primjer,


taka se moe predstaviti jednom elijom, linija nizom susjednih elija, a povezana

222

povrina sa kolekcijom kontinualno razmjetenih elija. Rasteri su pogodni za koritenje


u raunarskoj okolini, zbog toga to veina standardnih programskih jezika podrava
matrine operacije. Meutim, rasteri pohranjeni u sirovom obliku bez kompresije mogu
biti izuzetno neefikasni u smislu iskoritenja raunarske memorije. Na primjer, velike
uniformne povrine bez zasebnih karakteristika se pohranjuju kao velike kolekcije elija,
od kojih svaka uva istu vrijednost. U narednom izlaganju e se predstaviti tehnike
pomou kojih je mogue poboljati rastersku efikasnost koritenja prostora.

6.3.1 Lanano, RLE i blokovsko kodiranje


Lanano kodiranje, prestavljeno u predhodnom poglavlju, se moe koristiti za rastersku
reprezentaciju granica regija. Lanano kodiranje, poznato kao Freemanovo lanano
kodiranje, koristi brojeve od 0 do 7, koji opisuju pravce poloaja susjedne elije u odnosu
na tekuu eliju, poevi od neke startne elije (sa definisanim poloajem, koji je obino
u krajnjem gornjem lijevom uglu regije). Brojevi od 0 do 7 opisuju 8 pravaca, gledajui u
smjeru kazaljke na satu, i to N=0, NE=1, E=2, SE=3, S=4, SW=5, W=6 i NW=7 (prema
engleskoj notaciji strana svijeta). Poevi od sjeveroistonog ugla i idui u smjeru
kazaljke na satu, Freemanov lanani kod za sliku 6.10a bi bio:
[2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, 4, 4, 6, 4, 4, 4, 4, 4, 4, 4, 2, 2, 4, 4, 4, 6, 6, 6, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0,
0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0]

a. Lanan kodiranje

b. Run-length kodiranje

c. Blokovsko kodiranje

Slika 6.10: Lanani, RLE i blokovski kod za dio rastera sa slike 6.9

RLE (run-length encoding, eng. kodiranje duine prolaza) je naizmjenina reprezentacija,


koja broji duine prolaza (run-length) uzastopnih elija istih vrijednosti (0 ili 1). Na
primjer, kreui se po redovima, raster na slici 6.10b se moe predstaviti RLE kodom
kao:
[18, 11, 5, 11, 5, 11, 5, 11, 5, 10, 6, 10, 6, 10, 8, 8, 8, 8, 8, 8, 8, 10, 6, 10, 6, 10, 6, 10, 18]

Koritenje razliitih tile indeksa rezultira razliitim RLE kodiranjem. Na primjer,


koritenjem Mortonovog poretka isti raster na slici 6.10b se moe predstaviti kodom:
[6, 2, 4, 4, 2, 2, 2, 10, 4, 4, 4, 20, 2, 2, 2, 10, 2, 1, 5, 1, 1, 1, 5, 17, 31, 16, 16, 10, 2, 2, 2, 16, 10, 2,
4, 10, 2, 2, 2, 4, 4, 2, 2, 4]

223

Freemanovo lanano kodiranje i RLE se mogu i kombinovano koristiti u cilju


kompaktnije reprezentacije granica. Na primjer, Freemanova lanana kodna
reprezentacija slike 6.10a, bi se mogla predstaviti RLE kodiranjem kao:
[2, 10, 4, 3, 6, 1, 4, 7, 2, 2, 4, 3, 6, 9, 0, 7, 6, 2, 0, 6]

U kodnoj liniji se naizmjenino smjenjuju oznaka pravca (0-7) i broj uzastopnog


pojavljivanja koda pravca (broj elija iste oznake pravca), tako da se kod iz gornjeg
primjera moe itati kao: 10 uzastopnog pojavljivanja elija u pravcu 2, 3 uzastopna
pojavljivanja elija u pravcu 4, i tako dalje.
Blokovsko kodiranje predstavlja dvodimenzionalnu generalizaciju RLE kodiranja.
Umjesto nizova (prolaza) nula i jedinica, kodiranje se vri po kvadratnim blokovima.
Svaki kvadratni blok je definisan takom (na primjer, svojim centrom ili jugozapadnim
verteksom) i duinom svoje strane. Za generisanje efikasnog pakovanja oblika sa
kvadratnim blokovima (slika 6.10c) koristi se transformacija sredinje osovine (slika
5.21). Na ovaj nain se dobija optimalan broj kvadrata unutar datog oblika.

6.3.2 Regionsko kvadrantno stablo


Regionsko kvadrantno stablo (region quadtree) predstavlja iroko rasprostranjenu
strukturu za uvanje podataka rasterske reprezentaciju povrina (regija) u ravni.
Naziv kvadrantno stablo je nastao zbog strukture podataka koja ima oblik stabla u
kojem svi vorovi stabla (koji nisu lisni vorovi) imaju tano etiri svoja sljedbenika.
Princip generisanja regionskog kvadrantnog stabla je rekurzivna podjela nehomogene
kvadratne matrice elija (odnosno kvadratnog rasterskog prikaza) na etiri jednaka
kvadranta. Dekompozicija se primjenjuje na svaku novonastalu submatricu sve dok sve
submatrice ne postanu homogeni regioni. Ovaj proces je primjenjen na raster sa slike 6.9,
a rezultat je prikazan na slici 6.11. Kako bi se proces podjele sagledao detaljnije, na slici
6.12 je prikazana sukcesivna podjela dijela sjeverozapadnog kvadranta rastera.

Slika 6.11: Podjela sa kvadrantnim stablom rastera sa slike 6.9

224

Slika 6.12: Sukcesivna podjela manjeg dijela rastera

Kvadrantna stabla se pohranjuju u strukturu podataka organizovanu u nivoe, kao stablo sa


korjenom u vrhu (nulti nivo). Za svaki vor grane postoje 4 sljedea vora koja
predstavljaju konstituirajue kvadrante. Homogeni kvadrant, za kojeg se ne zahtjeva dalja
kvadrantna podjela, se pohranjuje kao lisni vor. Lisni vorovi mogu imati atribute koji
su vezani za njih, kao to su kodna oznaka boje, ili mogu pokazivati (pokazivai) na
zapise sa detaljnijim informacijama u fajlu sa podacima. Neophodna je konvencija
redoslijeda vorova (sljedbenika), tako da se moe ustanoviti njihov poredak u zapisima,
na primjer NW, NE, SW i SE za svaki nivo stabla. Slika 6.13 prikazuje stablo koje
odgovara dijelu rastera na slici 6.12.

Slika 6.13: Kvadrantno stablo za dio rastera na slici 6.9

Struktura regionskog kvadrantnog stabla u potpunosti koristi prednost dvodimenzionalne


prirode rasterskih podataka, to nije sluaj za RLE kodiranje. Takoe, kvadrantna stabla
imaju promjenjivu adaptivnu rezoluciju, to omoguava istovremeno pohranjivanje
podataka razliitih nivoa detaljnosti u okviru pojedinih regiona.
Algoritmi za Boolove operacije kao to su unija, presjek i razlika rastera baziranih na
strukturi kvadrantnog stabla se mogu veoma lako programirati i primjeniti. Ovi algoritmi
su sposobni da iskoriste sve njene prednosti vezane za rekurziju i varijabilnu rezoluciju.
Isto vrijedi i za algoritme koji se odnose na operacije poput (d)oznaavanja (labeling) i
odreivanja broja povezanih komponenti u povrinskom prostornom objektu. Slika 6.14
prikazuje operacije komplementa, presjeka, unije i razlike primjenjene na dva prostorna
regiona Q i R u ravni.
Na primjer, algoritam za komplement kvadrantnog stabla predstavlja jednostavno
rekurzivno prolaenje stabla. Algoritam 6.4 prikazuje algoritam za komplement, baziran
na breadth-first (prvo po irini) algoritmu za prolaenje.

225

Slika 6.14: Komplement, presjek, unija i razlika kvadrantnog stabla .

Algoritam 6.4 je jednostavniji od breadth-first algoritma za prolaenje koji je opisan u


predhodnom poglavlju, jer struktura kvadrantnog stabla podrazumjeva da nije potrebno
uvati spisak posjeenih vorova (vidi sekciju 5.7.2).
Algoritam 6.4: Algoritam za traenje komplementarnog kvadrantnog stabla (breadth first traversal)

Algoritam 6.5: Algoritam za presjek kvadrantnog stabla (breadth first traversal - prolaenje prvo po irini)

226

Algoritam 6.5. predstavlja algoritam za konstruisanje kvadrantnog stabla S iz Boolovog


presjeka dva binarna kvadrantna stabla Q i R, i slian je algoritmu 6.4, koji predstavlja
algoritam sa prvim prolazom po irini za traenje komplementa (breadth-first
complement algorithm). Prilikom konstruisanja novog vora u S, algoritam 6.5 se mora
suoiti sa 4 sluaja:
Sluaj 1: Ako je q ili r (ili oboje) lisni vor koji predstavlja bijelu povrinu, onda je S
konstruisano sa bijelim lisnim vorom u poloaju q i r ( linije 5-6 u algoritmu
6.5).
Sluaj 2: Ako je q lisni vor koji predstavlja sivu povrinu onda je S formirano
koritenjem kopije od podstabla sa korijenom u r (linije 7-8).
Sluaj 3: Ako je r lisni vor koji predstavlja sivu povrinu onda je S formirano
koritenjem kopije od podstabla sa korijenom u q (linije 9-10).
Sluaj 4: Ako oba vora q i r nisu lisni vorovi, algoritam se primjenjuje rekurzivno na
podvorove od q i r, nakon kreiranja novog granskog vora (koji nije lisni) u S
(linije 11-14).
Ostali Boolovi operatori se mogu komponovati od operacija komplementa i presjeka,
koritenjem jednakosti poput De Morganovih zakona. Na primjer, QR=(Q'R')' i
Q\R=QR'.
Povezanost sa predhodnom sekcijom o dvodimenzionalnom ureenju je jasno izraena
slikom 6.15. Ukoliko je ahovski uzorak struktuiran kao kvadratno stablo, iji se lisni
vorovi itaju sa lijeva na desno, onda ovaj uzorak koji prati oznaenu putanju u ravni,
odgovara Mortonovom ureenju (poretku) u ravni.

Slika 6.15: Regionsko kvadrantno stablo sa lisnim vorovima u Mortonovom poretku

Kvadrantno stablo (quadtree) se moe lako generalizovati i za vie dimenzija. Na ovaj


nain bi u tri dimenzije imali oktantno stablo (octree), u kojem svaki granski vor ima
osam (23) sljedbenika.
Uprkos njenim jasnim kvalitetama, struktura regionskog kvadrantnog stabla je visoko
zavisna od geometrijske pojave prostornih objekata u rasterskom prostoru: mala
translacija ili rotacija objekta e obino rezultirati velikom promjenom u strukturi
kvadrantnog stabla.
Dinamiki skupovi rasterskih podataka koji su predmet stalnog auriranja su neefikasni
ukoliko su pohranjeni kao kvadrantno stablo, jer svaka njihova modifikacija moe
prouzrokovati ogromne promjene u strukturi stabla. Visoko nehomogeni rasteri, kao to

227

su promjenjivi ahovski uzorci (slika 6.15), nisu efikasni za smjetanje u kvadrantno


stablo, jer ne postoje homogeni regioni koji bi se mogli grupno pohraniti (pohranjivanje
se nebi moglo optimizirati, a epitet regionskog kvadrantnog stabla nebi imao smisla).
Rasteri koji su veim dijelom komponovani od taaka i linearnih elemenata takoe imaju
slabu efikasnost sa ovakvim nainom pohranjivanja.

6.4 Strukture takastih objekata


U ovom dijelu se razmatraju strukture podataka koje su posebno dizajnirane za takaste
objekte. Tri strukture koje se ovdje razmatraju su su grid (mreni) fajlovi, takasta
kvadrantna stabla i 2D stabla. Kao i obino, podrazumjeva se da su takasti objekti
locirani u ravni pomou dvije koordinate i da mogu imati pridruene razne druge
atributne vrijednosti.

6.4.1 Grid strukture


Kao uvod u grid strukture i veliku skupinu metoda koje lee iza njih, zapoeemo sa
fiksnom grid strukturom, koja omoguava primjenu metoda za binarno pretraivanje sa
vie od jedne dimenzije. Zatim emo predstaviti varijabilnu grid strukturu, koja
prevazilazi neke od nedostataka fiksne grid strukture. Pri ovome emo koristiti primjer
skupa podataka iz tabele 6.1 i slike 6.6.
Fiksna grid struktura
Fiksna grid ili fiksna elijska struktura predstavlja podjelu regije u ravni na elije
(particije) jednake veliine (odnosno kvadrate u naem primjeru). Paketi podataka sa
takastim lokacijama koje dijele istu eliju (particiju) grida su pohranjeni na bliskim
lokacijama u sekundarnoj memoriji. Uobiajen termin koji opisuje eliju u ovakvoj
strukturi je bucket (kontejner, kaika rovokopaa). Svaki bucket predstavlja fiziku
lokaciju u memoriji gdje se uvaju kompletni zapisi. Na ovaj nain mrena elijska
struktura je nain dijeljenja (razdjeljivanja, odnosno partikulacije) objekata koji su u
ravni referensirani takama tako da su atributi susjednih objekata pohranjeni na istoj ili
bliskim memorijskim lokacijama. Na ovaj nain su performanse upita nad ovako
struktuiranim podacima znatno poboljane.
Primjer fiksne grid strukture za skup takastih podataka je dat na slici 6.16. Region je
razdjeljen na 16 kvadrata, od kojih svaki sadri do dvije take. Granini konflikti su
rijeeni konvencijom da svaki kvadrat sadri take koje padaju na njegovu junu i
zapadnu granicu, a ne sadri one take koje padaju na preostale granice. Na ovaj nain
taka oznaena sa 6 pripada kvadratu koji sadri taku 7.
Idealna veliina podjele zavisi od najmanje dvije stvari. Prva predstavlja broj taaka koji
se razmatra. to je vei ukupan broj taaka, zahtjeva se vie elija (bucketi odgovaraju
blokovima sekundarne memorije koja moe sadrati samo ogranien broj zapisa). Druga
stvar je da veliina elije zavisi od veliine ranga zadatog u prosjenom upitu.
Slika 6.16 istovremeno ilustruje i glavnu manu fiksne grid metode. Naseljenost elija
takama varira, tako da u nekim elijama uope nema taaka. Ovaj problem postaje
bolniji za take sa manje uniformnom distribucijom. Ukoliko je distribucija isuvie
daleko od uniformne, pojavie se mnogo praznih elija, dok e opet neke elije biti

228

preplavljene takama. Umjesto ovoga, poeljno bi bilo da se prilikom partikulacije


(razdjeljivanja) takastih objekata u obzir uzme gustina taaka na pojedinim lokalitetima
(djelovima povrine) i da se ona na osnovu toga adaptira. Ovo nas vodi do slijedee
strukture, to jest do grid fajla (a kasnije i do takastog kvadrantnog stabla).
Ukoliko su take uniformno distribuirane, onda fiksna grid struktura obezbjeuje
jednostavno i lagano rjeenje za implementaciju. Fiksni grid je primjenjiv za bilo koji
broj dimenzija. On moe biti podesan za koritenje tile planarnog ureenja (na primjer,
Mortonov poredak) nad elijama grida.

Slika 6.16: Podjela fiksnog grida za skup takastih podataka (oznake se odnose na tabelu 6.1)

Grid fajl
Grid fajl predstavlja ekstenziju fiksne grid strukture koja omoguava proizvoljno
pozicioniranje vertikalnih i horizontalnih mrenih linija uzimajuu u obzir razmjetaj
taaka. Ova struktura je projektovana za dinamike podatke, koji se frekventno unose i
briu iz sistema. Ona podrazumjeva uvoenje novog upravljakog nivoa koji se zove grid
direktorij. Podaci vezani za elije grida mogu dijeliti isti bucket samo ako unija ovih
elija predstavlja pravougaonik. Slika 6.17 prikazuje primjer, u kojem se veliina bucketa
odnosi na dva zapisa (to je mnogo manje nego to je u stvarnoj primjeni). Ukupna
povrina je podjeljena mreom 3x3 elije. Dvije elije grida u jugozapadnoj regiji su
spojene u jedan bucket, jer je na toj lokaciji postojao rezervni bucket prostor to je
rezultiralo spajanjem u jedan pravougaonik. Grid direktorij (na slici gore, desno)
prikazuje povezanost izmeu elija i bucketa. Dva linearna razmjernika, dinamiki
aurirana, prikazuju poloaje particija.
elija grida je projektovana tako da se iri i skuplja kako se insertuju novi i briu
postojei podaci vezani za nju. Pravougaonik se moe dalje dijeliti ukoliko postane
prepun, odnosno elije se mogu spajati u sluaju da prostor postane suvie prazan. Moe
se iz primjera vidjeti, da je fiksna grid struktura sa 16 bucketa, reducirana na 8 bucketa u
grid fajl strukturi. Kao i fiksni grid, tako je i grid fajl projektovan za primjenu sa
promjenjivim brojem dimenzija.

229

Slika 6.17: Grid fajl struktura za takase podatke (oznake se odnose na tabelu 6.1)

6.4.2 Takasto kvadrantno stablo


Takasto kvadrantno stablo kombinuje pristup grid struktura sa viedimenzionalnom
generalizacijom stabla binarnog pretraivanja. Ono ima mnoge zajednike karakteristike
sa regionskim kvadrantnim stablom koje je ranije opisano u ovom poglavlju.
Podrazumjevajui kao i obino da se radi o planarnim podacima, svaki granski vor je
povezan sa podatkovnim zapisom sa lokacijom take i ima etiri sljedbenika (NW, NE,
SW i SE). Na ovaj nain, svaki podatkovni zapis ukljuuje dva polja za uvanje
koordinata, etiri polja za pokazivanje na etiri sljedbenika, i druga polja koja sadre
podatke povezane sa takom (na primjer, ime grada na tom poloaju). Ovo je prikazano
na slici 6.18.

Slika 6.18: Zapisi takastog kvadrantnog stabla i take za koje su povezani

Takasto kvadrantno stablo ima svojstvo da je poloaj svake podjele na kvadrante


centriran na podatkovnu taku, za razliku od regionskog kvadrantnog stabla u kojem je
kvadrant uvijek izdjeljen na etiri jednaka podkvadranta. Struktura podataka u kojoj su
poloaji podpodjela nezavisni od podatkovnih taaka se naziva trie strukturom, koja je u
suprotnosti sa strukturom stabla (tree) u kojoj su poloaji podpodjela zavisni. U ovom
smislu takasto kvadrantno stablo ima pravu strukturu stabla, jer je centar podpodjele na
etiri kvadranta uvijek u podatkovnoj taki.
Takasto kvadrantno stablo e se opisati kroz slijedei primjer. Razmotrimo ponovo
takaste podatke iz tabele 6.1 i sa slike 6.6. Pretpostavimo da su take uneene u indeks
kvadrantnog stabla po redoslijedu numerikog identifikatora. Prva taka (Newcastle
Museum) je smjetena u korijen stabla, a ravan je izdjeljena na etiri kvadranta kao na
slici 6.19a. Druga taka (Waterworld) se uporeuje sa korijenom (prvom takom). Ona
slijedi iza prve u pravcu sjeveroistoka i smjeta se u stablu kao NE (sekundarni)

230

sljedbenik korijena. (Podrazumjevamo uobiajen redoslijed kardinalnih pravaca, to jest


NW, NE, SW, SE).

Slika 6.19: Prve faze konstrukcije kvadrantnog stabla

Sjeveroistoni kvadrant ravni je podjeljen na etiri kvadranta (slika 6.19.b). Taka 3 se


slijedea smjeta u stablo. Ona se prvo poredi sa korijenom (SE), i poto nema daljih
vorova du SE grane, smjeta se kao SE sljedbenik take 1. Jugoistoni kvadrant ravni
je sada podjeljen na etiri kvadranta (slika 6.19c). Slijedea koja se procesira je taka 4.
Prvo se uporedi sa korijenom (SE), a onda sa takom 3, koja je SE sljedbenik korijena.
Kako nema daljih vorova za poreenje, taka 4 se smjeta kao SW sljedbenik take 3.
Odgovarajui kvadrant ravni je sada podjeljen na etiri nova kvadranta. Slika 6.19d
prikazuje umetanje taaka 4 i 5 u stablo i razultirajuu podpodjelu ravni. Slika 6.20
prikazuje potpuno kvadrantno stablo i planarnu podpodjelu za cijeli skup podataka.

Slika 6.20: Takasto kvadrantno stablo cijelog skupa podataka (oznake referiu na tabelu 6.1)

231

Algoritam 6.6 predstavlja proceduru za umetanje nove take p u kvadrantno stablo Q.


Prilikom svake iteracije, algoritam selektuje odgovarajuu granu kvadrantnog stabla
prema relativnom poloaju p i tekui vor n (linije 5-14). Algoritam iterira, sputajui se
kroz stablo, dok ne dostigne najnii njegov nivo, kada umee taku p i (njoj pripadajue)
prazno podstablo (linija 17).
Algoritam 6.6: Algoritam umetanja u kvadrantno stablo

Oblik kvadrantnog stabla je visoko zavisan od poretka kojim se take umeu u njega.
Slika 6.21 prikazuje kvadrantno stablo sa istim skupom podataka kao u predhodnom
primjeru, ali gdje su take umetane invertovanim redoslijedom brojeva, to jest od 14
prema 1. Ovakva zavisnost ima implikacije pri koritenju dinamikih podataka. Ukoliko
se taka koja je blizu vrha izbrie, rezultirajue stablo se moe bitno promjeniti. Zbog
ovoga, takasta kvadrantna stabla nisu naroito pogodna za dinamike skupove
geoprostornih podataka.
Mogu se dati i neke mjere kvalitata performansi takastog stabla. U ovom smislu, ako je
n broj taaka struktuiranih u takastom kvadrantnom stablu, onda je vrijeme formiranja
stabla proporcionalno ukupnoj duini putanje O(nlogn), a vrijeme izvravanja upita sa
takom je O(logn). Ovdje nismo prezentirali algoritme za upit sa rangom i upit sa takom
za ovu strukturu. Ove operacije e biti prikazane za 2D stablo iji opis slijedi, a koje se
mogu modificirati i za takasto kvadrantno stablo.

232

Slika 6.21: Takasto kvadrantno stablo sa inverznim umetanjem (oznake se odnose na tabelu 6.1)

6.4.3 2D stablo
Takasto kvadrantno stablo u potpunosti iskoritava prednosti predstavljanja taaka u
Euclidovoj ravni. Jedan od problema sa kojim se ova struktura suoava je
eksponencijalno poveanje broja sljedbenika granskih vorova prilikom poveanja
dimenzija prostora, gdje za k dimenzija, svaki vor ima 2k sljedbenika. 2D stablo (ili
openito kD stablo) rjeava ovaj problem po cijenu dubine strukture stabla. kD stablo je
uvijek binarno stablo (svaki granski vor ima dva sljedbenika) bez obzira na broj
dimenzija prostora (k).
Za planarni sluaj, 2D stablo ne uporeuje take po obje dimenzije za sve dubine, nego
po x-koordinati za neparne dubine, a po y-koordinati za parne dubine (uzimajui da se
korijen nalazi na dubini 0). Svaki zapis sa lokacijom take ima dva polja sa pohranjenim
koordinatama take, dva polja koja pokazuju na sljedbenike zapise, i ostala polja koja
sadre ostale atribute. Za binarnu strukturu stabla uspostavljamo konvenciju da je lijevi
sljedbenik manji od desnog, gledajui po odgovarajuoj koordinati (vidi sliku 6.22).

Slika 6.22: Zapisi 2D stabla i take za koje su vezani

233

Na slici 6.23 je prikazano 2D stablo i planarna dekompozicija za skup taaka iz


predhodnog primjera, koje su umetnute redoslijedom po brojnoj vrijednosti. Taka 1 je
umetnuta kao korijen. Taka 2 ima veu x koordinatu od take 1 i zbog toga je umetnuta
kao desni sljedbenik korijena. Taka 3 ima veu x koordinatu od take 1, a manju y
koordinatu od take 2 i zbog toga je umetnuta kao lijevi sljedbenik take 2. Postupak se
nastavlja za svaku od 14 taaka. Kao to je to bio sluaj sa takastim kvadrantnim
stablima, i ovde koritenje dinamikih podataka dovodi do problema u restruktuiranju
stabla. Meutim, 2D stablo je jednostavnija struktura i samim tim pouzdanija u ovom
smislu.

Slika 6.23: 2D stablo skupa taaka iz tabele 6.1

Algoritam 6.7 predstavlja modificiranu verziju algoritma 6.6 za umetanje nove take p u
2D stablo T. Algoritam mora uvati trak o nivou l tekueg vora n da bi obezbjedio da je
primjenjena ispravna provjera (linije 6-11).
Algoritam 6.7: Algoritam za umetanje u 2D stablo

234

Algoritam 6.8 se koristi za rangovno pretraivanje 2D stabla T koritenjem pravougaonog


ranga traenja koji je specificiran pomou dijagonalnih taaka p1 (jugozapadna ekstrmna
taka) i p2 (sjeveroistona ekstremna taka). Pretraivanje po rangu u algoritmu 5.7 je
bazirano na prolaenju stabla prvo po irini: ukoliko pravougaoni rang sadri svaku taku
u 2D stablu, onda algoritam 6.8 jednostavno izvrava prolaenje cjelokupnog stabla prvo
po irini.
Algoritam 6.8: Algoritam za rangovni upit u 2D stablu

Slika 6.24 prikazuje primjer izvravanja algoritma nad podacima (takama) iz prethodnog
primjera u 2D stablu. Pravougaoni rang je prikazan sa isprekidanom linijom.

Slika 6.24: Rangovno traenje u 2D stablu (oznake se odnose na tabelu 6.1)

235

Pretraivanje zapoinje sa takom 1 u korijenu stabla. Ova taka ne pada u pravougaonik,


tako da ona nije pozivana (algoritam 6.8, linija 6). Taka 1 zauzima neparan nivo u
stablu, tako da se uporeuju x koordinate take 1 i ekstremnih taaka p1 i p2
pravougaonog ranga po kojem se vri pretraivanje (linije 8-9). X koordinata take p1 je
vea od x koordinate take 1, tako da lijevo podstablo take 1 nije ispitano (linije 12-13).
U svakom sluaju, ovo podstablo je nula (prazno). Meutim, x koordinata take 1 je
manja od x koordinate take p2, tako da je desno podstablo take ispitano (linije 14-15).
Algoritam je primjenjen na korijen ovog podstabla, odnosno na taku 2. Taka 2 je unutar
pravougaonika pretraivanja, tako da je pozvan njen zapis (linije 6-7). Njeno lijevo i
desno stablo su takoe pretraeni. Algoritam se na ovaj nain dalje rekurzivno
primjenjuje do dna stabla. Slika prikazuje samo dio stabla koje je ispitano direktno
pomou algoritma. Uitane (pozvane) su take 2, 7, 8, 9 i 11 (na slici su zaokruene).
Kao i kod takastog kvadrantnog stabla, tako se i kod 2D stabla javljaju problemi zbog
zavisnosti njegove strukture od redoslijeda po kojem se take umeu. U najgorem
sluaju, umetanje svake take e rezultirati daljim dodavanjem nivoa u stablo, tako da e
broj nivoa odgovarati broju taaka u stablu.

6.5 Linearni objekti


Prostorne strukture podataka, koje su opisane, primjenjuju se za take i rasterske
povrine. U ovom dijelu e se predstaviti indeks koji se koristi za vektorske linijske
strukure, poput polilinija, linijskih mrea, ili granica povrinskih objekata. Za linijske
objekte, najpriblinija struktura koja odgovara bi bila regionska struktura kvadrantnog
stabla, podrazumjevajui da su linijski objekti veoma tanki regioni. Naalost, bez
modifikacije, regionsko kvadrantno stablo obino ne odgovara ovoj namjeni, jer koristi
isuvie memorijskog prostora i rezultira nepotrebnom dubinom strukture stabla. Umjesto
ovoga, koriste se PM kvadrantna stabla, to jest reprezentacije za pologonalne karte
(Poligonal Maps), koje ideju regionskog kvadrantnog stabla prilagoava potrebi
pohranjivanja linearnih objekata.

6.5.1 PM kvadrantna stabla


PM kvadrantno stablo predstavlja varijantu regionskog kvadrantnog stabla specijalno
dizajniranog za struktuiranje poligonalnih objekata. Postoji vie tipova PM kvadrantnog
stabla koji ukljuuju PM1, PM2 i PM3 kvadrantno stablo. Opisaemo PM1 kvadrantno
stablo, koje se moe formulisati u okviru ope postavke planarne mree vorova i
stranica (predstavljenih pravolinijskim segmentima). Pretpostavimo da je ovakva mrea
vorova i stranica sadrana u kvadratnom regionu kvadrantnog stabla u ravni. Region je
izdjeljen u kvadrante kao kod regionskog kvadrantnog stabla (to jest, kao trie
subpodjela). Subpodjela je takva da su vorovi i stranice razdvojeni u razliite lisne
vorove. Preciznije, region je izdjeljen u minimalan broj kvadranata, subkvadranata, itd.,
takvih da kvadrantno stablo zadovoljava slijedee uslove:
1. Svaki lisni vor kvadrantnog stabla predstavlja region koji sadri najvie jedan
vor mree.

236

2. Ukoliko lisni vor kvadrantnog stabla predstavlja region koji sadri jedan vor
mree, onda on ne moe sadrati nijedan dio stranice mree ukoliko stranica nije
incident sa tim vorom.
3. Ukoliko lisni vor kvadrantnog stabla predstavlja region koji ne sadri nijedan
vor mree, onda on moe sadravati samo jedan dio stranice od mree.
Slika 6.25 prikazuje djeliminu konstrukciju PM1 kvadrantnog stabla za granicu
rasterskog regiona sa slike 6.9, nakon to su napravljene prve dvije podpodjele. U prvoj
fazi (priakazanoj na slici 6.25a), naglaeni (sivi) kvadrant je primjer naruavanja prvog
uslova, i zbog toga se mora primjeniti dalja podpodjela. U slijedeoj fazi, na slici 6.25b,
naglaeni kvadrant naruava drugi uslov. Da bi bio vidljiv, uvean je sa faktorom 2. Na
slici 6.25c, naglaeni kvadrant (uvean sa faktorom 4) naruava uslov 3, tako da se
zahtjeva dalja podpodjela. Slika 6.26 prikazuje konano kvadrantno stablo, u kojem su
zadovoljeni svi uslovi za sve elije.

a.

b.
Slika 6.25: Faze u konstrukciji PM1 kvadrantnog stabla

Slika 6.26: Konaana faza konstrukcije M1 kvadrantnog stabla

237

c.

Struktuiranje zapisa u PM1 kvadrantnom stablu omoguava razliite strukture polja za


vorove i za stranice. U stvari, u voru kvadrantnog stabla nisu pohranjene sve stranice,
nego dijelovi stranica koje su isjeene pomou odgovarajuih subkvadranata (koje se
zovu q-stranice).
Kada se stranica umee u PM1 kvadrantno stablo, u njemu se trae odgovarajua mjesta
za umetanje djelova ove stranice. Sputajui se kroz nivoe stabla, stranica je sve vie
isjeena granicama subkvadranata. Kod brisanja je slian, ali inverzan proces.
PM2 i PM3 kvadrantna stabla su varijante PM1 kvadrantnog stabla, kod kojih su gdje su
ogranienja neto promjenjena, da bi se obezbjedile prednosti pod odreenim uslovima.
PM2 kvadrantno stablo ima strukturu koja je stabilnija prilikom translacije i rotacije
planarnog grafa. I PM2 i PM3 kvadrantna stabla imaju manju strukturu stabla, ali sloenije
zapise.

6.6 Kolekcije objekata


U prostornim bazama podataka se javlja veoma esta potreba za struktuiranjem velike
kolekcije objekata uz obezbjeenje dobrih performansi za upite sa takom i rangom (za
pozivanje objekata lociranih datom takom ili unutar datog ranga).
Ve smo vidjeli primjere takvih struktura u sluaju kada se kolekcija sastoji samo od
taaka (takasto kvadrantno stablo i 2D stablo). Sada e se predstaviti i neke od struktura
dizajniranih za indeksiranje kolekcija koje sadre openitije klase objekata, poput
pravougaonika, poligona i kompleksnih prostornih objekata. Ovde e se predstaviti
nekoliko takvih indeksa. Vaan indeks za intervalski bazirane podatke, koji se zove
segmentno stablo, e se diskutovati u kontekstu vremenskih indeksa u kasnijem izlaganju
(u okviru desetog poglavlja).
Indeksi za kompleksne prostorne objekte. Veliki broj raznih stuktura stabala su se godinama
razvijali za kompleksne vektorski bazirane prostorne podatke. Jedan od najranijih primjera,
stablo polja (Frank i Barrera, 1989.), se ostvaruje preko kolekcije pravilnih ortogonalnih mrea
u ravni za indeksiranje kompleksnih vektorski baziranih objekata (polilinija i poligona). Ove
mree imaju razliite rezolucije i razmjetaje. Svaka elija mree igra ulogu kontejnera za
objekte. Objekat se moe umetnuti u eliju mree ukoliko on ne prelazi preko granica elije i za
kojeg nepostoji finije izdjeljena mrea u koju se on moe smjestiti. elijsko stablo (Gnther,
1988.) je drugaija struktura dizajnirana da bi poboljala efikasnost uitavanja poligonih
objekata. Kao i sa R+ stablom, prostor je hijerarhijski izdjeljen u nepreklapajue regione.
Meutim, dok R i R+
stabla struktuiraju objekte sadrane u njihovim MBB-ovima (najmanji obuhvatni pravougaonik),
listovi elijskog stabla sadre konveksne poligone (poliedre u sluaju veeg broja dimenzija).
Proizvoljnim poligonima se moe rukovati dekomponirajui ih u uniju konveksnih poligona.
BANG fajl (Freeston, 1989.) je druga indeksna struktura slina B-stablu i R+ stablima. Freeston
(1993.) adaptira BANG fajl strukturu za indeksiranje ugnjeenih objekata sa granicama koje se
ne presjecaju. Problem koji prati ugnjeene objekte je da se za njih nemoe konstruisati linija
kojom bi se jedan objekat odvojio od ostatka paketa.

238

6.6.1 Pravougaonici i najmanji obuhvatni pravougaonici (MBB-ovi)


Potreba za efikasnim indeksima za pravougaonike se ogleda u svojstvu da se
pravougaonici mogu koristiti za aproksimativno ograniavanje planarnih prostornih
objekata. Svaki geometrijski objekat se moe obuhvatiti svojim MBB-om (najmanjim
obuhvatnim pravougaonikom). Slika 6.27 prikazuje jednostavan poligon sa svojim MBBom. Efikasno indeksiranje MBB-ova olakava upite nad samim objektima.

Slika 6.27: Najmanji obuhvatni pravougaonik (isprekidana linija) za jednostavan poligon

Obino se MBB pohranjuje odvojeno od detaljne geometrije obuhvaenog objekta, na


primjer, u formi kvadrantnog stabla. Geometrija obuhvaenog objekta se referensira
preko zapisa povezanog sa njegovim MBB-om (obuhvatnim pravougaonikom). Prednost
koritenja MBB-a je da se na neke upite moe jednostavno odgovoriti procesiranjem
MBB-a, a ne uitavanjem cijelog obuhvaenog objekta. Na primjer, razmotrimo upit sa
rangom: Pronai sve objekte koji potpuno lee unutar specificiranog kruga, koji je
primjenjen na objekte prikazane na slici 6.28.

Slika 6.28: Koritenje najmanjeg obuhvatnog pravougaonika za upit sa rangom

Da bi se odgovorilo na upit, potrebni su slijedei koraci:

239

1. Identificirati sve MBB-ove koji u cijelosti lee unutar zadatog krunog ranga.
Objekti unutar ovih obuhvatnih pravougaonika takoe u cijelosti lee u zadatom
krugu i bie pozvani (uitani). Slika 6.27 prikazuje ovaj sluaj primjenjen na
objekat A. Sa druge strane, MBB od objekta E lei u cijelosti izvan ranga i nee
se dalje razmatrati.
2. Identificirati sve MBB-ove koji se sjeku, ali ne lee u cijelosti unutar zadatog
krunog ranga. Objekti unutar ovih MBB-ova mogu, a ne moraju leati u cijelosti
u krugu. U ovim sluajevima, zahtjeva se dalji proraun nad detaljnom
geometrijom svakog objekta, kako bi se odredilo da li objekat lei u cijelosti
unutar zadatog ranga. Na slici 6.28, objekat B (u cijelosti unutar kruga) bi se
trebao pozvati, dok objekti C (djelomino u krugu) i D (u cijelosti izvan kruga) se
nebi trebali pozvati.

6.6.2 R stabla i R+ stabla


Poto je utvreno da MBB moe biti koristan deskriptor geometrijske mjere, slijedee to
je vano je iznai naine indeksiranja ovih pravougaonika. R stablo je korijensko (rooted)
stablo u kojem svaki vor predstavlja pravougaonik. Lisni vorovi predstavljaju
kontejnere za aktuelne pravougaonike koje treba indeksirati. Svaki vor vieg nivoa
predstavlja najmanji pravougaonik koji sadri pravougaonike predstavljene od svojih
vorova sljebenika. Pravougaonici se na svakom datom nivou mogu meusobno
preklapati.
R stablo je vana multidimenzionalna ekstenzija B-stabla (sekcija 6.1.4), gdje je za
dvodimenzionalni sluaj obuhvatni pravougaonik definisan parom taaka. R stablo
predstavlja dinamiku strukturu, konstruisanu na slian nain kao B stablo. Poto se
pravougaonici umetnu u strukturu, i lisni vorovi postanu popunjeni, efekti se propagiraju
kroz vorove stabla, tako da stablo raste. U obrnutom sluaju, kad se pravougaonici
izbace iz kolekcije stablo se skuplja. irom svoje strukture stablo ostaje balansirano i
uvijek je u najmanjem upola popunjeno.
Primarno pitanje koje se ovde postavlja je kako izdjeliti prostor pravogaonika u grupe
(predstavljene vorovima vieg novoa) prilikom irenja kolekcije pravougaonika, i
obrnuto, kako sjediniti ove grupe prilikom saimanja kolekcije. Optimalna podpodjela bi
trebala minimizirati ukupnu povrinu obuhvatnih pravougaonika i minimizirati povrinu
njihovog meusobnog preklapanja. Slika 6.29 prikazuje primjer podpodjele i
jednostavnog R-stabla za skup MBB-ova za primjer dat na slici 1.2. Pretpostavili smo
omjer irenja stabla (fan-out ratio) 2, tako da svaki vor moe sadravati najvie dva
pravougaonika i na taj nain ima najvie dva sljedbenika.
Problem sa strukturom R-stabla je uzrokovan preklapanjem obuhvatnih pravougaonika,
posebno za pravougaonike koji su vei u odnosu na ukupan prostor. Pretraivanje po
taki i rangu e biti neefikasno ukoliko se traenje objekta mora provoditi kroz mnogo
razliitih podstabala, ak iako je objekat pohranjen u samo jednom od njih.

240

Slika 6.29: Struktura R-stabla za najmanje obuhvatne pravougaonike gradova oblasti Potterie

R+-stablo je profinjeni oblik R-stabla koji ne dozvoljava preklapanje pravougaonika


vezanih sa granskim vorovima, iako to naravno ne moe stvoriti prevenciju od
preklapanja lisnih pravougaonika. Ovo se postie dijeljenjem pravougaonika i
pohranjivanjem ovih dijelova u razliite vorove u stablu. Studije su pokazale da je na
ovaj nain omogueno bolje i efikasnije traenje objekata koji su veliki. Meutim, iako
R+-stablo poboljava efikasnost upita sa takom i rangom, ono zahtjeva i kompleksnije
algoritme za umetanje i brisanje, koji treba da obezbjede efikasno koritenje prostora na
disku, i da osiguraju da je stablo uvijek najmanje upola popunjeno.
Na slici 6.30 je prikazan primjer struktuiranja sa R+-stablom. Poredivi sa slikom 6.29, X
je proiren na dio N pravougaonika, koji je prije bio obuhvaen sa Y.

Slika 6.30: Struktura R+-stabla za najmanje obuhvatne pravougaonike gradova u oblasti Potterie

241

6.6.3 BSP-stablo
Stablo binarnog dijeljenja prostora (BSP, binary space partitioning) je binarno stablo
koje hijerarhijski dekomponuje ravan u poligonalne regione. BSP-stablo je iroko
koriteno u raunarskim igricama sa perspektivom u prvom licu, jer predstavlja veoma
brz indeks za pretraivanje i sortiranje poligona prostorne okoline kroz koju igrai
navode svoje likove. BSP stabla mogu biti proirena na n-dimenzionalni prostor. Za dvije
dimenzije, BSP stablo hijerarhijski struktuira skupove usmjerenih linijskih segmenata. Za
dati niz usmjerenih linijskih segmenata s1, s2, ..., sn u ravni, konstrukcija
dvodimenzionalnog BSP stabla se ostvaruje na slijedei nain:
1. Smjesti segment s1 u korijen stabla.
2. Produi segment s1 u oba smjera za formiranje beskonane usmjerene linije l1.
Ukoliko se bilo koji drugi segment u nizu sijee sa l1, onda zamjeni taj segment sa
dva segmenta, uzimajui u obzir presjek.
3. Ispitaj slijedei segment, recimo s'2 u ovom (mogue revidiranom) nizu. Odredi
da li je s'2 sa lijeva ili desna od l1 i smjesti s'2 u stablo kao lijevog, odnosno
desnog sljedbenika od s1.
4. Produi segment s'2 u oba smjera ili beskonano ili do njegovih presjeka sa l1 da
bi se formirala usmjerena linija l2. Ukoliko je bilo koji drugi segment u nizu
presijeen sa l2, onda zamjeni taj segment sa dva segmenta uzimajui u obzir
presjek.
5. Nastavi na ovaj nain sve dok se svaki linijski segment ne doda u stablo.
Primjer ove konstrukcije je dat na slici 6.31. Poetni niz segmenata je a, b, c, d, e, f, g kao
to je prikazano na slici 6.31a. Segment a je postao korijen BSP stabla, a linija povezana
sa njim (prikazana isprekidano) presjeca segment e na dio e1 i e2. Segment b je procesiran
na slijedei nain: on pada na lijevu stranu od a i na taj nain postaje lijevi sljedbenik od
a u stablu. Proces se nastavlja, dijelei ravan dalje (kao to je prikazano na slici 6.31b),
odnosno irei stablo (kao to je prikazano na slici 6.31c).

Slika 6.31: Konstrukcija BSP-stabla iz kolekcije usmjerenih linijskih segmenata

242

Balansirana struktura stabla rezultira minimalnom dubinom za listove i efikasnim


pretraivanjem stabla. Kao to je prikazano na slici, BSP stablo moe biti i nebalansirano.
Struktura stabla je zavisna od poretka (redoslijeda) umetanja segmenata. Mogui su i
takvi sluajevi, kada su ivice konveksnog poligona sa svim svojim segmentima
orijentisane u istom smjeru, gdje ne postoji ureenje (redoslijed) vorova koji rezultiraju
u balansiranom stablu. Takoe, faktor koji utie na efikasnost pretraivanja i uitavanja je
i broj napravljenih ivinih presjeka. to je vie ivinih presjeka, to je vie i vorova u
BSP-stablu.

6.7 Strukture sfernih podataka


Ovo poglavlje se zavrava sa strukturama sfernih podataka. Sferna teselacija obezbjeuje
bolju aproksimaciju Zemljine povri od planarnih modela (kod veih posmatranih
povrina). U petom poglavlju su predstavljene neke pravilne sferne teselacije.
Oktaedarska teselacija opisana u sekciji 5.4.6 je konvencionalna vie od svih ostalih,
poto je to jedina pravilna sferna teselacija koja moe biti orijentisana sa dva vora na
polovima i skupom ivica na ekvatoru.
Kvaternalna triangulaciona mrea (QTM) rekurzivno aproksimira lokacije na povrini
sfere pomou ugnjeene kolekcije jednakostraninih trouglova. Poseban sluaj QTM
strukture nastaje centralnom projekcijom ivica oktaedra na povrinu globusa, koji se
naziva upisanim oktaedrom (na slici 6.32a, slino kao na slici 5.22). Inicijalnih 8 povri
se moe dalje podijeliti (slika 6.32b i 6.32c) tako da se vorovi svakog trougla povezuju
lukovima velikih krugova.

Slika 6.32: Inicijalni nivoi QTM-a bazirani na upisano oktaedru

Zbog jednostavnijeg opisa, svaka povr upisanog oktaedra se moe prikazati planarnim
istostraninim trouglom, koji se moe rekurzivno podijeliti na nain prikazan na slici
6.33. Na prvom nivou podjele (slika 6.33a), vorovi trougla su oznaeni sa 1, 2 i 3.
Trougao je izdjeljen kao na prikazu na etiri jednakostranina trougla. Svaki podtrougao
je oznaen saglasno oznaci vora koji mu je najblii, osim unutranjeg podtrougla koji je
oznaen nulom.
Na drugom nivou podjele (slika 6.33b), neoznaeni vorovi triju podtrouglova sa slike
6.33a su oznaeni tako da svaka ivica sadri oznake 1, 2 i 3 (po nekom konvencionalnom
redoslijedu). Svaki podtrougao se sada dalje dijeli na etiri nova. Svaki podpodtrougao se
onda oznaava sa dvije cifre: lijeva cifra je oznaka trougla prvog nivoa kojem on pripada,

243

dok je desna cifra oznaka vora koji mu je najblii. Opet, trougao koji je najvie unutra (u
sreditu) dobija za desnu cifru nulu. Ovaj proces se nastavlja za slijedee nivoe koliko je
to potrebno (zavisno od traene preciznosti).

Slika 6.33: Dva nivoa QTM numerisanja elija (podebljani brojevi izvan trougla indiciraju emu
oznaavanja)

QTM se inae moe koristiti i kao triangulaciona verzija regionskog kvadrantnog stabla.
Primjer njegovog koritenja je dat na slici 6.34, gdje je region dekomponovan u svoje
maksimalne triangularne dijelove.

Slika 6.34: QTM regionsko kvadrantno stablo

U tradicionalnom pravougaonom regionskom kvadrantnom stablu, svaki vor ima etiri


sljedbenika, koji odgovaraju NW, NE, SW i SE podregionima predstavljenim svojim
vorovima sljedbenicima. Na slian nain, sa QTM regionskim kvadrantnim stablom,
svaki vor ima etiri podvora, koji odgovaraju podtrouglovima oznaenim sa 0, 1, 2 i 3.
Poput tradicionalnog regionskog kvadrantnog stabla, i QTM regionsko kvadrantno stablo
predstavlja trie strukturu.
Takoe, izvedive su triangulacione verzije i drugih standardnih struktura kvadrantnog
stabla (na primjer, triangulaciono takasto kvadrantno stablo koje je dole opisano). Ipak,
odreivanje koji trougao sadri taku je mnogo zahtjevniji raunarski posao nego to je

244

odgovarajua operacija kod takastog kvadrantnog stabla (odreivanje koji pravougaonik


sadri taku), tako da ovakav pristup uglavnom predstavlja kuriozitet.
Triangulaciono takasto kvadrantno stablo. QTM konstrukcija vodi do triangulacionih verzija
drugih standardnih struktura kvadrantnog stabla. Na primjer, moe se razmotriti triangulaciona
verzija takastog kvadrantnog stabla, kao to je prikazano na slici lijevo ispod. Triangulacioni
okvir abc okruuje podatkovne take. Ove take su umetnute u triangulacioni okvir u poretku 1, 2,
3, ... kao to je oznaeno. Prvo umetanje rezultira podjelom trougla na tri podtrougla sa
konzistentnim oznaavanjem ovih podtrouglova, kao to je prikazano. Dalje umetanje stvara
dalju podjelu. Stablo koje odgovara ovoj konstrukciji je prikazano s desne strane. Prednost ove
strukture nad standardnim takastim kvadrantnim stablom je u tome to svaki vor ima samo tri
sljedbenika, a ne etiri.

Ilustracija triangularne verzije takastog kvadrantnog stabla i njemu odgovarajueg stabla

245

246

7
7 Arhitekture
Kratak pregled
Arhitekturu informacionog sistema (IS-a) ini struktura i organizacija komponenata od
kojih se sistem sastoji. Dvije osnovne karakteristike raunarski bazirane arhitekture IS-a
su njegov nivo interoperabilnosti (sposobnost razmjene podataka, informacija i
procesiranja) i modularnost (mjera do koje je sistem sastavljen od nezavisnih jedinica sa
jasno definisanim funkcijama). Distribuirane arhitekture su esto koritene da bi se
dostigli visoki nivoi interoperabilnosti i modularnosti kod razliitih tipova sistema, koji
ukljuuju GIS, baze podataka i lokacijski bazirane servise.
Modeli podataka, strukture i metode pristupa koji su diskutovani u ranijim poglavljima su
fundamentalni za efikasno skladitenje i analizu geoprostornih podataka. Meutim, ovo
nisu jedini vani predmeti za razmatranje u smislu GIS-a: cjelokupna struktura i
organizacija razliitih dijelova sistema, naznaena kao arhitektura sistema, je takoe
veoma vana. Modularnost i interoperabilnost su dvije vane karakteristike po kojima se
mogu razlikovati pojedine GIS arhitekture.
Modularnost je mjera koja pokazuje do kojeg stepena neki informacioni sistem moe biti
konstituisan (sastavljen) od nezavisnih softwareskih jedinica (modula) sa
standardizovanim i jasno definisanim funkcijama. Modularan pristup omoguava da
(kompleksan) GIS software bude jednostavniji za razvoj, odravanje i adaptaciju, kako bi
to bolje zadovoljio zahtjeve pojedinih korisnika ili specifinosti iz oblasti njegove
primjene. Interoperabilnost je sposobnost dvaju ili vie informacionih sistema da djele
podatke, informacije i mogunosti procesiranja. Interoperabilnost je posebno vana za
korisnike GIS-a, poto se geoprostorna analiza esto izvodi nad integrisanim podacima iz
razliitih izvora. Planiranje lokacije za novi supermarket, na primjer, zahtjeva sposobnost
integrisanja geoprostornih podataka (kao to su lokacije konkurentnih objekata,
transportna infrastruktura ili gustina populacije) iz razliitih izvora.
Kroz ovo poglavlje se istrauju aktuelne promjene, tekui trendovi i budui pravci u
razvoju GIS arhitektura, sa fokusom na interoperabilnost i modularnost razliitih tipova
arhitekture. Poglavlje poinje sa nezavisnim pregledom modularnosti i interoperabilnosti.
Na poetku se istrauju tri osnovne GIS arhitekture sa razliitim svojstvenim
karakteristikama modularnosti. Dalje se opisuju potekoe koje se javljaju i objanjava
uloga mrea u interoperabilnosti GIS arhitektura. Daje se pregled kljunih sistemskih
arhitektura koritenih u GIS-u za dostizanje visokog nivoa interoperabilnosti i
modularnosti. Nakon toga se u narednoj sekciji predstavlja glavna oblast primjene
interoperabilnog umreenog raunarskog sistema, odnosno distribuirana baza podataka.

247

I konano se istrauju vanost i uticaj sve vie koritenih lokacijski svjesnih raunarskih
ureaja na razvoj GIS arhitektura.

7.1 Hibridne, integrisane i sastavljive (kompozitne) arhitekture


Hibridna GIS arhitektura upravlja geoprostornim podacima neovisno od neprostornih
podataka koristei drugaiji (grafiki) softwarski modul za to. Slika 7.1 ematski
prikazuje hibridnu arhitekturu. Na jedan nain se upravlja geometrijskim i topolokim
mehanizmima, a na drugi sadrajem neprostornih podataka. Na lijevoj strani slike 7.1 je
prezentirana geometrija zemljine parcele zajedno sa topolokim relacijama (npr.
susjedstvo sa okolnim parcelama), a na desnoj strani ime vlasnika, adresa i ostale
atributne informacije (u tabelama). Hibridni sistem je zasnovan na georelacionom
modelu, u kojem su prostorni podaci pohranjeni u skup sistemskih fajlova, a neprostorni
podaci su pohranjeni u relacionoj bazi podataka. Prostorni i neprostorni podaci su
povezani jedni sa drugima koritenjem skupa zajednikih kljueva, koji povezuju zapise
u prostornim fajlovima za zapisima iz neprostorne relacione baze podataka.
Hibridni GIS. Jedan primjer rane hibridne GIS arhitekture bazirane na georelacionom modelu je
ArcInfo, proizveden od ESRI (Environmental System Research Institute). U prvim ArcInfo
sistemima, Arc je bio mehanizam za grafike i prostorne podatke, dok je Info bio neprostorna
baza podataka. Skorije ESRI GIS arhitekture nisu tako jednostavne, i mogu biti koritene sa
razliitim prostornim DB arhitekturama. Svakako, evidentna vanost hibridne arhitekture i
georelacionog modela se jo uvijek moe vidjeti kod ESRI shapefile formata, esto koritenog za
pohranjivanje i transfer geoprostornih podataka. Shapefile format se sastoji od 3 separatna fajla,
od kojih je jedan za smjetanje geometrije (.shp fajl), drugi za smjetanje tabela sa neprostornim
podacima (.dbf fajl) i trei za smjetanje indeksa potrebnih za vezu izmeu geometrije i zapisa u
tabeli (.shx fajl).

Slika 7.1: Hibridna GIS arhitektura

Primarna motivacija za koritenje hibridne arhitekture je njena modularnost. Posebni


modeli i strukture potrebne za smjetanje i procesiranje prostornih podataka, koji su
ranije pomenuti, esto zahtjevaju posebne softwareske tehnike kao i strategije upravljanja
bazama podataka. Koritenje hibridnih arhitekura ima praktinu prednost to omoguava
248

nezavisnu optimizaciju performansi prostornog i neprostornog modula za upravljanje


podacima. Meutim, modularnost hibridne arhitekture ima i svoju cijenu. Odvajanje
prostornih od neprostornih podataka u hibridnoj arhitekturi, ini odravanje integriteta,
sigurnosti i pouzdanosti baze podataka teim. Problem lei u odvojenom skladitenju
prostornih i neprostornih podataka sa separatnim modulima, gdje u stvari oba modula
obezbjeuju vrlo sline funkcije, ali za razliite tipove podataka.
Kao rezultat, mnogi GIS-ovi koriste integrisanu arhitekturu, gdje su svi podaci, i
prostorni i neprostorni, pohranjeni u jednu istu bazu podataka (slika 7.2). Objektno
orjentisane baze podataka su idealne za integrisane GIS arhitekture, jer objekti u objektno
orijentisanoj bazi podataka mogu biti i prostorno i neprostorno referensirani. Integrisane
objektno orjentisane baze podataka mogu dostii visok nivo modularnosti, poto su
individualni objekti u sutini moduli, koji mogu obezbjediti funkcije integriteta,
sigurnosti i pouzdanosti podataka. Integrisani GIS moe takoe biti konstruisan
koritenjem tehnologije relacionih baza podataka. U prolosti, za integrisane relacione
arhitekture su bili vezani i problemi sa performansama. Meutim, normalizacija tabela u
relacionoj bazi podataka ne mora u tom smislu biti zadovoljavajue rjeenje i za
prostorne podatke. Veliki broj relacionih pristupa i veza (joins) su neophodni za
rekonstrukciju prostornih objekata (take su vezane za polilinije, koje su opet vezane za
poligone) i konekciju prostornih objekata sa neprostornim atributima. Praktino se zbog
toga mnogi komercijalni GIS softwareski proizvodi oslanjaju na objektno-relacionu DB
tehnologiju, koja direktno podrava geometrijske tipove podataka, kao to su take,
polilinije i poligoni, kao i na specijalizirane mehanizme indeksiranja koji se nude za
prostorne podatke, poput kvadrantnih i R-stabala (quadtrees i R-trees).

Slika 7.2: Integrisana GIS arhitektura

Modularnost je vaan faktor ne samo u arhitekturi GIS baze podataka nego i za


cjelokupnu GIS arhitekturu. Komponenta je softwarski modul koji koristi standardiziran
mehanizam za interakciju sa drugim softwareskim modulima. Kao rezultat ove
standardizacije, pomou softwarskih komponenti se mogu brzo sastavljati veoma
kompleksne softwarske aplikacije. U ovom smislu, komponente u softwareskom
inenjeringu su veoma sline komponentama u mainstvu. Mehanike komponente, kao

249

to su tokovi, pedale i sjedita, se pojavljuju u razliitim konfiguracijama i


kombinacijama u cijelom rangu mainskih proizvoda poput bicikla, tricikla, tandema i
slino. Na isti nain softwareske aplikacije mogu biti izgraene od viestrukih razliitih
softwareskih komponenti. Ovakva softwareska aplikacija predstavlja jedan sastavljivi
(kompozitni) sistem. Proces izrade softwareske aplikacije koritenjem komponenata se
ponekad naziva mega-programiranjem.
Slika 7.3 prikazuje kompozitnu GIS arhitekturu koja se sastoji iz 4 komponente:
komponenta za skladitenje podataka, komponenta korisnikog interface-a, komponenta
za mrenu (graf) analizu i komponenta za digitalne komunikacije. U ovakvoj
kompozitnoj arhitekturi, mogu se po zahtjevu dodavati i druge komponente, kao to su
komponente za naprednu prostornu analizu, ili specijalizirane komponente za kartografiju
i vizualizaciju.

Slika 7.3: Kompozitna GIS arhitektura

7.2 Sintaksna i semantika heterogenost


Sposobnost razmjene, diobe i integracije geoprostonih podatak, koji potiu iz razliitih
izvora, predstavlja fundamentalnu funkcionalnost svake GIS arhitekture. Postoje dvije
glavne prepreke za dijeljenje podataka, koje svaki interoperabilni sistem mora prevazii:
sintaksna i semantika heterogenost. Sintaksna heterogenost se pojavljuje kada dva ili
vie informacionih sistema koriste nekompatibilno kodiranje (razliitost pravila pisanja)
ili nekompatibilne formate za informacije. Sintaksna heterogenost moe nastati kao
rezultat razlika u formatima fajlova podataka, softwarske nekompatibilnosti ili ak
nekompatibilnosti medija za skladitenje.
ta god bio izvor sintaksne heterogenosti, njene konsekvence se ogledaju u tome da se
podaci moraju konvertovati u kompatibilni format kako bi sistemi mogli meusobno
saraivati.

250

Kako bi se izbjeglo direktno konvertovanje izmeu raznih heterogenih formata, sintaksna


heterogenost se obino prevazilazi usvajanjem jednog standardnog intermedijalnog
formata podataka, koji se naziva transfernim formatom (ili formatom za razmjenu).
Prevoenje podataka izmeu raznovrsnih paketa GIS softwarea i formata prostornih
podataka koji postoje moe predstavljati stvarni problem za GIS projekte. Direktno
konvertovanje izmeu dva razliita formata podataka je neefikasno, jer to stvara
raznovrsne viestruke putanje konverzije. Svaka putanja konverzije zahtjeva da
raunarski programi trebaju biti napisani i odravani tako da podravaju viestruke
varijante konverzije podataka.
Na slici 7.4a, konverzija izmeu 6 formata podataka zahtjeva 30 razliitih konverzionih
putanja (na slici je 15 dvosmjernih putanja). Openito, n podatkovnih formata zahtjeva
n*(n-1) razliitih konverzionih putanja. Umjesto direktnog konvertovanja izmeu parova
podatkovnih formata, transferni format osigurava da nam je openito potrebno samo 2*n
putanja konverzija. Na slici 7.4b se vidi da transferni format reducira broj konverzionih
putanja sa 30 na 12. to je vei broj formata, to je vea efikasnost koritenja transfernog
formata.

b.

a.

Slika 7.4: Transferni format reducira broj zahtjevanih putanja konverzije

Semantika heterogenost se pojavljuje kada dva ili vie informacionih sistema koriste
razliita ili na neki nain nekompatibilna znaenja (tumaenja) podataka. Na primjer,
neke razliite rijei, kao npr. putevi i ulice, mogu imati isto ili slino znaenje
(sinonimi). Druge rijei, poput grad mogu imati viestruko znaenje (naselje,
atmosferska padavina) (homonimi).
Naalost, tumaenje tanog znaenja na osnovu samo jednog dijela raspoloive
informacije moe biti teko, poto znaenje visoko zavisi od konteksta, a on je esto
implicitan. Na primjer izjava nareenje je izdano moe znaiti da je nareenje na snazi,
ali isto tako i da je sadraj nareenja otkriven neprijatelju, jer je kontekst izjave skriven
(implicitan).
Za razliku od sintaksne heterogenosti, koja je esto tehniko pitanje i moe se rijeiti
tehnikim sredstvima, semantika heterogenost je esto teko pomirljiva. Znaenje koje
dodajemo podacima je veoma vano, ali je i veoma teko za kodiranje. Ovaj problem je
djelomino bolan i za GIS, poto se geoprostorni podaci koriste u tako irokom spektru
razliitih disciplina, aplikacionih domena i zajednica, gdje svaki kontekst primjene ima
svoje sopstvene konvencije i terminologiju. Grupe koje koriste sementiki heterogene
konvencije i terminologiju su esto nazivaju informacionim zajednicama (information
251

communities). Informacione zajednice mogu nastati kao rezultat irokog ranga faktora,
ukljuujui razliite profesije, akademske discipline, jezike, nacionalnosti ili kulture.
Ukratko, distinkcija izmeu sintaksne i semantike heterogenosti se ogleda u razliitosti
izmeu pojmova podatka i informacije, koja je opisana u prvom poglavlju. Sintaksna
heterogenost se bavi osobinama podataka, naime, formatom i sintaksom podataka.
Semantika heterogenost se bavi osobinama informacija, primarno kontekstom i
znaenjem koje veemo sa podacima da bi formirali informaciju.

7.2.1 Formati i standardi za transfer podataka


Svi formati za transfer adresiraju (rjeavaju problem) sintaksnu heterogenost
obezbjeujui standardni intermedijalni format za konverziju podataka. De jure standard
je administriran od strane organizacija za standardizaciju, bez posebne koristi ili
komercijalnog interesa. Na primjer, British Standards Institute administrira transferni
format za geoprostorne podatke (BS7567, takoe poznat kao neutralni transferni format,
NTF). NTF obezbjeuje detaljnu sintaksu koja osigurava da e bilo koje podaci koji
podravaju ovaj standard biti sintaksno homogeni. De facto standard je format podataka
koji se iroko koristi kao standard, ak ako on i nije odobren od organizacije za
standardizaciju. Na prinjer, shapefile format je esto koriten kao de facto standard za
transfer, iako je publikovan od strane kompanije komercijalnog GIS softwarea.
Pored sintaksne heterogenosti, mnogi transferni formati su poeli da adresiraju pitanja
semantike heterogenosti. Na primjer, Spatial Data Transfer Standard (SDTS)
obezbjeuje preciznu sintaksu za transfer podataka, ali takoe dozvoljava korisnicima da
ukljue informacije o definiciji i znaenju termina u skupu podataka. Ovakve informacije
su ukljuene u formi rjenika podataka (data dictionary). SDTS korisnici mogu ili
razviti svoj sopstveni rjenik podataka, ili usvojiti rjenik koji se uobiajeno koristi u
pojedinim informacionim zajednicama. Rijenik podataka za saobraajni transport, na
primjer, moe sadrati precizne definicije prostornih objekata kao to su put ili cesta,
pomaui na taj nain korisnicima iz drugih informacionih zajednica da bolje razumiju
znaenje koje je povezano sa podacima. Postoje razni drugi transferni standardi koji
takoe predviaju proirenje osnovnog skupa podataka sa definicijama ili rjenikom
podataka.
Trokovi transfera (konverzije) prostornih podataka su prilino visoki, to je uzrokovalo
da mnoge zemlje imaju razvijene sopstvene nacionalne strategije za dijeljenje (razmjenu)
i koordinaciju geoprostornih podataka, na primjer: USA (National Spatial Data
Infrastructure, NSDI), Australia (Australian Spatial Data Infrastructure, ASDI), Canada
(Canadian Geospatial Data Infrastructure, CGDI), ili India (National Geospatial Data
Infrastructure, NGDI). Ove inicijative su esto bazirane na koritenju pojedinih
transfernih formata za jednostavnu razmjenu podataka. U stvari, postoji toliko puno
razliitih standarda sa geoprostornim podacima da i samo konverovanje izmeu razliitih
transfernih formata moe predstavljati usko grlo za interoperabilnost. Organizacije za
standardizaciju su pojaano koordinirale svoje napore u namjeri minimizacije ovakvih
potekoa, ali ostaje problem koji je openito vezan za samu standardizaciju.
Heterogenost (geoprostornih standarda) je prirodna posljedica irokog spektra raznih
informacionih zajednica (drutava) koje koriste geoprostorne podatke. Zbog ove

252

heterogenosti, standardni transferni formati ne mogu eliminisati sve barijere i potekoe


koje se javljaju prilikom razmjene geoprostornih podataka.
Jednim dijelom i kao odgovor na ovakva pitanja, neto drugaiji pristup predstavlja
uvoenje eXtensible Markup Language (XML) standarda, razvijenog od World Wide
Web Consortium (W3C). XML nije sam transferni format, nego je prije svega standardni
metajezik koriten za definisanje drugih jezika i transfernih formata, odnosno
vokabulara. Na primjer, Geography Markup Language (GML) je XML vokabular koji je
razvijen kao transferni format za geoprostorne podatke.
XML. Kao i svi markup jezici, XML koristi tagove za anotaciju podataka sa strukturom koja
moe pomoi u interpretaciji ili analiziranju podataka. Tagovi obezbjeuju naziv stvari koju
podaci opisuju. XML tagovi mogu opcionalno imati atribute koji dalje rafiniraju (profinjuju)
znaenje podataka. Na primjer, podaci o prvom izdanju neke knjige u XML-u mogu izgledati
ovako:
<book>
<author>Michael F. Worboys</author>
<title edition=First>GIS: A Computing Perspective</title>
<publisher location=London>Taylor and Francis</publisher>
<year>1995</year>
</book>

Vana osobina XML-a je da je on itljiv za ljude. I bez poznavanja precizne sintakse XML-a,
veina ljudi bi bila sposobna da razumije ta reprezentuju informacije iz XML koda. XML se ne
koristi direktno kao transferni format, nego kao osnova za definisanje novih vokabulara za
opisivanje i transfer podataka. Koritenje XML-a obezbjeuje brojne mone dodatne osobine. Na
primjer XML obezbjeuje mehanizam za definiciju koji tipovi struktura su dozvoljeni unutar
pojedinog vokabulara (Document Type Definition, DTD). Software koji parsira XML moe
koristiti DTD kao poseban vokabular da bi osigurao da XML podaci odgovaraju strukturi
opisanoj u DTD-u, odnosno kao vokabular za validaciju. XML takoe obezbjeuje mehanizam za
definisanje template-a (predloki), koji se mogu koristiti za transformaciju XML-a iz jednog
vokabulara u drugi (eXtensible Stylesheet Language Transformation, XSLT).

7.3 Distribuirani sistemi


Koritenje formata za transfer (razmjenu) podataka predstavlja fleksibilan, ali visoko
podatkovno orijentisan (data-oriented) i asinhron pristup interoperabilnosti. Ovakav
pristup podrazumjeva visok stepen iskljuivosti primjene transfernih formata od strane
razliitih aplikacija koje dijele (razmjenjuju) podatke, odnosno bez mogunosti
simultanog procesiranja nad istim skupom podataka (procesno-orijentisan pristup).
Primjena transfernih formata predstavlja asinhroni pristup interoperabilnosti u smislu da
kada je skup podataka konvertovan u poseban transferni format, mogu proi sekunde,
sati, dani ili godine prije nego se podaci konvertuju u drugi transferni format i ponu
koristiti u ciljnoj aplikaciji.
Koritenjem raunarskih mrea, informacioni sistemi su sposobni da dostignu visoko
procesno-orijetisane (izvravanje upita nad vie baza podataka simultano) i sinhrone
oblike interoperabilnosti. Distribuiran sistem predstavlja kolekciju viestrukih
informacionih sistema povezanih putem digitalne komunikacione mree koji mogu
sinhrono kooperirati kako bi izvrili raunarski zadatak. Distribuiran sistem je, zbog

253

ovoga, poseban tip interoperabilnog sistema, koji se sastoji od razliitih elemenata koji
su sposobni meusobno kooperirati u mrei prilikom izvravanja raznih zadataka.

7.3.1 Arhitektura distribuiranog sistema visokog nivoa


Pored svojstava mree (na niskom, odnosno fizikom nivou) vezanih za transmisiju
podataka (diskutovanih u 1. poglavlju), na komunikacione mogunosti ima uticaj i odabir
mrenih arhitektura visokog nivoa. Postoje tri razliita tipa mrenih arhitektura visokog
nivoa. Mainframe mrena arhitektura (odnosno terminalska mrena arhitektura) povezuje
vie terminala sa centralnim raunarskim serverom. U ranim arhitekturama informacionih
sistema, ukljuujui i GIS, dominirale su iskljuivo mainframe arhitekture. Ovi, ogromni,
viekorisniki sistemi, predstavljaju veoma centraliziran raunarski model, kojim
upravlja profesionalno (informatiko) osoblje za podrku (a ne krajnji korisnici sistema).
Ovakav centralizirani model je imao znaajne prednosti, jer je bio orijentisan u pravcu
visoke sigurnosti, integriteta i djeljenja podataka.
Sredina 80-tih je obiljeena brzom ekspanzijom koritenja stolnih (desktop) osobnih
raunarskih (PC) sistema za GIS kao i za mnoge druge softwareske aplikacije. PC-ijevi
su bili sposobni da ponude raznovrsnije i mnogobrojnije decentralizirane i
personalizirane aplikacije u odnosu na mainframe sisteme. Dok se prelaskom na PCsisteme individualnim (krajnjim) korisnicima nudila poveana kontrola nad
informacionim sistemom, to su se smanjivale mogunosti (i performanse sistema) vezane
za djeljenje podataka.
Peer-to-peer (od vora do vora) mrena arhitektura (p2p mree ili file-sharing
arhitektura) je kod ranih PC mrea, zbog svoje pristupane cijene, bila popularan nain
povezivanja raunarskih sistema (za manji broja raunara). Rane peer-to-peer mree nisu
bile odgovarajua rjeenja za povezivanje velikog broja raunara, i nisu mogle ponuditi
visoki nivo povezanosti (umreenosti) kakav se danas oekuje. U posljednje vrijeme, p2p
arhitekture su se sve vie poele buditi, poto je njihova visoko decentralizovana priroda
veoma privlana za data-sharing aplikacije (sa dijeljenim podacima). Slika 7.5 opisuje
mainframe i p2p mrene arhitekture.

Slika 7.5: Mainframe i peer-to-peer arhitekture

U jednom periodu, najpopularnija mrena arhitektura je bila client-server arhitektura,


koja je obezbjedila izuzetno fleksibilan i viestran nain organizovanja komunikacije
izmeu informacionih sistema. Klijent-server arhitektura se moe smatrati srednjim

254

rjeenjem izmeu mainframe i p2p arhitektura. Kao to e se vidjeti, mnoge osobine


client-server arhitekure su zajednike i za mainframe i za p2p mrenu arhitekturu. Zbog
ovoga, razumjevanje client-server arhitekture obezbjeuje solidnu osnovu za
razumjevanje i mainframe i p2p arhitekture.

7.3.2 Klijent-server sistemi


Klijent-server arhitekure obezbjeuju jasnu delineaciju izmeu odgovornosti razliitih
informacionih sistema unutar posebne aplikacije. Server je informacioni sistem koji moe
nuditi pojedine usluge drugim informacionim sistemima u mrei, dok je klijent
informacioni sistem koji koristi ove usluge. Usluge koje nudi server mogu ukljuivati
resurse kao to su fajlovi, softwareske aplikacije i hardwareski ureaji. Klijent-server
interakcija obino slijedi protokol zasnovan na zahtjevu i odgovoru (request - response).
Klijent zahtjeva uslugu od servera, koji onda odgovara sa odgovarajuim resursom.
Blizak primjer klijent-server raunarstva je surfanje na WWW. Web pretraiva igra
ulogu klijenta koji zahtjeva web stranice i druge fajlove od web servera na Internetu.
Klijent-server arhitektura se razlikuje od mainframe arhitekture po tome to klijent moe
koristiti usluge od vie razliitih servera. U isto vrijeme, klijent-server arhitektura se
razlikuje od p2p arhitekture po tome to postoji jasna distinkcija izmeu razliitih uloga
koje klijent i server ispunjavaju u kontekstu pojedinih aplikacija.
Usluge obezbjeene pomou servera su definisane pomou interfejsa servera. Interfejs je
poput ugovora, kojim se jasno izavljuje ta server moe uiniti za klijenta i kako klijent
moe pristupiti ovim uslugama. Interfejs za WWW je definisan protokolom za transfer
hiperteksta (Hypertext Transfer Protocol, HTTP). Termin protokol oznaava standardni
format za komunikaciju, koje je blisko povezan sa interfejsom. Web pretraiva koristi
HTTP za komunikaciju sa web serverima. Kada kliknete na hyperlink na web stranici,
va web pretraiva alje HTTP zahtjev za web stranicom prema web serveru na Internet
adresi koja je indicirana ovim hyperlinkom. Podrazumjevajui da se link odnosi na
validnu adresu, web server e odgovoriti sa odgovarajuom web stranicom koristei
takoe HTTP.
Interfejs specificira samo one servise koje server nudi, neopisujui nain na koji e se ovi
servisi obezbjediti. Klijent server arhitektura nije samo interoperabilna, nego je i
modularna, u smislu da klijenti i serveri mogu biti modificirani, nadograeni (upgrade) ili
ak zamjenjeni, zadravajui pri tome interfejs konstantnim. Na primjer, kada
nadogradite ili promjenite web pretraiva aplikaciju, openito je jo uvijek mogue
pristupiti istoj web stranici na WWW koritenjem istih adresa, jer svi web pretraivai
koriste HTTP.

Slika 7.6: Klijent-server arhitekura

255

Slika 7.6 opisuje osnovnu klijent-server arhitekturu, esto nazvanu dvoslojnom (two-tier)
klijent-server arhitekturom, jer svaki informacioni sistem u ovoj arhitekturi je ili klijent
ili server. Klijent-server arhitekture mogu biti koritene za razmjenu fajlova (npr.,
koritenjem HTTP-a ili fajl transfer protokola, odnosno FTP-a), kao i za dijeljenje
procesa izmeu klijenata i servera (npr. paralelno procesiranje i Beowulf).
Paralelno procesiranje i Beowulf: Tradicionalna von Neumann-ova raunarska arhitektura
podrazumjeva sekvencijalno procesiranje, gdje se svaka mainska instrukcija ponavlja dok se
kontrola ne prenese na slijedeu instrukciju. Veina dananjih raunara slijedi ovu arhitekturu, i
ima jedan CPU (centralnu procesorsku jedinicu) odgovornu za najvei dio izraunavanja
(procesiranja) kojeg raunar obezbjeuje. Mogue je koristiti viestruke procesore (CPU) koji
rade simultano, kako bi bre izvravali zadatke. Ovakav pristup procesiranja se naziva
paralelnim procesiranjem. Paralelno procesiranje moe biti posebno korisno za procesiranje
geoprostornih podataka, poto su mnogi algoritmi za prostorno procesiranje izuzetno raunarski
zahtjevni. Na alost, kompleksnost komunikacije izmeu individualnih procesora, koji rade na
istom zadatku, koja rezultira kanjenjem (latency), unosi neefikasnost u paralelno procesiranje (n
paralelnih procesora e opet biti sporiji od jednog n puta breg procesora). Sistemi za paralelno
procesiranje su esto skupi i obino zahtjevaju specijalne tehnike programiranja kako bi
omoguili da algoritmi iskoriste prednosti viestrukih procesora. Beowulf (nazvani po staroj
engleskoj poemi iz 11. stoljea) je open source sistem za paralelno procesiranje baziran na
klijent-server arhitekturi. Kao takav, on je jednostavniji i cjenovno povoljniji od mnogih
namjenskih paralelnih arhitektura, ali po cijenu poveanog kanjenja (latency). Umjesto
specijaliziranog hardwarea, Beowulf (http://www.beowulf.org) za paralelno procesiranje
koristi klaster umreenih raunara (na nain da jedan server koristi vie klijenata u mrei kako bi
formirao virtualni superraunar koji je sposoban za paralelno procesiranje).

Vieslojne (multi-tier) klijent-server arhitekture


Vieslojni klijent server sistem, koji se takoe naziva i troslojnim ili n-slojnim (threetier, n-tier) klijent-server sistemom, predstavlja proirenje osnovne dvoslojne klijentserver arhitekture sa dodatnim srednjim slojevima. Vieslojni klijent-server sistemi su u
biti sastavljeni od lanaca dvoslojnih sistema. Slika 7.7 ilustruje vieslojnu arhitekturu sa
tri sloja. Prema slici 7.6, klijent i server komuniciraju jedan sa drugim. Meutim, na slici
7.7 srednji (middle-tier) igra ulogu i klijenta (za server na desnoj strani on koristi
protokol B) i servera (za klijenta na lijevoj strani on koristi protokol A). Vieslojne
arhitekture poput onih ilustrovanih na slici 7.7 se obino koriste za procesiranje
geoprostornih podataka raspoloivih putem WWW. Web pretraiva (na strani klijenta)
zahtjeva informaciju od servera geoprostornih podataka putem web (aplikacionog)
servera (srednjeg sloja). Primarna prednost dodatnih slojeva u klijent server arhitekturi je
u tome to oni omoguavaju poveanu modularnost, koritenjem specifinih funkcija
razmjetenih na pojedinim slojevima.

Slika 7.7: Vielojna klijent-server arhitektura

256

Kartografske web stranice: Postoji mnotvo web stranica koje nude karte za sve vrste namjena.
Npr., MapQuest (http://mapquest.com) nudi prikaz putnih pravaca, planere ruta putovanja,te
karte puteva u razliitim razmjerama za teritorije irom svijeta. MapQuest je 2003. godine
posjeivalo u prosjeku blizu 2 miliona posjetilaca dnevno. USGS GEODE web stranica
(http://geode.usgs.gov) obezbjeuje pristup land cover, geolokim i visinskim podacima.
Ovakve web stranice obino koriste vieslojnu klijent server arhitekturu, koja osigurava veu
modularizaciju nego to bi to mogle dvoslojne arhitekture. Korisnici pristupaju stranici
jednostavnim web pretraivaem (na strani klijenta, prezentacioni sloj), a da nisu ni svjesni
slojevitosti arhitekture u kojoj je kartografska funkcionalnost povjerena web map serveru
(srednjem, aplikacionom sloju), a kojeg opsluuje server geoprostornih podataka (server,
podatkovni sloj).

Server-side i client-side strategije


Znaajan faktor u odreivanju karakteristika bilo kojeg klijent server sistema je
razmjetanje procesnih odgovornosti izmeu razliitih slojeva. U server-side strategiji,
server obezbjeuje veliku koliinu izraunavanja (procesiranja) koja su potrebna za
kompletiranje zadataka. Nazivi thin client (tanki klijent) i thick server (debeli server) se
esto koriste prilikom opisivanja klijenta i servera u server-side strategiji. U client-side
strategiji, klijent je taj koji obezbjeuje veliku koliinu izraunavanja (procesiranja), i za
odgovarajue opisne termine se koriste thick client i thin server. Slike 7.8 i 7.9 ilustruju
komponente u server-side i client-side strategijama. Poto server obezbjeuje veinu
izraunavanja, server-side strategije omoguavaju da se geoprostornim podacima i
procesima pristupi klijentom sa minimalnim raunarskim sposobnostima (kakve imaju
npr. depni raunari ili mobilni telefoni) uz koritenje generinog softwarea (kao to je
web pretraiva). Suprotno od ovoga, client-side strategije zahtjevaju klijente sa veim
raunarskim sposobnostima, ali sa druge strane zahtjevaju manje mone serverske
sisteme. Client-side strategije su takoe sposobne da ponude bolju fleksibilnost i
interakrtivnost korisnikog interfejsa.

Slika 7.8: Server-side strategija

Npr., map serveri na WWW obino prihvataju server-side strategiju poto ona dozvoljava
korisnicima da dobiju pristup na on-line karte koristei ak standardne rune (handheld)
raunarske ureaje. Meutim, ovakvi sajtovi su obino samo sposobni da ponude
osnovnu funkcionalnost prikaza za interakciju sa ovim kartama. Sa druge strane, clientside kartografski software je izveden na raspoloivosti monije raunarske platforme, ali

257

moe i obezbjediti rang opcija za prezentaciju, upite i procesiranje geoprostornih


podataka uz standardne funkcije prikaza.

Slika 7.8: Klijent-side strategija

Openito, server-side strategije efikasnije koriste mreni bandwidth (raspoloivu


propusnost mree) nego client-side strategije, poto server treba da odgovara samo sa ve
isprocesiranim geoprostornim podacima. Dodatni podaci koji ne ine dio konanog
odgovora, ali se koriste prilikom procesiranja zahtjeva, ostaju na serveru i nemaju
potrebu za transmisijom. Na primjer, prilikom prikaza karte na web stranici, vano je da
se ne prikazuje previe detalja zbog kojeg bi karta mogla brzo postati neitljiva. Karte
trebaju biti generalizovane, kako bi se iskljuio suvian detalj, zadravajui pri tome
samo prikaz bitnih objekata. Odabirom server-side strategije, server moe obezbjediti
kartografsku generalizaciju. Server alje podatke klijentu samo nakon to se
generalizacijom ukloni suvian detalj, smanjujui na ovaj nain bandwidth (odnosno
koliinu informacija koja treba proi kroz mreu) potreban za osnovni prikaz karte.
Client-side sistemi obino (na poetku sesije) zahtjevaju inicijalno preuzimanje
(download) specijaliziranog klijent softwarea, uz kojeg se pojavljuju i dodatne
implikacije sa bandwidth-om.
Konano, server-side strategije obezbjeuju veu sigurnost podataka, poto je kontrola
nad nainom procesiranja podataka povjerena servis provajderu. U ovom smislu serverside strategije su prilino sline mainframe mrenoj arhitekturi. Server-side strategija ima
veu prednost primjene u razvoju kartografskih web stranica, jer su geoprostorni podaci,
koji su osnova kartografskog prikaza skupi za prikupljanje i odravanje. Koritenjem
server-side srategije je omogueno da su svi geoprostorni podaci smjeteni na server
kojem putem web stranice pristupa jako veliki broj posjetilaca (sa kontrolisanim
pristupom). Sa druge strane client-side strategije podrazmjevaju da provajderi servisa
imaju manje kontrole nad koritenjem njihovih geoprostornih podataka.
Tabela 7.1: Server-side i client-side strategije

Svojstvo
Zahtjevi za funkcionalnou klijenta
Fleksibilnost korisnikog interfejsa
Bandwidth koritenje (protok podataka)
Sigurnost podataka

Server-side
Niski
Niska
Nizak
Visoka

258

Client-side
Visoki
Visoka
Visok
Niska

Tabela 7.1 prikazuje kljune osobine server-side i client-side strategije. Client-side


strategije su idealne za specijalizirane aplikacije, gdje manji broj naprednih korisnika ili
eksperata treba fleksibilne ili personalizirane sposobnosti manipulacije podacima. Serverside strategije openito vie pogoduju za aplikacije, koje velikom broju individualnih
korisnika omoguavaju pristup jednostavnijim funkcijama geoprocesiranja (pregled,
kartometrijske operacije, tampa), odnosno gdje je sigurnost podataka od velike vanosti.

7.3.3 Distribuirani komponentni sistemi


Postiji jasna analogija izmeu klijent-server arhitektura i objektno-orijentisanog modela.
Poput klijenata i servera, objekti obezbjeuju i koriste usluge (preko definicije ponaanja
i metoda/ behaviors and methodes) putem nekog interfejsa, i tom prilikom osiguravaju da
je aktuelni mehanizam za obezbjeenje servisa sakriven enkapsulacijom. Vieslojne
klijent-server arhitekture su ak jednostavnije prema objektno-orijentisanom modelu,
poto one obezbjeuju veu modularnost klijenata i servera. Prirodnu evoluciju ove
analogije predstavlja razvoj distribuiranih sistema u kojim individualne komponente, ili
ak individualni objekti, ine klijente i servere. Distribuirana komponentna arhitekrura
koristi upravo ovaj pristup, u kojem individualne komponente ili objekti mogu
kooperirati kao dio visoko decentralizirane klijent-server arhitekture. Razlika izmeu
distribuiranih komponentnih i vieslojnih klijent-server arhitektura je posebno naglaena
kroz nivo njihove robusnosti. Termin distribuirani komponentni sistem je openito
rezervisan za sisteme sa mnogo (vie od tri) razliitih komponenti. Posljedica ovoga je da
su distribuirane komponentne arhitekture blisko povezane sa peer-to-peer arhitekturama.
U distribuiranim komponentnim arhitekturama, individualne komponente (kao klijenti,
serveri i mnoge druge distribuirane komponente) mogu biti involvirane u mreu sa
kompleksnim interakcijama izmeu njih.
Svaka distribuirana komponentna arhitektura ima tri dijela. Kao prvo, svaka komponenta
mora imati interfejs koji definie koje servise server komponenta nudi (to se naziva
server skeleton ili shema), odnosno koje servise klijent komponenta konzumira (client
stub). Poto komponente mogu istovremeno biti i serveri i klijenti, mogue je i da
komponente posjeduju i server skeletion i client stub. Drugo, serveri registruju svoje
servise u jednom registru, kojem svaki klijent moe pristupiti da bi pronaao servere koji
nudi kompatibilne servise. Tree, da bi se osiguralo da razliite komponente mogu
uspjeno komunicirati, distribuirana komponentna arhitektura mora koristiti standardni
protokol za komunikaciju izmeu klijenata i servera. Slika 7.10. ilustruje kljune
elemente jedne distribuirane komponentne arhitekture.
Postoje mnogi primjeri distribuiranih komponentnih tehnologija, ukljuujui CORBA
(Common Object Request Broker), DCOM (Distributed Component Object Model) ili
Java RMI (Remote Methode Invocation). Ove tehnologije obezbjeuju standardnu
infrastrukturu koja omoguava jednostavnije postizanje interoperabilnosti izmeu
umreenih softwareskih komponenti. U CORBA, na primjer, komponente mogu biti
napisane kao software za bilo koju platformu. ORB (Object Request Broker) u tom
sluaju slui kao registar, koji istovremeno ima ulogu medijatora u komunikaciji izmeu
komponenti.

259

Slika 7.10: Generalizovana distribuirana komponentna arhitektura

Kao standardni protokol za prenos zahtjeva i odgovora izmeu komponenti se koristi


Internet Inter-Orb protokol (IIOP). DCOM i RMI slijede slinu filozofiju kao CORBA.
Takoe, kao XML-bazirani standard za distribuirane komponentne arhitekture, razvijena
je i jedna grupa XML vokabulara, poznatih kao web servisi. Arhitekture koje su servisno
orijentisane, odnosno koje su zasnovane na web servisima se nazivaju servisno
orijentisanim arhitekturama (Service Oriented Architecture - SOA).
Web servisi: Web servisi su distribuirani komponentni sistemi koji koriste prednost XML-a kao
standarda za komunikaciju izmeu komponenti. Infrastruktura web servisa koristi Simple Object
Access Protokol (SOAP), kao XML vokabular za komunikaciju izmeu sastavnih komponenti.
Dva posebna XML vokabulara, Web Services Description Language (WSDL) i Universal
Description, Discovery, and Integration (UDDI) protokol, se koriste kao osnova registra koji
pomae da web servise napravi jednostavnijim za traenjem putem Interneta. Web servisi (i
komponentne arhitekture openito) pomau da software bude potpuno modularan to vodi
kompozitnim sistemima koji su veoma jednostavni za izgradnju. Na primjer, veliki broj web
servisa za geokodiranje se moe nai na WWW. Geokodiranje je proces konvertovanja naziva
mjesta u geografski referensirane koordinate, to predstavlja fundamentalnu operaciju za mnoge
marketinke i geodemografske aplikacije. Geokodiranje zahtjeva procesiranje koje povezuje
adrese sa lokacijama adresa omoguavajui prostornu prezentaciju neprostornih podataka za
koje su ove adrese poznate. Implementacija ove funkcionalnosti bi inae za veinu korisnika bila
kompleksna. Koritenjem gotovih web servisa se moe ostvariti relativno jednostavan razvoj
softwareske aplikaciju, koja e koristiti geokodirajue servise.

7.4 Distribuirane baze podataka


Prilikom predhodne diskusije o distribuiranim sistemima, oekivalo se da svaka
komponenta po svojoj funkcionalnosti bude drugaija od ostalih kooperirajuih
komponenti. Ovakav scenarij je tipian za vieslojne klijent-server arhitekture.

7.11: Primjer troslojne klijent-server aplikacije

260

Slika 7.11 ilustruje 3-slojnu klijent-server arhitekturu distribuiranog sistema za


kartografsku (mapping) web stranicu, u kojem svaki sloj u arhitekturi ima drugaiju
funkcionalnost:
server prostorne baze podataka pohranjuje geoprostorne podatke;
klijent za web pretraivnje obezbjeuje korisniki interfejs za geoprostorne
podatke i
web (aplikacioni) server, kao srednji sloj, predstavlja most izmeu prostorne baze
podataka i korisnikog interfejsa na klijent strani.
Ovakva arhitektura je vrlo rasprostranjena, i zasnovana je na jednostrukom logiki
centralizovanom sistemu prostorne baze podataka. Meutim, za neke aplikacije,
neophodno je koristiti logiki povezane podatke na viestrukim lokacijama, koje su
meusobno povezane u raunarsku mreu. Ovakav sistem se naziva distribuirana baza
podataka. Mnoge organizacije (na razliitim lokacijama) prikupljaju i odravaju
sopstvene skupove podataka, zbog ega su distribuirane baze podataka neophodne kako
bi se onda ovako disperzovani skupovi podataka mogli dijeliti (razmjenjivati). Pojedini
geoprostorni podaci su esto pohranjeni u blizini geografskih lokacija na koje se ovi
podaci i odnose. Na primjer, sluba za civilnu zatitu u lokalnoj upravi, prikuplja podatke
o zagaenju za svoj administrativni region. Ovi podaci su obino pohranjeni na lokalnom
nivou, odnosno u samoj slubi (to je i opravdano, obzirom da ona ima najvie koristi od
njih, a i najodgovornija je za njihovu aurnost). Da bi se ovakvi podaci povezali sa
podacima iz slinih slubi iz drugih lokalnih uprava (opina) neophodna je distribuirana
baza podataka.
Za velike, geografski disperzovane skupove podataka, distribuirane baze podataka nude
nekoliko potencijalnih prednosti u odnosu na konvencionalne baze podataka:
Decentralizacija: Distribuirane baze podataka su decentralizovane. Lokalnim jedinicama
baza podataka (DB jedinicama) koje figuriu unutar distribuirane baze podataka
upravljaju direktno korisnici koji su primarno odgovorni za prikupljanje ili
koritenje podataka. Ovakav pristup se naziva lokalna autonomija.
Raspolozivost i pouzdanost: Distribuirane baze podataka nude otpornost na pad dijelova
sistema. Ukoliko neka jedinica unutar distribuiranog sistema postane
neraspoloiva (zbog problema u mrei ili prestanka napajanja) ostali dijelovi i
dalje ostaju funkcionalni.
Performanse: Lokalna autonomija ima smisla po tome to su podaci pohranjeni na
lokaciji koja je fiziki blizu onim korisnicima, iji je interes za njihovim
koritenjem najvei. Ovo rezultira mogunou optimizacije i poboljanju
performansi prilikom upita koji su karakteristini za lokalne korisnike. Lokalni
korisnici takoe vie preferiraju da su povezani sa lokalnom bazom podataka
pomou veoma brze LAN mree, nego da zavise od esto sporije ili promjenjive
WAN mree.
Modularnost: Distribuirane baze podataka su modularne, to rezultira poveanoj
skalabilnosti i lakem odravanju. Pojedine jedinice se mogu nadograivati (ili
nove dodavati) bez uticaja na ostale dijelove sistema.

261

Slika 7.12. prikazuje primjer distribuirane baze podataka koja obezbjeuje pristup
podacima pohranjenim na vie razliitih lokacija.
Distribuirani DBMS (DDBMS) je softwareski sistem koji upravlja distribuiranom bazom
podataka. Kljuni cilj za DDBMS je da ostvari transparentan pristup distribuiranoj bazi
podataka tako da su korisnici poteeni od poznavanja detalja vezanih za distribuciju
podataka, tako da se od njih oekuje da pristupaju distribuiranoj bazi podataka, kao to bi
pristupali bilo kojoj konvencionalnoj centraliziranoj bazi podataka.

Slika 7.12: Primjer 3-slojne klijent server aplikacije bazirane na distribuiranoj bazi podataka

7.4.1 Homogeni i heterogeni distribuirani DBMS-ovi


Glavna distinkcija izmeu homogenih i heterogenih DDBMS-ova je u tome to:
Homogeni DDBMS je komponovan od vie jedinica za skladitenje podataka od
kojih svaka koristi isti DBMS software i model podataka.
Heterogeni DDBMS je komponovan od vie jedinica za skladitenje podataka od
kojih svaka koristi razliit DBMS software ili razliite modele podataka.

a. Homogeni

b. Heterogeni
Slika 7.13: Homogeni i heterogeni DDBMS-ovi

262

Slika 7.13. ilustruje distinkciju izneu homogenih i heterogenih DDBMS-ova. Na slici


7.13a homogeni DDBMS koristi jedan isti model podataka, a DBMS software
obezbjeuje pristup skladitima podataka koji se nalaze na razliitim lokacijama.
Na slici 7.13b je prikazan heterogeni DDBMS koji podrava vie razliitih modela
podataka i/ili razliite DBMS-ove na razliitim lokacijama. Jedinstven pristup
heterogenim bazama podataka je obezbjeen kroz gateway interface (kapiju), koji
omoguava da se zadaci (upiti) izvravaju koritenjem podataka iz razliitih podatkovnih
modela i skladita smjetenih na raznim lokacijama. Zadatak jedinstvenog pristupa
heterogenim bazama podataka moe postati veoma kompleksan, posebno kada su modeli
podataka izloeni visokom nivou semantike heterogenosti. Izuavanje sposobnosti
sistema za automatskim izvravanjem ovih kompleksnih zadataka (medijatori)
predstavlja vano istraivako polje.

7.4.2 Relacione distribuirane baze podataka


Dvije kljune razlike izmeu dizajna konvencionalne relacione baze podataka i relacione
distribuirane baze podataka su fragmentacija i replikacija. Fragmentacija se pojavljuje
kada je jedna relacija (tabela) podjeljena u podrelacije, koje se nazivaju fragmentima, koji
su onda distribuirani izmeu razliitih jedinica baza podataka. Postoje dva tipa
fragmentacije:
Horizontalna fragmentacija: pojavljuje se kada su fragmenti komponovani od
podskupova zapisa (tuplova) jedne relacije.
Vertikalna fragmentacija: pojavljuje se kada su fragmenti komponovani od podskupova
atributa jedne relacije.
Grafiki prikaz horizontalne i vertikalne fragmentacije jedne relacije je dat na slici 7.14.

Slika 7.14.: Hirizontalna i vertikalna fragmentacija jedne relacije (tabele)

Replikacija se pojavljuje kada su fragmenti podataka duplicirani kroz razliite jedinice


baza podataka unutar jednog distribuiranog sistema. Replikacija moe poboljati
pouzdanost i performanse, poto replicirani fragmenti daju mogunost da se na upit
odgovori koristei podatke sa jedne iste lokacije. Meutim replikacija ini auriranje
podataka kompleksnijim, poto se lako moe pojaviti nekonzistentnost baze podataka,

263

ukoliko se auriranje nekog fragmenta ne propagira (ne dostavi) do svake kopije tog
fragmenta.

7.4.3 Zakljuak
Distribuirane prostorne baze podataka imaju potencijal da poboljaju dijeljenje podataka,
modularnost, pouzdanost i performanse za geografski disperzovane prostorne podatke.
Kao to bi trebali vidjeti u slijedeem poglavlju, distribuirane baze podataka su izuzetno
vane za stvarnu primjenu, jer su zbog cjenovne povoljnosti beine (i bezkonekcione)
raunarske mree postaju sve pristupanije. U svakom sluaju, distribuirane baze
podataka i dalje ostaju vrlo aktivno istraivako polje. Distribuirane baze se nisu uvijek
dobro pokazivale u praksi (za neka polja primjene) iz razloga, kao to su:
Kompleksnost: distribuirane baze podataka i DDBMS-ovi su sami po sebi kompleksniji
od konvencionalnih centralnih baza podataka. Dizajn distribuirane baze podataka
podrazumjeva svu problematiku dizajna centralizovane baze podataka, sa
dodatnim problemima uzrokovanim fragmentacijom, replikacijom i moguom
heterogenou. Poveana kompleksnost takoe vodi veim trokovima u razvoju i
odravanju.
Sigurnost: integracija baza podataka na disperzovanim lokacijama koritenjem
raunarske mree moe stvoriti uslove za neautorizovan pristup i na taj nain
smanjiti sigurnost sistema.
Integritet: osiguranje konzistentnosti (koritenjem ogranienja pri unosu podataka i
slino) kroz vie baza podataka je tee ostvarivo nego kod konvencionalnih baza
podataka, jer lokalna autonomija moe voditi auriranju podataka u jednoj
jedinici baze podataka koje nije konzistentno sa drugim jedinicama.

7.5 Lokacijski svijesno raunarstvo


Lokacijski svijesni sistemi koriste informacije o trenutnoj lokaciji korisnika za dobijanje
relevantnije informacije i pruanje servisa istim korisnicima. Lokacijski svjesno
raunarstvo je poseban tip kontekstno svjesnog raunarstva. Openito, kontekstno
svjesno raunarstvo se bavi koritenjem senzora i drugih izvora informacija o kontekstu
korisnika za obezbjeenje relevantnijih informacija i servisa. Termin kontekst ovdje
implicira bilo koju informaciju koja se moe koristiti za karaskteriziranje korisnikih
fizikih, socijalnih, fiziolokih ili emocionalnih prilika (na primjer, dali vozimo auto, dali
smo na sastanku, dali smo umorni ili ljuti). Lokacija je kritian elemenat korisnikovog
fizikog konteksta, poto na istom mjestu gdje su ljudi trenutno locirani moe postojati
potreba za njihovim pristupom uslugama i informacijama (vezanim za to mjesto) koje su
u tom momentu korisne. Na primjer, trenutni posjetioci Londona (u vrijeme ruka) mogu
biti zainteresovani za informaciju o najboljim (ili najbliim) mjestima za ruavanje u
Londonu. Meutim, ista informacija (o restoranima u Londonu) nije od koristi za one koji
trae dobar restoran u Njujorku.
Pored kontekstno svjesnog raunarstva, postoje jo dva njemu bliska polja istaivanja u
raunarstvu (computer science), koja prestavljaju partinent, odnosno preklapaju se sa
lokacijsko svjesnim sistemima: pervazivno (proimajue, sveprisutno) i mobilno
raunarstvo. Pervazivno (sveprisutno) raunarstvo se zasniva na ideji da umreeni

264

raunari (kao komponente ugraene u ureaje za svakodnevno koritenje) mogu postati


nevidljivi personalni asistenti, pomaui nam u obavljanju mnogih svakodnevnih
zadataka. U svezi sa lokacijsko svjesnim sistemima, mobilno raunarstvo se primarno
bavi informacionim sistemima koji se mogu kretati sa nama tokom obavljanja naih
dnevnih poslova.
Mobilno raunarstvo: Najmanje 3 razliita tipa mobilnosti su relevantna u informacionim
sistemima: mobilnost softwarea, ureaja i korisnika. Mobilnost softwarea se bavi migracijom
softwareske aplikacije ili agenata izmeu razliitih raunarskih ureaja ili platfomi, obino sa
ciljem zavravanja nekog specifinog korisnikog zadatka. Mobilnost ureaja se bavi
raspoloivou raunarskih ureaja pri kretanju, obino ostvarujui povezanost sa mreom.
Portabilni ureaji, kao to su runi i depni raunari, su primjer mobilnih ureaja. Neki mobilni
ureaji, kao to su navigacioni sistemi u automobilima, mogu biti mobilni ali ne i portabilni.
Termin mobilan moe se takoe odnositi na kretanje korisnika kroz neki prostor. ak ta vie,
korisnika mobilnost je implicitna osobina lokacijski svjesnog sistema: ukoliko se korisnik nikada
ne kree, onda je lokacijski kontekst ovakvog korisnika statian ili trivijalan.

Veina lokacijski svjesnih sistema su ili sveprisutni (pervazivni), ili mobilni, ili oboje
(slika 7.16).

Slika 7.16: Povezanost izmeu lokacijski svjesnog, kontekstno


svjesnog, pervazivnog i mobilnog raunarstva

Kao to i slika 7.16 indicira, sve etiri oblasti, i lokacijski svjesno, i kontekstno svjesno, i
pervazivno, i mobilno raunarstvo, imaju veliko preklapanje. Lokacijski svjesni sistemi
su po definiciji takoe i kontekstno svjesni (poto je lokacijska svjesnost jedan tip
kontekstne svjesnosti). Primjeri razliitih tipova lokacijsklo svjesnih sistema sa slike
7.16. ukljuuju:
E911 system: E911 (enhanced 911) je program u SAD-u namjenjen za korisnike mobilne
telefonije koji omoguava da korisnici prilikom poziva hitne slube mogu biti
brzo locirani. E911 sistem je potpuno lokacijski svjestan. Sistem je takoe

265

mobilan, poto su mobilni telefoni neprekidno uz korisnike. I konano, E911 je


sveprisutan (pervazivan), jer je E911 tehnologija ugraena unutar sistema mobilne
telefonije sa ciljem da automatski locira korisnike u hitnim sluajevima.
Turistiki informacioni vodi: Ve su u upotrebi mobilni lokacijski svjesni turistiki
informacioni vodii, koji su dizajnirani da obezbjede turistima informacije o
njima bliskim turistikim atrakcijama. Ovi sistemi moraju biti mobilni, tako da ih
turisti mogu prenositi, a i lokaciski svjesni, tako da korisnici mogu selektovati
atrakcije blizu njihovog trenutnog poloaja. Meutim, ovi sistemi nisu
ultimativno sveprisutni, poto su obino realizovani na posebnim ureajima koji
su stavljeni na raspolaganje posjetiocima od strane lokalne turistike
informacione slube.
Sistem protiv zloupotrebe kreditnih kartica (credit-card anti-fraud system): Kartine
kompanije obino detektuju zloupotrebu kartice analizom lokacija njenog
koritenja. Lokacija svake nabavke se snima od strane kartine kompanije.
Ukoliko se neka kartica koristi na neoekivanim ili veoma udaljenim lokacijama
ili uzastopno u vrlo kratkim periodima, ovakav neobian lokacijski uzorak moe
navesti kartinu kompaniju da posumnja na zloupotrebu i blokira ovakvu karticu.
Ovakav sistem je sigurno lokacijski svjestan, jer on prati lokacije prodavnica
pomou koritenja kreditne kartice. On je takoe i sveprisutan, jer je ovakva
zatita ugraena unutar cijelog sistema kreditnih kartica. Meutim, ovaj sistem
nije mobilan, poto su raunarski ureaji koji se koriste statini (sistem ini mrea
itaa kartica koji imaju fiksne lokacije).
Slijedea tema koja je relevantna za lokacijski svjesno raunarstvo je nosivo raunarstvo
(wearable computing). Nosivo raunarstvo se bavi raunarskim sistemima koji se nose na
tijelu korisnika i uvijek su pristupani korisniku, bilo da se slobodno eta ili se bavi
nekim aktivnostima. Kao rezultat, nosivo raunarstvo lei unutar presjeka oblasti
pervazivnog i mobilnog raunarstva.
Lokacijski svijesni sistemi u osnovi mijenjaju nain nae interakcije sa GIS-om. Umijesto
rada sa GIS-om putem stolnih raunara ili radnih stanica, lokacijski svjesni sistemi nam
omoguavaju aktivnu interakciju sa geografskim okruenjem iz kojeg primamo
informacije. Kao i za druge znaajne rezultate raunarskog razvoja, tako su i ovim
dostignuima predhodili odreeni tehniko-tehnoloki uslovi:
Broj i raznovrsnost oblika raunarskih ureaja se dramatino poveao u zadnjim
godinama. Raunarski hardware, kao to su notebook, tablet i handheld raunari,
su postali manji, jeftiniji, moniji i sa efikasnijom energetskom potronjom.
Raunarske sposobnosti su takoe ugraene u mnoge ureaje iz svakodnevnog
ivota, kao to su automobili, televizori, bijela tehnika i telefoni.
iroko je rasprostranjeno koritenje beinih komunikacionih mrea, koje
omoguavaju mobilnim korisnicima pristup informacijama na daljinu i uslugama
vezanim za njihovu lokaciju.
Koritenje senzora sposobnih da odrede lokaciju mobilnog korisnika je postala
uobiajena pojava.

266

Prije nego to se pree na detaljnije upoznavanje sa lokacijski-svjesnim raunarstvom,


dat je pregled beinih raunarskih mrea i lokacijskih senzora.

7.5.1 Beine raunarske mree


Beine mree su vitalna komponenta za mobilno raunarstvo, jer omoguavanju
raunarskim ureajima da meusobno komuniciraju bez potrebe za fizikom
povezanou. Beina tehnologija se moe klasificirati u tri kategorije koje su bazirane
na prostornom obuhvatu nad kojim operiu.
Beini WAN: Beini WAN (Wide Area Network) operie nad veim geografskim
regijama, kao to su drave.
Beini LAN: Beini LAN (Local Area Network) operie nad srednjim i manjim
geografskim regijama, na primjer gradovima, naseljima, individualnim zgradama i slino.
Beini PAN: Beini PAN (Personal Area Network) operie nad veoma malim regijama,
obino u krugu od nekoliko metara.
Beini WAN operie nad najrasprostranjenijim geografskim prostorom neke beine
mree, omoguavajui korisnicima kretanje u nacionalnom ili ak internacionalnom
prostoru. Mobilna telefonija je tipian primjer beine WAN tehnologije. Mobiteli koriste
visokofrekventne radio i mikrotalasne signale za komunikaciju sa terestrikim ili
satelitskim relejnim stanicama. Uglavnom je prisutan trend da novije mobilne tehnologije
koje nude servise bez konekcije potiskuju stare konekcijski orijentisane servise sa
fiksnim (kablovskim) telefonskim mreama.
Beina LAN tehnologija operie u krugu krae udaljenosti u odnosu na WAN-ove,
obino u krugu do 100 metara od raspoloive LAN pristupne take (access point).
Izolirane beine LAN pristupne take, kao to su one na aerodromima, kafeima ili
hotelima se nazivaju hotspot (vrua taka). Mali klasteri (grupe) beinih mrea se
nazivaju NAN-om (Neighborhood Area Network). Uprkos njihovom kratkom opsegu,
vei klasteri beinih LAN mrea mogu dostii dobru pokrivenost, posebno u gusto
naseljenim oblastima metropola, na primjer tzv. MAN (Metropolitan Area Network).
Prve ovakve mree su bile bazirane na eksperimentalnim projektima u glavnim
gradovima (San Francisco, London, Seattle). Jedan primjer aktuelne beine LAN
tehnologije je i Wi-Fi (Wireless Fidelity) mrea koja je zasnovana na IEEE 802 familiji
standarda.
Beina PAN tehnologija operie u krugu najkraih distanci u odnosu na sve postojee
beine mree. Beini PAN je idealan za meusobno povezivanje viestrukih
raunarskih ureaja, kao to su telefoni, tastature, mievi, zvunici, tampai ili PC
raunari, bez potrebe za kablovima. Primjer radio talasne beine PAN tehnologije (male
snage) je Bluetooth, koja je dobila ime po danskom kralju iz 10. stoljea. Infracrveni
signali se takoe mogu koristiti za optiki vidljive (dogledajue) beine PAN-ove. Na
slici 7.17 su sumarno prikazani razliiti tipovi beinih mrea. Beine mree se
oslanjaju na razliite tehnike koje spreavaju meusobnu interferenciju beinih signala
emitovanih iz raznih ureaja.

267

Slika 7.17: Prikaz prostornog obuhvata beinih mrea

Eliminacija beine interferencije: Problem s kojim se suoavaju sve beine mrene tehnologije
je kako osigurati da signali sa razliitih ureaja ne dou meusobno u interfernciju, koja
uzrokuje gubitak podataka. Postoje tri vana znatno sofisticirana mehanizma kojima se ovo
postie. Nejjednostavnija opcija je osigurati da svaki ureaj koristi samo jedan uzak frekventni
opseg za komunikaciju. Ovo podsjea na nain na koji radio-stanice emituju programe na
ogranienoj frekvenciji koju slualac treba podesiti na radio prijemniku. Druga opcija jeste da se
osigura da ureaj transmituje podatke tokom odreenog vremenskog perioda na svom
frekventnom opsegu. Ovo omoguava da istu frekvenciju moe dijeliti vie ureaja, kao na
primjer, kad se razliiti radio programi pojavljuju u razliito vrijeme na istoj radio stanici. Trea
opcija je da se osigura da svaki ureaj transmituje podatke u jednom frekventnom opsegu,
skaui izmeu frekvencija u razliitim vremenima u nekoj sekvenci, koja je dogovorena izmeu
predajnika i prijemnika. Na ovaj nain se u jednoj sekundi vie sluajno odabranih frekvencija
promjeni i po vie stotina puta. Ovakav mehanizam se naziva spread spectrum technology, i
mogao bi se uporediti sa sluajem kada se neki program slua na jednoj frekvenciji, a onda se isti
program nastavi sluati na drugoj frekvenciji. Ovo skakanje izmeu frekvencija ini mreu
otpornijom na pojavu interferencije i pozadinskog uma (smetnji) sa drugih ureaja.

7.5.2 Lokacijski senzori


Postoji irok spektar senzora koji se mogu integrisati sa raunarskim ureajima u cilju
automatskog dobijanja informacija vezanih za neki korisniki kontekst: zvuk, svjetlost,
temperatura, pokret, lokacija i slino. Na slici 17.8. je prikazana taksonomija tehnika za
lokacijsko snimanje.
Aktivne tehnike lokacijskog snimanja (location-sensing) odreuju poloaj na osnovu
signala emitovanog od nekog predajnika. Lokacija moe biti odreena koristei bliskost

268

(proximity) nekog radio predajnika ili pomou triangulacije signala emitovanih od


predajnika.

Slika 7.18. Taksonomija tehnika za lokacijsko snimanje

Bliskost (proximity): Bliskost do signala predajnika koriste sve mobilne telefonske mree
za lociranje mobilnih telefona. Mobilna telefonska mrea koristi niz beinih
transmitera na poznatim lokacijama za prenos telefonskih poziva. Na osnovnom
nivou, svaki transmiter servisira manje geografsko podruje (cell elija) pri
emu je njegov signal na tom podruju jai od signala drugih transmitera. Snaga
signala opada proporcionalno udaljenosti od transmitera, tako da u
najjednostavnijem sluaju, geometrija elije formira Thiessen-ov poligon. Na
osnovu ovog, mobitel je sposoban odrediti u kojoj eliji je lociran (identificirajui
transmiter sa najjaim signalom). Veliina elija varira i mrei zavisno od terena,
frekvencije transmsije i oekivane jaine poziva. Obino su terestriki transmiteri
meusobno rasmjeteni u krugu od oko 200 m u urbanim dijelovima, a njihovo
meusobno rasojanje se kree i do 5 km u ruralnim dijelovima mree.
Triangulacija: Postoje dva tipa triangulacije: lateralna (trilateracija) i angulaciona.
Lateracija je proces raunanja poloaja nekog objekta na snovu njegove
udaljenosti od drugih poznatih lokacija. Angulacija je proces raunanja poloaja
nekog objekta na osnovu ugla od drugih poznatih lokacija (jedne poznate duine u
mrei). Sistem globalnog pozicioniranja (GPS) je zasnovan na lateralnom
principu za odreivanje poloaja. Angulacija se koristi, na primjer, kod nekih
mobilnih telefonskih mrea za odreivanje poloaja.
Neke aktivne tehnike lokacijskog snimanja, kao to su GPS, koriste mobilni senzor
(rover) za prijem signala sa eksternih predajnih stanica sa poznatom lokacijom (baza).
Druge tehnike operiu koritenjem eksternih senzora na poznatim lokacijama za prijem
signala sa mobilnog predajnika. Na primjer, Active Badge sistem predstavlja aktuelan
primjer location-sensing tehnologije, koja koristi matricu infracrvenih senzora (za
identifikaciju bliskosti) razmjetenih na poznatim lokacijama irom zgrade za potrebe

269

lociranja osoba. Svaka osoba nosi mali bed koji identificira nosioca pomou
transmitovanja kodiranog infracrvenog signala svakih 10 sekundi.
Pasivne location-sensing tehnike se ne zasnivaju na signalima transmitovanim od
lokatorskih predajnika. Umjesto toga, pasivni lokacijski senzori odreuju lokaciju
indirektno, pomou povezivanja senzorski bazirane informacije sa drugim prostornim
informacijama iz okoline. Geografska okolina je veoma heterogena, tako da skoro svaki
tip senzorskog mjerenja moe potencijalno biti koriten u nekom obliku pasivnog
snimanja lokacije (prikazan isprekidanom strelicom na slici 7.18). Pretpostavimo da je
neka osoba napustila svoju kuu i da se trenutno nalazi na nepoznatoj lokaciji na
Zemljinoj povrini. Ukoliko ova osoba trenutno poznaje tano vrijeme u svojoj kui i ako
moe odrediti vrijeme na lokaciji na kojoj se trenutno nalazi (na primjer, pomou
poloaja sunca na nebu), onda ona moe ugrubo odrediti geografsku duinu svog
poloaja. U 18. stoljeu moreplovci su na slian nain odreivali poloaj svoga broda
prilikom navigacije. Dvije vane klase pasivnog snimanja lokacije su:
Praenje kretanja (motion tracking): Senzori za brzinu i pravac kretanja (na robotu) se
koriste esto u robotici za praenje kretanja mobilnog robota tokom vremena. Ove
informacije se mogu koristiti za raunanje lokacije robota na pojedinim takama
tokom vremena u zavisnosti od neke poetne take.
Analiza scena: Digitalna kamera se sastoji od niza senzora koji se mogu koristiti za
odreivanje lokacija u izvjesnim okolnostima. Analiza scena (scene analysis) se
moe koristiti ili za odreivanje lokacija objekata ili ljudi na digitalnoj slici, ili za
odreivanje lokacije kamere koju bi morala imati prilikom snimanja slike.
Sistem za globalno pozicioniranje (GPS)
GPS prijemnik koristi radio talasne signale, transmitovane od niza GPS satelita koji
orbitriraju oko Zemlje, za raunanje poloaja prijemnika na povrini Zemlje. GPS se
zasniva na lateraciji. Na primjer, zbog jednostavnosti pretpostavimo svijet u ravni i da
trebamo identificirati nepoznati grad u SAD-u. Ako nam je poznato da se grad nalazi
3000 km od Los Angelesa, onda je poloaj grada negdje na krunici sa radijusom od
3000 km od LA. Ako je takoe poznato da je grad 1000 km od New Yorka, onda su
mogue samo dvije lokacije koje zadovoljavaju ulazne informacije: Chicago i Atlanta. I
konano, ako je poznato da se traeni grad nalazi 2000 km od Miamija, onda je samo
jedna lokacija pravo rjeenje, a to je Chicago (vidi aliku 7.19).
GPS koristi lateraciju u trodimenzionalnom prostoru, gdje se poloaj traene take nalazi
na fiksnoj udaljenosti od centra sfere (a ne kruga kao kod 2D prikaza). Kao rezultat,
potrebne su 4 sfere da bi se u njihovom zajednikom presjecitu locirala traena taka.
Poto je i sama Zemlja sferina, veina GPS prijemnika moe fiksirati taku koritenjem
signala od samo tri satelita, podrazumjevajui da je prijemnik lociran na povrini Zemlje
(etvrta sjekua sfera). GPS prijemnici raunaju udaljenost do svakog satelita mjerei
koliko dugo je trebalo signalu radio talasa da pree put od svakog satelita. Svaki satelit iz
konstalacije GPS-a neprekidno transmituje radio signale sa tanim vremenom i
poloajem satelita. Vremenski pomak izmeu vremena upisanog u satelitskom signalu i
tekueg vremena na GPS prijemniku se koristi za raunanje udaljenosti do svakog

270

satelita, smatrajui da signal putuje brzinom bliskoj brzini svjetlosti. GPS sateliti mjere
vrijeme koristei veoma precizne atomske satove. Poto satovi na GPS prijemnicima nisu
tako precizni, svaka netanost ima podjednak uticaj na sva mjerenja, tako da se on moe
tretirati GPS lateracionim algoritmom.

Slika 7.19: Odreivanje poloaja lateracijom, baziranoj na udaljenosti


od gradova Los Angeles, New York i Miami (USA).

GPS je kompleksna tehnologija, tako da koritenje konvencionalnog GPS-a


podrazumjeva neke nedostatke. Precizna frekvencija transmisije lagano varira kao
rezultat velike brzine kretanja orbitrirajuih satelita. Svaki satelit koristi razliito
kodiranje svog signala, to traje oko 30 sekundi prije ponovnog startanja. Kao rezultat
ovoga, proces traenja signala i postizanja inicijalne pozicije (fiksiranja) je kompleksan,
te poveava cijenu, veliinu i potronju GPS prijemnika. Dalje, vrijeme poetne
inicijalizacije (fiksiranja) odnosno TTFF (time to firs fix) obino traje najmanje 1 minutu,
a esto i nekoliko minuta. Za neke primjene, kao to su hitni servisi, ovako odgaanje
(kanjenje) moe biti kritino.
Tanost i preciznost senzora
Dvije vane karakteristike bilo koje location-sensing tehnike su njena tanost i
preciznost. Tanost senzora jeste bliskost podataka dobijenih od senzora stvarnim tanim
vrijednostima. Preciznost senzora jeste nivo detalja podataka generisanih pomou
senzora. Na primjer, aktivne location-sensing tehnike bazirane na bliskosti, su openito
tane, ali njihova preciznost zavisi od gustine transmitera. U baznoj mobilnoj telefonskoj
mrei, gdje transmiteri mogu biti razmaknuti i po nekoliko kilometara, preciznost je
mala, jer nije mogue tano odrediti gdje je mobitel lociran unutar elije (Slika 7.20.a).

271

Tehnike praenja pokreta (motion tracking) imaju tendenciju da budu preciznije, ali
postaju netanije to je dui perioda praenja, jer se relativno male greke mjerenja
tokom vremena mogu nagomilati (propagacija greke). Na primjer, prilikom kretanja
brzinom od 3 km/h i u smjeru od 68 od sjevera, pogreno mjerenje brzine od 3.3 km/h i
smjera od 74 na senzoru vremenom uzrokuje sve veu divergenciju od stvarne lokacije
(slika 7.20.b). Nakon 5 sekundi poloajna greka e biti oko 60 cm. Nakon 5 sati greka
e narasti vie od 2 km.

a. Nepreciznost odreivanja poloaja


mobitela u eliji

b. Netanost poloaja koji se odreuje na


osnovu praenja kretanja

Slika 7.20: Tanost i preciznost senzora

GPS moe postii veoma visok nivo i tanosti i preciznosti. Meutim, inicijalno
fiksiranje (TTFF) moe biti sporo, a visokofrekventni GPS mikrotalasi male snage mogu
biti nedostupni unutar ili u sjenci objekta, to prestavlja njihove osnovne nedostatke.
Poboljanje tanosti, preciznosti i drugih karakteristika se moe postii kombinacijom
vie location-sensing tehnika. Na primjer, veina navigacionih sistema za automobile
koristi kombinaciju GPS-a i tehnike praenja pokreta (motion tracking) za tano i
precizno odreivanje lokacije. Kada je GPS fiksiran, lokacija auta se moe odrediti vrlo
tano i precizno. Kada lokalne pojave, kao to su tuneli ili blizina visokih zgrada,
zakratko blokiraju GPS signal, praenje brzine i orijentacije kretanja auta moe dopuniti
propuste GPS senzora u prikupljanju podataka nastale loim prijemom signala.
Na slian nain, asistirani GPS kombinuje location sensing tehniku baziranu na bliskosti
sa GPS-om. Ova kombinacija rezultira veom preciznou od lokacijskog snimanja
baziranog na bliskosti, a i veom brzinom od GPS-baziranog snimanja lokacije.
Asistirani GPS znatno pojednostavljuje proces dobijanja satelitskog signala. Koritenjem
informacija o lokaciji baziranih na bliskosti, generisanih pomou mobilne telefonske
mree, asistirani GPS moe predvidjeti lokacije GPS satelita i parametre njihovih signala,
reducirajui na ovaj nain TTFF vrijeme na svega par sekundi. Za hitne slube kao to je
E911 sistem, gdje je konvencionalni GPS isuvie spor, a snimanje lokacije bazirano na
bliskosti neprecizno, asistirani GPS moe ponuditi odrivu alternativu.

272

7.5.3 Lokacijski bazirani servisi


Lokacijski bazirani servisi (LBS) su specifine aplikacije koje za operisanje zahtjevaju
lokacijski svjesno raunarstvo. Neki primjeri LBS-a su prikazani na slici 7.16 (turistiki
informacion vodi, sistem protiv zloupotrebe kartica).
LBS se mogu tekoe klasificirati, saglasno njihovim funkcionalnim karakteristikama, kao
alokacioni servisi za pozicioniranje, praenje ili razmjetanje (dislociranje) mobilnih
resursa.
Pozicioniranje: Servisi pozicioniranja se odnose na omoguavanje pristupa informaciji i
resursima, bazirano na trenutnoj lokaciji korisnika. Jednostavan primjer servisa
pozicioniranja je lokacijski svjesna karta (kao to je karta ulica, koja se
automatski centrira na trenutnu lokaciju korisnika).
Praenje (tracking): Servisi praenja prestavljaju ekstenziju predhodno opisanih servisa
pozicioniranja, i odnose se na omoguavanje pristupa informaciji i resursima
bazirano na trenutnoj i proloj lokaciji korisnika. Primjer servisa praenja
ukljuuje automatiziranu naplatu cestarine, koju korisnik plaa za koritenje puta
na osnovu historije koritenja puta prilikom kretanja sa vozilom.
Razmjetanje mobilnih resursa (mobile resource allocation): Ovi servisi su ekstenzija
servisa praenja (tracking), i odnose se na omoguavanje pristupa informaciji i
resursima bazirano na trenutnoj i proloj lokaciji korisnika, kao i planiranju gdje
korisnik treba biti lociran u budunosti. Primjeri razmjetanja mobilnih resursa su
navigacija, lokacijski osjetljiva turistika upustva, upravljanje flotom (fleet
management), koordinacija dostavnih vozila i slino.
Postoje jo dvije dodatne karakteristike koje se zahtjevaju od veine LBS sistema. Prvo,
neki LBS sistemi trebaju biti kolaborativni, to znai biti sposobni za rad sa grupama
interaktivnih korisnika, za razliku od rada sa izolovanim pojedincima. Drugo, neki LBS
sistemi zahtjevaju integraciju drugih kontekstualnih podataka koji nisu vezani za
lokaciju, sa podacima deriviranim location-sensing tehnologijom. Na primjer, mnoge
aplikacije iz zdravsva i sigurnosti mogu imati korist od integrisanih biosenzora (na
primjer, za monitoring srca) sa LBS-om. Praenje rizinih pacijenata sa slabim srcem
preko LBS-a, moe omoguiti slubi hitne pomoi automatsku identifikaciju stanja i
lokacije pacijenta u sluaju pojave simptoma sranog napada. Od posebne vanosti su
aplikacije bazirane na kombinaciji orijentacijskih i lokacijskih senzora (lokacijskoorijentacijski bazirani servisi, LOBS). LOBS omoguava korisnicima pristup
informacijama o njihovoj okolini jednostavnim pokazivanjem na objekat od interesa (na
primjer, Websigns LOBS).
Websigns LOBS: Ovaj sistem je razvijen kao dio CoolTown projekta (http://cooltown.com).
Websigns sistem omoguava korisnicima da pristupe irokom spektru WWW baziranih
informacija i servisa povezanih sa fizikim objektima u njihovoj okolini. Websigns sistem koristi
GPS i senzor digitalnog kompasa koji su ugraeni u beini ureaj (mobitel, PDA ili slian) koji
ima Internet konekciju. Kada korisnici usmjere svoj PDA ureaj prema objektu od interesa u
svojoj blizini (na zgradu, spomenik, ili neku znamenitost), PDA se povee na Websigns server,
koji koristi lokaciju i orijentaciju ureaja za identifikaciju objekta na koji je pokazano. Nakon

273

identifikacije objekta, Websigns server alje odgovor sa informacijama ili servisima koji su
raspoloivi za taj objekat. Na primjer, usmjeravajui Websigns PDA ureaj na restoran moe
rezultirati prikazom informacija na PDA ureaju, o veeranjem meniju ili mogunosti
rezervacije stola za to vee. Ovakav sistem je baziran na modularnoj klijent-server arhitekturi i
koristi XML za interoperabilan rad razliitih koritenih ureaja.

Kao to se moe pretpostaviti, LBS sistem je sam po sebi distribuiran sistem, koji
zahtjeva arhitekturu sa visokim stepenom modularnosti i interoperabilnosti. Komponente
LBS sistema ukljuuju nezavisne raunarske ureaje, baze podataka, senzore i mobilne
raunare. Individualni raunarski ureaji trebaju biti sposobni za integrisanje i
procesiranje informacija iz raznovrsnih izvora, saradnju (kolaboraciju) sa drugim
umreenim senzorima i raunarskim ureajima. Ogranienja u veliini i potronji
podrazumjevaju da mobilni raunari imaju manje raunarske kapacitete od statikih
raunarskih sistema. Kao rezultat, za veinu interventnih LBS sistema (za hitne slube) se
koriste klijent-server sistemi i server-side strategije. Meutim, visoko decentralizirana
priroda LBS-a podrazumjeva da su distribuirane komponentne i peer-to-peer mrene
arhitekture openito podobnije za LBS i lokacijski svjesno raunarstvo.

7.5.4 Lokacijski svjesni sistemi i zatita privatnosti


Poto mobilni lokacijsko svjesni sistemi imaju potencijal da revolucioniziraju mnoge
aspekte svakodnevnog ivota, znaajan izazov za njihovu implementaciju lei u pitanju
kako zatiti linu privatnost pri njihovoj upotrebi. U interventnim situacijama (hitne
slube) veina korisnika bi eljela da tehnologija neprekidno prati i automatski informie
hitnu slubu o poloaju ugroenih osoba (E911 sistem u SAD-u). U isto vrijeme,
neprekidno praenje poloaja osoba i publikovanje ovih informacija ugroava njihovu
privatnost. Postoje podjeljena miljenja kad je u pitanju spoznaja da neka organizacija
(javna ili privatna) posjeduje informacije o trenutnom poloaju pojedinaca. Na primjer,
sluaj sudskog spora u SAD-u, vezan za rent-a-car kompaniju koja je koristila ugraene
GPS ureaje za praenje svojih vozila i naplaivanje kazni vozaima koji su prelazili
ogranienje u brzini. Kompanija je tvrdila da njihov sistem ima sigurnosni karakter, jer
obeshrabruje vozae u opasnoj vonji, dok je korisnik tvrdio da ovakav vid praenja
prestavlja napad na njegovu privatnost. Nakon dugotrajne pravne borbe korisnik je dobio
spor i znaajno obeteenje.
Pouka iz ovog bi bila da treba uspostaviti ravnoteu izmeu pervazivnog (iroko
praenog) i invazivnog (napadakog) koritenja LBS-a.
Lina privatnost je osnovno meunarodno priznato ljudsko pravo (po lanu 12
Univerzalne deklaracije o ljudskim pravima UN-a). Zatita digitalnih informacija o
osobama je vana komponenta prava na privatnost (tzv. data protection, fair information
practices). Ciljevi zatite podataka trebaju osigurati da organizacije:
prikupljaju i koriste line podatke samo za posebne namjene,
prikupljaju line podatke samo uz saglasnost dotine osobe i
preduzmu odgovarajue korake u pravcu sigurnosti, tanosti i raspoloivosti
linih podataka.
Meutim, zatita podataka mora postii kompromis izmeu zatite linog prava na
privatnost, i razvoja i koritenja same tehnologije. Zatita podataka je stavka koja se
274

odnosi na sve line digitalne podatke, ali u sluaju LBS-a postoje neki specifini
problemi vezani za njega:
Poznavanje lokacije neke osobe se moe koristiti za zakljuivanje o drugim
linim informacijama o toj osobi, kao na primjer, ime se bavi i kakva ima
interesovanja (sklonosti). Na primjer, informacije o estoj posjeti bolnice moe
navesti na zakljuak da je osoba ozbiljno bolesna, to utie nepovoljno na lino
osiguranje ili na izglede zaposljenja. Ovakvi zakljuci mogu biti neispravni. Bilo
da jesu ili nisu ispravni, veina ljudi cijeni takvu praksu kao nepravednu
(diskriminirajuu) i kao napad na privatnost.
Mobilni lokacijsko svjesni sistemi ne daju uvijek dobru indikaciju o poloaju
osoba. Lokacijsko svjesni senzori variraju po tanosti i preciznosti, to ponekad
zavisi od lokalnih uslova okruenja. Dalje, lokacijsko svjesni senzori zapisuju
lokaciju korisnikog ureaja, a ne samog korisnika. Ukoliko korisnik sluajno
zaboravi ureaj u nekom javnom prevoznom sredstvu, indikacija njegovog
poloaja na osnovu senzora e biti pogrena.
Korisnik ne mora biti svjestan da senzor prikuplja informacije o njegovoj lokaciji
(kao prilikom koritenja auta kojeg prati rent-a-car kompanija). Kada su korisnici
svjesni lokacijskog senzora, onda su oni obino u mogunosti da ga kontroliu
(dali i kada da ga koriste). Meutim, kada se informacije o linom poloaju
generiu kao proizvod nekog drugog servisa kojima korisnik pristupa (kao to je
snimanje lokacija u mrei mobilne telefonije bazirano na bliskosti), zatita line
privatnosti treba da ima posebnu vanost.
Pitanje zatite line privatnosti uz istovremeni razvoj i upotrebu novih lokacijski svjesnih
tehnologija, i dalje ostaje jedno od vanijih nerjeenih stavki sa kojim se suoava LBS.

275

276

8
8 Interfejsi
Kratak pregled
Polje istraivanja interakcije ovjeka sa raunarom (HCI, human-computer interaction)
se bavi dizajnom, evaluacijom i implementacijom efikasnih korisnikih interfejsa izmeu
ljudi i raunarskih ureaja. Dobar interfejs bi trebao biti i intuitivan (lagan za uenje i
koritenje) i izraajan (sposoban da efikasno specificira i obezbjedi eljene zadatke). GIS
interfejsi su esto bazirani na kartografskoj metafori: oni prikazuju karakteristike sline
konvencionalnim papirnim kartama. Meutim, GIS interfejsi mogu proiriti ovu metaforu
na nekoliko naina, na primjer, koritenjem animiranih, trodimenzionalnih, nevizualnih
ili multimodalnih prikaza.
Sposobnost raunarski baziranih sistema da meusobno operiu je kljuna osobina svake
GIS arhitekture, opisana u predhodnom poglavlju. Meutim, uspjeh svakog raunarski
baziranog sistema iskljuivo poiva na tome da li ga ljudi mogu efikasno koristiti.
Upravo kao to su GIS arhitekture dizajnirane da promoviu interoperabilnost izmeu
razliitih raunara, tako su i GIS interfejsi dizajnirani da osiguraju interoperabilnost
(interakciju) izmeu GIS-a i ovjeka. U ovom poglavlju se istrauju esencijalne
karakteristike GIS interfejsa. Sekcija 8.1 predstavlja osnovne principe raunarskih
interfejsa. Vaniji stilovi interfejsa koji se mogu koristiti u GIS-u se nastavljaju istraivati
detaljnije, poevi sa konvencionalnim kartografski baziranim interfejsima u sekciji 8.2,
prelazei na uloge animacije, trodimenzionalnog prikaza, nevizualnih interfejsa i
povratne sprege (feedback-a) u sekciji 8.3. i zavravajui sa razvojem GIS interfejsa za
razliite tipove korisnikih zadataka u sekciji 8.4.

8.1 Interakcija ovjeka i raunarske maine


Termin interakcije ovjeka i raunara (Human Computer Interaction - HCI) je prvi put
koriten tokom 80-tih godina prolog vijeka, u svrhu opisa interakcije izmeu raunarskih
sistema i ljudi. Termin je takoe koriten kao kovanica za polje istraivanja interakcije
ovjeka i raunara (HCI) koje se opisuje kao studiranje dizajna, evaluacije i
implementacije interfejsa izmeu raunarskih ureaja i ljudi. Slika 8.1 sumarizira kljune
komponente HCI-ja koje ine ovjek, raunar i interakcija izmeu njih. Ova sekcija
detaljno istrauje nain na koji se informacije razmjenjuju izmeu ovjeka i raunara, kao
i tipove interfejsa koji se koriste u cilju olakavanje ove interakcije.

277

Slika 8.1: Komponente interakcije ovjeka i raunara

8.1.1 Ulazno izlazni kanali


Ljudi i raunari su sposobni da alju i primaju informacije kroz vie razliitih modaliteta
(modova), koje nazivamo ulazno izlazni kanali. Raunari alju informaciju na IO (inputoutput) kanale koji se mogu opaati preko ljudskih ula.
Ljudska ula. ovjek ima pet ula koja primaju informacije izvan tijela, koja se nazivaju
eksteroceptori. To su vid (vizualno ulo), sluh (auditorno ulo), dodir (heptino ulo), miris
(olfaktorno ulo) i ukus (gustatorno ulo). Poarni alarm, na primjer, nas snabdjeva sa
auditornom (zvunom) informacijom o poarnoj opasnosti, i to spoznajemo prije nego to
moemo primiti slinu informaciju putem vida ili mirisa. Kada primaju informacije iz svog
okruenja, ljudi se uglavnom primarno slue vidom. Rezultat ovoga imamo da se vizualna
informacija uglavnom primarno koristi i u HCI-ju, na primjer, koritenjem PC monitora ili
ekrana na runim (hand-held) raunarima. Zvune i dodirne informacije obino igraju
sekundarnu ulogu u HCI-ju, sluei iskljuivo za kompletiranje vizualnih informacija. Meutim,
pod izvjesnim okolnostima takve informacije mogu postati i primarni modalitet HCI-ja. Na
primjer, neki raunarski ureaji su suvie mali za efikasan vizualni prikaz. Osjeaji mirisa i
ukusa igraju manje vanu ulogu u HCI-ju. Pored pomenutih, ljudi imaju jo dva osjetila koja su
vezana za kretanje tijela, takozvane proprioceptore To su ulo za ravnoteu i ulo za kretanje,
koja su sposobna da osjete nae sopstvene pokrete i tenzije. Ova osjetila su vana u HCI-ju, iako
se obino koriste kao potpora vizualnim informacijama. Na primjer, simulacija leta se moe
postaviti na mobilnu platformu koja simulira osjeaj ravnotee, imitirajui pokrete stvarnog
aviona. U budunosti e se novi IO kanali za HCI moi razvijati kao neuronski interfejsi , koji
omoguavaju raunarima da direktno alju i primaju informacije iz ljudskog nervnog sistema.
Kao argument ovome, 2002. godine je britanski kibernetiki naunik, profesor Kevin Warwick u
svrhu eksperimenta sa neuronskim interfejsima hirurkim putem implantirao niz malih elektroda.
Ovakva HCI istraivanja mogu dati veliki doprinos za ljude sa raznim fizikim nedostacima koji
im onemoguavaju rad sa raunarom pomou tastature i slinih ureaja.

Raunari su opremljeni sa ureajima za detekciju informacija poslatih od korisnika putem


istih IO kanala preko kojih se one alju prema korisniku. Na primjer, PC prima
informaciju od korisnika primarno preko dodirnog IO kanala, odnosno tastature i mia.
Sa druge strane informacija se iz PC-a alje korisniku na vizualni IO kanal, putem VDUa (Visual Display Unit), odnosno monitora.
278

Isti IO kanal se moe koristiti za slanje informacije u oba smjera, iz raunara prema
korisniku i od korisnika prema raunaru. Na primjer, auditorna (sluna) informacija se
moe poslati putem raunarskog zvunika i primljena preko ljudskog uha, ili poslana
putem ljudskog glasa i primljena putem raunarskog mikrofona. Da bi izbjegli konfuziju,
termin prikaz (display) se najee odnosi na izlaz od raunara prema korisniku putem
bilo kojeg IO kanala, dok unos (input) se standardno koristi za unos od strane korisnika
prema raunaru. Informacije prikazane na vie od jednog IO kanala u isto vrijeme mogu
biti korisne prilikom naglaavanja vanih poruka. Na primjer, da bi upozorili PC
korisnika na panju, esto e vizualnu poruku pratiti zvuni znak beep. Sistemi koji
omoguavaju prikaz ili unos informacija na vie od jednog IO kanala (moda) simultano
(istovremeno) se nazivaju multimodalnim.
Postoje mnogi razliiti ureaji koje koriste ljudi za interakciju sa raunarima, poput
tastature, mia, VDU-a (Visual Display Unit) ili zvunika, a mnogi e se jo bez svake
sumnje razviti u budunosti. Bez obzira koji se IO kanal koristi, on nezaobilazno mora
konvertovati informaciju izmeu digitalnog i analognog formata (slika 8.1). Ljudi su
organizmi koji alju i primaju informacije u kontinuirano promjenjivom analognom
formatu, a raunari su digitalne maine koje za svoj rad zahtjevaju diskretne digitalne
informacije. Na primjer, raunarski mi konvertuje kontinuirane analogne pokrete naih
aka i ruku u diskretan digitalni format koji se moe koristiti od strane raunara. Zvunik
konvertuje diskretne digitalne audio informacije pohranjene ili generisane pomou PC-a
u ujne analogne zvune talase.
I na kraju, izuzetno vano razmatranje vezano za korisniki unos (input) je distinkcija
izmeu implicitnog i eksplicitnog unosa. U konvencionalnim informacionim sistemima,
veina korisnikih unosa je eksplicitna, koji se od korisnika svjesno realizuju putem
ureaja kao tu su tastature ili mi. Kontekstno svjesni sistemi, poput LBS-a (lokacijski
bazirane usluge), omoguavaju koritenje implicitnog unosa, unutar kojeg sistem
automatski prikuplja i interpretira smisaone informacije o korisnikom kontekstu. Na
primjer, putnik koji eli doi do autobuskog reda vonje (vrijeme polazaka i dolazaka)
moe eksplicitno postaviti upit za ovom informacijom putem mobilnog raunarskog
ureaja, preko tastature ili sistema za prepoznavanje rukopisa. Meutim, umjesto
ovakvog pristupa, lokacijski svjestan sistem moe automatski interpretirati korisnikovu
lokaciju na autobuskoj stanici kao implicitan upit za informacijom o vremenu dolaska
sljedeeg autobusa na tu stanicu.

8.1.2 Razmiljanje i procesiranje


Informacione sisteme koristimo, jer sposobnost raunarskog procesiranja informacija
moe podrati i poboljati nae sopstvene sposobnosti procesiranja. GIS, na primjer,
moe pouzdano pohraniti podatke o milionima geografskih objekata, izraunavajui
povrine i duine ovih objekata u djeliu sekunde, to bi se za bilo kojeg ovjeka
smatralo nemoguim. Istovremeno, mnogi zadaci procesiranja informacija koji su za
ovjeka prosti, za raunar mogu biti sloeni i teko izvodivi. Ljudska sposobnost
procesiranja informacija se prilino razlikuje od one koja odlikuje raunarski sistem i
esto se naziva razmiljanjem kako bi se razlikovala od ove druge. Mogu se identificirati
najmanje dvije ope oblasti po kojima sposobnost ljudskog razmiljanja prevazilazi
sposobnost raunarski zasnovanog procesiranja informacija, a to su rezonovanje i
rjeavanje problema.

279

Rezonovanje
Rezonovanje je proces pomou kojeg se informacije koriste za zakljuivanje, odnosno
generisanje nove informacije o problemskoj domeni. Postoje tri razliita tipa
zakljuivanja koja se koriste u oblasti rezonovanja. Deduktivno zakljuivanje uvodi
primjenu pravila za specifine primjere. Induktivno zakljuivanje je proces generalizacije
od specifinih primjera do generalnih pravila. Obratite panju da induktivno
zakljuivanje ne treba poistovjeivati sa matematikim indukcijom, koja u biti predstavlja
deduktivni proces. Obduktivno zakljuivanje uvodi generisanje objanjenja za neka stanja
stvari. Tabela 8.1 ovo rezimira kroz primjere za svaki od tipova zakljuivanja.
Tabela 8.1: Detuktivni, induktivni i obduktivni proces zakljuivanja

Zakljuivanje
Deduktivno

Forma
pravilo+sluajrezultat

Induktivno

sluaj +rezultatpravilo

Obduktivno

pravilo+rezultatsluaj

Primjer
Svi Britanci vole aj.
Mike i Matt su Britanci.
Dakle, Mike i Matt vole aj.
Mike i Matt su Britanci.
Mike i Matt vole aj.
Dakle, svi Britanci vole aj.
Svi Britanci vole aj.
Mike i Matt vole aj.
Dakle, Mike i Matt su Britanci.

Podrazumjevajui da su pravila uenja (dedukcije) zasnovana na istini, deduktivno


zakljuivanje garantuje da ukoliko su premise (izjave) tane, zakljuak takoe mora biti
taan. Induktivno i obduktivno zakljuivanje ne moe garantovati istinite zakljuke, ak i
ako su premise tane. U primjeru induktivnog zakljuivanja (tabela 8.1), ak i da Mike i
Matt jesu Britanci i da vole aj (mi jesmo i mi inimo), ne slijedi obavezno da svi
Britanci vole aj. Uprkos ovoj nepouzdanosti, induktivno i obduktivno zakljuivanje su
centralni pristupi kod ljudskog rezonovanja, jer nam dozvoljavaju da doemo do
zakljuaka i generiemo hipoteze koje premauju informacije sadrane u samim
premisama. ovjek posjeduje vie mehanizama za regulisanje potencijalno nepouzdanog
rezonovanja, kao to je unoenje implicitnog kontekstualnog znanja u proces
rezonovanja, ili revidiranje znanja ukoliko se ono smatra nepouzdanim i drugi
mehanizmi. Na primjer, ukoliko bi neko koristio induktivno zakljuivanje iz tabele 8.1 i
usvoji zakljuak da svi Britanci vole aj, a zatim upozna Mary koja je Britanka, ali ne
podnosi aj, trebao bi revidirati svoj originalni zakljuak kako bi ga prilagodio ovoj novoj
informaciji.
Openito, raunari se oslanjaju samo na procese deduktivnog zakljuivanja, iako se u
nekim sistemima baziranim na vjetakoj inteligenciji koriste i induktivno i obduktivno
rezonovanje. Kao rezultat, procesiranje u raunarskom sistemu je deduktivno validno, ali
ovaj nain rezonovanja sprijeava kod raunara generisanje novih zakljuaka i hipoteza.
Rjeavanje problema
Dok rezonovanje uvodi koritenje informacija o poznatoj problemskoj domeni, rjeavanje
problema se odnosi na sposobnost dizajniranja rjeenja za probleme u nepoznatim
problemskim domenama. ovjek obino koristi heuristiku, u kojoj se za rjeavanje
280

problema koriste informacije o pokuaju i greci zasnovane na pravilima palca


(pogodak/promaaj). Neki primjeri heuristike koritene u algoritmima su navedeni u
poglavlju 5, poput A* heuristike u dijelu 5.7.3.
Druga ovjekova tehnika za rjeavanje problema je koritenje analogije: prilagoavanje
rjeenja iz jedne domene problemima u drugaijoj domeni. Objektna orijentacija,
diskutovana u drugom poglavlju, je primjer uspjene analogije koritene u razvoju
softvera. Tretiranjem softverskih modula kao fizikih objekata, koji imaju identitet, stanje
i ponaanje, omoguava se jednostavnije dizajniranje i programiranje sofisticiranog
softvera. U stvari, analogija je sinonim za metaforu, osnovnu tehniku za dizajniranje
korisnikog interfejsa na nain da rad sa raunarom bude intuitivnji. U ovom poglavlju
emo se upoznati sa nekim od ovakvih metafora.
ovjek je takoe prilagoen na uenje, odnosno poboljavanje svojih performansi tokom
vremena. On usvaja i rafinira vjetine rjeavanja problema koje je stekao kroz
ponavljanje pokuaja. Razvijene su mnoge tehnike vjetake inteligencije za
osposobljavanje raunara da imitiraju sposobnost ljudskog rezonovanja i rijeavanja
problema. Neke od njih su detaljnije opisane u devetom poglavlju. Meutim, ove tehnike
su openito efikasne samo unutar uih problemskih domena. U ovom smislu, jo nije
razvijen takav raunarski sistem, koji moe dosei fleksibilnost i adaptibilnost ljudskog
razmiljanja.

8.1.3 Interfejsi i interakcija


Dijalog je proces interakcije izmeu dva ili vie agenata, gdje agenti sarauju na
rijeavanju konflikata i izvravanju nekog zadatka. Na primjer, ljudi obino koriste
dijalog za meusobnu komunikaciju. U ljudskoj konverzaciji svaki sagovornik slua
onog drugog, koji odgovara na ono to je ovaj prethodno rekao. Proces interakcije
izmeu raunara i njegovog korisnika takoe predstavlja formu dijaloga, iako HCI
dijalozi obino imaju mnogo rigidniju strukturu u odnosu na ljudsku konverzaciju.
Dijalog izmeu ljudi i kompjutera je posredovan putem korisnikog interfejsa. Korisniki
interfejs u HCI-ju je konceptualno slian interfejsu u distribuiranom sistemu, koji je
predstavljen u 7. poglavlju (kao i interfejsu u OO modeliranju, predstavljenom u 2.
poglavlju). Korisniki interfejs u HCI-ju je mehanizam pomou kojeg korisnik pristupa
servisima koje raunar nudi.
Dvije karakteristike za bilo koji korisniki interfejs su koliko je intuitivan i koliko je
izraajan njegov stil. Intuitivan interfejs je jednostavan za koritenje i zahtjeva
minimalne napore za uenje rada sa njim.
Intuitivni interfejsi: U svojoj knjizi, The Design of Everyday Things, Don Norman (1988.)
detaljno izlae znaaj intiutivnosti interfejsa. Normanova analiza je prilino uopena i moe se
primjeniti na kompjuterizovane korisnike interfejse, poput GIS interfejsa, kao i na fizike
interfejse, poput proste ruke na vratima. etiri kljune osobine su centralne u Normanovoj
analizi: vidljivost (u smislu preglednosti i izgleda), opisnost (u smislu preslikavanja), dostupnost
(u smislu omoguenosti i pristupanosti) i povratna sprega. Vidljivost je mjera koja opisuje do
kojeg su stepena osobine interfejsa istaknute i jednostavne za interpretaciju. U ovom smislu,
interfejs kod kojeg su kljune funkcije skrivene nije intuitivan. Dostupnost je ona osobina objekta
koja olakava neku akciju. Na primjer, dugme je za pritiskanje (to jest, dugme omoguava
pritiskanje), a ruka na vratima je za okretanje ili povlaenje. Opisnost je blisko povezana sa
metaforama i odnosi se na znaenje osobina interfejsa u smislu njihove saglasnosti sa

281

odgovarajuim prirodnim uzorcima. Na primjer, u GIS interfejsu, za tipku gore se oekuje


koritenje pri zumiranju u kartu, ili pri povlaenju karte prema dole. Drugaije znaenje moe
izgledati udno i neintuitivno. Na primjer, koritenje tipke lijevo za povlaenje karte prema
dole. Povratna sprega (feedback) podrazumjeva vraanje informacije korisniku o onome to je
uraeno i dali je to izvreno uspjeno.

Izraajan interfejs omoguava korisnicima efikasno izvravanje specifinih zadataka.


Izraajni interfejsi dozvoljavaju korisnicima da preciznije specificiraju komande, uz
upotrebu jednog ranga opcija, koje modificiraju ponaanje komandi. Idealni stil interfejsa
je i izraajan i intuitivan. Naalost, obino nije mogue postii oba ova cilja. Razliiti
stilovi interfejsa trebaju napraviti balans izmeu izraajnosti i intuitivnosti. U narednom
izlaganju e se predstaviti nekoliko standardnih stilova interfejsa koji su rezimirani u
tabeli 8.2.
Tabela 8.2: Osnovni stilovi interfejsa

Izraajnost / intuitivnost
Izraajniji

Intuitivniji

Stil interfejsa
Komandni unos (linija)
Meniji
Forme
WIMP
Prirodni jezik

Primjer
UNIX date komanda
MS Word meni
Website ruter
Mac OS i aplikacije

Command entry interfejs


U interfejsu za unos komandi, korisnik izdaje komande raunaru direktno. Unos komandi
nudi mnoge razliite opcije koje se mogu koristiti za modifikaciju ponaanja osnovnih
komandi. Interfejsi za unos komandi su zbog toga izraajni, ali nisu intuitivni, jer
korisnik mora uiti i pamtiti veliki broj komandi i njihovih opcija. Komandni prompt
(command prompt) u Windowsima je takoe primjer ovakvog interfejsa. Tipkanje
komande dir e rezultirati izlistavanjem sadraja tekueg direktorija, dok e komanda
dir/a:d/p izlistati samo poddirektorije tekueg direktorija, i to stranicu po stranicu. Slika
8.2 prikazuje primjer interfejsa za unos komandi, gdje su komande na vrhu, a rezultati
izvrene komande ispod.

Slika 8.2: Primjer interfejsa za unos komandi

282

Interfejs sa menijima
U interfejsu sa menijima, komande su organizovane u logike grupe koje olakavaju
korisnicima pristup i pamenje komandi. Pojedine funkcije mogu imati i svoje podmenije
koji izlistavaju funkcije vezane za njih (slika 8.3). Openito, ovi interfejsi su manje
izraajni od interfejsa za unos komandni, jer meni ograniava korisnika na koritenje
samo onih komandi koje su u njemu raspoloive. Sa druge strane, ovi interfejsi su
intuitivniji poto meniji omoguavaju logiko grupisanje komandi.

Slika 8.3: Primjer interfejsa sa menijem i podmenijem

Interfejs sa formama
U interfejsu sa formama, raunar prezentira specifina pitanja na koja korisnik mora
odgovoriti da bi izvrio neki zadatak. Na primjer, prilikom rezervacije putnikih karata
preko WWW-a, za unos informacija o destinaciji, datumu i vremenu putovanja koriste se
forme koje se ispunjavaju. Forme su intuitivne, jer tokom interakcije navode korisnika
korak po korak do zavretka procedure. Forme nisu izraajne poput interfejsa sa
menijima i unosom komandi, jer mogu ponuditi pristup samo nekolicini specijaliziranih
komandi.
WIMP interfejs
WIMP interfejsi su iroko poznati PC korisnicima, poto predstavljaju osnovu veine
savremenih desktop (stolnih) raunarskih operativnih sistema, ukljuujui MS Windows i
Mac OS. WIMP interfejsi se dugo uspjeno primjenjuju, jer su istovremeno i visoko
intuitivni i relativno dobro izraajni.
WIMP je akronim od windows, icons, menus i pointers. Prozori se koriste kao nezavisni
kontejneri za pojedine procese ili aplikacije (slika 8.4). Ikone su male slike koje
oznaavaju metaforu za komande ili funkcije. Na primjer, dvogled se moe koristiti kao
ikona za komandu traenja (slika 8.4). Ikone omoguavaju korisnicima intuitivniji
pristup pojedinim komandama. Predhodno predstavljeni meniji obezbjeuju logiku
strukturu za komande i predstavljaju vanu komponentu WIMP interfejsa. Konano,
pokazivai omoguavaju korisnicima da pokau na neki elemenat i klikom na njega
aktiviraju funkcije vezane sa njim. Pokazivai su visoko intuitivni, jer predstavljaju
jednostavnu gestu, koju ljudi esto koriste za usmjeravanje panje na neto interesantno.

Slika 8.4: Primjer WIMP interfejsa

283

Grupe prozora u WIMP interfejsu su esto aranirane i organizovane koritenjem desktop


metafore (metafore radnog stola).
Desktop metafora sugerie slinost izmeu
korisnikog interfejsa i radnog stola, gdje prozori zamjenjuju listove papira, digitrone,
satove i slino. Koritenje desktop metafore pomae da koordinacija i prelazak izmeu
razliitih softverskih aplikacija budu intiutivniji.
Metafore. U ljudskom jeziku metafora predstavlja koritenje rijei ili fraza kojima se jedne ideje
ili objekti opisuju drugim idejama i objektima, kako bi se napravilo figurativno poreenje izmeu
ovoga dvoga. Na primjer, izjava interfejs je ugovor je metafora, kojom se namjerava sugerisati
na imaginarnu slinost izmeu raunarskog interfejsa i ugovora (to jest, interfejs definie i
ograniava tipove interakcije koji se mogu izvoditi izmeu dva agenta, raunara i ovjeka).
Metaforu je openitije definisao Johnson (1987.) kao iroko prisutan modalitet razumjevanja
preko kojeg projeciramo uzorke iz jedne iskustvene domene da bi struktuirali drugu domenu koja
je drugaije vrste. Potujui ovo, metafore su veoma sline modelima: izvorna domena je
projecirana pomou metafore u ciljnu domenu. Na primjer, u metafori sa radnim stolom, izvorna
domena radnog stola je projecirana u ciljnu domenu raunarske manipulacije sa fajlovima.
Elementi izvorne i ciljne domene u metafori su obino preuzeti iz razliitih lingvistikih
kategorija. Madsen (1994.) je uspostavio neke od glavnih lingvistikih kategorija, kao to su ive
nasuprot neivih, te ljudske nasuprot ivotinjskih i fizikih. Upravo ukorijenjena priroda
metaforinog razumjevanja kod ljudi ini metafore monim sredstvom za interakciju ovjeka i
raunara. Traenje odgovarajuih metafora za manipulaciju prostornim podacima predstavlja
stalni izazov u istraivanju GIS-a. Kuhn i Frank (1991.) diskutuju o formalnom pristupu
metaforinim funkcijama unutar konteksta prostornih aplikacija. Johnson (1987.) koristi termin
image shema za opis cjelokupne metaforine strukture. Mark (1989.) analizira geografske
koncepte u kontekstu image sheme i diskutuje relaciju izmeu korisnikog pogleda na prostor
(user's view of space) i GIS operacija.

Interfejs sa prirodnim jezikom


Veina ljudi koriste govorni ili pisani jezik, koji se naziva prirodnim jezikom, za
meusobno komuniciranje. Prirodni jezik je potencijalno idealan za HCI interfejse, jer je
on istovremeno i visoko intuitivan (kad se jednom naui) i visoko izraajan. Meutim,
prirodni jezici su esto dvosmisleni, to rezultira da interfejs sa prirodnim jezikom jo
uvijek nije dovoljno unaprijeen za generalno koritenje u HCI-ju (zbog ega i nema
odgovarajueg primjera u tabeli 8.2). Na primjer, reenice Time flies like an arrow
(vrijeme leti kao strijela). i Fruit flies like a banana (vone muice vole bananu). su na
prvi pogled strukturalno sline, ali sutinski mogu imati sasvim razliit smisao.
Vano je zapaziti, da su izuzev WIMP interfejsa, svi stilovi interfejsa nezavisni od IO
kanala koji se koriste za HCI. Iako je WIMP interfejs zasnovan primarno na vizualnom
kanalu, ostali osnovni stilovi se mogu bazirati na vizualnim, auditornim ili u manjoj mjeri
dodirnim IO kanalima.

8.2 Kartografski interfejsi


Svi opisani stilovi interfejsa, izuzev interfejsa za prirodnim jezikom, se mogu nai u
skoro svakom standardnom raunarskom sistemu. Dijalog izmeu korisnika i GIS-a
obino podrazumjeva i neke dodatne stilove interfejsa, koji su vie specijalizirani. Jedna
oblast, koja je jako doprinjela razvoju sadanjih GIS interfejsa, je kartografija.
Kartografija je umjetnost, nauka, tehnologija i historija karata i izrade karata. Principi

284

kartografskog dizajna su razvijeni stoljetnim koritenjem karata, i jo uvijek su visoko


relevantni (bitni) za efektivan HCI i GIS.
Postoji distinkcija, ne uvijek naglaena, ali prisutna izmeu prostorne i grafike
reprezentacije objekata. Prostorni objekti postoje direktno u aplikacionoj domeni, dok su
grafiki objekti prezentacijski oblik prostornih objekata. U prvom poglavlju je
predstavljena ideja da kartografski prikaz u GIS-u kombinuje GIS funkcije pohranjivanja
i prezentacije podataka. Fundamentalna razlika izmeu karata i GIS-a je da na karti
prostorni objekti i njihova grafika reprezentacija mogu biti isto, dok su u GIS-u
prostorni objekti i njihova reprezentacija uvijek odvojeni.
Karte su efektivni alati za prezentaciju geoprostornih podataka, jer one obezbjeuju
apstraktne grafike reprezentacije geografskog svijeta, naglaavajui pri tome znaajne, a
zanemarujui nevae informacije.
Korisnici karata su zato u mogunosti da se fokusiraju na istaknute prostorne relacije i
sadraj koji je prikazan na karti, bez odvraanja panje nevanim detaljom.
Karte postiu ovu apstrakciju koritenjem tri primarna mehanizma. Prvo, karte su
simplificirane, obezbjeujui samo ogranienu koliinu detalja o geografskom svijetu. Na
primjer, obino ne oekujemo da na putnoj karti budu predstavljeni minorni detalji o
svakom putu, kao to je suenje puta ili manje krivine i okuke. Drugo, karte su
klasificirane, obezbjeujui na ovaj nain samo informacije o izvjesnim tipovima
relevantnih objekata. Na primjer, informacije o tipovima tla ili podzemnim instalacijama
se obino ne pojavljuju na kartama putne mree. Tree, karte koriste simbolizaciju za
prikaz razliitih geografskih objekata.

a. Razmjera 1:100 000

b. Razmjera 1:25 000

Slika 8.5: Kartografska generalizacija na topografskim kartama (izvor USGS)

Termin kartografska generalizacija se koristi za opis procesa generisanja karata na


odgovarajuim nivoima apstrakcije, koritenjem operacija poput simplifikacije,
klasifikacije i simbolizacije. Za ilustraciju, slika 8.5 prikazuje dvije topografske karte sa
razliitim razmjerama. Isjeak karte na slici 8.5b je prikazan isprekidanom linijom na
slici 8.5a. Meutim, ove dvije karte nisu samo prosto uveane, odnosno smanjene jedna u
odnosu na drugu, nego predstavljaju prikaz istog prostora, ali sa razliitim nivoima

285

apstrakcije. Za opis povezanosti izmeu ove dvije karte se mogu koristiti operacije
generalizacije. Na primjer, pojedine kue na slici 8.5b (prikazane crnim takama) su
uklonjene na slici 8.5a (to predstavlja tip procesa simplifikacije poznat kao eliminacija).
Primjeri linijske simplifikacije, predstavljene u sekciji 5.2.3, se takoe mogu vidjeti na
ivicama i granicama na slikama 8.5a i 8.5b.

8.2.1 Simbolizacija karte


Karte koriste niz vizualnih simbola za reprezentaciju razliitih geografskih objekata.
Proces primjene simbola se u ovom smislu naziva simbolizacijom karte. Da bi
reprezentovali i oblikovali razliite kartografske objekte, kartografi manipuliu razliitim
grafikim aspektima vizualnih simbola, koje nazivaju vizualnim varijablama, odnosno
grafikim varijablama. U tabeli 8.3 je rezimirano est najee koritenih vizualnih
varijabli: poloaj, veliina, orijentacija, oblik, boja i uzorak.
Da bi se vizualne varijable iskoristile u daljem razlikovanju vizualnih simbola,
identificirane su varijacije u svakoj vizualnoj varijabli sa zajednikim asocijacijama ili
porukama. Najoitija vizualna varijabla na karti je poloaj. Relativnim odnosom poloaja
razliitih simbola na karti daje se informacija korisniku o odnosima izmeu razliitih
geografskih objekata (koji su prezentirani ovim simbolima). Veliina simbola na karti je
esto koritena da naznai relativnu veliinu ili vanost: vei simboli obino indiciraju
vie neega. Orijentacija se standardno koristi za opisivanje pravca ili protoka. Oblik se
obino koristi u ikonografskoj formi. Na primjer, kvadrat sa kriiem na vrhu je
konvencionalno koriten da indicira crkvu.
Tabela 8.3: Vizualne varijable

Vizualna varijabla
Poloaj

Primjer

Primjer asocijacije
Indicira poloaj objekta,
na primjer X je zapadno od Y.
Y

Veliina

Indicira koliinu ili vanost,


na primjer, X je vanije od Y.
X

Orijentacija
X

Oblik
X
Boja (nijansa,
zasienost,
vrijednost)
Uzorak (tekstura,
fokus i aranman)

286

Indicira pravac ili tok,


na primjer X se kree upravno
na Y.
esto koritena ikonografija,
na primjer, X predstavlja
crkvu, a Y trangulacionu
taku.
Vrijednost indicira koliinu ili
vanost, na primjer, postoji
vie neega za Y nego za X.
Tekstura (gustina) indicira
koliinu ili koncentraciju, na
primjer, neto ima veu
koncentraciju za X nego za Y.

Boja je standardno modelirana kao kombinacija tri komponente: nijansa, zasienost i


vrijednost (hue, saturation, value), poznata kao HSV model. Nijansa se odnosi na sjenku
boje, na primjer, koliina crvenila ili zelenila. Izvjesne nijanse imaju posebne asocijacije
u simbolizaciji karte. Plava, na primjer, je esto rezervisana za vodene povrine, dok se
crvena moe koristiti za naglaavanje opasnih povrina. Vrijednost se odnosi na intenzitet
boje, njenu posvjetljenost ili potamnjenost. Kao i veliina, vrijednost se esto koristi za
naznaavanje relativne koliine ili vanosti: tamnije boje standardno indiciraju vie
neega. Zasienost se odnosi na popunjenost bojom, odnosno sa kojim intenzitetom se
neka boja pojavljuje. Zasienost se esto pojavljuje u kombinaciji sa vrijednou, ali se
moe i nezavisno koristiti za isticanje ili utisak sa izvjesnim simbolima.
I konano, uzorak se odnosi na teksturu (gustinu), aranman (na primjer, poredani ili
sluajni) i fokus simbola (na primjer vrsta vrijednost ili fuzzy). Uzorak se moe koristiti
za komunikaciju razliitih informacija, ukljuujui relativnu koliinu (na primjer, gui
simboli indiciraju vee koncentracije neega) ili izvjesnost (na primjer, simboli veih
fuzzy vrijednosti indiciraju manju izvjesnost).
Kao i WIMP interfejsi, koji esto koriste desktop metaforu za ostvarenje intuitivnije
interakcije, tako i mnogi GIS interfejsi koriste metaforu karte: oni su dizajnirani da
iskoriste simbolizaciju karte i prikau kartolike karakteristike. Karte i simbolizacija karte
su danas za veinu ljudi prepoznatljivi. Posljedica ovoga je da prihvatanje kartografske
metafore obino vodi intuitivnijim GIS interfejsima, i to barem za one ljude koji su ve
navikli koristiti konvencionalne karte.
Metafora karte je mona vizualna prezentacijska tehnika koju treba koristiti i
interpretirati sa posebnom panjom. Mark Monmonierova knjiga How to Lie with Maps
(kako lagati pomou karata) predstavlja mnoge primjere manipulacije i pogrene
prezentacije informacija pomou karata. Na primjer, slika 8.6 prikazuje kartu o
izvjetajima primjeenih neidentifikovanih leteih objekata (NLO) iznad Ontarija u
Kanadi. Relativne veliine glavnih gradova i simbola premjeenih letilica su promiljeno
odabrane sa proporcijom da naglase vanost primjeenih objekata. Dalje, duina
vremenskog perioda tokom kojeg su objekti opaani je priguen, dajui utisak da je
Toronto opsjednut svemirskim osvajaima.

Slika 8.6: Primjeeni NLO-ovi u junom Ontariju

287

Uprkos njenim prednostima, metafora karte ima i etiri glavne mane koje limitiraju
izraajnost i intuitivnost kartografski baziranog GIS interfejsa:
Karte su statine i siromane pri reprezentaciji promjena i evolucije geografskih
objekata.
Karte su dvodimenzionalne, tako da koritenje kartografske metafore oteava
reprezentaciju kompleksnih trodimenzionalnih geografskih objekata.
Karte i kartografski simboli su bazirani ekskluzivno na vizualnim IO kanalima, i
ne koriste prednosti auditornih, dodirnih ili drugih IO kanala.
Karte nude samo ograniene mogunosti za povratnu spregu (feedback). Karte
omoguavaju vizualni prikaz informacija, ali korisnici karata se ne mogu upustiti
u sofisticiraniju interakciju sa kartama.
Tema o geovizualizaciji, koja se uvodi u sljedeoj sekciji, ima za cilj adresirati ova
ogranienja o kartografskoj metafori.

8.3 Geovizualizacija
Geovizualizacija (geografska vizualizacija) je proces koritenja raunarskog sistema za
dobijanje uvida i razumjevanja geoprostornih informacija. Brojni eksperimenti sugeriu
da ljudi koriste dva fundamentalno razliita tipa informacija u procesu razmiljanja:
verbalni i vizualni. Verbalno razmiljanje je vano za itanje i pisanje, te uee u
konverzaciji, kao i logiko razmiljanje. Vizualno razmiljanje je vano za rezonovanje o
grupisanju, dijelovima i prostornoj konfiguraciji objekata.
Nauna vizualizacija (scientific visualization) je proces koritenja informacionog sistema
za reprezentaciju i interakciju sa informacijama na nain da se pobolja vizualno
razmiljenje. Vano je naglasiti da se vizualno u vizualizaciji odnosi na vizualno
razmiljanje, a ne iskljuivo na vizualni IO kanal (vizualizacija moe biti bazirana na
bilo kojem IO kanalu, na primjer, vizualnom, auditornom, heptinom).
Geovizualizacija se pojavila u zadnjim godinama kao grana naune vizualizacije koja se
specifino bavi geoprostornim informacijama.
Kartografska kocka: Kartografska kocka (prikazana ispod) je predloena kao nain
konceptualizacije odnosa izmeu koritenja konvencionalne karte i geovizualizacije
(MacEachren, 1994). Kartografska kocka ima tri ose: interaktivnost, ciljeve i audijenciju.
Interaktivnost je stepen do kojeg korisnici mogu manipulisati i redefinisati kartu. Ciljevi se
odnose na stepen do kojeg je karta dizajnirana (s ciljem) da pomogne korisnicima u otkrivanju
novih informacija. Audijencija oznaava stepen do kojeg je karta namjenjena odreenoj grupi
korisnika (odnosno specijalizovanoj audijenciji). Openito konvencionalne karte su smjetene u
donji lijevi ugao kocke, jer prezentiraju poznate (postojee) informacije javnoj audijenciji
koritenjem niih nivoa interaktivnosti. Suprotno, tehnike geovizualizacije su locirane u gornji
desni ugao kocke, jer koriste visoke nivoe interaktivnosti i pomau privatnoj audijenciji za
otkrivanje novih informacija.
Na primjer, konvencionalna topografska karta moe biti korisna u predstavljanu postojeih
(poznatih) informacija, kao to je, recimo, putanja do vrha planine, ali ona sama nije dovoljna za
pomo korisnicima u otkrivanju novih (nepoznatih) informacija, kao to je, na primjer,
razumjevanje procesa oblikovanja reljefa unutar neke regije. Dalje, konvencionalna topografska
karta je javna u smislu, da je bilo ko, od planinara pa do prostornih planera, moe koristiti.

288

Najvei dio prikaza informacija koritenjem GIS-a su namjenjene privatnoj audijenciji u smislu
da oni egzistiraju samo na raunarskom ekranu korisnika, i to nekoliko sekundi prije nego se
promjene ili zamjene drugim prikazma.

Prikaz kartografske kocke

Principi geovizualizacijskog dizajna naglaavaju vanost koritenja dinamikih,


interaktivnih i multimedijalnih sposobnosti raunara da pomognu korisniku da dobije
bolji uvid u geografske probleme, odnosno da dobiju geografsko poimanje. Tehnike
geovizualizacije mogu proiriti (produbiti) metaforu karte na vie naina, to rezultira
interfejsima koji su i intuitivniji i izraajniji. Slijedee sekcije detaljnije istrauju etiri
tehnike vizualizacije od posebne vanosti za geoprostorne informacije: animacija,
trodimenzionalni prikazi, nevizualni prikazi i povratna sprega (feedback).

8.3.1 Animacija
Konvencionalne papirne karte su statine i njihov izgled (sadraj i stil) je vezan za
vrijeme izrade. Sa druge strane, prikazom serije statinih slika (prostornih podataka) na
raunaru, mogue je tehnikom animacije stvoriti utisak kretanja ili promjena kroz
vrijeme. Svaka statina slika unutar sekvence koja stvara animaciju se naziva scenom.
Animacija se moe koristiti (u jednostavnoj formi) za isticanje ili naglaavanje objekata
na statinoj karti, na primjer, koritenjem treperave strelice moe se indicirati poloaj
korisnika na animiranoj turistikoj informacionoj karti. Meutim, najvanija funkcija
animacije je vizualizacija promjena geografskih fenomena. I statine karte se ponekad
mogu koristiti za opis promjene, na primjer, koritenjem statinih simbola poput strelica
se mogu prikazati protok ili pokreti. Meutim, u poreenju sa statiinim kartama,
animacija predstavlja intuitivniji mehanizam za vizualizaciju kompleksnih dinamikih
fenomena. Vremenske prognoze, na primjer, esto koriste kronoloku seriju karata o
atmosferskim uslovima kako bi prikazale kretanje olujnog fronta.
Animacije nisu ograniene samo na opisivanje promjene kroz kontinualni tok vremena.
One, takoe, mogu biti konstruisane i od sekvenci prostornih ili atributnih promjena.
Primjer animiranih prostornih promjena je i animacija preleta (simulator letenja),
pomou koje se pogled (gledite) korisnika na neki statian skup podataka postepeno
pomjera. Atributna promjena se odnosi na animiranu logiku sekvencu scena

289

konstruisanih od sortiranih atributa. Slika 8.7 ilustruje razliku izmeu animacija


hronolokih promjena i atributnih promjena.

Slika 8.7: Animacija hronolokih i atributnih promjena

Na dijelu slike 8.7a animacija moe biti interpretirana kao prikaz postepene migracije
stanovnitva na sjever, tokom tridesetogodinjeg perioda. Na dijelu slike 8.7b, animacija
moe biti interpretirana kao isticanje prostorne varijacije u starosti stanovnitva (gdje se
vidi da u sjevernim regionima uglavnom preovladava mlae stanovnitovo).
Animacije su sastavljene od sekvenci statinih scena, to znai da animacije
geoprostornih podataka mogu koristiti sve statine simbole koji se pojavljuju i u
konvencionalnim kartama (odnosno koji su oblikovani pomou est vizualnih varijabli
predhodno diskutovanih). Pored ovoga, postoji jo est dinamikih vizualnih varijabli
koje mogu biti koritene za oblikovanje razliitih svojstava u animiranoj karti, a to su:
momenat, frekvencija, trajanje, magnituda promjene, redoslijed i sinhronizacija.
Taka (trenutak) u vremenu u kojoj se promjena javlja, u animaciji se oznaava kao
momenat. Moment, u vremenskom smislu, odgovara poloaju u smislu statine vizualne
varijable. Frekvencija je omjer u kojoj se promjena pojavljuje u animaciji (analogno
uzorku u statinoj vizualnoj varijabli). Trajanje naznaava duinu vremena u kojem je
svaka statina scena vidljiva.
Magnituda promjene je koliina promjene koja se pojavljuje pri kretanju iz jedne scene u
slijedeu. Sekvenca scena, kada je magnituda promjene mala (prilikom prelaska iz jedne
scene u drugu), stvara glatku animaciju. Ukoliko je magnituda promjene velika, onda
sekvenca scena stvara skokovitu animaciju. Omjer magnitude (veliine) promjene i
trajanja se naziva omjer promjene. Peta dinamika vizualna varijabla je redoslijed
(poredak) u kojem se scene pojavljuju. Redoslijed scena u animaciji je standardno
290

diktiran prema hronologiji podataka (na primjer, u animiranju irenja epidemije kroz
vrijeme) ili prirodnim redoslijedom atributa koritenih za konstruisanje animacije (na
primjer, starosne klase na slici 8.7b). Konano, sinhronizacija je blisko vezana za
poredak, i odnosi se na relativni tajming promjena za dva ili vie fenomena predstavljenih
u animaciji.
Redoslijed i sinhronizacija su posebno znaajni u animaciji, poto se mogu koristiti za
sugerisanje uzronih odnosa izmeu fenomena. Na primjer, u animiranoj karti irenja
epidemije infektivne bolesti, region bolesti koji se poveava kroz niz scena bi standardno
bio interpretiran kao irenje zaraze, u kojoj su zaraene osobe iz jedne scene uzrok daljih
sluajeva infekcije u narednim scenama.
Tabela 8.4 sumarizira dinamike vizualne varijable prikazivanjem promjena kao oblika
lociranih na vremenskoj liniji animacije, sa protokom vremena prikazanim sa lijeva na
desno.
Tabela 8.4: Dinamike vizualne varijable

Dinamike vizualne
varijable
Momenat
Frekvencija
Trajanje

Primjer

Objanjanje primjera

Momenat promjene je indiciran


krugom.
Frekvencija promjena se poveava
od niske do visoke.
Promjena sa kvadratiem traje
due od onih sa kruiem.
Promjena je postepena (od kruga
do kvadrata)
Redoslijed promjena se pojavljuje
sluajno
Promjene sa krunim i
kvadratinim fenomenima su
blisko povezane.

Magnituda

Redoslijed

Sinhronizacija

8.3.2 Trodimenzionalni prikazi


Konvencionalne karte i veina vizualnih raunarskih prikaza su ogranieni na dvije
prostorne dimenzije. Pojedini geografski fenomeni, poput topografije (oblik i svojstva
povrine zemljita) imaju tri prostorne dimenzije. Konturne linije koje povezuju take
istih visina su najei mehanizam za reprezentaciju topografske povrine na
konvencionalnim kartama. Primjer konturnih linija (izohipsi) je dat na slici 8.8a, nakon
kojeg slijedi primjer hipsometrijske karte na slici 8.8b.
Hipsometrijska karta koristi logike sekvence boja za indiciranje visina. Ovakve karte su
korisne jedino za prikaz povrina, ali ne i istinskih trodimenzionalnih oblika poput
zgrada, klifova ili peina, jer one mogu prikazati samo jednu (visinsku) vrijednost na
jednoj istoj lokaciji (vidi Digitalni elevacioni modeli u etvrtom poglavlju).
Konturne i hipsometrijske karte obezbjeuju apstraktan pogled trodimenzionalne
povrine, sa kojim je vjet ita karata sposoban zadobiti odlino razumjevanje oblika i
povrine. Ovi tipovi karata su izraajni, ali nisu posebno intuitivni. Konturne karte mogu
neiskusnim itaima karata biti teke za interpretaciju. Intuitivnija reprezentacija

291

trodimenzionalnih povrina uvodi koritenje psiholokih obiljeja, koja daju utisak


dubine. Postoji nekoliko takvih dubinskih isticanja koji se mogu eksploatisati u
dvodimenzionalnim kartama ili raunarskom prikazu. Sjenenje se moe koristiti za
stvaranje utiska visine objekata (objekti bacaju sjenu). Slika 8.8c daje primjer reljefnog
sjenenja (hill-shading), zajednikog i za konvencionalne karte i za raunarske prikaze.
Kod topografskih povrina, najbolji efekat se najee postie kada se izvor svjetlosti
pojavljuje sa sjeverozapadne pozicije. Drugi poloaji izvora svjetlosti e vjerovatnije
rezultirati nedovoljnom ili pogranom interpretacijom oblika topografske povrine
(udoline se mogu zamjeniti sa grebenima i obrnuto).

Slika 8.8: Tri reprezentacije terenske povrine u dvije dimenzije

Ostali naini postizanja utiska dubine ukljuuju relativnu veliinu, linearnu perspektivu i
interpoziciju opisanog objekta, to je ilistrovano na slici 8.9. Poznati objekti sa manjom
relativnom veliinom od oekivane se pojavljuju sa utiskom da su vie udaljeni. Na
primjer, na slici 8.9a se los pojavljuje sa utiskom da je vie udaljen od mia (a nikako
obrnutio). Linearna perspektiva stvara efekat da paralelne linije meusobno konvergiraju
svojim udaljavanjem, kao na primjer, ivice puta prikazane na slici 8.9b. Interpozicija se
odnosi na efekat, kod kojeg su udaljeniji objekti zaklonjeni bliim, kao to bijela zgrada
djelimino zaklanja visoku zgradu na slici 8.9c.

Slika 8.9: Efekat dubine postignut relativnom veliinom, linearnom perspektivom i interpozicijom

292

Utisak dubine se takoe moe postii koritenjem animacije, u kojoj se blii objekti
pojavljuju (kreu) bre od onih koji su vie udaljeni. Ovaj efekat, koji se moe opaziti
gledanjem kroz prozor automobila u vonji, se naziva paralaksa kretanja. Danas postoji
veliki dijapazon tehnika i softverskih alata koji se mogu kombinovati za izradu
kompleksnih trodimenzionalnih scena, odnosno izvravanje procesa koji se naziva
renderisanje.
Pristupi isticanja dubine koji su ovdje opisani, se nazivaju monokularnim, jer se mogu
ostvariti gledanjem na samo jedno oko. Drugi pristupi koji su zasnovani na koritenju oba
oka se nazivaju binokularnim. Zahvaljujui rastavljenom poloaju naih oiju, svako oko
prima malo drugaiju sliku prostora koji nas okruuje, to se naziva retinalnim
disparitetom (retina dio oka koji prima sliku). Kao i kod drugih pristupa za postizanje
utiska dubine, i ovdje se vizuelni sistem slui nekim pomonim (posrednim) sredstvima
za odreivanje udaljenosti do predmeta koji se posmatra. Ovdje su to slikovne razlike
koje nastaju usljed retinalnog dispariteta. Drugi binokularni pristup je konvergencija, koja
se pojavljuje pokretanjem (odnosno suavanjem pogleda) oiju prilikom fiksiranja nekog
bliskog predmeta (na primjer, gledanjem prsta postavljenog ispred lica). Konvergencija
ima uticaja na percepciju dubine samo za relativno bliske objekte (udaljene do nekoliko
metara). Ona konvergencija je neznatna za objekte na srednjim i veim udaljenostima.
Stereoskopski prikaz koristi prednosti retinalnog dispariteta, prikazujui svakom oku
pripadajuu sliku odgovarajueg stereopara. Precizna kontrola prikaza se ostvaruje
pomou specijalnog hardwarea (stereoskopskih naoala). Sama potreba za
specijaliziranim opremom onemoguava iroku primjenu stereoskopske tehnike (zbog
ega se koristi znatno rijee od konvencionalnih tehnika vizualnog prikaza). Pored ovog,
postoje i perceptualne potekoe vezane za odravanje iluzije stereo gledanja, to
stereoskopske prikaze ini manje praktinim od monokularnih pristupa za stvaranje
utiska dubine.

Slika 8.10: Trodimenzionalni prikaz ne-topografske povrine

Prikazivanje fizikih trodimenzionalnih fenomena, kao to su topografske povrine,


predstavlja oitu primjenu trodimenzionalnih interfejsa u GIS-u. Meutim, nisu sve (ili
ak nijedna) od dimenzija neophodne da budu prostorne, da bi se koristila prednost
trodimenzionalnih interfejsa. Vezano za geoprostorne informacije, trea dimenzija se
esto koristi za reprezentaciju nekih drugih, neprostornih informacija, kao to su, na

293

primjer, temperature. Primjer takvog koritenja tree dimenzije je dat na slici 8.10, koja
prikazuje trodimenzionalni pogled vanijih zgrada univerzitetskog kampusa, renderisanih
koritenjem linearne perspektive, sjenenja, relativne veliine i interpozicije. Zgrade su
podignute nad povrinom, ali ne nad topografskom povrinom. Umjesto topografske
povrine, prikazana je povrina koja opisuje jednostavnost kretanja od jednog do drugog
mjesta, dobijena studijom kretanja ljudskih subjekata (posjetilaca kampusa). Uzvienja
(pikovi) reflektuju ljudsku percepciju dijelova kampusa sa velikim otporom pri kretanju,
dok ravne povrine reflektuju lake kretanje.

8.3.3 Nevizualni prikazi


Veina ljudi se u visokom stepenu oslanja na sopstveni vizualni osjeaj za dobijanje
informacija o svom okruenje. Meutim, veliki broj ljudi u poznijim godinama ima neki
oblik smanjenja vidnih sposobnosti (koje se kree od manje kratkovidosti do ozbiljnih
poremeaja, pa i do gubitka vida). ak i za ljude sa dobrim vidom, postoje mnoge
situacije za koje interfejs zasnovan iskljuivo na vizualnom IO kanalu nije odgovarajui.
Na primjer, prilikom vonje automobila, skretanje vozaeve panje na neku vizualnu
pojavu moe biti veoma opasno. Vezano za kartografski prikaz, konvencionalne karte su
pristupane samo za ljudski vizualni kanal. Meutim, GIS interfejsima se moe pristupiti
i putem drugih ulaznih kanala koji su svojstveni ljudima.
Najvaniji nevizualni ljudski ulazni kanal je zvuk. Proces koritenja zvuka za
reprezentaciju podataka se naziva sonifikacijom. Zvukovi u HCI-ju mogu biti simbolini
ili realistini. Zvuni simboli su apstraktni zvukovi koriteni za reprezentaciju i
oblikovanje informacija. Na primjer, veini ljudi je poznat Geigerov broja, odnosno
ureaj koji se koristi za oitavanje nivoa jonizirajue radijacije. Geigerovi brojai obino
koriste zvuni interfejs koji sa eim, glasnijim i visoijim tonovima registruju poveani
nivo radijacije. Postoji mnogo zvunih varijabli koje se mogu koristiti u zvunoj
simbolizaciji, ukljuujui jainu i visinu tona. Zvuk je neodvojiv od svoje dinamine
prirode, tako da veina pomenutih dinaminih vizualnih varijabli odgovara istovremeno i
zvunoj simbolizaciji, ukljuujui obavezno trajanje, redoslijed, frekvenciju (periodino
ponavljanje tona) i omjer promjene.
Realistini zvukovi se mogu podjeliti u dvije kategorije: zvune ikone i govorni jezik.
Poput vizualne ikonografije, zvune ikone (earcones) predstavljaju zvukove koji
obezbjeuju metaforu za komande ili funkcije. Na primjer, u desktop raunarstvu akcija
brisanja fajla je esto praena zvukom guvanja i bacanja papira u kantu za otpatke.
Govorni jezik je daleko ee koriteno svojstvo za mnoge interfejse. Sistemi za
sintetiziranje govora osposobljeni za konverziju teksta u govorni jezik (text-to-speach
systems, TTS) su danas iroko raspoloivi za razne jezike. Iako su kompjuteri ve
sposobni da sintetizuju govorni jezik, kompjuterizovano prepoznavanje i generisanje
prirodnog govora e jo zadugo biti predmet intenzivnih istraivanja (vidi sekciju 8.1.3).
Razliiti tipovi sonifikacije su prikazana na slici 8.11.

294

Slika 8.11: Taksonomija tipova sonifikacije

Nae ulo sluha takoe omoguava da lociramo izvor zvuka u 3D prostoru. Male razlike
izmeu zvuka kojeg ujemo u pojedinom uhu omoguavaju nam da odredimo pravac
izvora zvuka i to na nain analogan retinalnom disparitetu kod vizualnog posmatranja.
Druge zvune osobine, poput jaine mogu pomoi u odreivanju udaljenosti izvora.
Mnogi digitalni zvuni sistemi, poput onih u savremenim bioskopima, koriste prednosti
ove osobine i reprodukuju zvukove, koji daju utisak prostorne pojave. Meutim,
preciznost kojom ljudi mogu odrediti poloaj izvora u prostoru, takozvana prostorna
otrovidost, je znatno nia kod sluanja nego kod gledanja.
Heptini (dodirni) prikaz je drugi vaan tip nevizualnog interfejsa. Ljudski heptini
interfejsi su ve koriteni u odreenim specijaliziranim domenama, poput Brailleovih
prikaza (za osobe sa oteenim vidom), vibrirajuih mobilnih telefona i kontrolera za
raunarske igrice. Za razliku od zvunih prikaza, koji se mogu koristiti kao primarni IO
kanal, heptini prikazi se skoro uvijek koriste kao sekundarni IO kanal u okviru
multimedijalnog interfejsa, obezbjeujui na taj nain prateu ili suplementarnu
informaciju za korisnike.
Multimodalni GIS. TACIS (Tactile Acoustic Computer Interaction System, odnosno dodirno
akustini raunarski interaktivni sistem) je primjer ranog multimodalnog informacionog sistema
specifino dizajniranog za osobe sa oteenim vidom. TACIS je sposoban da ocrta grafikone na
A3 papir ili plastiku, koji se onda smjetaju na touch pad. Korisnici mogu pristupiti dodatnim
informacijama o grafikonu pritiskom na razliite dijelove ocrtanog grafikona. Ove dodatne
informacije se mogu prikazati koritenjem zvunih simbola ili sintezom govora. TACIS interfejs je
koriten kao osnova turistikog informativnog GIS-a. Zvuni simboli se proizvode tako to
korisnik sa oteenim vidom istrauje ocrtanu kartu grada svojim prstima. Razliiti zvuni
simboli omoguavaju korisnicima da razlikuju razliite geografske objekte, kao to su putevi ili
autobuske stanice. Drugim geoprostornim informacijama, kao to je sintetizovano izgovoren red
vonje, se moe pristupati jaim pritiskom na relevantne dijelove ocrtane karte.

Koritenje zajedno vizualnih, zvuno baziranih i heptinih prikaza unutar multimodalnog


interfejsa donosi tri glavne prednosti:
Multimodalni interfejsi se mogu koristiti od strane ireg dijapazona korisnika
(ukljuujui osobe oteenog vida ili sluha) u odnosu na unimodalne interfejse.
Multimodalni interfejsi su sposobni za rad u raznim uslovima za razliku od
unimodalnih interfejsa (vizualna panja korisnika ne mora biti direktno usmjerena
na raunarski ekran).
Multimodalni interfejsi omoguavaju korisnicima pristup komplementarnim
informacijama preko raznih IO kanala konkurentno. Eksperimenti su pokazali da
ovo dovodi do poveanja efikasnosti i smanjenja greaka u korisnikoj interakciji.

295

8.3.4 Povratna sprega (feedback)


Povratna sprega (povratna reakcija) je proces prihvaanja korisnike akcije i
odgovaranja na nju sa informacijom koja opisuje ta je korisnik uradio i ta je pri tome
postigao. Povratna sprega predstavlja jo jedno vano svojstvo po kojem se GIS interfejsi
razlikuju u poreenju sa konvencionalnim kartama. Dok su karte sposobne samo za
prezentiranje geoprostornih informacija, GIS interfejsi mogu i odgovarati na korisnike
unose. Tokom dijaloga sa GIS-om, korisnici mogu formulisati, rafinirati i testirati
razliite hipoteze. Zbog ovih mogunosti, povratna sprega predstavlja kljuni proces u
promovisanju rezonovanja i rjeavanja problema sa geoprostornim informacijama.
Da bi osigurali da proces rezonovanja i rjeavanja problema ostane neometan, odgovori
na korisniki unos moraju biti brzi. Vrijeme odziva predstavlja vrijeme koje raunaru
treba da bi odgovorio na korisniki unos. Vrijeme odziva od oko 0.1 sekunde ili manje je
neprimjetno za korisnika i smatra se trenutnim, te je idealno za rezonovanje i rjeavanje
geoprostornih problema. Vrijeme odziva u trajanju oko 1 sekunde je jo uvijek dovoljno
brzo da tok misli kod korisnika ostane neometan, ali je ovakvim kanjenjem znaajno
reduciran utisak interaktivnosti. Vrijeme odziva od 10 sekundi je krajnja granica za
povratnu spregu, poto se panja korisnika vrlo vjerovatno moe prenjeti na drugi
zadatak ukoliko zadravanje pree ovo vrijeme.
Osnovna tehnika povratne sprege je da se omogui korisniku da kontinuirano mjenja
odabir kriterija za upit i ima istovremeni pregled rezultata ovog upita, to zovemo
dinamikim upitom. Primjeri dinamikih upita ukljuuju:
mjenjanje nivoa detalja sa kojim je dio ili cijeli skup podataka prikazan
(zumiranje);
mjenjanje stajne take prilikom posmatranja skupa podataka (panning), ali ne i
nivoa detalja, (povlaenje, pomjeranje);
mjenanje vrijednosti praga (obuhvata) koritenog kao kriterija u dinamikom
upitu (fokusiranje);
pokazivanje (prelaenjem pokazivaem preko, brushhing) na lokaciju i
informaciju dinamikog upita vezanu za tu lokaciju (selektovanje).
Na primjer, posmatrajmo web stranicu sa nekretninama koja potencijalnim kupcima nudi
informacije i planove o kuama za prodaju. Ova web stranica moe prvo omoguiti
korisnicima da zumiraju i povlae (pomjeraju) planove na pojedini region od interesa.
Potom korisnici mogu fokusirati (obiljeiti) nekretnine unutar regiona, na primjer,
interaktivnim podeavanjem praga udaljenosti od lokalne kole. Kupci dalje mogu
suavati svoje istraivanje pregledanjem cijene imovine pomou selektovanja (klikanjem
ili prevlaenjem miem preko objekata). Slika 8.12 prikazuje statinu ilustraciju tehnike
zumiranja, fokusiranja i povlaenja. Na slici se zapaa da je prilikom procesa zumiranja
primjenjen operator kartografske generalizacije, poput simplifikacije i eliminacije.
Tehnike dinamikog upita se esto koriste u kombinaciji sa viestrukim povezanim
pogledima skupa podataka. Koritenjem povezanih pogleda, promjene na istaknutim
informacijama u jednom pogledu se ogledaju promjenama u drugim pogledima. Na
primjer, kada korisnici web stranice prelaze miem preko pojedinih lokacija, u posebnom
prozoru se pojavljuju informacije o cijeni, porezu i fotografije referensiranih nekretnina.
Na slian nain, prilikom zumiranja na region od interesa, korisno je imati otvoren
poseban pregledni prozor sa prikazom cijelog skupa podataka na kojem je prikazan

296

isjeak tekueg zooma . Ovako povezan pogled osigurava korisnicima poloaj detaljnog
dijela prikaza u odnosu na cijelokupni prikaz.

Slika 8.12: Zumiranje (zoom), fokusiranje (focus) i povlaenje (pan)

Povratna sprega se moe postii koritenjem ulaza i prikaza za bilo koju kombinaciju IO
kanala. Ulaz se standardno ostvaruje preko dodirnog ulaznog kanala, koritenjem ureaja
poput tastature ili mia. Ulaz sa audio baziranim prepoznavanjem govora se esto koristi
kod interfejsa. Pouzadano kompjuterizovano prepoznavanje govora je tee postii nego
sintetiziranje govora, naroito zbog velike varijabilnosti glasova, akcenata, idioma i
vokabulara koritenih od strane raznih ljudi. Postoje razliite tehnike za interpretaciju
tjelesnih poza i kretnji prilikom ulazne komunikacije sa raunarom, ukljuujui praenje
oiju i praenje gestikulacije. Sistemi za praenje oiju koriste infracrvene senzore za
detekciju pravca korisnikog pogleda. Sistemi sa praenje gesti detektuju i interpretiraju
jednostavne geste, poput pokazivanja. Detekcija ljudskih pokreta se obino postie
koritenjem senzora sposobnih da prate infracrvene ili magnetne etikete prikaene na
korisnika, ili procesiranjem digitalnih slika korisnika.
Kombinovanjem povratne sprege sa razliitim stilovima prikaza mogu se ostvariti
interfejsi sa visokim stepenom intuitivnosti. Na primjer, dinamiki 3D prikazi su posebno
intuitivni i moni poto osposobljavaju korisnike da koriste metaforu navigacije da
istrae i dobiju dublje razumjevanje skupa podataka. Ljudi su navikli da navigiraju kroz
fiziki geografski prostor. Sposobni su da struktuiraju geografski prostor prisjeajui se
(pamtei) putanja kroz prostor i znaajnih lokaliteta (orijentira). Iste tehnike se mogu
koristiti za navigaciju kroz virtualno okruenje. Ovakva virtualna okruenja nemoraju
uope biti geografska. Na primjer, imerzivna (duboka) virtualna stvarnost (Virtual

297

Reality - VR) je napredni stil interfejsa koji kod korisnika stvara utisak realne fizike
okoline, koritenjem multimodalnog ulaza, poput praenja gesti i oiju, multimodalnog
prikaza, ukljuujui vizualne i dodirne prikaze, uz rapidnu (brzu) povratnu spregu.
Imerzivna virtualna stvarnost: Imerzivna (duboka) virtualna stvarnost (VR) je napredni stil
interfejsa koji simulira to je mogue blie svojstva realne fizike okoline. VR sistemi obino
koriste multimodalni prikaz i ulaz. Specijalni kompleti za glavu se obino koriste za 3D grafiku i
zvuk, a mogu pratiti i pokrete glave i oiju. Vizualne i zvune scene se brzo smjenjuju,
odgovarajui na pokrete glave i oiju kako bi obezbjedili visoki nivo povratne sprege. Na primjer,
kada korisnik okrene glavu na stranu, pokret se detektuje i vizualni prikaz se aurira reflektujui
promjenu perspektive. Dodirni IO kanali su takoe iskoriteni u VR sistemima. Korisnici mogu
koristiti specijalne rukavice koje prate pokrete ruku (ulaz) i obezbjeuju simulaciju dodira na
vrhovima prstiju (prikaz). VR sistemi mogu sadravati reprezentacije realnih geografskih
prostora. Ovakvi sistemi mogu obezbjediti realistino okruenje za treniranje osoblja poput
vatrogasaca, kako bi se lake nosili sa opasnim situacijama. VR sistemi mogu takoe koristiti
imaginarne geografske prostore. Arhitekte ponekad koriste VR da bi dobili uvid u dizajnerske
efekte plana ili projekta. VR je na neki nain antiteza pervazivnog (sveprisutnog) raunarstva,
diskutovanog u predhodnom poglavlju. VR sistemi su dizajnirani za simulaciju i zamjenu nae
fizike okoline, dok su pervazivni raunarski sistemi namjenjeni za hibridizaciju nevidljive
(raunarske) okoline sa naom fizikom okolinom. Vezano i za pervazivno raunarstvo i za VR,
proirena realnost (augmented reality - AR) je tehnika kombinovanja realnog fizikog okruenja
sa raunarski generisanim informacijama. Korisnici sistema proirene stvarnosti su u
mogunosti da pristupe relevantnim digitalnim informacijama na osnovu preklapanja sa
informacijama dobijenih kroz standardnu interakciju sa svijetom koji ih okruuje. Na primjer,
dok se voze kroz grad, turisti nose specijalne AR naoale koje im mogu prikazati informacije o
objektima na koje zaustavljaju pogled (nazivi restorana, meniji, cijene obroka).

VR sistemi se obino koriste za istraivanje realnih ili imaginarnih geografskih prostora,


ali se takoe mogu primjeniti i na apstraktnije prostore, poput navigiranja kroz Internet
koritenjem metafore navigacije u gradu.

8.4 Dizajniranje GIS interfejsa


GIS se koristi u velikom broju razliitih tipova zadataka, ukljuujui prezentaciju, upite,
pretraivanje, editovanje, integraciju, analizu, odluivanje, rjeavanje problema, koji su
opisani kao:
Prezentacija: Prikazivanje informacija na odgovarajui nain.
Postavljanje upita: Pozivanje pohranjenih informacija koje odgovaraju specifinom
pitanju postavljenom od korisnika.
Pretraivanje: Uitavanje pohranjenih informacija kada korisnici nisu u mogunosti
formulisati specifino pitanje.
Editovanje: Ispravljanje, auriranje ili dodavanje informacija .
Integracija: Kombinovanje (sastavljanje) ili povezivanje informacija iz razliitih
skupova podataka.
298

Analiza: Procesiranje informacija da bi se istakle ili otkrile relacije i uzorci unutar skupa
podataka.
Donoenje odluka: Procjena i odabir izmeu razliitih opcija ili pravaca djelovanja.
Rjeavanje problema: Dizajniranje rjeenja za probleme u novim i nepoznatim
domenama.
Jedan od najvanijih ciljeva svakog interfejsa jeste upotrebljivost koja korisnicima
omoguava uspjeno izvravanje pojedinih zadataka. Iz perspektive HCI-a, svaki zadatak
za koji se koriste geoprostorne informacije postavlja posebne zahtjeve za interakcijom
izmeu raunara i korisnika. Tabela 8.5 obuhvata, sa primjerima, razliite zadatke za koje
se mogu koristiti geoprostorne informacije. Neki zadaci zahtjevaju relativno jednostavne
forme interakcije, uvodei samo razmjenu informacija izmeu ovjeka i raunara. Na
primjer, postavljanje upita (u smislu forme interakcije) zahtjeva od raunara samo da
interpretira korisniki upit i vrati odgovor nazad korisniku.
Tabela 8.5: Interakcija izmeu korisnika i GIS-a za razliite zadatke

Sloenost
interakcije
Jednostavna
interakcija

Zadatak

Primjer

Prezentacija
Postavljanje upita
Pretraivanje
Editovanje

Prikai mi kartu mog grada.


Pronai lokaciju moje kue.
Koji objekti su locirani u mom susjedstvu.
Promjeni u bazi podataka podatke o mojoj kui tako
da se prikae i aneks koji sam dogradio.
Povei kartu puteva i zoning plan mog grada.
Sraunaj vrijeme putovanja od moje kue do mog
posla.
Pomozi mi da pronaem novu kuu u koju se mogu
preseliti.
Pomozi mi da procjenim da li trebam preseliti u novu
kuu.

Integracija
Analiza

Odluivanje
Rjeavanje problema

Kompleksna
interakcija

Ostali zadaci mogu zahtjevati sofisticiranije forme interakcije. Ovakve forme interakcije
koriste sposobnost raunarskog procesiranja za stimulaciju i poveanje sopstvenih
misaonih procesa i promovisanje geografskog razmiljanja. Odluivanje je, na primjer,
primarna ljudska aktivnost. Interfejsi koji omoguavaju korisnicima da istrae i dobiju
uvid u problemsku domenu mogu podrati proces odluivanja. Openito, zadaci koji
zahtjevaju kompleksnije forme interakcije, kao to su odluivanje i rjeavanje problema,
imaju veliku korist od interfejsa koji su zasnovani na tehnikama geovizualizacije.
Povratna sprega, na primjer, omoguava korisnicima da formuliu i testiraju hipoteze, to
predstavlja kljunu komponentu procesa ljudskog rezonovanja. Slino, proces
vizualizacije, transformiuu podatke u viestruke razliite forme (kao to su 3D prikazi i
animacije), podravaju analogno i metaforino rjeavanje problema.

299

Da bi osigurali upotrebljivost GIS-a, interfejs mora odgovarati tipu zadatka za koji je


dizajniran. Na primjer navigacioni sistem za automobil treba da prezentira korisniku
informaciju u formi koja mu nee skrenuti panju dok upravlja vozilom.
Kooperativno prostorno odluivanje: Istaknuto polje istraivanja u GIS-u u kojem se zahtjevaju
inovativni interfejsi je kooperativno prostorno odluivanje. Sistemi koji su dizajnirani da
pomognu kooperativni (kolaborativni) rad se nazivaju groupware. Studija o groupwareu i
groupware interfejsima je disciplina unutar HCI-ja, koja se naziva raunarski podran
kooperativni rad (computer-supported cooperative work, CSCW). Prostorno odluivanje, kao to
je odluka o izgradnji nove bolnice, esto utie na mnoge pripadnike unutar zajednice. Metode
savremenog planiranja su obino dizajniranje tako da ukljue cijelu zajednicu u proces
odluivanja, zajedno sa planerima, projektantima i donosiocima odluke, odnosno da rade
zajedno kao grupa. Konvencionalni desktop GIS-ovi nisu dobro prilagoeni za ove zadatke, jer su
preskupi za koritenje od ljudi koji nisu iskusni korisnici karata i GIS-a. Vezano za CSCW, za
razvoj GIS-a i GIS interfejsa koji promoviu kooperativno odluivanje se koristi pristup
participatornog GIS-a (PGIS). Kao rezultat velikog dijapazona nespecijalistikih interesnih
grupa ukljuenih u kooperativno odluivanje, PGIS interfejsi bi trebali biti visoko intuitivni.
Povratna sprega omoguava korisnicima da sami istrae za njih vane efekte planiranog razvoja.
3D prikazi mogu biti koriteni umjesto manje intuitivnih prikaza baziranih na kartama. Openito,
razliitost ulaznih modaliteta (3D prikazi, crtei, tabele) moe olakati uesnicima u zajednici da
izraze svoje ideje.

Navigacioni sistem koji omoguava korisniku da istrai mnoge razliite opcije moe
vjerovatno biti konfuzan (na primjer, navigacioni sistem koji nudi opcije kao to je uputa
Skrenite na slijedeem skretanju lijevo, ili na drugom skretanju desno). Slino,
navigacioni sistem koji je realizovan sa komplikovanim vizualnim izlazom moe odvui
vizualnu panju korisnika od vonje i prouzrokovati nezgodu.
Sa druge strane, sistem za planiranje koji je dizajniran da pomogne urbanistikim
planerima prilikom izdavanja urbanistikih saglasnosti za gradnju novog objekta bi se
trebao zasnivati na promociji rjeavanja problema i geografskog razmiljanja. Sistem koji
bi jednostavno davao odgovore izdaje se dozvola ili ne izdaje se dozvola ne bi bio
koristan (ak iako je odluka uvijek ispravna). Sofisticirani vizualni prikazi, kao to su 3D
animacija ili simulacija virtualne stvarnosti za prikaz projekta, moe pomoi za sticanje
boljeg razumjevanja efekata koje projekat izaziva u okruenju.

Inenjering upotrebljivosti

Razvijanje korisnih interfejsa nije egzaktna nauka: iskustvo i prosudba igraju vitalnu
ulogu u razvoju uspjenog interfejsa. Proces razvoja interfejsa koji maksimizira
upotrebljivost (iskoritenost) se naziva inenjering upotrebljivosti (usability engineering).
Openito, sve tehnike inenjeringa upotrebljivosti naglaavaju vanost razmatranja
upotrebljivosti u svakoj fazi ivotnog ciklusa sistema (vidi sekciju 1.3.4). Upotrebljivost
postojeeg interfejsa moe biti procjenjena empirijskim putem, odnosno evaluacijom
njegovih performansi, bilo laboratorijski, bilo aktualnim koritenjem u praksi.
Upotrebljivost interfejsa se esto mjeri preko pet osnovnih kriterija, koji u biti
prestavljaju pokuaj kvantifikacije stepena intuitivnosti i izraajnosti interfejsa.
Vrijeme uenja: Koliko traje uenje o nainu koritenja sistema?

300

Brzina koritenja: Kako brzo korisnik moe izvriti testne (benchmark) zadatke?
Omjer greaka: Koliko i koje tipove greaka korisnici prave prilikom izvravanja testnih
zadataka?
Vrijeme pamenja: Koliko dugo korisnici uvaju u svojoj memoriji steene vjetine i
znanja tokom vremena?
Subjektivno zadovoljstvo: Koliko korisnici uivaju ili nisu naklonjeni sistemu prilikom
izvravanja testnih zadataka?
Takoe pri empirijskoj korisnikoj ocjeni, dizajneri interfejsa esto koriste vie
analitikih tehnika da bi osigurali upotrebljive interfejse. U zavrnom dijelu ovog
poglavlja izloen je kratak pregled triju glavnih tehnika: prototipi, obrazloenje dizajna i
analiza dizajna. Tehnika prototipa je jedna od najprostijih tehnika inenjeringa
upotrebljivosti. Ona ukljuuje razvoj prototipa ciljnog interfejsa kako bi se ustanovili
problemi koji bi se teko detektovali pri samom skiciranju. Prototipi se mogu koristiti da
bi se jednostavno testirali idejni projekti, koji se onda nazivaju probni prototipi ili su
razvijeni kao preliminarne verzije aktualnog interfejsa, koji se nazivaju evolucioni
prototipi.
Obrazloenje dizajna je dokumenat koji obezbjeuje neka objanjenja vezana za
specifinost konstrukcije sistema. U svakoj fazi razvoja, dizajneri dokumentuju odluke
koje su doneene na osnovu prosuivanja i razmatranja alternativa. Obrazloenje dizajna
moe biti u pisanom obliku ili prestavljeno grafiki (dijagramima). Za obrazloenja
dizajna koriste se razliite grafike notacije, kao to je IBIS (issue-based information
system).
Analiza dizajna obezbjeuje fazni (stepenasti) radni okvir za razvoj interfejsa. Jedna od
najee koritenih tehnika za analizu dizajna je GOMS (goals, operations, methodes,
selection). GOMS rekurzivno dekomponuje funkcionalnost interfejsa visokog nivoa na
manje komponente funkcionalnosti. U GOMS modelu, korisniki ciljevi (goals) su
specificirani u smislu osnovnih operacija koje korisnik moe izvriti. GOMS takoe
modelira razliite metode za dostizanje pojedinih ciljeva, i pokuava predvidjeti koja e
pojedina metoda biti selektovana i u kojim situacijama (sluajevima). GOMS tehnika je
blisko povezana sa analizom hijerarhije zadataka (hierarchical task analysis, HTA),
drugom veoma estom tehnikom za analizu dizajna.
Nakon svega, izrada prototipa predstavlja veoma neformalnu i ekonominu tehniku
inenjerstva upotrebljivosti, i moe biti korisna, ak i za najmanje projekte. Tehnike
analize dizajna su prilino specijalizirane i zahtjevaju vrijeme za uenje i primjenu, ali su
pogodne za velike projekte, koji zahtjevaju kooperaciju izmeu velikog broja dizajnera
pri izradi efikasnih interfejsa. Obrazloenje dizajna obezbjeuje srednje rjeenje izmeu
relativno formalne analize dizajna i relativno neformalne izrade prototipa. Sve tri tehnike
se standardno koriste u kombinaciji sa empirijskim korisnikim testiranjem.

301

302

9
9 Prostorno rezonovanje i neizvjesnost
Kratak pregled
Prostorno rezonovanje se bavi misaonim (spoznajnim), raunarskim i formalnim
aspektima stvaranja logikih zakljuaka o prostornoj sredini. Znanje o naoj geografskoj
okolini je skoro uvijek nesavreno, tako da efikasno prostorno rezonovanje mora biti
sposobno operisati sa neizvjenou. Ovo poglavlje daje pregled osnovnih koncepata
koji ukljuuju neizvjesnost i opisuje neke uobiajeno koritene tehnike za upravljanje
neizvjenou u informacionim sistemima.
Tema ovog poglavlja je rezonovanje sa geoprostornim informacijama uz prisustvo
neizvjesnosti. Inae, neizvjesnost je prisutna u svakom informacionom sistemu, ali je
njeno razumjevanje od posebne vanosti za GIS, jer su geoprostorne informacije blisko
povezane sa observacijom svijeta, koja je neodvojiva od pojave neizvjesnosti. Ovo
poglavlje zapoinje uopenom diskusijom formalnih aspekata prostornog rezonovanja, a
zatim prelazi na posmatranje rezonovanja pod uslovima neizvjesnosti. U sekciji 9.2 se
razmatra neizvjesnost kroz mnoge njene oblike, a zatim se obrauju neke specifine
kvalitativne (sekcija 9.3) i kvantitativne (sekcija 9.4) tehnike za reprezentaciju i
rezonovanje pod neizvjesnou. U sekciji 9.5 su predstavljeni neki primjeri aplikacija u
kojima neizvjesnost regiona igra posebnu ulogu.

9.1 Formalni aspekti prostornog rezonovanja


Prostorno rezonovanje se bavi nainom razmiljanja prema kojem ljudi i raunari donose
zakljuke o prostornim aspektima okoline. U treem i etvrtom poglavlju su ve
predstavljena razne komponente prostornog modeliranja. U ovoj sekciji e se prezentirati
rezonovanje uz koritenje ovih modela, ime e se stvoriti temelji za analizu praktinih
primjera sa uvedenom neizvjesnou.
Prostorno rezonovanje ima kognitivne (spoznajne, misaone), raunarske i formalne
aspekte, koji su derivirani iz disciplina kao to su psihologija, razmiljanje, vjetaka
inteligencija i robotika. Prostorno razmiljanje (spatial cognition), odnosno spoznaja ili
razumjevanje prostora, je vaan predmet istraivanja, koji se primarno bavi misaonim
aspektima prostornog rezonovanja. Formalni aspekti prostornog rezonovanja su
derivirani iz logike. Raunarsko prostorno rezonovanje se bavi implementacijom ovih
formalnih pristupa u raunarskom okruenju.
Logika je ogromna nauna oblast, koja je zapoeta u vrijeme kada su ljudi prvi put poeli
razmiljati o svojim nainima rezonovanja i utemeljena je prvim pisanim izvorima

303

vezanim za rad filozofskih kola drevne Grke. Ova narednom izlaganju se indiciraju
neki od najvanijih koncepata u logici, sa prikazom njihove primjene na prostornom
rezonovanju.

9.1.1 Sintaksa i semantika


Kada govorimo openito o sintaksi i semantici, onda treba naglasiti da izmeu njih
postoji kljuna logina distinkcija. Ova distinkcija je ve opisana u kontekstu
interoperabilnosti u sedmom poglavlju, ali ovdje e se ona iskazati jo preciznije.
Posmatrajmo reenicu Pariz je u Francuskoj. Sintaksnom analizom, koja se fokusira na
rijei (termine) u reenici, bi se dolo do zakljuka da ova reenica sadri od 4 rijei, i to
od dvije vlastite imenice (koje poinju sa velikim slovom), glagola i prostorne
prepozicije. Sa druge strane, semantika ili znaenje (smisao) reenice se jedino moe
determinisati pomou njenog konteksta. Ako se termin Pariz odnosi na grad, koji je
uven po Eiffelovom tornju, a Francuska je ime europske zemlje, koja je uvena po
svojim vinima, onda reenica ima jasno znaenje i defacto je istinita. Meutim, ako se
Pariz odnosi na ensko ime, semantika je opet jasna, iako reenica moe biti i
neistinita. Na ovaj nain, smisao reenice i njena istinitost se mogu odrediti samo u irem
kontekstu znaenja i strukture njenih termina (rijei).
Mala, ali jako vana stavka vezana za predhodno razmatranje je i prepozicija u. Ovdje
ona naznaava prostornu relaciju, ba kao to to ine prostorne relacije izvan, pored,
ili blizu. Studija ovakvih prostornih relacija, i njihovog mjesta u formalnim i prirodnim
jezicima, zauzima centralno mjesto u izuavanju prostornog rezonovanja. Takoe je esto
vaan i vremenski kontekst razmatranja. Osoba sa imenom Pariz je u momentu
razmatranja reenice iz primjera mogla upravo biti u Francuskoj, pa bi reenica postala
istinita. Vremenski termini (rijei) se takoe mogu dodati u sintaksu, to onda vodi u
vremensku (temporalnu) logiku.

9.1.2 Logika i dedukcija


Posmatrajmo tri reenice:
Pariz je grad u Francuskoj.
Svi gradovi u Francuskoj su europski gradovi.
Pariz je europski grad.
Reenica Pariz je europski grad ispod linije (zakljuak) slijedi iz predhodnih reenica
iznad linije (premise) na osnovu dedukcije (prosuivanja, zakljuivanja). Moemo
primjetiti da je postupak prilino openit i nezavisan od znaenja pojedinih termina. Opa
forma dedukcije je:
X je Y.
Svi Y-oni su Z-ovi.
X je Z.

304

Ova dedukcija je primjer klasinog silogizma (izjave iz tri dijela, od kojih prva dva
obezbjeuju istinitost treeg), ije je principe postavio Aristotel oko 350. godine p.n.e. U
idealnom sluaju, dedukcija e biti validna, odnosno ouvae istinu. Ukoliko su premise
validne dedukcije istinite, onda se i za zakljuak oekuje da takoe bude istinit.
Openito, dedukcija u potpunosti predstavlja sintaksni proces i zbog toga je podobna za
raunarske metode. Meutim, dokazivanje zakljuaka raunarskim metodama je obino
visoko problematian proces, poto broj moguih dedukcija iz skupa premisa moe biti
jako veliki. Openito, kompleksnost problema (za raunar) je tim vea, ukoliko njegovo
rjeavanje nije voeno ljudskom interakcijom.
Premise mogu biti u formi jednog od slijedea dva tipa:
injenica: prosta pojedinana izjava (na primjer, Pariz je prijestonica Francuske.)
Pravilo: opi princip, obino u obliku kondicionala (na primjer, Nijedna drava iz SADa ne poinje sa slovom B.).
U posebnoj domeni, kolekcija svih premisa (injenica i pravila) formira bazu znanja za tu
domenu. Teorija povezana sa ovom bazom znanja je kolekcija svih zakljuaka koji se
mogu izvui iz njenih premisa, koritenjem pravila dedukcije (prosuivanja). Ukoliko
baza znanja u sebi sadri sve svoje deduktivne zakljuke, onda za nju kaemo da je
deduktivno zatvorena.
Prema klasinoj logici, to vie premisa dodamo, to vie zakljuaka moemo izvui.
Tehniki termin koji se koristi za ovakvo svojstvo je da je ova logika monotonina.
Kasnije emo vidjeti da postoje sluajevi u praksi gdje je ovakvo svojstvo nepoeljno.
Uporedno i blisko poimanje vezano za dihotomiju (podjeljenost) sintaksa nasuprot
semantika je i dokaz nasuprot istina. Za svaku bazu znanja, oekuje se da postoji
povezanost izmeu onih zakljuaka, koji su dokazivi (teorija) i onih koji su istiniti.
Postoje dva vana koncepta koja koriste ovu povezanost:
Baza znanja je ouvana (u dobrom stanju) ukoliko su svi njeni deduktivni
zakljuci istiniti. Dakle, u ouvanoj (dobro stojeoj) bazi znanja nikad nije
mogue deducirati (zakljuiti) neistinu, ali mogu postojati stvari koje jesu istinite,
ali ne mogu biti deducirane (zakljuene).
Baza znanja je kompletna ukoliko su sve istinite propozicije (pravila), koje se
mogu konstruisati, dokazive primjenom dedukcije na njene premise.
Ideal kojem stremimo prilikom konstruisanja nekog deduktivnog sistema je sistem koji je
i ouvan i kompletan. Meutim, veina sistema, koji su u osnovi prilino deduktivni,
pokazali su se, ili kao neouvani ili kao nekompletni (to se vidi na primjeru teksta o
geometrijskim algoritmima i raunarskoj obradi u petom poglavlju).

9.1.3 Primjer prostornog rezonovanja


Pokuaemo ilustrovati ove ideje na primjeru opisanom na karti sa slike 9.1.
Pretpostavimo da naa baza znanja sadri slijedee injenice:
1. Azemlja, Bzemlja, Czemlja i Dzemlja su drave.
2. I, J, K i L su gradovi.
3. X i Y su rijeke.

305

4.
5.
6.
7.
8.
9.

Grad I pripada Azemlji.


Grad J pripada Bzemlji.
Grad K pripada Czemlji.
Grad L pripada Dzemlji.
Gradovi I, L i K lee na rijeci X.
Grad J lei na rijeci Y.

i slijedea pravila:
10. Svaka rijeka prolazi kroz sve drave kojim pripadaju gradovi koji lee na njoj.

Slika 9.1: Primjer prostornih relacija

injenice u naoj bazi znanja sadre dvije vrste propozicija (pravila). Propozicije 1-3
nam daju informaciju o tipovima entiteta, klasificiranih u drave, gradove i rijeke.
Preostale injenice nam daju informacije o prostornim vezama izmeu entiteta. Pravilo
10 nam omoguava da operiemo sa narednom prostornom relacijom prolazi kroz.
Ukoliko pretpostavimo da je karta na slici 9.1 tana, onda postoje istine izraene pomou
karte, koje se ne mogu deducirati (zakljuiti) iz premisa u bazi znanja. Istina da Azemlja i
Bzemlja dijele zajedniku granicu je primjer ovakve propozicije. Na ovaj nain,
generalno gledajui, naa baza znanja nije kompletna. Meutim, usmjerimo sada panju
na injenice o zemljama, gradovima i rijekama, te koji gradovi su u kojim zemljama, koji
gradovi lee na kojim rijekama i koje rijeke prolaze kroz koje drave. Koristei injenice
i pravila u naoj bazi znanja moemo deducirati (izvui) slijedee zakljuke:
11. Rijeka X prolazi kroz drave Azemlja, Dzemlja i Czemlja.
12. Rijeka Y prolazi kroz dravu Bzemlju.
Primjetiete da je baza znanja ouvana (u dobrom stanju), jer je svaka propozicija u njoj
istinita na karti. Ona nije kompletna, ak ni u specifinom smislu koji je predhodno

306

opisan, jer karta prikazuje da rijeka X prolazi kroz dravu Bzemlju, ali ovo nemoemo
deducirati (zakljuiti) iz baze znanja.
Meutim, ukoliko bismo na kartu ucrtali naredni grad M, kao to je prikazano na slici
9.2, onda bi mogli dodati slijedee injenice:
13. M je grad.
14. M pripada dravi Bzemlja.
15. Rijeka X prolazi kroz grad M.
Sada bi naredni zajkljuak bio:
16. Rijeka X prolazi kroz dravu Bzemlja.

Slika 9.2: Aurirani primjer prostornih relacija

Baza znanja je kompletna uzimajui u obzir limitiran vokabular za gradove, rijeke,


drave, te gradove koji pripadaju dravama, gradove koji lee na rijekama i rijeke koje
prolaze kroz drave. Vidi se da ovaj primjer pokazuje monotoninu prirodu logike.
Dodavanjem vie premisa dodaje se i vie zakljuaka, i nikad se na ovaj nain njihov broj
(porast) ne moe smanjiti.

9.1.4 Formalna notacija


Formalna logika osigurava radni okvir unutar kojeg se mogu primjenjivati razni procesi
rezonovanja. Ona podrazumjeva koritenje kondenzovanog (saetog) jezika, koji se moe
primjeniti za formalno opisivanje propozicija u njihovom skraenom i struktuiranom
obliku. Ilustrovaemo koritenje nekih specijalnih logikih simbola ovog jezika kroz
ponovno ispisivanje injenica i pravila iz predhodnog primjera sa kartografskom bazom
znanja.

307

1. drava(Azemlja) drava(Bzemlja) drava(Czemlja) drava(Dzemlja)


2. grad( I) grad( J) grad( K) grad( L)
3. rijeka(X) rijeka(Y)
4. pripada(I, Azemlja)
5. pripada(J, Bzemlja)
6. pripada(K, Czemlja)
7. pripada(L, Dzemlja)
8. lei_na(I, X) lei_na(L, X) lei_na(K, X)
9. lei_na(J, Y)
10. r.x.c. (river(r)lei_na(c, r)pripada(c, x))prolazi_kroz(r, x)
Ovaj sistem sadri konstante Azemlja, Bzemlja, Czemlja, Dzemlja, I, J, K, L, X i Y, koje
figuriu kao vlastita imena entiteta u ovoj domeni. Predikati drava(), rijeka() i grad()
figuriu kao tipovi ogranienja, determiniui koji entiteti su kojeg tipa. Predikati
pripada(,), lei_na(,) i prolazi_kroz(,) indiciraju povezanost, odnosno u ovom sluaju
prostornu povezanost izmeu entiteta domene. Dakle, pripada(c, x) treba biti
interpretirano kao c pripada x, lei_na(c, r) znai c lei na r, a prolazi_kroz(r, x)
znai r prolazi kroz x.
Logiki jezik sadri zagrade kako bi obezbjedio nedvosmislenost, zatim logike
operatore (i), (ili) (ne, nije), (implicira, slijedi), i logike kvantifikatore (za
svako) i (postoji). Simboli r, x i c figuriu kao varijable nad kojim se primjenjuju
kvantifikatori.
Povezanost izmeu formalnog i prirodnog jezika bi trebala biti jasna iz komparacije datih
verzija premisa 1-10 (koje su opisane na formalnom i prirodnom jeziku). Slijedei
primjer:
c.prolazi_kroz(X, c) prolazi_kroz(Y, c)
se moe interpretirati kao postoji drava kroz koju prolazi i rijeka X i rijeka Y.

9.2 Informacije i neizvjesnost


Neizvjesnost je jedan od najteih koncepata sa ijim problemima se moemo boriti
prilikom primjene nekog informacionog sistema. ak i najosnovnije ideje mogu biti
povezane sa ovim problemima. Posmatrajmo za primjer nul (NULL) vrijednost,
predstavljenu u drugom poglavlju kao fundamentalni problem neizvjesnosti sa bazom
podataka. Pretpostavimo da je glavni centar nekog regiona uneen kao NULL. Ovo bi se
moglo interpretirati na nain da aktuelni podaci nisu uneeni, jer osoba koja unosi
podatke nije znala ime glavnog centra za taj region. Sa druge strane, nul vrijednost moe
biti interpretirana sa znaenjem da ovaj region (na primjer, Antarktik) nema glavni
centar. Dakle, ak i u ovako jednostavnom sluaju, postoji dvosmislenost u znaenju
jedne fundamentalne neizvjesne vrijednosti. Neizvjesnost je blisko povezana sa podacima
i informacijama, tako da emo, prije nego to nastavimo izlaganje, napraviti kratak
pregled nekih fundamentalnih ideja o podacima i informacijama.

308

9.2.1 Podaci i informacije


Nije teko uvidjeti da podaci i informacije predstavljaju razliite koncepte. String
01101101 predstavlja 8-bitni podatak, ali ne i informaciju, sve dok nemamo neko
znaenje da bismo ga interpretirali. Crveno svjetlo na prunom prelazu moe sadrati
mnogo informacija za motociklistu, i to sa samo malom koliinom podataka
(pretpostavljajui da svijetlo moe biti ukljueno ili iskljueno, to predstavlja podatak od
samo jednog bita 0/1). Podatke je jednostavno mjeriti: mogu se mjeriti u bitima i bajtima.
Mnogo tee pitanje je kako moemo mjeriti informacije. Ili ak ta vie, determinisati ta
je informacija (odnosno ta je ini).

Slika 9.3: Shannon-Weaverov model protoka informacija

Dominantna teorija protoka informacija toka je bila teorija kanala od Shannona i


Weavera, a njena osnovna struktura je prikazana na slici 9.3. Informacija je viena kao
poruka prenoena pomou signala du kanala od izvora do cilja. Poruka je poslana od
izvora putem transmitera (prenosnika) i isporuena je do prijemnika na cilju. Prilikom
transmisije, signal moe pretrpiti degradaciju, u obliku buke (uma).
Shannon-Weaverov model je originalno razvijen s ciljem da pomogne u analizi
informacija prenoenih telefonskim kablom. Meutim, model je postao iroko primjenjiv.
Na primjer, informacija o putanji do najblieg restorana moe biti preneena posredstvom
digitalnog crtea transmitovanog od servera (sa pohranjenim prostornim podacima) do
depnog raunara turiste, putem wireless mree. U ovom sluaju izvor je server, a poruka
o putanji do restorana je poslana do prijemnika u depnom raunaru koritenjem beine
tehnologije. Ukoliko je, na primjer prijemnik unutar zgrade, onda wireless signal moe
biti degradiran i praen umom.
Greke u mrei: Uprkos to je svaki transmisioni sistem neodvojiv od pojave uma, transmisija
podataka u modernim raunarskim mreama je izuzetno pouzdana. Ova pouzdanost je postignuta
koritenjem detekcije greke (error detection). Jednostavna provjera greke jeste da
transmitujemo paritetni bit (parity bit) na kraju svakog bloka binarnih podataka. Ovaj bit
osigurava da svaki blok ima paran broj jedinica, to se naziva parnim paritetom (ili neparan broj
jedinica, to se naziva neparnim paritetom). Na primjer, ASCII kd za slovo A je 7-bitni broj
1000001. Koritenjem parnog pariteta podaci bi se transmitovali kao 8-bitni broj 10000010.
Prisutnost uma u transmisiji bi dovela da se jedan od bita invertuje, na primjer, trei bit (pa
dobijamo broj 10100010), u kojem sluaju bi prijemnik detektovao neparan broj jedinica kao
greku transmisije. Provjera pariteta je limitirana, jer ukoliko su dva bita (ili svaki paran broj
bita) invertovani, provjera pariteta nee moi osigurati pouzdanost (na primjer, provjera pariteta
ne moe detektovati greku uma u slovu A ako imamo 10100000). Mnogo monija tehnika
provjere greke je CRC tehnika (cyclic redundancy check). Koritenjem CRC-a, poiljalac dodaje

309

binarni broj u blok podataka, takozvani FCS (frame check sequence), takav da kad se podaci i
FCS zajedno dodaju, ova dva broja su djeljiva sa nekim unaprijed araniranim brojem. Prijemnik
onda moe provjeriti da li su primljeni podaci dijeljivi sa primljenim FCS-om bez ostatka. Za
razliku od provjere pariteta, CRC tehnika ini malo vjerovatnim da proizvoljna inverzija bita
uzrokovana umom moe rezultirati neotkrivenom grekom. Mreni protokoli visokog nivoa
osiguravaju da ukoliko prijemnik detektuje greku, onda se podaci alju ponovo. Posljedica
ovoga je da transmisija podataka sa umom u raunarskim mreama dovodi do slabijih (sporijih)
mrenih performansi, odnosno detekcijom uestalih greaka ponavlja se slanje odreene koliine
podataka.

Osnovni razlog, zbog kojeg je kanalski model konstruisan, je uspostava metrike za


koliinu komuniciranih informacija. Shannon i Weaver su nadoli na mjeru koliine
informacije (entropija informacije) u smislu njenog kapaciteta da iznenadi prijemnik.
Iznenaenje, u ovom kontekstu, ima specijalizirano znaenje kao slabost anse da e
pojedini signal biti primljen, a ona se moe odrediti primjenom teorije vjerovatnoe. to
su manje anse, vee je iznenaenje i informacija dobija veu vrijednost. Ilustrujmo ovo
kroz slijedei primjer. U Maine je zimi zemlja skoro uvijek pokrivena snijegom, tako da
vremenska prognoza sa snijenim padavinama nije neoekivana. Meutim, prognoza sa
tropskom olujnom kiom bi, najblae govorei, bila neobina, i zbog toga se moe rei da
ona sadri vie informacije.
Informacija primljena u formi poruke implicira postojanje neizvjesnosti kod prijemnika,
kao i uklanjanja dijela neizvjesnosti nakon prijema poruke. Esencijalna osobina poruke
nije obavezno njen originalni set simbola (podataka, bita) ve neto to se oznaava kao
informacioni sadraj. Mjera informacionog sadraja poruke moe biti bazirana na iznosu
neizvjesnosti koji ona uklanja.
Konceptima informacionog sadraja, mjere informacije, njenom entropijom, kodiranjem i
drugim releventnim konceptima vezanim za informaciju se bavi teorija informacije.

9.2.2 Neizvjesnost
O neizvjesnosti moemo govoriti na dva naina. Prvo, ona se odnosi na stanje uma.
Drugo, ona se moe primjeniti direktno na stvarni svijet, bilo na podatke, bilo na
informacije vezane za njega. Na primjer, moemo rei da je vrijeme sastanka neizvjesno,
to znai da nismo sigurni kada e se sastanak odrati. U drugu ruku, ako kaemo da je
dubina mora na pojedinim lokacijama neizvjesna, to se moe komentirati nepreciznou
naih mjernih ureaja. Neizvjesnost je vano i neizbjeno svojstvo stvarnog svijeta,
informacija o svijetu i naeg razmiljanja o svijetu. Postoji ak fiziki princip o
neizvjesnosti, formulisan od strane Wernera Heisenberga, koji kae da, to je preciznije
odreen poloaj subatomskog elementa (kao to je elektron), to je njegov impuls poznat
sa manjom preciznou. Meutim, principi kvantne fizike nisu predmet ovog izlaganja, i
moemo zanemariti ovakvu formulaciju. Vezano za nae posmatranje, treba naglasiti da
neizvjesnost moe dovesti do dvojbe i nesposobnosti u donoenju efikasnih odluka
baziranih na raspoloivim informacijama.
Neizvjesnost se pojavljuje u razliitim fazama u procesu razvoja GIS-a: od njenog
prisustva u podacima do njenog koritenja prilikom analize u aplikacionoj domeni.
Posmatrajmo primjer prikupljanja podataka koji se odnose na granicu jezera. Meu
pitanjima vezanim za neizvjesnost mogu se pojaviti slijedea:

310

Neizvjesne specifikacije: Jezero moda nema potpuno specificiranu granicu. Sve dok
granica ne bude opisana od strane ljudi, nije vjerovatno da emo moi u potpunosti
odrediti granicu jezera. Postojae vremenske varijacije ivice vode, kao i izostanak
jasnoe ta podrazumjevamo pod jezerom. Na primjer, hoe li obalni pijesak biti
ukljuen u jezero, i ako hoe koji njegovi dijelovi, ili ak, ta predstavlja obalni pjesak?
Neizvjesna mjerenja: ak i ako je jezerska granica openito kompletno specificirana,
mogu se pojaviti problemi odreivanja njenog poloaja pruanja. Naa mjerenja mogu
biti manje tana ili netana, jer, na primjer, mjerni instrument nije ispravno rektifikovan,
ili smo ga pogreno koristili (na primjer, pogreno oitali podjelu ili ga koristili pod
nepodobnim temperaturnim uslovima). Za naa mjerenja moe izostati odgovarajua
preciznost. Kompletna i apsolutna preciznost za geoprostorne informacije obino nisu
dostina, kako zbog kompleksne prirode geografskih fenomena (na primjer, jezera), tako
i zbog ogranienja mjernih instrumenata. Trebali bismo teiti da dostignemo preciznost
mjerenja koja zadovoljava nivo detalja zahtjevan u okviru odgovarajue primjene.
Neizvjesne transformacije: Odvojeno od samih mjernih ureaja, neizvjesnost se moe
pojaviti prilikom transformacija koje se zahtjevaju za konvertovanje sirovih mjernih
podataka. U sluaju jezerske granice, mjerni instrument moe oitati granicu na
pojedinim takama, a postupkom interpolacije bi se granica predstavila lukom.
Ovaj primjer donosi nekoliko razliitih notacija koje su kljune u svakoj diskusiji o
neizvjesnosti. Vidjeli smo da se neizvjesnost pojavljuje zbog nesavrenosti naih alata za
reprezentaciju, opaanje, mjerenje i izvoenje zakljuaka o stvarnom svijetu.

9.2.3 Tipologija nesavrenosti


Znanje o stvarnosti je steeno kroz opaanje i reprezentaciju. Opaanja su nesavrena u
smislu da nikada nemogu u potpunosti i ispravno reflektovati sve aspekte stvarnosti.
Reprezentacije, koje ovdje ukljuuju nain na koji su opaanja uvezana sa misaonim
(kognitivnim), formalnim ili konceptualnim modelom, su na slian nain ograniene
prirodom stvarnog svijeta i relacijama tog svijeta sa naim modelima.
Nesavrenost je stoga korijen nae tipologije, poto se ovaj koncept openito odnosi na
neizbjene devijacije od savrenosti prilikom opaanja i reprezentacije realnosti. Slika 9.4
prikazuje osnovnu tipologiju nesavrenosti (odnosno imperfekcije), ukljuujui dvije
glavne ortogonalno razliite komponente (koncepta): netanost i nepreciznost.

Netanost se odnosi na izostanak (nedostatkom) korelacije izmeu opaanja ili


reprezentacije i realnosti. Netanost je sinonim za greku.
Nepreciznost se bavi izostankom (nedostatkom) specifinosti, odnosno detalja pri
opaanju ili reprezentaciji.

Greke izostavljanja i dodjeljivanja: Postoje dva tipa greaka (netanosti) koje moemo
razlikovati, slino razlici izmeu greaka tipa I i tipa II u testiranju statistikog znaaja. Greka
dodjeljivanja je napravljena kada zakljuimo da je neko pravilo (propozicija) defininitivno sluaj,
a kada je to u stvari neodreeno ili kada ono definitivno nije sluaj. S druge strane, greka
izostavljanja se pojavljuje kada ne deklariemo pravilo da bude sluaj, kada je ono u stvari

311

sluaj. Na primjer, satelitski snimak se moe koristiti za determinisanje zemljinog pokrova (land
cover). Za pojedinu klasu pokrova zemljita, kao to je uma, oni regioni koji su trenutno pod
umom, ali su pogreno klasificirani kao drugaija klasa, na primjer, kao poljoprivredni
usjevi, konstituiu greke izostavljanja za klasu uma. Obrnuto, oni regioni koji nisu aktuelno
uma, ali su pogreno klasificirani kao uma, konstituiu greke dodjeljivanja za klasu ume. U
sluaju karata zemljinog pokrova, greke izostavljanja i dodjeljivanja su inverzno vezane jedna
za drugu, jer svaka lokacija mora biti lan tano jedne klase zemljinog pokrova. Na ovaj nain,
one umske regije koje su pogreno klasificirane kao poljoprivredni usjevi konstituiu
greke izostavljanja za umu, ali iste greke predstavljaju greke dodjeljivanja za
poljoprivredne usjeve.

Da bismo uvidjeli da su netanost i nepreciznost nezavisni (odnosno meusobno


ortogonalni), posmatrajmo slijedei primjer. Ovo je pisano u Americi je tana izjava,
ali prilino neprecizna, poto ne obezbjeuje dovoljno detalja o tome gdje u Americi je
ovo napisano. Sa druge strane, Ovo je pisano u potkrovlju kue zvane Oldway, u
Madeleyu, u Staffordshire kantonu u Engleskoj je preciznija izjava od predhodne
(obuhvata vie detalja), ali je netana. Dakle, tanost i preciznost su ortogonalni
koncepti.

Slika 9.4: Tipologija nesavrenosti

Granularnost i nerazluljivost
Granularnost je blisko povezana, ali nije identina sa nepreciznou. Granularnost se
odnosi na postojanje gruda ili zrna pri opaanju ili reprezentaciji, u smislu da individualni
elementi u zrnu (ili grupi podataka) nemogu biti razlikovani ili primjeeni odvojeno jedni
od drugih.
Na primjer, zamislimo satelitski snimak nekog dijela Zemlje. Na ovom snimku, bilo koje
dvije lokacije na zemlji, koje padaju unutar istog piksela, samim opaanjem ne mogu biti
razlikovani po svojim karakteristikama. Dakle, granularnost u opaanju ini stvari
nerazluljivim, a koje se u principu razlikuju jedna od druge (slika 9.5).
Nerazluljivost je kljuni koncept u modeliranju granularnosti i nepreciznosti. Intuitivno
gledajui, konana kolekcija elemenata je nerazluiva ukoliko se neki par elemenata u toj
kolekciji ne moe (prilikom opaanja) razluiti jedan od drugog. Relacija nerazluivosti
se esto smatra ekvivalentnom relacijom (vidi sekciju 3.2.2). Implikacije ovakvog
shvatanja su da je nerazluivost refleksivna (a je nerazluivo od samog sebe), simetrina
(ako je a nerazluivo od b, onda je i b nerazluivo od a) i tranzitivna (ako je a
nerazluivo od b i b je nerazluivo od c, onda je i a nerazluivo od c).

312

Slika 9.5: Granularnost i nerazluljivost

Gledajui vie formalno, neka je binarna relacija nerazluivosti nad skupom X. Svaka
ekvivalentna relacija nad nekim skupom dijeli taj skup na ekvivalentne klase. U naem
sluaju, klase se sastoje od blokova lanova iz X koji su nerazluivi jedan od drugog.
Blokovi su odvojeni i kompletno pokrivaju X. Skup blokova se naziva okvir razluivanja
skupa X obzirom na relaciju , i pie se X/. Pozivajui se na sliku 9.5, slika 9.5a
predstavlja skup X. Okvir razluivanja na slici 9.5b rezultira blokovima (ekvivalentnim
klasama) osjenenih u sivoj nijansi na slici 9.5c.
Nerazluljivost se moe pojaviti ne samo u kontekstu granulacije fizikog prostora, nego
takoe i tematskog prostora. Granularnost neke sheme specificira nivoe detalja, koji se
mogu dobiti (razluiti) tokom opaanja, koritenjem te sheme. Za tematske klase u
objektno orijentisanom GIS-u, granularnost moe biti izraena kao nivo detalja, koji je
obezbjeen pomou objektnih klasa raspoloivih u hierarhiji objektnog naslijeivanja. Na
primjer, objektno bazirani topografski model podataka, ije su jedine objektne klase za
puteve glavni put i sporedni put se nebi mogao koristiti za razlikovanje puta sa dvije
od onog sa tri trake.
Dakle, za dati fenomen koji se opaa, granularnost sheme opaanja navodi na
preslikavanje podskupova izvornog skupa u konaan ciljni skup. Izvorni skup je formiran
od kolekcije konstituenata (sastavnih elemenata) fenomena. Elementi koji su nerazluivi
tokom opaanja se identificiraju jedni sa drugim u ciljnom skupu.
U sluaju pikselizacije slike (kao na slici 9.5), rerazluivost je itekako ekvivalentna
relacija. Meutim, ekvivalentna relacija nije uvijek dobar model nerazluivosti. Na
primjer, nizovi senzora koriteni za generisanje satelitskog snimka esto ispoljavaju
kompleksnije forme nerazluivosti, gdje svojstvo tranzitivnosti u pojedinim sluajevima
nemoe vrijediti. Relacija koja je simetrina i refleksivna, ali ne i tranzitivna se naziva
relacijom slinosti.
Neodreenost
Neodreenost (vagueness) se bavi postojanjem graninih sluajeva nekog koncepta. U
ovom smislu, Mount Everest je primjer neodreenosti. Postoje mnoge lokacije koje su
definitivno dio Mount Everesta (kao to su vrh i sjeverna strana Mount Everesta) i mnoge
lokacije koje definitivno nisu dio Mount Everesta (kao to je Pariz). Presudno, postoje
takoe mnoge granine lokacije na Himalayama, gdje nije jasno da li one formiraju dio
Mount Everesta ili ne. Termin crisp (vrst) se esto koristi kao antonim (suprotnost) za
neodreenost, odnosei se na koncepte ili regione gdje ne postoje granini sluajevi. Na

313

slian nain, crisp skup je jednostavno standardan klasini skup, za kojeg je neki
elemenat ili lan tog skupa ili nije (nema graninih sluajeva).
Pitanje da li je neodreenost osobina naih reprezentacija svijeta (to se zove
episteminom neodreenou) ili je svijet sam po sebi neodreen (to se naziva ontinom
neodreenou) predstavlja temu debate unutar filozofije. Na primjer, planina moe
biti prihvaena ili kao neodreena lingvistika reprezentacija dijela crisp svijeta, ili kao
neodreen objekat u svijetu. Openito, veina teorija neodreenosti su zasnovane na
predhodnom pogledu, to jest da je neodreenost epistemina i da predstavlja svojstvo
jezika i drugih sredstava za reprezentaciju svijeta.
Ne moe se rei da sve pojave nepreciznosti spadaju u neodreenost. Na primjer, mogli
bi rei da se neka osoba nalazi u Americi, to nije neodreena izjava (podrazumjevajui
za granicu Amerike crisp granicu), ali je prilino neprecizna. Meutim, svaka neodreena
izjava (u kontekstu ovog primjera) mora takoe biti i neprecizna, zbog nedostatka
specifinosti (detalja) vezane za ovu granicu. Stoga, neodreenost je prikazana kao
poseban tip nepreciznosti na slici 9.4.
Rezonovanje sa neodreenou
Rezonovanje koritenjem neodreenih tvrdnji je okrueno potekoama, to se moe
pokazati primjerom sorites paradoksa. Sorites paradoks se bavi logikim problemom koji
nastaje
pokuajem rezonovanja o neodreenom konceptu gomile (mnotva)
(etimoloki, sorites derivira iz soros, to na grkom znai gomila).

Slika 9.6: Maine, USA

Ovaj paradoks moe biti ilustrovan na drugaiji nain, koritenjem geografski


neodreenog koncepta, kao to je juni Maine (slika 9.6). Moemo biti sigurni da je
Portland u junom Maineu, a da Presque Isle nije. Poto geografska regija junog
Mainea nema jasnu granicu, izgleda razumljivim tvrditi da jedan korak kojeg je
napravila osoba koja pjeai sjeverno putem od Portlanda do Presque Islea nemoe
napraviti razliku u smislu da li se osoba nalazi u junom Maineu ili ne. Gledajui na ovaj
314

nain, to jest, da se jednim korakom nemoe napraviti ova razlika, slijedi da bi putnik
koji pjeai od Portlanda prema Presqe Isleu mogao opravdano zakljuiti da se pri
svakom koraku on jo uvijek nalazi u junom Mainu. Konano, putnik bi ovako stigao i
do Presque Islea, i do slijedeeg paradoksa: poetni zakljuak da Presque Isle definitivno
nije u junom Maineu je kontradiktoran korak po korak pristupu rezonovanja tokom
pjeaenja od Portlanda do Presque Islea. Sorites paradoks prikazuje da nai standardni
modaliteti rezonovanja (u ovom sluaju princip matematike indukcije) ne mogu biti
primjenjeni za neodreenost.

9.2.4 Dimenzije kvaliteta podataka


Kvalitet podataka se odnosi na karakteristike skupa podataka koje mogu uticati na
neizvjesnost vezanu za odluke bazirane na tom skupu podataka. Tanost i preciznost
skupa podataka su nedvojbeno elementi kvaliteta podataka, jer oba svojstva mogu uticati
na uvjerenost donosioca odluke da su odluke bazirane na tom skupu podataka dobre.
Loza (rod) je jo jedan elemenat kvaliteta podataka, koji opisuje porijeklo nekog skupa
podataka (njihov izvor, starost, namjenu koritenja). Termin meta podaci se esto koristi
za indikaciju podataka koji obezbjeuju informacije o odreenom skupu podataka.
Elementi (mjere, dimenzije) kvaliteta podataka, kao to su tanost, preciznost, porijeklo
su primjeri meta podataka. Tabela 9.1 sumira neke vane elemente kvaliteta podataka.
Srednja vrijednost (teite, sklonost) se odnosi na postojanje sistematskih odstupanja u
skupu podataka.
Tanost, granularnost, porijeklo i preciznost su predhodno diskutovani. Osim toga,
preciznost i tanost imaju svoja odgovarajua znaenja i u statistici.
Statistika preciznost i tanost: Mnogi elementi kvaliteta podataka opisani u ovom poglavlju
imaju svoja blisko povezana znaenja u statistici. Preciznost se statistiki mjeri koritenjem
standardne devijacije:

1
( xi x ) 2

gdje je n veliina, a x je srednja vrijednost nekog skupa opaanja xi i 1...n

. Tanost se

statistki mjeri koritenjem korijena iz srednje kvadratne greke (RMSE):

rmse

1
( xi t ) 2

gdje je t istinita vrijednost skupa opaanja, ili neka vrijednost usvojena kao istinita.
Standardnom devijacijom se mjeri rasutost skupa opaanja neke veliine, dok se sa korijenom iz
srednje kvadratne greke (RMSE) mjeri neslaganje (netanost) izmeu skupa opaanja te veliine
i istinite vrijednosti. Iako se standardna devijacija i RMSE konceptualno razlikuju, brojno
gledajui, oni su esto ekvivalentni, poto se srednja vrijednost skupa opaanja x standardno
koristi kao procjena istinite vrijednosti t.

Dalje, kompletnost opisuje iscrpnost skupa podataka, u smislu koji tipovi objekata su
ukljueni i iskljueni iz skupa podataka.
Validnost skupa podataka indicira vremensku razliku izmeu aktuelnih podataka i
njihovog izvora, odnosno frekvenciju auriranja podataka. U zavisnosti od vremenske
kritinosti aplikacije, validnost podataka moe biti manje ili vie vana.

315

Pravovremenost se odnosi na vremensku relevantnost, odnosno pitanje da li su podaci


dostupni u pravom momentu.
Pouzdanost se odnosi na vjerodostojnost podataka ili stepen povjerenja kojeg korisnik
ima u skup podataka. U produetku, pozdanost je zavisna od drugih elemenata kvaliteta
podataka: podaci slabije tanosti su manje pouzdani i slino. Pouzdanost predstavlja
vano razmatranje prilikom odreivanja relativne prednosti (prioriteta) koju korisnik daje
jednom skupu podataka u odnosu na drugi.
Tabela 9.1: Neki elementi kvaliteta podataka

Elemenat
Tanost
Srednja vrijednost
Kompletnost
Konzistentnost
Validnost
Format
Granularnost
Porijeklo
Preciznost
Pouzdanost
Pravovremenost

Kratka definicija
Bliskost podudaranja izmeu podataka i stvari
na koje se podaci odnose.
Postojanje sistematskih odstupanja (distorzija)
unutar podataka.
Cjelokupnost podataka, u smislu tipova
objekata koji su reprezentovani podacima.
Nivo logine kontradiktornosti unutar
podataka.
Kako su esto podaci aurirani.
Struktura i sintaksa koritena za kodiranje
podataka.
Postojanje grudvi ili zrna u podacima.
Porijeklo podataka, ukljuujui izvor, starost i
namjenu koritenja.
Nivo detalja ili specifinosti u podacima.
Vjerodostojnost ili stepen povjerenja koje
korisnik moe imati u podatke.
Koliko su podaci relevantni za tekue potrebe
korisnika.

Konzistencija
Konzistentnost se bavi postojanjem logikih kontradikcija unutar skupa podataka.
Konzistentnost je naruena kada su informacije same sebi kontradiktorne (bilo
eksplicitno, bilo implicitno). Na primjer, implicitna kontradikcija moe biti deducirana
(izvedena) iz slijedeih premisa:
Bangor u Maineu ima populaciju od 31000 stanovnika.
Samo gradovi sa vie od 50000 stanovnika su veliki.
Bangor je veliki grad.
Zakljuak Bangor nije veliki grad je validna dedukcija iz gornjih premisa. Meutim,
ovaj zakljuak je kontradiktoran sa premisom Bangor je veliki grad.
Nekonzistentnost se moe pojaviti na vie naina. Netanost, nepreciznost i
neodreenost, mogu svi rezultirati nekonzistentnou. Na primjer, pretpostavimo da je
aktualna populacija Bangora 31,473 stanovnika. Dvije netane procjene populacije e
vjerovatno biti nekonzistentne jedna sa drugom (na primjer, procjena od 34,371 i 29,934

316

stanovnika). Slino, dvije neprecizne opservacije populacije, ukoliko se pogreno


interpretiraju, mogu biti nekonzistentne jedna sa drugom (na primjer, populacija od
31,000, sa tanou reda od blizu 1000 stanovnika, i populacija od 30.000 sa tanou
reda od 10,000 stanovnika). Konano, ukoliko za trenutak pretpostavimo da je Bangor
neodreen koncept, koji se odnosi na regiju Bangor (jer sam grad ima precizno definisane
administrativne granice), onda neslaganje o tanom poloaju granice e dovesti do
razliitog odreivanja populacije. Ovo rezultira nekonzistentnou, jer neki stanovnici
koji su iskljueni iz regije Bangor prilikom jedne opservacije, mogu biti ukljueni u
drugoj.
Klasina logika, je kao i veina standardnih logika je eksplozivna. Ovakve logike imaju
vano, ali ponekad frustrirajue svojstvo da se usljed neke kontradikcije, na kraju moe
doi do bilo kakvog zakljuka. Iz ovoga slijedi da se u ovakvim standardnim logikama
nekonzistentnost mora izbjei ili razrijeiti po svaku cijenu Meutim, nekonzistentnost
nebi trebalo uvijek smatrati iskljuivo nepoeljnom. Na primjer, nekonzistentnost nas
moe stimulisati da jo jednom pregledamo, revidujemo i rafiniramo naa ubjeenja.
Openito, nakon otkrivanja da su nove informacije nekonzistentne sa postojeim, moe
se reagovati na slijedea od tri naina:
Razrijeiti nekonzistentnost: Veina pristupa kada se pojavi nekonzistentnost cilja
na njeno razrijeavanje. Na primjer, kod tradicionalnih baza podataka, sa
ogranienjima vezanim za integritet podataka se nastoji preventivno djelovati na
nekonzistentne informacije kadgod se one unose u bazu podataka (vidi drugo
poglavlje). Ukoliko informacije naruavaju integritetna ogranienja baze podataka
one se odbacuju, to predstavlja veoma prost oblik rjeavanja nekonzistentnosti.
Postoje i druge sofisticiranije tehnike rjeavanja nekonzistentnosti, kao to su
revizija povjerenja i vievrijednosna logika, o kojima e se kasnije neto vie rei.
Zadrati nekonzistentnost: Mana razrijeavanja nekonzistentnosti je da se tokom
ovog procesa obino gube informacije. Na primjer, izravnanje metodom
najmanjih kvadrata je uobiajena i uspjena statistika tehnika za rijeavanje
nekonzistentnosti prilikom geodetskih mjerenja. Meutim, kada se jednom ova
tehnika primjeni, nije se mogue vie pozvati na originalna mjerenja, to oteava
rjeavanje svake nekonzistentnosti koja se naknadno moe pojaviti. Atraktivno
polje buduih istraivanja je razvoj baza znanja, koje su sposobne da zadre
nekonzistentne informacije, rijeavajui nekonzistentnost samo kada je to
neophodno za pojedinu primjenu. Predloeno je nekoliko logikih sistema, poput
parakonzistentne logike, koji omoguavaju zadravanje nekonzistentnosti uz
izbjegavanje problema eksplozivne logike.
Inicirati dijalog: Konano, nekonzistentnost moe voditi do dijaloga izmeu
agenata odgovornih za razliite izvore informacija. Vaan primjer dijaloga se
pojavljuje, kada se usljed nekonzistentnosti zahtjeva akvizicija novih informacija,
kao to je ponavljano prikupljanja podataka, u pokuaju za rijeavanjem poetne
nekonzistentnosti.
Relevantnost i podobnost za koritenje
Relevantnost (bitnost) je vaan koncept, kako za informatiku nauku tako i za studije
ljudskog razmiljanja. Relevantnost opisuje povezanost izmeu informacije i njenog
konteksta. Sa aspekta skupova podataka, relevantnost se bavi konekcijom skupa podataka

317

sa pojedinom primjenom. Informacija je relevantna ukoliko odgovara neijim potrebama,


ukoliko je korisna i znaajna za neije zahtjeve. Relevantnost nije nezavisna od nekih
drugih indikatora. Na primjer, ukoliko je informacija na pogrenom nivou detalja, ili
ukoliko nije pravovremena, onda ona ne moe biti relevantna.
Relevantnost je jedan aspekt kvaliteta podataka na osnovu kojeg se procjenjuje fitnessfor-use (podobnost za koritenje) skupa podataka za pojedinu primjenu. Na primjer,
studija o promjenama stanita u nacionalnom parku moe zahtjevati vremenske serije
podataka sa viskom preciznou i tanou. Pored toga, moe biti potrebno detaljno
porijeklo i kompletnost metapodataka, da bi se omoguila komparacija istih ili razliitih
klasifikacija stanita koritenih u razliitom vrememenu. Meutim, za potrebe izrade
turistike karte koja informie i educira posjetioce nacionalnog parka o tipovima i
historiji stanita, skupovi podataka sa znatno niom tanou i preciznou mogu u
potpunosti zadovoljiti (biti podobni). ak i sa meta podacima o kvaliteti podataka,
procjena podobnosti pojedinog skupa podataka za neko specifino koritenje moe biti
kompleksna i traiti iskustvo i sposobnost dobrog rasuivanja. Bez takvih meta podataka
ovaj zadatak bi bio nemogu.

9.3 Kvalitativni pristupi neizvjesnosti


Ova sekcija zapoinje sa opisom nekih kljunih pristupa reprezentaciji i rezonovanju pod
okolnostima neizvjesnosti. Kao to smo vidjeli, neizvjesnost moe imati razne oblike.
esto se u prostornom rezonovanju pravi distinkcija izmeu kvantitativnih i kvalitativnih
pristupa. Neki pristup se openito odnosi na kvantitativni ukoliko je zasnovan na analizi
numerikih (intervala ili omjera) podataka. Sa druge strane, pristup se obino odnosi na
kvalitativan ukoliko je zasnovan na analizi klasifikacija ili ureenja, odnosno poretka
(nominalni ili ordinalni podaci). Termini kvalitativan i kvantitativan se esto koriste
kao antonimi (suprotnosti). Meutim, kvalitativan i kvantitativan pristup se nebi trebali
posmatrati kao meusobno iskljuivi, niti bi se jedan u odnosu na drugi trebao smatrati
preferabilnim. Najpodesniji pristup zavisi o fenomenu koji se istrauje i obliku u kojem
su opaanja provedena i podaci prikupljeni.

9.3.1 Mogui svijetovi


U klasinoj propozicijskoj logici i logici prvog reda izjave mogu biti ili tane ili lane.
Meutim, u uslovima neizvjesnosti, nije uvijek mogue odrediti da li je neka izjava tana
ili lana. Jednostavan nain da se napravi proirenje propozicijske logike i prvoredne
logike i na model neizvjesnosti je razmatranje svih moguih svijetova koje neki agent
moe poznavati. Kao jednostavan primjer, razmotrimo povrinu podjeljenu u dva regiona
A i B (slika 9.7). Pretpostavimo da smo zainteresovani da saznamo da li su pojedini
regioni poumljeni ili ne. Za trenutak moemo podrazumjevati da svojstvo umovitosti
moe biti neodreeno, te stoga mora biti ili istinito ili lano (ali ne oboje) za obje date
regije. Stanja mogueg znanja mogu biti izraena koritenjem slijedeih izjava:
p: Region A je umovit
q: Region B je umovit

318

Za ovu domenu postoje etiri mogua svijeta:


Svijet W1: Izjava p je tana, izjava q je tana
Svijet W2: Izjava p je tana, izjava q je la
Svijet W3: Izjava p je la, izjava q je tana
Svijet W4: Izjava p je la, izjava q je la

Slika 9.7: Dvije regije A i B

Izjave p i q su ili tane ili lane (ali ne oboje), dakle tano jedan od moguih svijetova
moe egzistirati u nekom vremenskom periodu. Nae stanje znanja je reprezentovano
skupom svijetova: oni svijetovi koji su izvodljivi, daju ono to znamo. Zbog toga, ukoliko
smo u stanju potpunog ignorisanja, svi svijetovi su mogui. Potpuno ignorisanje je
predstavljeno skupom {W1, W2, W3, W4}. Nasuprot tome, kompletno znanje se moe
predstaviti jednolanim skupom. Na primjer, ukoliko znamo da su obje regije umovite,
onda je nae stanje znanja predstavljeno skupom {W1}. Openito, to je vei skup
moguih svijetova, postoji vea nepreciznost u naem stanju znanja. Prazan skup
predstavlja stanje nekonzistentne informacije. Indirektna informacija moe voditi
poveanoj preciznosti u naem stanju znanja. Na primjer, ukoliko iz stanja potpunog
ignorisanja, mi uimo da su obje regije istog tipa zemljita, nae znanje se moe
reprezentovati skupom {W1, W4}.
U gornjem sluaju smo prepostavili da su tipovi zemljita dviju regija meusobno
nezavisni, i da su zbog toga istinite vrijednosti dviju izjava bile a priori nezavisne. Kao
to slijedei primjer pokazuje, ovo ne mora biti sluaj. Slika 9.8 prikazuje dodatnu regiju
C, koja je dio regije A. Da bismo ovo reprezentovali dodaemo izjavu:
r: Region C je umovit

Slika 9.8: Tri regije A, B i C.

319

Pretpostavimo da imamo ogranienje da ukoliko je regija A umovita, onda regija C, koja


je sadrana unutar A, mora takoe biti umovita (iako obrnuto ne mora biti istina). Onda
za poveanu domenu, postoji est moguih svijetova koji su ispod prikazani. Zapazite da
kao rezultat gornjeg ogranienja, dvije situacije nisu mogue (one gdje je p istina, r je la,
i q je stina ili la) i zato su izostavljene iz dole prikazanih est svijetova.
Svijet W1: p je istina, q je istina, r je istina
Svijet W2: p je istina, q je la, r je istina
Svijet W3: p je la, q je istina, r je istina
Svijet W4: p je la, q je la, r je istina
Svijet W5: p je la, q je istina, r je la
Svijet W6: p je la, q je la, r je la

9.3.2 Vjerovanje i znanje


Semantike moguih svijetova vode do korisne distinkcije izmeu znanja i vjerovanja.
Vjerovanje (uvjerenost) je ubjeenje agenta u istinitost izjave. Znanje je vjerovanje u
opravdanu (potvrenu) istinu. Na primjer, moe se vjerovati da svinje mogu letiti, ali se
to ne moe znati, poto je to u stvari la. Takoe, dok je svo znanje vjerovanje u
istinitost, nisu sva vjerovanja u istinu znanje. Na primjer, moe se vjerovati u postojanje
ivota na udaljenim sazvijeima, i ovo sluajno moe biti injenica, ali ovo nije
dovoljno za znanje, to jest, za ovo takoe mora postojati neka potvrda (opravdanje) u
vidu evidencije ili zakljuka.
Jasno je onda da postoji razlika izmeu neega to jest sluaj, i naeg vjerovanja ili
znanja o tome. Jedan uobiajen mehanizam za konstrukciju logike vjerovanja je
predhodna propozicija pomou modalnog operatora, koja indicira nae znanje ili
vjerovanje o tome. Dakle, kao i predhodno, ako imamo izjavu:
p:Region A je umovit.
onda:
Zp je izjava
Vp je izjava

Znam da je region A umovit


Vjerujem da je region A umovit

Vjerovanje i znanje moe biti povezano formulama na slijedei nain:


Z pVp

Ako ne znam da p nije sluaj, onda mogu vjerovati u p.

Logika znanja i vjerovanja uvodi premise koje izraavaju osobine operatora znanja i
vjerovanja. Na primjer, moemo imati:

Z pp

Ako znam p, onda p mora biti istina.

320

Z pp

Ako ne znam p, onda p nemoe biti istina.

Aksiom Z pp modelira zatvorenu pretpostavku svijeta teorije baze podataka,


odnosno ako baza podataka ne sadri injenicu, onda injenica nije sluaj. U nekim
sluajevima, zavisno od domene, mogu postojati i drugi kompleksniji aksiomi koji su
ispunjeni, kao to su:
Z pZZp

Ako znam p, onda znam da znam p.

ZpZ Z p

Ako ne znam p, onda znam da ne znam p.

Ova zadnja dva aksioma uvode koncept introspekcije (samoispitivanja, samokritike).


Predhodni aksiom, Ja znam ta znam, je poznat kao pozitivna introspekcija. Zadnji
aksiom, Ja znam ta ne znam, je negativna introspekcija.
Ovaj modalni formalizam se moe proiriti na model znanja kojeg sadri vie od jednog
agenta. U ovom sluaju, modalni operatori su doznaeni nazivima agenata. Na primjer,
ako je a ime nekog agenta, onda Kap moe izraziti injenicu da agent a zna propoziciju
(pravilo) p.

9.3.3 Revizija vjerovanja


Ukoliko se pojave nove informacije koje su kontradiktorne naim trenutnim vjerovanjima
(uvjerenjima, ubjeenjima), onda moemo poeljeti pregledati, revidirati ili povui
(opozvati) naa stara vjerovanja, da bismo napravili put za nove informacije. Ovaj proces
se naziva revizija vjerovanja. Standardno, sistemi revizije vjerovanja su nemonotonini,
jer ovaj skup vjerovanja moe rasti ili se opozvati, nakon to se nove informacije dodaju
u bazu znanja. Sposobnost nemonotonine logike da povue predhodno uvana
vjerovanja pod uticajem novih informacija blie modelira (bolje odlikuje)
zdravorazumsko rezonovanje (vidi sekciju 8.1.2).
Kljuno pitanje s kojim se susree bilo koji nemonotonini sistem revizije vjerovanja
jeste koja vjerovanja opozvati, a koja zadrati. Naalost, poto su vjerovanja esto
zasnovana na drugim vjerovanjima, efekti uklanjanja jednog vjerovanja se mogu
kaskadno prenjeti kroz bazu znanja na nain kojeg je teko predvidjeti. Dobro poznat
primjer (Grdenfors) se bavi bazom znanja koj sadri slijedee injenice i pravila:
Ptica uhvaena u zamku je labud.
Ptica uhvaena u zamku dolazi iz vedske.
vedska je dio Evrope.
Svi evropski labudovi su bijeli.
Pretpostavimo da nauimo novu informaciju koja glasi Ptica uhvaena u zamku je
crna. Ova informacija je implicitno nekonzistentan sa bazom znanja, poto se iz baze
znanja moe zakljuiti izjava Ptica uhvaena u zamku je bijela. Pitanje sa kojim se
susree svaki sistem revizije vjerovanja je koja vjerovanja povui da bi se ponovo

321

uspostavila konzistentnost. Odbacivanjem bilo kojeg od pet informacija koje trenutno


imamo (4 gore navedene plus nova informacija) e rezultirati ponovo konzistentnim
sistemom.
Da bi odluili ta zadrati, a ta ukloniti, mora imati neki nain odabira jedne informacije
preko druge. Tehnike za odluivanje ta opozvati obino uvode evaluaciju snage
vjerovanja kojeg se drimo, koritenjem preferentne relacije (tabele), esto uzete kao
parcijalan poredak. Na primjer, moemo preferirati dobro ustanovljenom dijelu
informacije (na primjer, vedska je dio Europe), prije nego injenici o trenutnoj
situaciji (na primjer, Ptiva uhvaena u zamku je labud. Dalekosene izjave kao to je
Svi europski labudovi su bijeli se mogu opet dovesti u pitanje. Opi princip koji se esto
koristi u reviziji vjerovanja da bi revidovali vjerovanja tako da je koliina promjena
minimizirana jeste princip minimalnih promjena. Drugi mogui princip je favorizovati
ona vjerovanja koja su prostorno ili vremenski blia pojavi, u odnosu na ona koja su dalja
(princip bliskosti). Na primjer, kada smo suoeni sa dvije nekonzistentne informacije,
moemo preferirati informaciji sa dokazano aktuelnijim (mlaim) izvorom, poto je ona
po definiciji vremenski blia sadanjosti.
Revizija vjerovanja je povezana sa temom podrazumjevanog rezonovanja (default
reasoning). U predhodnom primjeru, prve tri injenice koje govore da je ptica uhvaena u
zamku, u stvari labud iz vedske, koja je dio Europe, se potencijalno mogu utvrditi
(dokazati) verificirati. etvrta univerzalna izjava, odnosno pravilo Svi europski labudovi
su bijeli bi se teko ili nikako moglo utvrditi (trebalo bi ga provjeriti za svakog labuda u
Europi) . Univerzalne (ope) izjave stvaraju snana pravila, ali mogu postati i predmetom
sluajnog kontraprimjera, kao to je vedski crni labud. Umjesto bezuslovne
univerzalnosti, ono to bi trebalo rei je:
Svi europski labudovi su bijeli (osim ako se eventualno
za nekog labuda ne dokae suprotno).
Sve dok se podrazumjeva da su europski labudovi bijeli, podrazumjevano rezonovanje
dozvoljava mogunost da i neki kontraprimjeri mogu postojati. Predikat se
podrazumjeva se smatra odrivim, sve dok neko dokaz ne pokae suprotno, u kojem
sluaju e se on ukinuti. Podrazumjevano rezonovanje je prema tome jo jedan primjer
nemonotoninog rezonovanja,
Revizija i auriranje
Na ovom mjestu je vano napraviti jasnu razliku izmeu revizije i auriranja (update)
baze znanja. Informacioni sistem prolazi proces auriranja onda kada nova informacija
donosi neku promjenu u aplikacionoj domeni. Informacioni sistem prolazi proces revizije
onda kada nova informacija indicira neku promjenu u naem vjerovanju (uvjerenju,
ubjeenju) o aplikacionoj domeni, ali sama aplikaciona domena se ne mora mjenjati.
Na primjer, ukoliko nova informacija dobijena sa satelitskog snimka indicira da se
zemljini pokrov (land cover) za region A razlikuje od onog registrovanog u bazi
podataka, onda postoje dvije mogunosti. Zemljini pokrov za region A koji je
registrovan u bazi podataka moe biti stvarno promjenjen u onaj detekovan sa satelitskim
daljinskim snimanjem. Ovo se moglo dogoditi recimo zbog zasaivanja neke nove
poljoprivredne kulture. U ovom sluaju, baza podataka se mora aurirati kako bi se ova

322

promjena iskazala. Kod temporalnih baza podataka (koje e se diskutovati u narednom


poglavlju) moe takoe biti neophodno registrovati vrijeme i historiju svih promjena.
Meutim, ukoliko nema razloga da sumnjamo u stvarnu promjenu, onda je neophodno
revidirati nae vjerovanje o pokrivenosti zemljita za region A. Ukoliko smo u
mogunosti da se pozovemo na preferensu izmeu informacija dobijenih iz ova dva
izvora, ona nam moe pomoi da donesemo odluku koje vjerovanje trebamo povui. Na
primjer, ukoliko se za novu informacija o zemljinom pokrovu, nastalu kao rezultat
primjene nove tehnologije satelitskog senzora, oekuje da je pouzdanija od stare
informacije pohranjene u bazi podataka, onda se moe preferirati novoj informaciji.
Slika 9.9 ilustruje razliku izmeu auriranja (update) i revizije. Slika 9.9a prikazuje
inicijalno stanje aplikacione domene na lijevoj i baze podataka na desnoj strani. Na slici
9.9b nova informacija sa satelitskog snimka indicira da je region sa pohranjenim tipom
urbane povrine u stvari region sa tipom pastoralne (seoske) povrine. Poto se
aplikaciona domena nije promjenila, potrebno je izvriti operaciju revizije. Naknadna
promjena u aplikacionoj domeni, prikazana na slici 9.9c, gdje je dio umovitog regiona
postao poljoprivredno zemljite, zahtjeva auriranje baze podataka. U obje faze na slici
9.9 baza podataka je promjenjena, ali samo u jednoj fazi je promjenjena aplikaciona
domena.

a.

b.

c.

Slika 9.9: Revizija i auriranje (update) baze podataka

323

9.3.4 Logika sa tri i vie vrijednosti istinitosti


U predhodnoj dikusiji o moguim svijetovima, izjave znanja i izjave vjerovanja su ili
istinite ili lane, sa neizvjesnou koja je modelirana kao stanje agentskog znanja ili
vjerovanja (uvjerenja) o ovom svijetu. Takoe, moe se pojaviti i mogunosti da neka
izjava ne bude ni istinita, a ni lana. Ovakva mogunost se moe pojaviti iz raznih
razloga, kao to su nedostatak dokaza za konanu odluku, kada neka vrijednost nema
smisla ili kada je izjava sama po sebi neodreena. Na primjer, za izjavu Region A je
umovit se nemoe tvrditi ni da je tana ni lana, jer ne postoje podaci koji e potvrditi
ili negirati istinitost ove izjave (moda zbog oblanosti koja je onemoguila satelitsko
snimanje na ovoj lokaciji). Osim toga, ova izjava ne mora biti ni tana ni lana poto sam
koncept umovitosti moe biti neodreen, odnosno kod postojanja malog broja stabala
u regionu, moe biti nejasno da li se region moe interpretirati kao umovit. U prijanjem
sluaju bi se uz odreene nove dokaze mogla donjeti konana odluka o istinitosti, dok u
zadnjem sluaju to ne bi bilo dovoljno. Naizgled jednostavno rjeenje je uvoenje treeg
vrijednosti istinitosti, to rezultira trovalidnoj logici. Ovu treu vrijednost istinitosti
bismo mogli nazvati nepoznatom ili neodreenom i indicirati je sa simbolom kao to
je N ili ?. Na ovaj nain bismo imali tri vrijednosti istinitosti: (istina), (la) i ?
(neodreeno). Upravo kao to smo koristili tabelu istine za klasinu dvovalidnu logiku,
moemo je proiriti i na trovalidnu logiku. U zavisnosti od interpretacije vrijednosti ?,
moemo doi do razliitih tabela istine. Jedan primjer trovalidne logike je Kleeneov
sistem. Tabele istine za logike operatore (nije) , (i), (ili) , (slijedi) i
(ekvivalentno) su prikazane na slici 9.10.

Slika 9.10: Tabele istine za Kleeneovu trovalidnu logiku.

U Kleeneovom sistemu, neizvjesnost je interpretirana kao ogranienost rezonovanja ili


raunarskih resursa. Dakle, izjavi se pridruuje vrijednost istinitosti ?, kadgod se njena
istinitost ili lanost ne moe determinisati pomou prirunih resursa, ak iako znamo da
to mora biti ili istina ili la (to jest, kada inherentna neodreenost nije obuhvaena ovim
sistemom).
Na primjer, pretpostavimo da smo imali izjave p i q kao i predhodno, i da se umovitost
smatra vrstom (crisp) osobinom regiona A (ili je umovit ili nije). Pretpostavimo dalje,
da zbog uslova oblanosti nismo saznali da li je region A umovit ili nije (?), ali imamo

324

vrst dokaz da je region B umovit (). Vrijednosti istinitosti slijedeih izjava se mogu
determinisati iz tabela istine prikazanih na slici 9.10.
Oba regiona A i B su umovita.
Ili je region A ili B, ili su oba umovita.
Ukoliko je region A umovit, onda je i region B umovit.

Kleeneova logika je jedan od brojnih primjera trovalidne logike, koji se mogu nai u
literaturi koja se bavi ovakvim pitanjima.
Trivalidna logika je i sama jedan tip multivalidne logike (logike sa vie vrijednosti
istinitosti). Neke multivalidne logike dozvoljavaju beskonaan broj intermedijalnih
(prelaznih, srednjih) vrijednosti koje se mogu dodjeliti izjavama, a koje lee izmeu
apsolutne istine i apsolutne lai.
Ovakvi logiki sistemi se esto nazivaju stepenske teorije (degree theories), jer se
vrijednosti mogu interpretirati kao stepeni istinitosti. Teorija fuzzy skupova, koja se
diskutuje u narednoj sekciji, je jedan vaan primjer stepenske teorije.

9.3.5 Fuzzy skupovi


Standardan pristup u istraivanjima lokacijske neizvjesnosti u GIS-u je primjena teorije
fuzzy skupova. U sluaju vrstih (crisp) skupova (normalnih skupova), neki elemenat
moe pripadati ili nepripadati nekom skupu. Sa fuzzy skupovima, funkcija pripadnosti
(membership function) gradira nivoe vjerovanja da li neki elemenat pripada skupu ili ne.
Iako teorija fuzzy skupova ima kvantitativan izgled, esto koristei realne brojeve izmeu
0 i 1 kao mjere stepena pripadnosti, ona uglavnom podrazumjeva koritenje samo
ordinalnih (rednih) osobina ovih brojeva. U okviru ovaga, koncentrisaemo se na sluaj
gdje su vrijednosti pripadnosti iz intervala 0, 1.
Formalno, neka je X universe of discourse (neprazan univerzalni skup realnih brojeva).
Fuzzy funkcija pripadnosti je funkcija (mi) od X u realnom intervalu 0, 1, : X
0, 1. Fuzzy skup A u X je skup ureenih parova (u, A(u)) za svako x X, gdje je A
fuzzy funkcija pripadnosti.

Slika 9.11: Fuzzy region sa vrijednostima piksela

325

Primjer fuzzy skupa koji opisuje regiju sa neizvjesnom granicom je prikazan na slici
9.11. Svakom pikselu je dodjeljena (pridruena) vrijednost iz fuzzy skupa, koja indicira
snagu vjerovanja da svaki piksel pripada datom regionu. Stepen vjerovanja (za svaki
piksel) se moe poveati na osnovu dokaza dobijenog terenskim opaanjem.
Isto kao i vrsti (crisp) skupovi, i fuzzy skupovi imaju svojstva i operacije, od kojih su
neka izlistana ispod.

Fuzzy skup A je prazan ako je A(x) = 0, za svako x X.


Fuzzy skup A je sadran u B ako A(x) B(x), za svako x X.
Fuzzy skupovi A i B su isti ako A(x) = B(x), za svako x X.
Komplement fuzzy skupa A je skup A sa funkcijom pripadnosti A takvom da
je A(x) = 1 - A (x), za svako x X.
Unija fuzzy skupova A i B je skup AB sa funkcijom pripadnosti max(A(u),
B(u)), za svako x X.
Presjek fuzzy skupova A i B je skup AB sa funkcijom pripadnosti min(A(u),
B(u)), za svako x X.
Potpora fuzzy skupa A je vrsti (crisp) skup koji sadri sve elemente sa
vrijednostima pripadnosti razliitih od nule iz skupa A, potpora(A) = {x|A(x)
> 0}.
Za 0 1, -rez fuzzy skupa A je vrst skup dat sa A = {x|A(x) > }.

Ono to je gore navedeno za operacije unije, presjeka i komplementacije predstavlja


specijalne sluajeve openitijih kategorija. Na primjer, presjek izmeu dva fuzzy skupa
se moe realizovati ne samo pomou operacije minimuma, nago i primjenom bilo koje
operacije koja je triangularna norma (T-norma).
Ideja o fuzzy regiji je i openitija nego to to sam prethodni primjer indicira. Ona definie
fuzzy region kao fuzzy skup ija je potpora region. Fuzzy regioni imaju vie strukture od
vie bazinih fuzzy skupova. Na primjer, ako uzmemo da su regioni bazirani na
kvadratnoj mrei elija, kao u primjeru na slici 9.11, onda elije imaju mnoge topoloke i
geometrijske osobine i relacije, poput susjedstva, povrine, udaljenosti i orijentacionog
ugla. Fuzija teorije fuzzy skupova sa geometrijskom ili topolokom strukturom
omoguava se definiu operacije poput fuzzy povezivosti (konektivnosti), konveksnosti,
povrine i obima, koje se ponekad nazivaju fuzzy geometrijom ili fuzzy topologijom,
respektivno.
Na primjer, neka je R fuzzy region baziran na kvadratnoj mrei elija sa fuzzy funkcijom
pripadnosti R. Onda se fuzzy povrina od R, p(R), moe definisati kao suma od R(x), za
svako x X. U primjeru na slici 9.11, fuzzy povrina regiona iznosi 14.1. Ovakvo
poimanje fuzzy povrina zadovoljava samo neke od baznih osobina za koje oekujemo da
ih neka mjera povrine treba zadovoljiti. Na primjer, dok imamo sluaj da vrijedi:
a(A B)= a(A) + a(B) - a(A B)
ne mora vrijediti sluaj:
a(A) = a(A B) + a(A B).

326

9.3.6 Grubi skupovi


Grubi skupovi su motivisani primarno potrebom da se reprezentuje i rezonuje o
granularnosti (zrnatosti) i nerazluivosti u informacijama, kao to je diskutovano u sekciji
9.2.3. Za razliku od gore prezentiranih tehnika, koje nae vjerovanje modeliraju kroz
tanost (ili lanost) izjave, teorija grubih skupova podrava rezonovanje pod uslovima
granularnosti i nerazluivosti. Vano pitanje ovdje je kako reprezentovati podskupove od
skupa X na nivou granularnosti nametnute relacijom nerazluivosti (ro). Grubi
skupovi obezbjeuju okvir u kojem se na ovo pitanje moe odgovoriti. Prvo, neka je skup
A podskup od skupa X. Onda moemo definisati slijedee dvije sinteze:
A = {b X / |b A}
= {b X / |b A }
(nadvueno A) se naziva gornjom (viom) aproksimacijom skupa A, dok A (A
podvueno) predstavlja donju (niu) aproksmaciju skupa A (obzirom na relaciju
nerazluivosti nad skupom X). Par A, se naziva grubim skupom (obzirom na
relaciju nerazluivosti nad skupom X). Naglasimo da je A uvijek podskup od u X/.

Slika 9.12: Konstruisanje grubog skupa

Slika 9.12 prikazuje primjer konstrukcije grubog skupa. Podskup A od X je prikazan na


slici 9.12a, gdje take indiciraju elemente od X. Na slici 9.12b su prikazana blokovska
podjela nametnuta relacijom nerazluivosti. Slika 9.12c prikazuje konstrukciju od A i ,
gdje su blokovi od A prikazani tamnijom sivom nijansom, a bolokovi od A \ svijetlijom
sivom nijansom. Konano, slika 9.12d prikazuje grubi skup A, (A je skup tamnijih
blokova, a je skup svih blokova).

327

Kao to vrijedi i za vrste i fuzzy skupive, grubi skupovi formiraju algebru sa definisanim
grubim presjekom i unijom. Analiza grubih skupova takoe predstavlja nain
prosuivanja funkcionalne ovisnosti u informacionom sistemu, odnosno primjer osnovne
data mining tehnike.

9.4 Kvantitativni pristupi u neizvjesnosti


Predhodna sekcija je indicirala neke klune klase kvalitativnih pristupa u reprezentovanju
i rezonovanju o neizvjesnosti. U ovoj sekciji, pogledaemo detalnije neke primjere
kvantitativnih pristupa. Kao to smo ve naglasili, kvalitativno kvantitativna distinkcija je
sama po sebi neodreena.

9.4.1 Vjerovatnoa
Probabilistike metode formiraju najvaniji i iroko koriteni kvatitativni pristup za
neizvjesnost. Detaljniji materijal o vjerovatnoi (probability) se moe nai u statistikim
udbenicima. Ova sekcija skicira njihov grubi obuhvat, koncentriui se na Bayesijev
pristup. Statistike metode za operisanje sa neizvjesnou u geoprostornim informacijama
se veoma esto koriste u prostornoj statistici i prostornoj analizi.
Prilikom opaanja mogunosti pojave nekog rezultata anse rastu sa brojem sluajnog
ponavljanja eksperimenta (kao to je, na primjer, bacanje novia). Ukoliko sa X
oznaimo skup moguih rezultata, onda moemo specificirati funkciju anse (chance),
odnosno vjerovatnoe ch : X 0, 1. Ocjena ch(x) predstavlja proporciju broja
ponavljanja u kojem se pojedini rezultat xX moe pojaviti, i determinisana je ili
frekventnom analizom (na primjer, viestrukim bacanjem novia i praenjem rezultata)
ili prirodom eksperimenta (pretpostavljajui, na primjer, da je novi nepristrasan,
odnosno da je omjer pojave pismo/glava 1:1). Funkcija ch treba zadovoljiti ogranienje
da je suma ansi (vjerovatnoa) svih moguih rezultata jednaka 1. Za podskup S X,
ch(S) je vjerovatnoa (ansa) pojave rezultata iz skupa S. Dakle, pravila koja funkcija
vjerovatnoe mora zadovoljiti su:
ch() = 0
ch(X) = 1
Ako je A B = , onda je ch(AB) = ch(A) + ch(B)

(9.1)
(9.2)
(9.3)

Takoe, za dati broj od n nezavisnih pokuaja sluajnog eksperimentima, vjerovatoa


(ansa) kombinovanog rezultata chn (x1,,xn) je data izrazom:
chn (x1,,xn) = ch(x1)**ch(xn)

(9.4)

Dalje, pretpostavimo da je sluajni eksperimenat samo djelomino kompletiran i da su


rezultati bili determinisani u skupu V X. Ukoliko je U X skup rezultata koji se
razmatraju, onda je njihova vjerovatnoa pojavljivanja u V data sa ch(U|V), odnosno
uslovnom vjerovatnoom od U za dato V:
ch(U|V) = ch(UV) / ch(V)

(9.5)
328

Slika 9.13: Primjer uslovne vjerovatnoe

Na primjer, pretpostavimo da posmatramo piksele prikazane na slici 9.13 u cilju


identifikacije pojave klizita. Takoe, pretpostavimo da je rasprostiranje klizita malo u
odnosu na veliinu piksela, tako da se pojavljuje u tano jednom od piksela. Iz drugih
izvora smo dobili potvrdu da se unutar posmatrane regije (obuhvaene sa svih 9 piksela
na slici) pojavilo tano jedno klizite. Onda, bi naa inicijalna procjena da se klizite
nalazi u regionu A (na osnovu jednaine 9.3) imala vjerovatnou 4/9. Dalje,
pretpostavimo da smo u meuvremenu dobili novi geoloki nalaz koji kae da klizite
moe biti samo u regionu B. Neka je U skup rezultata koji odgovaraju izjavi klizite je u
regionu A, a V skup rezultata koji odgovaraju izjavi klizite je u regionu B. Onda, na
osnovu jednaine 9.5 vjerovatnoa (ansa) da je klizite u regionu A iznosi:
ch(U|V) = ch(UV) / ch(V) = (2/9)/(6/9) = 1/3

9.4.2 Bayesova vjerovatnoa


Ovaj primjer nas lagano uvodi u teoriju vjerovanja (theory of belief) koju je razvio
engleski sveenik Thomas Bayes (1702-1761). Prethodno uveden pojam anse je
objektivan, u smislu da zavisi ne samo od naeg spoznajnog stanja nego i od vanjskih
uslova. ansa za dobijanje 6-tice bacanjem nepristrasne kocke iznosi 1/6 neovisno od
naeg vjerovanja. Ipak, racionalan nain da ostvarimo nivo naeg vjerovanja (ubjeenja)
je u ovom sluaju zasnovan na zakonima vjerovatnoe (anse), i to je ono zbog ega su
ovi zakoni openito korisni. Meutim, ukoliko ustanovimo da je stepen vjerovanja na
primarni objekat razmatranja, zakoni vjerovatnoe 9.1 9.3 se mogu ponovno izraziti na
slijedei nain.
Stepen vjerovanja, uzevi da je X skup mogunosti (rezultata), je dat funkcijom
vjerovanja Bel : X 0, 1. Za podskup S X , Bel (S) je stepen vjerovanja u neki
rezultat iz skupa S. Bayesova teorija poiva na slijedeim pravilima za koja oekujemo da
ih Bayesova funkcija zadovoljava.
Bel() = 0
Bel(X) = 1
Ako je A B = , onda je Bel(AB) = Bel(A) + Bel(B)

329

(9.6)
(9.7)
(9.8)

Pretpostavimo da imamo Bayesovu funkciju vjerovanja Bel : X 0, 1 i samo sluaj


(gdje smo nauili) da je V podskup mogunosti X, odnosno V X . Onda, Bel mjenjamo
sa novom Bayesovom funkcijom vjerovanja BelV : X 0, 1 datom sa:
BelV(U) = Bel (UV) / Bel (V)

(9.9)

ili na jeziku kondicionalnog (uslovnog) vjerovanja, a analogno jednaini 9.5:


Bel(U|V) = Bel(UV) / Bel(V)

(9.10)

Primjenjujui jednainu 9.10 simetrino dobijamo:


Bel(V|U) = Bel(UV) / Bel(U)

(9.11)

Eliminacija Bel(UV) iz 9.10 i 9.11 daje:


Bel(U|V) = Bel(U)* Bel(V|U) / Bel(V)

(9.12)

Jednaina 9.12 je iroko primjenjen oblik Bayesove formule. Nae a posteriori


vjerovanje Bel(U|V) je izraunato mnoenjem naeg a priori vjerovanja Bel(U) sa
vjerovatnoom da e se V pojaviti ukoliko je U sluaj. Bel(V) figurie u izrazu kao
konstanta za normalizaciju koja osigurava da e Bel(U|V) leati u intervalu 0, 1.

9.4.3 Dempster-Shaferova teorija argumenta


Iako na prvi pogled Bayesova teorija izgleda prirodno, ipak postoje neki problemi.
Posmatrajmo slijedei primjer:
b1: U sistemu sazvjea Sirijus postoji ivot.
b2: U sistemu sazvjea Sirijus ne postoji ivot.
Prema jednaini 9.8, vrijedi da je b1 + b2 = 1, ak iako ima malo dokaza i za jedno od
ovoga. Dakle kako da dodjelimo nivoe vjerovanja? Ukoliko nemamo dokaza ni za jedno,
prirodna stvar je dodjeliti jednake nivoe vjerovanja, i tako je b1 = b2 = 0.5. Na ovaj nain
su dodjeljeni visoki nivoi vjerovanja, zasnovani na malo dokaza (argumenata). Ovakav
model nije u saglasnosti sa nam intuicijom.
Dempster- Shaferova teorija se fokusira na kombinaciju nivoa (stepeni) vjerovanja,
odnosno na osnovanost razliitih argumenta (za i protiv). Dempsterovo pravilo
kombinacije obezbjeuje metodu za mjenjanje vjerovanja u svijetlu novog argumenta
(dokaza). Primjer iz predhonog paragrafa je ukazao na mogui problem kada su stepeni
(nivoi) nezavisnih i iscrpnih vjerovanja prisiljeni na sumu od 1. Da bi ovo dalje razradili
upotrijebimo ve poznatu izjavu:
p: Region A je umovit.

330

I, kao i prije, pretpostavimo da je svojstvo umovitosti vrsta (crisp) vrijednost (tako da


je definitivno sluaj da je region A ili umovit, ili nije umovit). Razmatrajmo dva
sluaja:
Sluaj 1 (informacijska oskudica): Postoji priblino podjednako mala koliina
argumenata na obje strane.
Sluaj 2 (informacijska prezasienost): Postoji priblino
koliina argumenata na obje strane.

podjednako

velika

Bayesovom analizom, na osnovu Bel(p) + Bel(p) = 1, bi se u oba sluaja za Bel(p) i


Bel(p) dodjelila podjednaka vrijednost (to jest, 0.5). Na ovaj nain se ne bi napravila
razlika izmeu jednog i drugog sluaja. Meutim Dempster-Shaferov pristup pravi
razliku izmeu vjerodostojnosti (credibility) i povjerljivosti (plausibility), odnosno u
negativnom smislu izmeu nepovjerenja (disbelief) i gubitka povjerenja (lack of belief).
Vjerodostojnost stanja stvari je koliina argumenata koje imamo u njegovu korist.
Povjerenje u stanje stvari je nedostatak argumenata koje imamo protiv njega. Ovo
moemo izraziti preko funkcije vjerovanja na slijedei nain:
credibility(p) = Bel(p)
plausability(p) = 1- Bel(p)
gdje je p data izjava, a p njena negiranja izjava (negacija).
Stoga, na osnovu analize prvog sluaja imamo da je vjerodostojnost obje izjave, odnosno
i p i p manja, dok je povjerenje u obje izjave, i p i p, vee. Za drugi sluaj,
vjerodostojnost obje izjave je vee, a povjerenje u njih je manje. Ovo predstavlja poetnu
taku za Dempster-Shaferov pristup. Koritenjem Dempsterovog pravila kombinacije,
argumenti za i protiv stanja stvari se mogu kombinovati.

9.5 Primjena neizvjesnosti u GIS-u


U ovoj sekciji se predstavljaju tri specifine domene primjene u kojima se mogu
primjeniti tehnike, koje su ranije opisane u ovom poglavlju. Svi aspekti primjene se
zasnivaju na pojmu neizvjesnog regiona. Klasina teorija skupova i logika
podrazumjevaju vrste (crisp) skupove i propozicije (pravila). Elemenat je definitivno
unutar ili definitivno nije unutar skupa, odnosno propozicija je ili istinita (tana) ili lana
(netana). Kada se ovo primjeni na reprezentaciju sa regionima, onda regioni
predstavljaju vrste regione, za koje je svaka lokacija ili definitivno unutar ili definitivno
izvan regiona. Meutim, u mnogim praktinim primjerima, situacije nije ba ovako jasna.

9.5.1 Neizvjesni regioni


Razmotrimo slijedeu definiciju obalske dine:

331

Neprekidan ili gotovo neprekidan nasip ili hrbat od nekonsolidovanog pjeanog


materijala, koji se dotie sa, ili je priblino paralelan plai, smjeten tako da moe biti, ali
nije nuno dohvatljiv olujnim talasima i sezonskim visokim talasima.
Postoji jasna inherentna neodreenost u definicije samog entiteta, koja je demonstrirana
pojmovima, kao to su gotovo neprekidan, priblino paralelan i (mogue) dohvaljiv
olujnim talasima. Uprkos ovoj neodreenosti, za oekivati je da e se mnoge priobalne
lokacije, koje se mogu prepoznati na osnovu ove definicije, klasificirati ili da su
definitivno obalske dine ili da definitivno nisu obalske dine.
Meutim, sigurno e biti i drugih lokacija za koje e biti nejasno da li formiraju (ine) dio
dine ili ne. Takve lokacije mogu biti dio granice obalske dine. Ove granice e biti vie od
linije beskonano male debljine, i mogu takoe biti neodreene.
Najea primjena teorije fuzzy skupova u prostornoj domeni je reprezentacija lokacija
nezvjesnih granica. Lokacijama koje su definitivno u regionu su dodjeljene vrijednosti
fuzzy pripadnosti 1. Lokacijama koje su izvan regiona su dodjeljene vrijednosti 0.
Lokacijama unutar granine povrine su dodjeljene gradirane vrijednosti izmeu 0 i 1,
zavisno od nivoa naeg vjerovanja ili argumentacije da su lokacije u ili izvan regiona
(slika 9.11).
Kljuno pitanje je kako dodjeliti funkciju pripadnosti. U sluaju inherentno (po svojoj
prirodi) neodreenih regiona, kao to su umske povrine, mogue je fuzzy funkciju
pripadnosti odrediti na osnovu parametara postojanosti i gustine razliitih vrsta drvea.
Na primjer, slika 9.14 ilustruje dodjeljivanje vrijednosti fuzzy pripadnosti umovitoj
regiji na osnovu gustine drvea. Slino ovome, u naem prijanjem primjeru o dini,
moemo kao parametar koristiti visinu lokacija (u odnosu na plau).

Slika 9.14: Dodjeljivanje vrijednosti fuzzy pripadnosti

Kada fuzzy regionima dodjeljujemo vrijednosti pripadnosti na principjelan nain, treba


biti paljiv sa primjenom pojedinih operatora fuzzy skupova. Na primjer, pretpostavimo
da smo fuzzy vrijednosti dodjeljivali umovitim i movarnim povrinama, i da sada
elimo konstruisati region koji je i umovit i movaran. Ovakav novi region se moe
dobiti primjenom operatora fuzzy presjeka (definisanog sa minimalnim vrijednostima za
dvije funkcije pripadnosti). Meutim, ovaj region ne treba ni u kom sluaju poistovjetiti
(smatrati ekvivalentnim) sa regionom deriviranim direktno na osnovu indikatora za
movarno umsko rastinje (na primjer, na osnovu vrsta drvea koje rastu u movarnim

332

sredinama). Ovakve nejasnoe su ponekad dovodile do neke vrste skepticizma prema


primjeni teorije fuzzy skupova u ovoj domeni.
Sa druge strane, grubi skupovi daju drugaiji smisao reprezentaciji neizvjesnih regiona.
Na primjer, neka je A jedan takav region. U tom sluaju, A i daju donju i gornju
aproksimaciju za ovaj region. Prema tome, A sadri sve lokacije za koje se sa sigurnou
moe rei da su u regionu A, dok iskljuuje sve lokacije za koje se sa sigurnou moe
rei da nisu u regionu A. Ovo govori, da grubi skupovi daju principjelno tumaenje
neodreenosti (ili/ili) koja proizilazi iz promjena granularnosti (na primjer, prilikom
procesa generalizacije). Meutim, u drugim primjenama, gdje dodjela donje i gornje
aproksimacije zavisi od nivoa vjerovanja, oni su izloeni istom kriticizmu kao i fuzzy
skupovi.

9.5.2 Neizvjesnost i vidljivost


Region vidljivosti (viewshed) je region (na terenu) koji je vidljiv sa neke take (stajalita)
ili skupa taaka. U najprostijem sluaju vidljivost se moe predstaviti vrstim (crisp)
regionom. U praksi, vidljivost zavisi od mnogo faktora koji se nemogu tano ili precizno
predvidjeti. Posljedica ovoga je da se vidljivost moe vjerodostojnije predstaviti pomou
neizvjesnog regiona. U literaturi se pravi razlika izmeu dva tipa vidljivosti: vjerovatne
(probabilne) i fuzzy vidljivosti.
Probabilna vidljivost: Podrazumjevajui perfektnu vidljivost, vrsti (crisp) teren i
okolnosti bez vegetacijskog efekta, neizvjesnost u vidljivosti se moe javiti zbog
netanosti i nepreciznosti mjerenja visina terena. Probabilna vidljivost se moe sraunati
na osnovu nekog modela neizvjesnosti visina. U ovom sluaju, granica vidljivosti bi bila
vrsta (crisp), ali bi njen poloaj bio neizvjestan zbog greaka mjerenja.
Fuzzy vidljivost: Podrazumjevajui perfektna mjerenja, neizvjesnost u vidljivosti se moe
javiti zbog atmosferskih uslova, refrakcije svjetlosti, te sezonskih i vegetacijskih efekata.
U ovom sluaju, granica vidljivosti nije vrsta, nego je rairena i gradirana.
Probabilistike tehnike nisu vie primjenjive, nego se za modeliranje fuzzy vidljivosti
koriste fuzzy regioni.

9.5.3 Regioni koji rezultiraju iz neodreenih prostornih relacija


Ovaj primjer kratko istrauje kognitivne (spoznajne) aspekte neizvjesnosti, koritei
ljudsko razumijevanje neodreenog koncepta bliskosti u jednom univerzitetskom
kampusu (Keele University). Slika 9.15 prikazuje skicu sa 22 znaajne lokacije kampusa,
identificirane po nekom utvrenom kriteriju.
U eksperimentu su uestvovale 22 osobe, koje su svrstane u dvije jednake grupe, odnosno
u grupu istine i grupu lai. Svakom lanu iz svake grupe je postavljen niz upitnika
koji se odnose na lokacije znaajnih mjesta. Grupa istine je dobila pitanja u obliku: Da
li je tano, da je mjesto x blizu mjesta y ? Grupa lai je dobila pitanja u obliku: Da li
je netano da je mjesto x blizu mjesta y? Od svih uesnika je traano da se tokom
eksperimenta ne slue kartom kampusa.

333

Za ilustraciju je data tabela 9.2, koja prikazuje objedinjene odgovore na samo one
upitnike koji se tiu blizine biblioteke (lokacija 16 na slici 9.15). Tabela prikazuje da je
10 od 11 osoba indiciralo da je istina kad kaemo da je kapela (chapel) blizu biblioteke
(library), dok niko od uesnika nije indicirao da je to la. Na ovaj nain postoji snana
indikacija, openito konceptualizirana od skoro svih uesnika, da je kapela blizu
biblioteke. U sluaju centra za slobodne aktivnosti (leisure center), snano je indicirana
suprotna situacija. U sluaju kabineta hemije (chemistry), nema jasne teine argumenta ni
za jedno ni za drugo.

Slika 9.15: Znaajne lokacije u kampusu


Tabela 9.2: Objedinjeni glasovi za i protiv tvrdnje o blizini pojedinih lokacija biblioteci
(brojevi lokacija se odnose na sliku 9.15)

Primjenom testa statistikog znaaja, mogue je naknadno ocjeniti u kojem stepenu


objedinjeni odgovori indiciraju da su pojedine lokacija blizu drugih lokacija. Na primjer,

334

slika 9.16 prikazuje objedinjene rezultate koji se odnose na blizinu biblioteke. Ovaj
primjer koristi trivalidnu logiku za prezentaciju bliskosti. Na osnovu testa statistikog
znaaja, ona mjesta koja su znaajno blizu biblioteke su na slici 9.16 ispunjena crno. Ona
mjesta, koja nisu znaajno blizu biblioteka su ispunjena bijelo. I konano, ona mjesta za
koje ne vrijedi ni da su znaajno blizu ni da nisu znaajno blizu su ispunjena sivom
nijansom.
Analiza ovih rezultata bi se mogla provesti primjenom trivalidne logike. Na primjer, za
opis meusobne bliskosti pojedinih lokacija u kampusu, moe se koristiti trivalidna
relacija blizine (ni). Za dva mjesta x i y, relacija xy e se ocjeniti sa (tano), ako
je x znaajno blizu y , sa (netano), ako x nije znaajno blizu y i sa ? (neodreeno), ako
je xy i xy .

Slika 9.16: Relacija blizine lokacija pojedinih znaajnih objekata biblioteci

335

336

10
10 Vrijeme
Kratak pregled
Prostorno vremenski informacioni sistem proiruje GIS na sistem sa pohranjivanjem i
upravljanjem i prostornih i vremenskih informacija. Trenutni snimak (snapshot) je
reprezent prostorno vremenskog stanja domene geografske aplikacije u pojedinom
trenutku. Linije ivota (lifelines) objekta proiruju reprezentaciju trenutnog snimka
pomou eksplicitnog pohranjivanja informacija o promjenama. Najskorije prednosti
prostorno vremenskih baza podataka su fokusirane na eksplicitnu reprezentaciju
prostorno vremenskih entiteta, kao to su dogaaji (events) i procesi. Ovo poglavlje
istrauje primjenu nekih od osnovnih koncepata uvoenja vremenske dimenzije u GIS,
rangiranih od pozadinskih modela podataka do prostorno vremenskih struktura podataka
za njihovo jednostavnije pozivanje.
Moe se rei da smo, po pitanju raspoloivosti podataka, konano preli iz siromanog u
podacima bogato informaciono drutvo. Veina ovih, danas raspoloivih podataka su i
prostorne i vremenske prirode. GIS poinje dobijati sve bogatiju vremensku
funkcionalnost i epitete prostorno vremenskog informacionog sistema, obzirom da
omoguava upravljanje informacijama koje su i geoprostorno i vremenski referensirane.
Dok su prostorno vremenski informacioni sistemi uglavnom samo predmet istraivanja,
GIS ve sad moe ponuditi odreenu vremensku funkcionalnost. Meutim, bogastvo
pune prostorno vremenske funkcionalnosti je jo uvijek na marginama praktine
primjene. Postoji mnogo naina na koje takva funkcionalnost moe biti integrisana u
GIS-u. Ovo poglavlje detaljno obrauje neka od pitanja sa kojima se suoavaju ovakvi
prostorno vremeski informacioni sistemi.
Postoje mnoge potencijalne domene primjene prostorno vremenskih sistema, ukljuujui
zatitu okolice, transport, demografiju, zdravstvo i epidemiologiju, multimediju,
upravljanje, administraciju, odbranu i druge. Pored ovih vie tradicionalnih prostorno
vremenskih oblasti primjene, na razvoj ovih sistema sve vie utie i potreba za
procesiranjem i prezentacijom informacija u realnom vremenu, mobilnost i primjena in
situ (locirani) senzora, to vodi do mnogih novih potencijalnih primjena prostorno
vremenskih modela podataka i sitema. Mnoge od ovih primjena su vezane za mobilne
lokacijski svjesne (location-aware) i sveprisutne (pervasive) sisteme (predstavljene u 7.
poglavlju).

337

10.1 Uvod: Kratka historija vremena


Na svom osnovnom nivou, entiteti se u realnosti mogu podjeliti na dogaaje, objekte sa
svojim osobinama, uloge sa relacijama i neke osnovne pojmove poput lokacije (u
vremenu i prostoru). Kada postavljamo upit informacionom sistemu, mi se openito
interesujemo za spoznaju o neemu to je vezano za ove entitete. Tradicionalne baze
podataka upravljaju sa informacijama o objektima i njihovim svojstvima i relacijama, kao
na primjer u ER modelu (2. poglavlje). Dodavanje vremenske dimenzije nam daje
mogunost upravljanja informacijama o stanjima objekata u pojedinim trenutcima i
mjestima (koja su se stanja, kada, kako i zato deavala). Pretraivanje prostorno
vremenske baze podataka se danas primarno fokusira na davanje odgovora o objektima u
formi ta-gdje-kada (na primjer, ko je posjedovao zemljite na lokaciji L i u vremenu
T?). Pretraivanja u slijedeoj generaciji sistema e se baviti davanjem odgovora o tome
ta se desilo, gdje, kada, kako i zato. Da bi se ovo postiglo, neophodna je analitika
funkcionalnost za ostvarenje veza izmeu dogaaja, kao to je uzronost, posljedica i
slino.
injenica je da geografski fenomeni imaju i prostornu i vremensku komponentu. Slika
10.1 ilustruje i prirodne i vjetake prostorno vremenske fenomene. Slika 10.1a prikazuje
satelitske slike poara u Arizoni. Dim od zapaljene vegetacije, koji se uoava u
centralnom dijelu slike, se razlikuje od atmosferskih oblaka (prikazanih u donjem lijevom
uglu snimka). Slika 10.1b prikazuje gradski saobraaj na raskrsnici u Velikoj Britaniji.
Slike su same po sebi statine, meutim one prikazuju fenomene koji su prilino
dinamini.

a.Poar u Tucsonu, Arizona (June 2003 NASA)

b.Protok gradskog saobraaja u Velikoj Britaniji

Slika 10.1: Primjeri prirodnog i vjetakog prostorno vremenskog fenomena

Dinamiki geografski entiteti su karakterizirani ne samo prostornim i atributnim


komponentama, nego takoe i vremenskim referencama. Geografski fenimeni kao to su
dogaaji, akcije i procesi su eksplicite vremenski.

338

Prostorno vremenski informacioni sistem mora biti sposoban upravljati podacima o svim
ovakvim vremenski promjenjivim entitetima iz stvarnog svijeta.

10.1.1 Nulta faza: Statika reprezentacija


Tradicionalni prostorni i geografski informacioni sistemi sadravaju samo jedno stanje
stvarnog svijeta. Ovo stanje je skoro uvijek vremenski najranije, to jest, ono je iz
vremena u kojem su podaci prikupljeni. Interakcije sa sistemom su bezvremene, tako
da se mogu pozivati samo postojee informacije koje su vezane samo za jedno stanje.
Veina sistema i modela sa kojma smo se kroz predhodna poglavlja sretali, bave se
statikim reprezentacijama.

10.1.2 Prva faza: Metafora trenutnog snimka


U prvoj fazi razvoja vremenske funkcionalnosti sistema se za prikaz dinamikog
fenomena koriste trenutni snimci kao kolekcija presjeka vremenskih stanja (timestamps).
Veina istraivanja u prostorno vremeskim informacionim sistemima su fokusirani na
ideju sekvenci trenutnih snimaka. Trenutni sminci mogu biti moan mehanizam za
razumjevanje promjena. Na primjer, slika 10.2 prikazuje rast kampusa na Univerzitetu u
Maineu i njegovoj okolici u periodu od 1902. do 1955. godine. Ovaj rast je prikazan
serijom od tri trenutna snimka iz razliitog vremena.
Iza ovakve reprezentacije vremena (karakteristine za prve fazu razvoja) lei
odgovarajui model vremena (odnosno poimanje vremena). Ukoliko se vrijeme gleda kao
linearna dimenzija, sa prikazom na vremenskoj liniji - skali (gdje su vremenske oznake
timestamps linearno ureene), onda kolekcija trenutnih snimaka ini jednu sekvencu. U
narednom izlaganju e se pored linearne strukture, detaljno opisati i drugaiji vremenski
modeli, kao to su modeli sa strukturom grananja i ciklinom strukturom.

10.1.3 Druga faza: Linije ivota objekata


Potekoe vezane za prvu fazu se oituju kroz pojavu da statika priroda pojedinih
vremenskih stanja diktira opu statiku prirodu reprezentacije. Na ovaj nain, problem u
reprezentaciji vremena iz prve faze je nemogunost identifikacije dinamikih fenomena,
kao to su roenje, promjene i smrt. Slika 10.3 prikazuje detaljnu kartu iz drugog dijela
regije oko Univerziteta u Maineu. Slika prikazuje da je aerodrom izgraen izmeu 1902. i
1946.godine, ali samo implicitno preko komparacije dvaju stanja. Metafora trenutnog
snimka ne nudi mehanizam za eksplicitnu reprezentaciju informacije o vremenu ili pojavi
dogaaja kao to je izgradnja aerodroma.

339

Slika 10.2: Niz trenutnih snimaka (izvor: USGS) iz vremena 1902. (iznad), 1946. (u sredini) i 1955.godine
(dole)

340

Slika 10.3: Detalj promjena izmeu 1902. (lijevo) i 1946. godine (desno)

Druga faza zapoinje sa rjeavanjem ovih pitanja. Za eksplicitnu reprezentaciju promjena


stanja jednog objekta i interakcije izmeu razliitih objekata, dizajnirane su linije ivota
(lifelines) objekata. Slika 10.4 prikazuje posljedice interakcije izmeu razliitih objekata.
Dogaaji kreiranja, transmisije, ponovne pojave, nestanka, transformacije, kloniranje i
unitenja su eksplicitno prikazani na slici 10.4. Naglasimo ovdje razliku izmeu
unitenja, gdje je objekat trajno izbrisan i nestanka, gdje se objekat moe ponovo pojaviti.
Slika 10.5 prikazuje specifian primjer evolucije zemljine parcele u smislu promjena na
objektu koji se nalazi na njoj.

10.4: Linije ivota objekata

341

10.5: Evolucija susjedstva

Razliiti tipovi promjena koje se mogu pojaviti u liniji ivota nekog objekta su:
Kreacija i destrukcija (unitenje): Kreacija i destrukcija se pojavljuju kada se objekat
prvi put generie i kada se on trajno izbrie. Na primjer, kola na slici 10.5 je kreirana
1938., dok je kua na parceli 2 unitena (sruena) 1958. godine.
Nestajanje i ponovno pojavljivanje: Nestajanje i ponovno pojavljivanje se razlikuju
od brisanja i kreiranja, jer ove promjene nisu trajne.

342

Prostorna promjena: Prostorne promjene ukljuuju transformacije u obliku,


veliini i poloaju nekog objekta, kao to je transformacija jednog objekta iz kruga u
kvadrat na slici 10.4.
Atributna prostorna promjena: Aprostorne promjene podrazumjevaju transformacije
u nazivu, boli ili drugim atributima nekog objekta, kao to je transformacija bijelog
kvadrata u sivi kvadrat na slici 10.4. Aprostorne promjene takoe ukljuuju promjene
klase ili tipa objekta, na primjer, nadgradnja objekta koji pripada klasi sporednog puta
na objekat klase glavni put.
Transmisija: esto se pravi razlika izmeu transformacije objekta, pri kojoj se
mjenjaju atributi objekta neovisno od bilo kojeg drugog objekta, i transmisije objekta, pri
kojoj su promjene na neki nain zavisne od atributa drugog objekta (ili drugih objekata).
Na primjer, transformacija bjelog kvadratnog objekta u sivi kvadratni objekat na slici
10.4 je bila rezultat transmisije informacije o atributu boje od sivog krunog objekta.
Fizija i fuzija: Fizija i fuzija se pojavljuju ako neki objekat generie ili je generisan od
jednog ili vie drugih objekata, na primjer, kloniranje na slici 10.4.
Mereoloka promjena: Mereoloke promjene se odnose na promjene pripadnosti
objekata, odnosno promjene biti dio od relacije.
Tipoloka promjena: Tipoloka promjena se javlja kada se za skup podataka mjenja
klasifikacija. Tipoloke promjene i evolucija sheme e se pojasniti u narednim sekcijama.

10.1.4 Trea faza: Dogaaji, akcije i procesi


Konana faza u ovoj evoluciji je potpuni tretman promjene, u smislu kompleksa
dogaaja, akcija i procesa. Dogaajima, akcijama i procesima je omogueno da postanu
eksplicitni entiteti u reprezentaciji vremena u okviru tree faze razvoja. Sa ontolokog
aspekta, u 4. poglavlju smo napravili inicijalnu podjelu onih entiteta koji postoje u
stvarnom svijetu na kontinuente (koji traju kroz vrijeme, kao na primjer, stolovi, kue,
ljudi i slino) i okjurente (koji se samo dogaaju ili pojavljuju, kao na primjer,
predavanja, ljudski ivoti, trke amaca i slino). Kontinuenti se mogu adekvatno
modelirati koritenjem linija ivota objekata iz druge faze. Meutim, modeliranje
okjurenata zahtjeva treu fazu.
Prilikom tumaenja pojmova vezanih za treu fazu, ve na samom poetku se mogu javiti
odreene potekoe. Prije svega postoji vie razliitih definicija za dogaaje, procese i
akcije. U narednom izlaganju e se prezentirati dvije razliite klasifikacije dogaaja i
procesa. Vano je imati na umu da, iako su obje klasifikacije ispravne, one nisu
istovjetne.
Prva klasifikacija, prikazana na slici 10.6, je nastala nakon Mourelatosa (1978.). Entitet
na vrhu (prema taksonomiji sa slike 10.6) je opi koncept situacije, koji se onda
specijalizira u stanje i pojavu. Pojave mogu biti dogaaji i procesi, koji su takasto
bazirani ili intervalski bazirani, respektivno.

343

Slika 10.6: Taksonomija situacija nakon Mourelatosa (1978.).

Druga korisna klasifikacija, predstavljena sumarno u tabeli 10.1, je povezana sa


distinkcijom izmeu brojivih i gradivnih imenica. Kao to i samo ime kae, brojive
imenice s odnose na neto to je prebrojivo, dok se gradivne imenice odnosi na neto to
nije prebrojivo.
Tabela 10.1: Brojive i gradivne imenice za kontinuente i okjurente

U sluaju kontinuenata, ova distinkcija se manifestuje kao distinkcija izmeu stvari i


tvari (materijala). Na primjer, moete brojati jezera (stvari) ali ne i vodu (tvar). U sluaju
okjurenata, ista distinkcija se moe koristiti za razlikovanje dogaaja od procesa, na
primjer, moe biti mnogo atletikih utrka, ali se samo tranje ne moe prebrojati.
Metodologije za modeliranje dogaaja su daleko manje napredne od onih za objektno
modeliranje. Meutim, neka pitanja koja se mogu postaviri za okjurente ukljuuju:

Da li je to tip ili instanca?


Moe li se to prebrojati?
Da li je to inicirano od strane nekog agenta?
Kako je to situirano u vremenu, koje su njegove granice?
Da li to ima namjenu?
Da li to ima uzrok ili uticaj?
Da li to konzumira resurse?
Da li to ima atribute, relacije?
Da li je to u partonomiskoj hijerarhiji ili taksonomijskoj hijerarhiji?
Koji je njegov nivo detalja?

344

Tree pitanje, koje se odnosi na pokretanje od strane agenta, podrazumjeva razliku


generikih dogaaja od akcija. Akcija je dogaaj koji je obezbjeen od strane nekog
agenta, osobe ili neeg drugog. Na ovaj nain, poplava se obino ne bi trebala
klasificirati kao akcija, ali ubistvo bi trebalo.
Postoji jasna analogija izmeu pojava i objekata. Pojave mogu imati atribute (na primjer,
proces se odvija polako), pripadaju podpadajuoj hijerarhiji (na primjer, pod kretanje
podpada etanje), imaju dijelove (pravljenje tosta je dio dorukovanja) i imaju
relacije sa drugim dogaajima (na primjer, dogaaj plavljenja uzrokuje klizite).
Meutim, prolazna priroda dogaaja podrazumjeva da je identitet za okjurente vie
problematian.

10.2 Temporalni informacioni sistemi


U ovoj sekciji se razmatraju tri vana pitanja koja lee u pozadini temporalnih sistema sa
istinskom temporalnom prirodom. Fuzija sa prostornim aspektima se razmatra u
narednod sekciji.

10.2.1 Validno i transakcijsko vrijeme


U temporalnim sistemima su vana dva tipa temporalnih referensi: referense
transakcijskog vremena i referense validnog vremena.
Vremenske reference. Razumljivo je da izvjesne specijalizirane primjene mogu zahtjevati i druge
tipove vremenskih referenci osim validnog i transakcijskog vremena. Na primjer, validno vrijeme,
odnosno vrijeme kada se dogaaj stvarno pojavio u aplikacionoj domeni, se razlikuje od
observacionog vremena, to jest vremena kada je taj dogaaj (pojava) primjeen, odnosno kada
su njegovi efekti opaeni. Ovakva razlika je, na primjer, bitna u arheolokoj primjeni (vidi
ilustraciju ispod). Vrijeme u kojem je arheolog opaao pojedine artifakte (observaciono vrijeme),
kao i vrijeme kada su artifakti nastali (validno vrijeme), te vrijeme kada su informacije uneene u
bazu podataka (transakcijsko vrijeme), su podjednako vana vremena za arheoloki informacioni
sistem. Meutim, u veini aplikacija se validno i transakcijsko vrijeme obino smatraju
dovoljnim.

Ilustracija razliitih vremena u arheolokoj primjeni

Transakcijsko vrijeme je vrijeme u trenutku transakcije, odnosno unosa podataka u bazu


podataka. Validno vrijeme je vrijeme stvarne pojave dogaaja (vezanog za prikupljanje
podataka) u stvarnom svijetu. Ove dvije temporalne dimenzije su ortogonalne (nisu
meusobno ovisne). Koje od ovih vremena koristiti za reprezentaciju u informaciju,
345

zavisie od same domene primjene. Ukoliko je kljuna stavka informacije situacija


objekata stvarnog svijeta u vremenu stvarnog svijeta, onda se primjenjuje validno
vrijeme, a ukoliko je vano vrijeme unosa podataka u sistem, onda se primjenjuje
transakcijsko vrijeme. Ukoliko je vano i jedno i drugo vrijeme, onda je neophodan
takozvani bitemporalni informacioni sistem. Bitemporalni sistemi imaju nedostatak u
tome to zahtjevaju kompleksniju strukturu podataka i specifian jezike za upite.
Validno i transakcijsko vrijeme imaju razliite osobine, te njima treba pristupati na
razliite naine. Fundamentalna razlika izmeu njih je da transakcijsko vrijeme
monotono raste sa ivotnim ciklusom (postojanjem) informacionog sistema, dok za
validno vrijeme ovo nije sluaj. Na primjer, ako transakcija T1 doe prije transakcije T2,
onda transakcijsko vrijeme vezano za podatke uneene transakcijom T1 mora biti prije
transakcijskog vremena vezanim za podatke uneene transakcijom T2. Meutim, ovo nije
sluaj sa validnim vremenom. Mogue je da se dogaaj iz stvarnosti (koji je registrovan
sa transakcijom T1 ) desio kasnije nego onaj koji je registrovan naknadno (sa
transakcijiom T2). Ovo moe da vrijedi zbog injenice da se transakcijska vremena
openito ne mogu mjenjati, dok se validna vremena mogu mjenjati retroaktivno.
Na primjer, ako se vratimo na sliku 10.5, sa transakcijom T1 se moe pohraniti stanje
susjedstva iz 1974.godine. Nakon toga, sa transakcijom T2 se moe pohraniti stanje
susjedstva iz 1964.godine. Transakcijsko vrijeme za T1 predhodi (transakcijskom)
vremenu za T2, ali validno vrijeme za T1 slijedi iza (transakcijskog) vremena za T2.
Ukolike se nakon ovoga otkrije da je validno vrijeme za transakciju T2 u stvari 1963.
godina, a ne 1964. godina, onda moe biti neophodna trea transakcija T3, kako bi se
promjenilo validno vrijeme za transakciju T2. Sa druge strane, transakcijska vremena za
T1, T2 i T3 se nikad ne mogu mjenjati.
Transakcijsko vremenski koncept (transakcijsko vremenske baze podataka) omoguava
informacionom sistemu da odrava historiju svih svojih aktivnosti i posjeduje sposobnost
odmotavanja svojih stanja unazad (rollback). Svako stanje sistema se naziva verzija, a
posao kojim se organizuju ove aktivnosti se naziva upravljanje verzijama (version
management). U svako vrijeme, ovakav informacioni sistem ima pristup trenutnom stanju
i svim predhodnim verzijama.
Validno vremenski koncept (validno vremenske baze podataka) omoguava
informacionom sistemu da odrava historiju aktivnosti u stvarnom svijetu i postavljanje
upita nad trenutnim, prolim i moda buduim stanjima objekata iz realnog svijeta
smjetenim u bazu podataka.

10.2.2 Vremenske ekstenzije u sistemima relacionih baza


podataka
Vremenski informacioni sistem se moe izgraditi proirenjem standardnog sistema
relacione baze podataka. Postoje dva standardna naina kojim se relacijama (tabelama)
dodaje temporalnost:
vremenskom oznakom n-torke (tuple timestamping) i
atributnom vremenskom oznakom (attribute timestamping).
Vremenska oznaka (vremenski biljeg, vremensko oitanje) n-torke

346

Bitemporalna vremenska oznaka (bitemporal timestamp), je niz ureenih parova (x, y),
gdje x predstavlja interval transakcijskog vremena, a y je interval validnog vremena. Na
ovaj nain, vremenska oznaka n-torke (tuple) indicira da je tokom vremenskog perioda x
baza podataka snimila informaciju u pripadajui zapis (n-torku) kao validan tokom
vremenskog perioda y.
Slika 10.7 opisuje primjer jednog scenarija o posjedovanju kue. Kuu H1 je posjedovala
osoba P1 u (validnom) vremenu od trenutka 1 do trenutka 6. U trenutku (validnog)
vremena 7, osoba P2 je kupila kuu H1, dok je u isto vrijeme osoba P1 kupila kuu H2.
Baza podataka je aurirala ove promjene u trenucima (transakcijskog) vremena 5 i 10.
Tabela 10.2 prikazuje scenario posjedovanja kue sa slike 10.7, pri emu je koritena
bitemporalna vremenska oznaka n-torke (zapisa). Validno vrijeme posjedovanja kue H1
od osobe P1 je pogreno snimljeno prilikom prvog auriranja (uneen je interval [1, 4]).
Stoga je drugo auriranje u transakcijskom vremenskom intervalu [10, 14] popravilo
poetno validno vrijeme (sa [1, 4] na [1, 6]).

Slika 10.7: Vremenski scenario posjedovanja kue

Tabela 10.2: Bitemporalne vremenske oznake n-torki za scenario sa slike 10.7

347

Atrubutna vremenska oznaka


Alternativan nain reprezentacije temporalne informacije je sa atributnom vremenskom
oznakom, u kojem je vremenska informacija direktno povezana sa atributnom
vrijednou na koju se odnosi. Pristup sa atributnom vremenskom oznakom se realizuje
na nain da se vrijednosti podataka sa vremenskim oznakama zapakuju sa podacima
ostalih kompleksnih tipova. U tabeli 10.3 je prezentiran scenarij iz predhodnog primjera
sa primjenom atributne vremenske oznake.
Tabela 10.3: Atributne bitemporalne vremenske oznake za scenario sa slike 10.7

Obratite panju na injenicu da relacije (tabele) koritene sa vremenskim oznakama


mogu naruavati normalnu formu, jer atributi (kada su zajedno) sa pripadajuim
vremenskim oznakama (timestamp) nisu atomini. Temporalni pristup sa vremenskom
oznakom n-torke je konceptualno jednostavniji od pristupa sa atributnom vremenskom
oznakom, i vie je zadran kod relacionih modela.
Vremensko oznaavanje (timestamping) u objektno-orijentisanim bazama podataka
Atributno vremensko oznaavanje se moe (zbog svoje prirode) proiriti i na vremensko
oznaavanje u objektno orijentisanim bazama podataka. Na primjer, slika 10.8 prikazuje
kuu H1 sa slike 10.7 sa nekoliko vrsta vremenskih referensi. U ovom sluaju, prostorno
vremenski objekat je granica (temelja kue). Informacija o posjednicima je prezentirana
kao temporalni tekstualni tip za vremensko oznaavanje. Adresa je atemporalna
(podrazumjevamo da se adresa nikad ne mjenja). Registrovanje je opisano kao dinamino
ponaanje koje aurira registarciju novog posjednika.

348

Slika 10.8: Prostorno i vremenski referensiran objekat (kua) H1 sa slike 10.7

10.2.3 Evolucija sheme


Dosadanja diskusija je uglavnom razmatrala promjene na podacima, podrazumjevajui
da je shema za podatke (konceptualni model, tipovi podataka, struktura baze podataka)
fiksna. Rad sa temporalnim i prostorno temporalnim informacionim sistemima
standardno pretpostavlja fiksnu emu. Meutim, mogu se pojaviti situacije u kojima se
shema mjenja ili evoluira tokom vremena, to se naziva evolucijom sheme. Evolucija
sheme je poseban predmet izuavanja, koji nije pokriven ovim izlaganjem.

10.3 Prostorno vremenski informacioni sistemi


Tehnologija prostorno temporalne (prostorno vremenske) baze podataka se sastoji od
najmanje tri slijedee komponente (slika 10.9):

standardna tehnologija baze podataka, bilo da je zasnovana na relacionoj,


objektno orijentisanoj ili bilo kojoj drugoj paradigmi,
tehnologija prostorne baze podataka (spatial database), ukljuujui GIS i
tehnologija temoralne baze podataka.

Odavde se jasno vidi da efikasne prostorno vremenske baze podataka podrazumjevaju


integraciju prostornih i vremenskih komponenata u jedinstvenu cjelinu. Ono to nije
odmah jasno je da li tehnologija prostorno vremenske baze zahtjeva ita vie od prostog
sastavljanja ove tri tehnologije (to jest, da li postoji ita u skupu oznaenom sa ?, na
slici 10.9). Odnosno, Pitanje koje se ovdje namee je da li u prostorno vremenskom
konceptu postoji neto vie od prostog sumiranja prostornog i vremenskog koncepta.
Jedna oblast koja se pojavljuje u smislu zahtjeva za neim viim od same unije prostorne
i vremenske osposobljenosti (funkcionalnosti) su primjene koje ukljuuju kretanje, a ne
samo proste promjene.
Baza podataka pokretnih objekata: Istraivanja prostorno temporalnih baza podataka se mogu
podjeliti na dvije iroko prihvaene kategorije: istraivanja koja se bave aspektom praenja
promjena pojava (na primjer evolucija administrativnih granica, promjene ivotne sredine) i
istraivanja koja se bave aspektom praenja kretanja objekata (vozila, brodova, ljudi). Rad
Wolfsona i drugih (1998.) identificira tri kljuna pitanja vezana za baze podataka pokretnih
objekata (Moving Objects DataBase, MOD) za koje funkcionalnost konvencionalnih prostorno
vremenskih baza nije adekvatna. Prvo, pojedinana auriranja u MOD-u esto prave samo male
promjene nad pohranjenim informacijama (objekat se moe pomjeriti par metara), ali se takve
promjene deavaju vrlo esto (na primjer poloaj automobila se snima GPS-om svakih 30
sekundi). Drugo, mnogi standardni upiti u MOD-u se ostvaruju preko ekstrapolacije od i
interpolacije izmeu poznatih lokacija nekog objekta. Takve funkcije moraju biti adaptirane na
inherentnu neizvjesnost vezanu za (ne)precizno poznavanje (ne)tanih lokacija. Tree,
konvencionalni statini prostorni indeksi su nesposobni da se efikasno nose sa pokretnim
objektima, jer svaki pokret zahtjeva promjenu prostornog indeksa. Inae, efikasni MOD-ovi
predstavljaju vitalnu tehnologiju za razvoj lokacijsko baziranih servisa (LBS) koji su diskutovani
u 7. poglavlju.

349

10.3.1 Vrijeme, prostor i vremenska linija


Vrijeme i prostor su veoma slini po nekom osnovnim osobinama. Vrijeme se na neki
nain moe smatrati jednodimenzionalnom varijantom prostora, modeliranog, na primjer,
koritenjem brojne linije na kojoj se oitavaju vremenske oznake (timestamp). Uprkos
ovoj slinosti, postojanje entiteta u vremenu se veoma razlikuje od naina na koji oni
postoje u prostoru. Na primjer, dok se neki objekat moe pomjerati u raznim pravcima u
prostoru, on je vremenu prisiljen (ogranien) samo na kretanje unaprijed, a ne i na
kretanje unazad. ta vie, notacija kretanja entiteta u vremenu je metafora derivirana
iz prostornog iskustva.
Temporalne metafore. Metafore za vrijeme i temporalne relacije su esto prostorni termini.
Budui dogaaji se mogu metaforino posmatrati kao da idu prema nama (kao u tradicionalnoj
boinoj pjesmi Boi dolazi). Budui dogaaji koji se mogu desiti se esto metaforino
posmatraju kao da se prostorno odnose na nas, kao na primjer, ljubav je tu odmah iza ugla ili
Harijeva karijera moe dalje ii u jednom od dva mogua pravca. Posljednji primjer pokazuje
kretanje kroz vrijeme. Mnogi osnovni pojmovi vremena, poput vremenske linije (ose), granajueg
vremena ili ciklinog vremena (koji e se diskutovati kasnije) imaju takoe svoje korjene u
fizikom prostoru. Spoznajni (misaoni) dogaaji, procesi i akcije imaju takoe bogatu
metaforinu strukturu prostorne komponente. Dogaaji mogu biti lokacije, kao na primjer, moj
otac je bio u ratu (dogaaj kao kontejner) ili zemlja ide u rat (dogaaj kao mjesto). Dogaaji
mogu biti objekti, kao u reenici imam glavobolju (dogaaj kao neto to se moe posjedovati).
Konano, dogaaaji mogu biti sile, kao u reenici rat je promjenio granice nae zemlje
(dogaaj koji ima uticaj na objekat). Ovakva prostorizacija je zbog ovoga poeljna i
predstavlja vanu metafora za HCI u temporalnim vremenskim sistemima. Kod interfejsa za
prostorno vremenske sisteme ona moe stvoriti zabunu prilikom koritenja geografskog i
temporalnog prostora.

Meutim, postoji mnogo naina na koje se vrijeme moe korisno tretirati kao vremenska
linija (timeline), analogno jednodimenzionalnom prostoru. Temporalni literali, koriteni
kao osnova vremenskog oznaavanja (timestamping), mogu biti, ili vremenski trenuci
(take na vremenskoj liniji), ili vremenski intervali (intervali na vremenskoj liniji). Sama
vremenska linija se moe modelirati da bude izomorfna u odnosu na realne brojeve
(kontinualno vrijeme), racionalne brojeve (gusto vrijeme) ili cijele brojeve (diskretno
vrijeme). Veina raunaskih pristupa vremenu pretpostavlja model diskretnog vremena,
zbog same diskretne prirode naina na koji raunari operiu. Diskretna vremenska linija
aproksimira vrijednosti vremenske oznake (vremensko oitanja, vremenskog biljega), na
isti nain kao to i diskretizacija ravni aproksimira prostorne referense (vidi 4. poglavlje).
Osnovna vremenska mjerna jedinica u diskretnom okviru se esto naziva kronon
(chronon) ili tik (thick) (otkucaj, trenutak). Kronon je atomian u smislu da nije mogua
njegova dalja podjela. Na ovaj nain kronon za vrijeme ima isti smisao kao piksel za
prostor. Trajanje je modelirano cijelobrojnim vrijednostima kronona, ali nije vrsto
vezano za odreeno mjesto na vremenskoj liniji.
Prethodna diskusija se odnosila na najprostiji, najredovniji i, samim tim, najkoriteniji
vremenski model, takozavani model linearnog vremena. Drugi, vie sloeni modeli,
ukljuuju granajue vrijeme, pomou kojeg se mogu reprezentovati prole i budue
mogunosti, te ciklino vrijeme, pomou kojeg se mogu reprezentovati periodini
fenomeni (koji se smjenjuju) kao to su godinja doba ili doba dana. Meutim, sama

350

analiza koja koristi ove kompleksne varijante se esto moe svesti na linearnu vremensku
liniju. Slika 10.10 ilustruje razliite tipove vremena.

Slika 10.10: Linearno, granajue i ciklino vrijeme

10.3.2 Bitemporalni prostorni modeli


Bitemporalni model opisan u predhodnoj sekciji se moe proiriti za koritenje u
bitemporalnom prostornom informacionom sistemu. Slika 10.11 ilustruje bitemporalnu
prostornu reprezentaciju izgradnje zaobilaznice oko grada. Tri kadra prikazuju tri stanja
baze podataka.

Slika 10.11: Bitemporalna prostorna reprezentacija izgradnje zaobilaznice

Slika 10.11a prikazuje da su podaci bili uneeni u bazu podataka 1993.g. (transakcijsko
vrijeme), ime je indicirano da je zaobilaznica planirana za izgradnju u 1994.g. (validno
vrijeme) du trase abc. Na slici 10.11b je prikazano da su podaci, koji su uneeni u bazu
podataka 1994.g. (transakcijsko vrijeme) indicirali da je zaobilaznica izgraena 1994.g.
(validno vrijeme) po revidiranoj trasi adefc. Konano, podaci koji su uneeni u bazu
podataka 1995. g. (transakcijsko vrijeme) su popravili predhodnu transakciju, indicirajui
da dio zaobilaznice nije stvarno izgraen do 1995.g. (validno vrijeme).
Bitemporalne informacije povezane sa entitetom se mogu jasnije prikazati koritenjem
matrice. Slika 10.12 ilustruje postojanje linijskog segmenta ef kao bitemporalne matrice
sa osjenenim elijama koje indiciraju bitemporalne vremenske oznake (vremenska
oitanja) povezane sa segmentom puta. Kolekcija bitemporalnih vremenskih oznaka za
cijelu zaobilaznicu je prikazana na slici 10.13.

351

Slika 10.12: Bitemporalna matrica za linijski segment ef (koji pripada zaobilaznici) sa slike 10.11

Slika 10.13: Bitemporalne refernse za segmente zaobilaznice sa slike 10.11

10.4 Indeksi i upiti


Ova sekcija diskutuje pitanje efikasnog pristupa prostorno vremenskim podacima u bazi
podataka uz primjenu odgovarajuih indeksa i upita. Kao to je sluaj i za standardne
prostorne upite, i ovde su vani indikatori za neku pristupnu metodu:
prostor koji se zahtjeva za podatke,
koliina vremena dodatnog procesiranja koja se zahtjeva prilikom update-a baze
podataka i
vrijeme potrebno za pozivanje podataka prilikom upita.
Kada su u pitanju vremenski podaci, najnaivniji pristup bi bio fiziko pohranjivanje
svakog temporalnog trenutnog snimka (snapshot), odnosno uzorka. Meutim, izuzev u

352

trivijalnim primjerima, sa ovakvim pristupom bi se relativno brzo prepunio (memorijski)


prostor (koliki god on bio). Zbog toga su rjeenja (za struktuiranje podataka) uglavnom
koncentrisana oko pristupa sa pohranjivanjem promjena (a ne vremenskih uzoraka
prostora), tako da i metode pristupa podacima moraju uzeti ovo u obzir. U narednom
izlaganju se pretpostavlja primjena diskretne linearne vremenske dimenzije.

10.4.1 Vremenske strukture podataka: transakcijsko vrijeme


Transakcijsko vremenska baza podataka mora pohranjivati trenutna i prola stanja baze
podataka i obezbjediti strukturu za kreiranje, brisanje i modifikaciju transakcija. Indeksi
za transakcijsko vremenske baze podataka trebaju omoguiti efikasan pristup objektima i
u prolim i u trenutnim stanjima. Postoji vie rjeenja koja bi se mogla predloiti za
problem indeksiranja podataka u transakcijsko vremenskim bazama podataka.
Prvo rjeenje za indeksiranje transakcija bi bilo da se jednostavno kreira novi indeks sa
B-stablom (predstavljeno u 6. poglavlju) za svaku promjenu u bazi podataka. Slika 10.14
ilustruje ovu ideju (primjer sa slike 6.5), prema kojoj se nakon svakog update-a vri
pohranjivanje kompletno nove verzije B-stabla (u sluaju na slici je prikazano
insertovanje vrijednosti 10). Promjene se mogu postii kombinovanjem operacija
brisanja i insertovanja (na primjer, promjena vrijednosti 9 u 10 na slici 10.14 se moe
kompletirati brisanjem 9 i insertovanjem 10 kao jedinstvene transakcije). Iako ovo
rjeenje, za izvjesne tipove upita, omoguava njihovo efikasno procesiranje, treba znati
da je koritenje viestrukih B-stabala za transakcijske baze podataka prilino neefikasno
u smislu iskoritenja prostora za pohranjivanje.

Slika 10.14: Viestruka B-stabla koritena za indeksiranje transakcijskih baza podataka

Jedno jednostavno rjeenje koje unaprijeuje ovu naivnu ideju je preklapajue B-stablo.
Umjesto kreiranja kompletno novog stabla za svaki update, preklapajue B-stablo
duplicira samo one vorove za koje se neka vrijednost mjenja, a ostali vorovi koji nisu
promjenjeni se djele od razliitih transakcija. Ista operacija insertovanja, koja je
prikazana na slici 10.14, je sada prikazana i na slici 10.15, ali sa primjenjenom
strukturom preklapajueg B-stabla.
Na ovaj nain, preklapajue B-stablo je sposobno da pohrani promjene bez velike
koliine redundantno dupliciranih podataka. Treba napomenuti da preklapajue B-stablo
pohranjuje transakcijska vremena samo u korijenske vorove, tako da se dalji indeksi
zahtjevaju samo za njih same.

353

Slika 10.15: Reprezentacija operacije insertovanja sa preklapajuim B-stablom

Preklapajua B-stabla imaju prednost zbog njihovog jednostavnog razumjevanja i


implementacije. Drugi, neto kompleksniji temporalni indeksi, daju naprednije
mogunosti. Multiverziona B-stabla, na primjer, reprezentuju insertovanje i brisanje
objekata u bazi podataka na eksplicitan nain. Vrijeme brisanja se implicitno
pohranjenuje u preklapajue B-stablo. Atributne promjene su modelirane brisanjem i
kreiranjem novog objekta. Svaki objekat, kada je kreiran, vremenski je oznaen sa
temporalnim referentnim intervalom [tC, NOW], gdje je tC vrijeme izvravanja transakcije
kreiranja, a NOW je varijabla koja sadri trenutno transakcijsko vrijeme. Ukoliko se
objekat poslije izbrie, njegova vremenska oznaka se modificira u {tC , tD }, gdje je tD
vrijeme izvravanja transakcije brisanja. Slika 10.16 daje ematski prikaz evolucije
transakcijske baze podataka, u kojoj se kreiranje i brisanje objekta eksplicitno
reprezentovani.

Slika 10.16: Evolucija u transakcijsko vremenskoj bazi podataka


(stanja baze podataka su prikazana na vremenskoj osi)

354

Zahvaljujui koritenju eksplicitnog pohranjivanja vremena kreiranja i brisanja objekata,


multiverziono B-stablo je sposobno klasterizirati podatke unutar stabla saglasno
njihovom svojstvu da li su u ivotu (referensirano pomou vremenske oznake u formi [tx,
NOW]) ili su mrtvi (referensirano pomou vremenske oznake u formi [tx, ty]), ime se na
taj nain popravlja efikasnost upita. Na primjer, na slici 10.16 objekti B,D i E se mogu
klasterizirati zajedno na jednoj grani multiverzionog B-stabla, jer su oni mrtvi i nikada se
ne mogu promjeniti. Objekti A i C se mogu mjenjati (mogu se obrisati), i na taj nain se
mogu klasterizirati na posebnoj grani. Vie informacija o preklapajuim B-stablima,
multiverzionim B-stablima i mnogim drugim transakcijsko vremenskim indeksima, kao
to su snapshot indeksi, time-split B-stabla i temporalni hashing, se moe pronai u
raznoj literaturi koja tretira ovu oblast.

10.4.2 Temporalni indeksi: Validno vrijeme


Validno vremenska, objektna baza podataka sadri dinamiku kolekciju objekata, za koje
svaki (vremenski) atribut ini kolekciju vrijednosti intervalnih vremenskih oznaka
(atributna historije). U ovom sluaju, evolucija baze podataka nije pohranjena, tako da
update ima permanentni uticaj takav da se prolo stanje baze podataka gubi. Validno
vremenska baza podataka treba da pohranjuje samo jednostruko trenutno stanje, sa
detaljima o evoluciji sadranih objekata iz stvarnog svijeta. Slika 10.17 ilustruje stanje
validno vremenske baze podataka, gdje je za razliku od prikaza na slici 10.16, tekue
stanje baze podataka ovdje reprezentovano cijelom slikom.

Slika 10.17: Tekue stanje validno vremenske baze podataka

Segmentno stablo je indeks koji se upotrebljava za validno vremenske baze podataka.


Segmentno stablo struktuira kolekciju linearnih (vremenskih) intervala tako da ono
omoguava efikasno pozivanje svih intervala koji obuhvataju datu taku (vremenski
momenat, interval). Na primjer, segmentno stablo omoguava efikasne upite tipa:

355

Za dato vrijeme t, pozovi sve objekte koji su bili validni (aktuelni) u vremenu t.
Struktura segmentnog stabla se moe opisati kroz slijedei primjer. Pretpostavimo da
imamo konaan skup vremenskih intervala P.
Prvi korak predstavlja sekvenciranje (sortiranje niza) graninih taaka u rastuem redu.
Na primjer, ukoliko su intervali:

onda je sekvenca (sortirani niz):


Ove take postaju oznake za listove binarnog stabla, kao to je prikazano na slici 10.18.
Svaki segment je sada podjeljen na maksimalne dijelove (polovine) i distrubuiran u vidu
oznaka vorova u datom stablu. Na primjer, segment A oznaava jedan vor visokog
nivoa [1, 10], B oznaava lisne vorove [3] i [15], te vorove (koji nisu lisni) [4, 6], [7,
10] i [12, 14]. Svaki vor, na ovaj nain, predstavlja interval (ili taku) i doznaeno mu je
nula ili vie intervala.

Slika 10.18: Primjer segmentnog stabla

Za dato vrijeme t , proces pretraivanja stabla u cilju pronalaenja intervala koji sadre
ovu taku (vrijeme t) se odvija na slijedei nain. Poinjemo od korijena. Ukoliko je
korijen oznaen sa intervalima koji sadre datu taku, ovi e se insertovati u listu
rezultata. Dalje se istrauje direktni nasljednik korijena. Ukoliko t ne pripada intervalu
reprezentovanom pomou drugih vorova, procedura se zaustavlja. U suprotnom se ona
nastavlja do vora koji predstavlja interval koji sadri t , dodaju se intervali doznaeni
tom voru u listu rezultata, i nastavlja se sa procedurom sve dok se ne doe do lista ili
dok se postupak ne zaustavi. Lista rezultata e sadrati sve intervale koji sadre t. Na
primjer, traenje intervala koji sadre taku 5, poinje od korijena, prelazi na vor [1, 10]
i dodaje interval A u listu rezultata. Zatim prelazi na vor [1, 6], pa na vor [4, 6] i dodaje
intervale B, C i D u listu rezultata. Onda se procedura zaustavlja. Pronaeni intervali su
A, B, C i D.

356

Segmentno stablo ima statinu strukturu, jer je skup intervala krajnjih taaka unaprijed
zadat. Meutim, novi intervali ije se krajnje take nalaze u datom skupu mogu biti
dinamiki insertovane u strukturu stabla, pomou doznaavanja odgovarajuih oznaka.
Takoe, intervali mogu biti i izbrisani iz strukture.

10.4.3 Bitemporalni indeksi


Rjeenje za obezbjeenje bitemporalnih indeksa se moe dobiti tretiranjem validnog i
transakcijskog vremena kao nezavisnih dimenzija u MBB-u (slika 10.19). Na ovaj nain
se mogu koristiti standardni prostorni indeksi, kao to je R-stablo, za indeksiranje svakog
bitemporalnog MBB-a (Minimum Bounding Box). Ovakav pristup, pored jednostavnosti,
ima i drugih svojih prednosti. Meutim, ono to ga ugroava je znaajno preklapanje
izmeu razliitih bitemporalnih MBB-ova. Ovo dovodi do neefikasnog izvravanja upita,
jer pojedine vremenske koordinate (koje sadre transakcijsko vrijeme tt i validno vrijeme
tv) mogu leati unutar nekoliko razliitih bitemporalnih MBB-ova (vidi sliku 10.19).
Jedna od ekstenzija pristupa sa bitemporalnim R-stablom je koritenje dva indeksa Rstabla, jednog za pohranjivanje objekata koji su u ivotu (iz perspektive transakcijskog
vremena), i drugog za pohranjivanje objekata koji su mrtvi (opet iz perspektive
transakcijskog vremena). Koritenjem indeksa R-stabla na ovaj nain, tei se reduciranju
koliine preklapanja, jer je neophodno samo pohraniti prvi elemenat transakcijske
vremenske oznake u ivo R-stablo. Po definiciji, drugi elemenat e biti NOW za sve
objekte u ivom R-stablu.

Slika 10.19: Bitemporalni minimalni obuhvatni pravougaonici

10.4.4 Prostorno vremenski indeksi i upiti


Odgovarajua struktura za prostorno vremenski indeks e ovisiti o vremenskoj (validno,
transakcijski ili bitemporalno vrijeme) i prostornoj prirodi pohranjenih podataka, te
zahtjevanom pristupu podacima. Veinom su prostorno vremenski indeksi bazirani na
povezivanju prostornih i vremenskih indeksa, tretirajui vrijeme kao jo jednu prostornu
dimenziju. Na primjer, za jednu vremensku dimenziju i dvije prostorne dimenzije,

357

prostorno vremenski podaci mogu biti predstavljeni i pohranjeni kao trodimenzionalni


prostorno vremenski objekti. R-stablo se onda moe koristiti za indeksiranje minimalnog
obuhvatnog kvadra za prostorno vremenske podatke. Iako je ovakav pristup prost, mogu
ga pratiti isti problemi preklapanja, kao to je to sluaj sa opisanim bitemporalnim Rstablom.
Alternativa ovome je historijsko R-stablo (HR-stablo), koje koristi pristup veoma slian
onome u preklapajuem B-stablu. Prostorni podaci su indeksirani pomou
konvencionalnog R-stabla. Nove verzije uvode nove korijenske vorove koji dijele
nepromjenjene listove. Historijsko R+- stablo ide jedan korak dalje i omoguava
simultanu eksplicitnu reprezentaciju i vremena insertovanja i vremena brisanja za
prostorno vremenske objekte. Na nain veoma slian onome u multiverzionom B-stablu,
ovaj pristup proiruje mogunosti preklapajueg B-stabla.
Tipovi upita koji se standardno postavljaju prostorno vremenskoj bazi podataka, bilo da
su vezani za validno ili za transakcijsko vrijeme, odgovaraju, u svojoj najjednostavnijom
formi, slijedeim primjerima pitanja:

ta (kakva) je bila pojava (njeno stanje) u stvarnosti, odnosno u bazi podataka na


odreenom prostoru i u odreenom periodu?
Gdje (na kojem mjestu) je bila pojava u stvarnosti, odnosno u bazi podataka na
odreenom prostoru i u odreeno vrijeme?
Kada (u kojem momentu) je bila pojava u stvarnosti, odnosno u bazi podataka na
odreenom prostoru i za odreeni period?

Kao to je diskutovano u 6. poglavlju, dvije osnovne kategorije upita su upiti sa takom i


upiti sa rangom (obuhvatom). U prostorno vremenskoj bazi podataka i jedan i drugi tip
upita mogu uzimati vrijednosti i iz prostorne, i iz vremenske, a i iz atributne domene. U
sluaju upita sa takom (lokacijom), mogue je specificirati jednostruku vrijednost nekog
atributa, lokaciju take, ili neki trenutak u vremenu. Na primjer, gdje je bio John
20.07.2002.g. u 3 h popodne je vremenski upit sa takom. Upiti sa rangom (obuhvatom)
omoguavaju specifikaciju vrijednosti atributa tipa kolekcije, proirene lokacije (regije ili
dionice) ili vremenskog perioda. Na primjer, kada je John bio unutar 100 km od
Bostona, je prostorni upit sa obuhvatom.
Najkompleksniji i najzahtjevniji upiti kombinuju prostorne, vremenske i atributne take
(pozicije) i rangove (obuhvate). Na primjer, upit tipa prikai lokacije svih prodajnih
agenata unutar 100 km od bostonske direkcije iz mjeseca aprila, kombinuje i prostorni i
vremenski upit sa obuhvatom. Performanse ovakvih upita posebno zavise od aktuelno
koritenog indeksa.
SQL , koji je predstavljen u 2. poglavlju, je priznati standard za jezike upita baza
podataka. Vremenski i prostorno vremenski upiti se potencijalno mogu formulisati unutar
SQL-a, ali ovakvi upiti ubrzo postanu izuzetno kompleksni. Kao odgovarajui standard
za prostorne baze podataka se u ovom kontekstu pojavio temporalni SQL (TSQL2), koji u
stvari predstavlja ekstenziju SQL-92 standarda. Temporalni SQL omoguava primjenu
vremenskih oznaka n-torki ukljuujui i transakcijske i validne vremenske oznake,
koritenjem ekstenzije u relacionom modelu zasnovane na n-torki (opisane u predhodnoj
sekciji). U smislu omoguavanja prostorno vremenskog jezika za upite, na isti nain se
zahtjevalo i proirenje standarda TSQL2 sa prostornim funkcijama.

358

Akronimi i skraenice
1NF: First Normal Form
ALU: Arithmetic / Logic Unit
ASCII: American Standard Code for Information Interchange
ASDI: Australian Spatial Data Infrastrucure
ATM: Automated Teller Machine
BSP: Binary Space Partitioning
CAD: Computer-Aided Design
CGDI: Canadian Geospatial Data Infrastructure
CISC: Complex Instruction Set Computer
CORBA: Common Object Request Broker Architecture
CPU: Central Processing Unit
CRC: Cyclic Redundancy Check
CRM: Customer Relationship Management
CSCW: Computer Supported Cooperative Work
DAG: Directed Acyclic Graph
DBMS: DataBase Management System
DCEL: Doubly Connected Edge List
DCOM: Distrubuted Component Object Model
DDBMS: Distributed Database Management System
DDL: Data Definition Language
DEM: Digital Elevation Model
DSL: Digital Subscriber Line
DTD: Document Type Definition
DTM: Digital Terrain Model
E911: Enhanced 911
EEPROM: Electrically Erasable Programmable Read Only Memory
EER: Extended Entity - Relationship
EPROM: Erasible Programmable Read Only Memory
E-R: Entity - Relationship
ESRI: Environmemtal Systems Research Institute
FCS: Frame Check Sequence
FIFO: First In First Out
FTP: File Transfer Protocol
GIS: Geographic Information System
GML: Geographic Markup Language
GOMS: Goals, Operations, Methods, Selection
GPS: Global Positioning System
HCI: Human Computer Interaction
HSV: Hue, Saturation, Value
HTA: Hierarchical Task Analysis
HTTP: HyperText Transfer Protocol
IBIS: Issue Based Information System
IEEE: Institute of Electrical and Electronic Engineers

359

IIOP: Internet Inter Orb Protocol


IO: Input / Output
IVR: Interactive Voice Response
LAN: Local Area Network
LBS: Location Based Services
LIFO: Last In First - Out
LOBS: Location / Orientation Based Services
MAN: Metropolitan Area Network
MAT: Medial Axis Transformation
MBB: Minimum Bounding Box
MOD: Moving Object Database
NAA: Node Arc - Area
NAN: Neighborhood Area Network
NGDI: National Geospatial Data Infrastructure
NSDI: National Spatial Data Infrastructure
NTF: Neutral Transfer Format
OOA: Object Oriented Analysis
OOD: Object Oriented Design
OODBMS: Object Oriented DataBase Management System
OOPL: Object Oriented Programming Language
ORB: Object Request Broker
ORDBMS: Object Relational Database Management System
p2p: Peer To - Peer
PAN: Personal Area Network
PC: Personal Computer
PDA: Personal Digital Assistant
PGIS:Participatory Geographic Information System
PROM: Programmable Read Only Memory
QTM: Quaternary Triangular Mesh
RAM: Random Access Memory
RCC: Region Connection Calculus
RDBMS: Relational DataBase Management System
RISC: Reduced Instruction Set Computer
RLE: Run Length Encoding
RMI: Remote Method Invocation
RMSE: Root Mean Square Error
ROM: Read Only Memory
SAIF: Spatial Archive Interchange Format
SDTS: Spatial Data Transfer Standard
SEQUEL:Structured English QUEry Language
SIS: Spatial Information System
SOAP: Simple Object Access Protocol
SQL: Structured Query Language
TACIS: Tactile Acoustic Computer Interaction System
TIN: Triangulated Irregular Network
TIFF: Time to First Fix

360

TTS: Text To - Speach


UDDI: Universal Description, Discovery, and Integration (protocol)
UML: Unified Modeling Language
USGS: United States Geological Survey
UTM: Universal Transverse Mercator
VDU: Visual Display Unit
VR: Virtual Reality
W3C: World Wide Web Consortium
WAN: Wide Area Network
Wi-Fi: Wireless Fidelity
WIMP: Windows, Icons, Menus, Pointers
WSDL: Web Services Description Language
WWW: World Wide Web
XML: Extensible Markup Language
XSLT: Extensible Stylesheet Language Translation

361

You might also like