A fentebb vázolt folyamatok eredményeképpen egyre több olyan ember kerül kapcsolatba a GIS-szel, akik nem rendelkeznek térinformatikai szakismeretekkel és ezért térinformatikai kiszolgálásukhoz új módszerekre van szükség. Mivel az új felhasználók a világ minden pontján jelentkeznek nem csak új típusú térbeli adatokra van szükségük, de arra is, hogy ezek az adatok azokra a területekre vonatkozzanak, ahonnan az új felhasználók jelentkeztek, illetve amelyek vizsgálatában érdekeltek.
A vázolt jelenségek számtalan következménnyel járnak, melyek közül néhány fontos megoldást be szeretnék mutatni a jelen publikációban.
Konkrétan olyan korszerű eljárásokat ismertetek, melyek megkönnyítik az adatbázis és adatraktár tervezés fárasztó, aprólékos munkáját, felvázolom a többméretarányú reprezentálás legfontosabb problémáit, foglalkozok az ágens technológia szerepével a GIS-ben , bemutatom alkalmazását az automatizált generalizálásban, végül röviden összefoglalom az eredményeket.
A felsorolt témák bonyolultsága ellenére megpróbálok olyan irányított, éles képet nyújtani, mely segíti a GIS közösséget, hogy fejlesztő munkájában a legújabb eredményekből indulhasson ki.
KULCSSZAVAK: térbeli adatmodellek, modellező eszközök, adatraktárak, több méretarányú reprezentáció, intelligens ágens technológia, térkép generalizálás intelligens ágensek felhasználásával.
Napjainkban rohamosan nő az elérhető digitális térbeli adatok mennyisége. Ez a tény, valamint a térinformatikai alkalmazás kutatások sikere azt eredményezte, hogy a GIS egyre több vállalati információs rendszer integráns részévé vált.
E változások következtében a térinformatika igen nagy számú új felhasználóval gazdagodott. Az új felhasználók zömének azonban nincs térinformatikai képzettsége, ezért olyan szoftver megoldásokra van szükségük, melyek megkönnyítik a hálózaton szétosztott adatok kiválogatását és felhasználását. A legtöbb alkalmazásban szükség van a méretarány többszöri gyors megváltoztatására, ami új követelményeket támaszt a többszörös reprezentálással és/vagy az automatizált, jelen idejű, népszerűbb nevén „röptében” végzett generalizálással szemben.
Két szinten próbálom meg áttekinteni a kihívásra adott válaszokat: először foglalkozom az adatmodellezés területén jelentkező új gondolatokkal, majd bemutatom az intelligens ágensek fogalmat és felvázolom térinformatikai alkalmazásukat különös hangsúllyal az automatizált térkép generalizálásra.
A korszerű GIS szoftverek az integrált adatokat rendszerint relációs vagy objektum-relációs adatbázisokban tárolják.
Ezeket az adatbázisokat úgy tervezik, hogy minimalizálják a redundanciát, legyenek normalizáltak és konzisztensek. Amikor egy GIS szoftverben használjuk az adatbázisban tárolt adatokat, akkor a GIS és az adatbázis közötti adatáramlás rendszerint a háttérben folyik úgy nevezett tranzakciók formájában. A felhasználó kiválasztja a napi munkájához szükséges adatokat és betölti a nézetet a GIS-be. A napi feladat elvégzése után a megváltozott adatokat visszaküldi az adatbázisba, mely állománya azonban csak akkor változik az új értékekre, ha a konzisztencia és integritás ellenőrzése pozitív eredménnyel zárul. Ellenkező esetben az állomány mindaddig változatlan, míg a felhasználó el nem végzi a szükséges javításokat. Az ilyen adatbázisokat tranzakció orientáltnak nevezik.
Az Internet használatakor gyors választ várunk a kérdésünkre, ezt azonban a tranzakció orientált adatbázis képtelen nyújtani. Ennek a kérdésnek a megoldására dolgozták ki az adatáruházak (data warehouses) és ezen belül a térbeli adatáruházak fogalmát az utóbbi tíz évben, melyből a térbeli megoldásokra legfeljebb 3-4 év jutott.
Az adatáruháznak számtalan definíciója van. Például Devlin szerint [1]: „Az adatáruház egyedi, teljes és konzisztens tára azoknak az adatoknak, melyek különböző forrásokból származnak, és olymódon lettek elérhetővé téve a végfelhasználó számára, hogy azokat konkrét üzleti összefüggésben értelmezhesse és használhassa”.
Egyszerűbben fogalmazva az adatáruház olyan előregyártott, élőfeldolgozott, célorientált, különböző felbontású és aggregáltságú adat együttes, melyet a kliens szoftver könnyen el tud érni.
Nem nehéz elképzelni, hogy az adatáruháznak olyan, csak olvasható adat együttesnek kell lennie, melyet a felhasználó által igényelt adatbázis nézetek alkotnak, s mely következésképpen redundáns és nem normalizált.
Az adatáruházak esetében éles különbség van az adat előállítás és adat használat között. A valós világ változásai változásokat eredményeznek azokban a forrásanyagokban, melyek az előfeldolgozás alapját képezik. Ugyanakkor, mivel az ismételt újbóli előállítás igen kevéssé hatékony, olyan módszerek jelentek meg, melyek a materializálódott nézeteket inkrementálisan próbálják frissíteni. Ezekben a megközelítésekben a felújított materializálódott nézetet a forrás frissítésekből és az eredeti nézetből számolják. Az adatáruháznak rendszerint idő dimenziója is van. Ez pedig azt jelenti, hogy az új objektumokkal csak azt a reprezentációt kell javítani, mely megjelenésük időpontjához van rendelve.
Az adatáruház elvet eredetileg az egész szervezetet (pld. vállalatot) érintő döntéshozás támogatására dolgozták ki. Az adatáruház kliensei olyan szoftver modulokkal (OLAP, lekérdező-gép, riport-generátor) vannak ellátva, melyek gyors elérést biztosítanak a vállalati döntésekhez szükséges információhoz. A vállalat szervezeti egységeinek (pld. az osztályoknak) azonban feladataikhoz rendszerint nincs szükségük az adatáruházban tárolt teljes adatmennyiségre, számukra elég az összes adat egy részhalmaza. Ezt a kisebb adatbázist, mely egy konkrét részleg információit tartalmazza adatboltnak (datamart) nevezik (magyar szerzők néha adat-piacnak is fordítják) (1. ábra). Az adatboltban található adatok, a magas színtű elemzés céljából, rendszerint nagymértékben aggregáltak és összegzettek.
A természetes redundancia következtében (pld. ugyanannak az objektumnak különböző méretarányokban más a geometriai reprezentációja de azonosak az attribútumai, vagy ugyanaz az objektum különböző időpontokban más attribútumokkal rendelkezik, de geometriai reprezentációja változatlan, stb.) az adatáruházakat módosított adatbázis kezelő rendszerek úgy nevezett többdimenziós adatbázis kezelők működtetik.
|
| 1. ábra |
A többdimenziós adatbázisokat gyakran relációs adatbázisokból generálják az úgy nevezett csillag séma alapján (2. ábra), ritkábban a hópehely sémát alkalmazzák, mely a csillag séma tovább fejlesztésének tekinthető mivel a dimenziós táblázatok normalizálásának segítségével explicite kifejezi a dimenziók hierarchiáját (3. ábra).
|
| 2. ábra
|
|
| 3. ábra |
Mielőtt felvázoljuk e szerkezet lényegét érdemes megemlítenünk, hogy az adatbázis jelzőjeként szereplő „dimenziós” szónak semmi köze sincs a térbeli vagy topológiai dimenzióhoz.
Visszatérve a csillag sémához azt látjuk, hogy az egy nagyméretű „tény táblázat”-ból és több kisebb „dimenzió táblázat”-ból áll. A tény táblázat minden rekordja tartalmazza az összetett kulcsot, mely a dimenzió táblázatokra mutat valamint a mértékeket, melyeket a dimenziók által reprezentált „koordináták” hoznak létre. Minden dimenzió táblázatnak van egy kulcsa, mely pontosan megegyezik a tény táblázat összetett kulcsának megfelelő részével valamint oszlopokként jelentkező attribútumai. A nem térbeli, többdimenziós adatbázisokban a mértékek, rendszerint pénzben kifejezett, numerikus értékek.
A csillag sémát térbeli adat áruházakra J. Han és szerzőtársai terjesztették ki 1998-ban [2]. Térbeli adatok esetén a dimenziók az alábbi típusok valamelyikét vehetik fel:
A mértékek a térbeli többdimenziós adatbázisok esetében vagy numerikusak vagy térbeliek.
Az adat áruház, ahogy már korábban említettük, azt a célt szolgálja, hogy a felhasználó gyorsan elérhesse a nyers adatokból a számára szükséges információt. Ezt a célt az úgy nevezett OLAP (On-Line Analytical Processing = On-line analitikus feldolgozás) technika teszi lehetővé. A legfontosabb OLAP operátorok, melyek tulajdonképpen összetett lekérdezéseket helyettesítenek a következők:
Nem térbeli adat áruházak esetére ezek a műveletek jól ismertek és különböző szoftvereknek köszönhetően a gyakorlatban is széleskörűen használatosak. Térbeli adatraktárak esetében az első három operátor ((Slicing, Dicing és Pivoting) ugyanúgy implementálható mint a nem térbeli esetben. A Roll-up operátor a térbeli aggregációt (régiók egymásba olvasztását, átfedését) kell, hogy elvégezze, melyre vonatkozó első megoldásokat a [2]-ben találunk. A Drill-down-t, mely a Roll-up inverze hatékonyan működtethetjük, ha több generalizálási szintnek megfelelő nézetet tárolunk az adat áruházban.
Úgy tűnik azonban, hogy a SOLAP (Spatial On-Line Analytical Processing) hatékony implementálásához olyan új gondolatokra is szükség lehet, melyek túlmutatnak a hagyományos, nem térbeli OLAP rendszereken.
A 'vuel' (a view element = nézet elem szavak rövidítése) ötlete és implementálása [3] mindenek előtt az Internet alapú, igény szerinti térkép készítés realizálását tűzte ki céljául. A 'vuel' mint „a szemantikus, geometriai és grafikai előfordulás viszonyok egyedi kombinációja” egy adatbázis nézet látható eleme. Ennek az elvnek az alapján lehetséges a valós világ ugyanazon részét, azonos vagy különböző felbontásban, különböző szempontoknak megfelelően bemutatni. A modellnek három fő alkotóeleme van: a szemantika – az érdeklődésre számot tartó leíró adatok, a geometria – pont, vonal, terület, raszter, stb. és a grafikus reprezentáció – színek, textúrák, stb.
A rendszer elvi modellje, összhangban a többdimenziós adatbázisok felépítésével, egy központi tény táblázatból, mely a 'vuel'-eket tartalmazza és három dimenzió táblázatból áll a szemantika, geometria és grafika számára. Maga a térkép - a 'vuel'-ek aggregációjából származó adatbázis nézet. Az elvi modell az UML jelölések felhasználásával készült.
A 'vuel' SOLAP prototípusát VisualBasic-ben programozták olymódon, hogy a VB programmal összekapcsoltak két kereskedelmi szoftvert: a Microsoft ACCESS-t az Intergraph GeoMedia Professional-lal.
A SOLAP gondolata az utóbbi néhány évben keletkezett. Elmélete, de különösen gyakorlati implementálása még igen korai stádiumban van. Érett és széleskörűen használható megoldásokig e területen egy vagy két év hátra van.
A térbeli adatmodell fejlődéséről szóló cikkemben [4] utaltam rá, hogy az objektum orientált elvek egyre elterjedtebb alkalmazása a térbeli adatok koncepcionális modellezésében igényli az adat és folyamat modellezésben gyakorlati szabvánnyá vált UML (Universal Modeling Language) térbeli kiterjesztését. Ezzel kapcsolatban utaltam a REGIS szoftverre, mely CASE eszköz alkalmassá teszi megfelelő kiterjesztésekkel az UML-t a térbeli modellezésre.
Jelen cikkben a Perceptory [5] nevű vizuális modellező CASE szoftverre szeretném felhívni az olvasók figyelmét, mely ingyenes program letölthető Dr Yvan Bédard professzor honlapjáról (URL: http://sirs.scg.ulaval.ca/Perceptory/download2000B.htm). A Perceptory a jól ismert Visio 2000 nevű viszonylag olcsó rajzoló programból hívható, használata előtt tehát a Visio-t telepíteni kell.
A szoftver segítségével egyszerűen inicializálhatjuk az adatbázis sémáját, osztályokat definiálhatunk attribútumokkal és módszerekkel, kijelölhetjük az osztályok kapcsolatait és a kapcsolatok kardinalitásait, generalizálhatjuk az osztályokat, azaz meghatározhatjuk az osztály hierarchiát és valamennyi elemhez szöveges leírást fűzhetünk az adatszótárban. Szabványos formátumú riportot készíthetünk a modellről és generálhatjuk kódolási vázlatát az Oracle 8i spatial adatbázis kezelő rendszer számára.
A szoftver legfigyelemreméltóbb tulajdonsága, hogy lehetővé teszi az osztályok és attribútumaik térbeli és időbeli tulajdonságainak piktogramokkal történő megjelölését az úgy nevezett PVL (Plug-in for Visual Languages = kiterjesztés vizuális nyelvek számára) modul segítségével. Az így kialakított diagram igen informatív és elősegíti az ábrázolt adatmodell gyors áttekintését. Illusztrációképpen, a részletekben való elmélyedés nélkül lássunk néhány példát a piktogramokra.
Az egyszerű geometriai típusok jelzései a következők:
- a pont,
- a vonal és
- a terület.
Az összetett típusok több egyszerű típus piktogramját kombinálják háromféleképpen. Az első esetben, amint látni fogjuk az egyszerű típusok elválasztó vonal nélkül kerülnek összekapcsolásra, a második esetben elválasztó vonallal, de szorosan egymás mellett helyezkednek el, a harmadik esetben az elválasztó vonalon kívül még szóköz is van az egyszerű típusok között.
- az összetett alakzat, például egy vízrajzi hálózat esetében, melyet részben vonalak (folyók), részben területek (tavak) képviselnek az elemi piktogramok között nincs választóvonal.
- ha van elválasztó vonal, de nincs szóköz, akkor az összetett piktogram olyan objektum osztályt jelöl, mely méreteitől függően vagy az egyik vagy a másik egyszerű típussal kerül ábrázolásra, mint például az épületek, melyeknek 500 m2 alatt pont, felette terület felel meg a reprezentációban.
- többszörös reprezentációban az objektum a méretarány függvényében a szóközzel elválasztott egyszerű típusok valamelyikével van ábrázolva.
- ha a többszörös reprezentáció során az egyszerűbb típus a részletesebből kerül levezetésre, például ha a nagy méretarányban területként ábrázolt várost kisebb méretarányban a terület súlypontjával ábrázoljuk, úgy a levezetett típust dőlt piktogrammal ábrázoljuk.
A Perceptory képes az adtok időbeli vonatkozásainak a modellezésére is. Az időbeliség modellezésénél két fő csoportot különböztetünk meg.
Az első az objektum létezését jellemzi. Ha csak egy időpontot – a keletkezés dátumát kapcsoljuk az objektumhoz, akkor a
piktogramot használjuk. Ha mind a keletkezés, mind a megszűnés rögzítése indokolt, úgy ezt a
piktogram jelzi. E piktogramok bármelyike az osztály négyzet jobb felső sarkában helyezkedik el (4. ábra).
|
| 4. ábra |
A második csoport a térbeli jellemzők időbeli fejlődésére utal. A pillanatnyi vagy tartós változások jellemzésére a térbeli piktogramot kiegészítjük a megfelelő időbelivel. Például a területi objektum tartós változását a következő piktogram jelzi:
. Ha a 4. ábra példáján modellezett házat folyamatos toldalékokkal bővítik és ez a reprezentáló terület objektum változását eredményezi, úgy az osztály négyszöget az 5. ábrán láthatóra módosítjuk.
|
| 5. ábra |
Mindkét piktogram családot alkalmazhatjuk az attribútumok mellett is, ez az opció elősegíti a modell finomítását.
Természetesen a Perceptory nem az egyetlen új eszköz, mely elősegíti a térbeli-időbeli adatbázis modellezést. Számomra ingyenes elérhetősége, azaz kipróbálhatósága és könnyű használata, amit részben a jól ismert UML szerkezetek alkalmazásának tudhatunk be, teszi szimpatikussá a szoftvert.
A másik megvizsgált, térbelileg és időbelileg kiterjesztett, koncepcionális adatmodellt a MADS-t (Modeling of Application Data with Spatio-temporal features = térbeli-időbeli vonásokkal rendelkező alkalmazási adatok modellezése) [6] a Lausanne-i Műszaki Egyetem Adatbázis Laboratóriumának kutatói dolgozták ki. A modell az ERC+ nevű objektum orientált tulajdonságokkal kiegészített entitás-kapcsolat modellen alapul [7]. A MADS vizuális modellező szoftverét SUPER-G-nek hívják.
A MADS modell főbb tervezési szempontjait az alábbiakban foglalhatjuk össze:
A MADS segítségével a térbeli jellemvonást vagy attribútumként vagy objektumként írhatjuk le attól függően, hogy milyen az alkalmazás absztrakciós szintje. A térbeli objektum típusnak előre definiált attribútuma a geometria, mely érték tartománya térbeli absztrakt típusú. A térbeli attribútum egy vagy több értékű egyszerű attribútum a térbeli absztrakt típus tartományból. A MADS támogatja az alábbi absztrakt térbeli típusok hierarchiáját: pont, vonal, irányított vonal, egyszerű terület, összetett terület, pont halmaz, vonal halmaz, irányított vonal halmaz, geo. Ez utóbbi teljesen általános és arra utal, hogy később meghatározandó térbeli típusról van szó.
Az alkalmazás térbeliségét egyrészt a benne résztvevő térbeli entitások, másrészt a köztük fennálló térbeli kapcsolatok határozzák meg. Ilyen kapcsolatok például a metrikus kapcsolatok, topológiai kapcsolatok, a térbeli aggregáció, stb. Az utóbbi kettő előre definiált kapcsolat kategória, de bármilyen más térbeli kapcsolat is explicite deklarálható.
A MADS kétféle lehetőséget biztosít az idő információ modellezésére. Az időbélyegzés segítségével megjelölhetjük az objektumokat, attribútumokat, relációkat, aggregációkat biztosítva ezzel érvényességük illetve életciklusuk rögzítését. A másik lehetőség az objektumok közötti dinamika figyelembe vétele az alábbi időbeli relációkkal:
A létrehozott koncepcionális adatmodell a MADSTRA nevű fordító modul segítségével alakítható át logikai adatmodellé. A fordító a következő két célrendszer kódját képes generálni:
Sajnos az Adatbázis Laboratórium honlapja (http://lbd.epfl.ch/e/) semmilyen utalást sem tartalmaz a vizuális szoftver illetve a szöveges adat definíciós nyelv elérhetőségére. A modell további hátránya, hogy nem épül a szabványos UML nyelvre, valamint, hogy fordítási célrendszerei nem igazán ismertek a nemzetközi GIS felhasználók előtt.
A hagyományos papírtérképekkel szerzett tapasztalatok mindenki számára világossá tették, hogy a különböző feladatokhoz különböző méretarányú térképekre van szükség. Általános áttekintésre olyan térképre van szükségünk, mely az egész érdeklődésre számot tartó régiót olyan méretű lapon ábrázolja, hogy az emberi érzékszervekkel azonnal felfogható legyen, ha viszont egy konkrét teret vagy utca kereszteződést keresünk, akkor olyan térképre van szükségünk, mely olvashatóan bemutatja ezeket a részleteket is. A komputer térképek, különösen a mobil eszközökön, sokkal kisebb méretűek a papír térképeknél, ezért a megfelelő használathoz igen rugalmas nagyítási (kisebbítési) lehetőségekkel kell rendelkezniük.
A földrajzi információt a legkülönfélébb szakterületek művelőin kívül számtalan, különböző érdeklődésű, hétköznapi ember is használja. Ugyanannak a térbeli objektumnak, például egy városnak más és más a jelentése egy járványügyi elemzés vagy busz járat tervezés szempontjából, hasonlóképpen egyes járókelők busz vagy villamos járatszámokat keresnek ismert céljuk eléréséhez, míg mások a célokat, például közel fekvő olcsó éttermeket akarnak megtalálni a térkép segítségével.
Konkrét földrajzi jellemzők (pld. növényzet, népesség, hőmérséklet, ingatlanok, városi területek, stb.) változásainak elemzéséhez olyan térbeli adatokat kell használnunk, melyek különböző időpontokban rögzítették a valóságot. Ebben az esetben tehát a kérdéses jelenség tanulmányozásához időben többszörös adat együttesekre van szükség.
A különböző felbontásban történő megjelenítés esetében a valós világ objektumai statikusak és mi arra törekszünk, hogy tulajdonságaikat a lehető legjobban mutassuk be a képernyőn.
Az objektumok a második esetben is változatlanok azonban tulajdonságaik részben vagy egészben különbözőeknek mutatkozhatnak az egyes szempontok számára. Ezen túlmenően, egyes objektumok irrelevánsak esetleg zavaróak is lehetnek bizonyos szempontoknak.
A harmadik eset a legbonyolultabb, mivel maguk a valós világ objektumai is változhatnak a felmérési időpontok között. Kézenfekvő, hogy ebben az esetben valamennyi időhöz kapcsolt alap felmérési eredményt tárolni kell az adatbázisban, de ezen kívül, az időbeli összehasonlítások megkönnyítésére, az adatáruházban célszerű tárolni az egyes korszakokhoz tartozó, előre kiszámolt aggregációkat is.
A különböző felbontású térbeli adatok modellezésekor elvileg lehetséges volna csak a legnagyobb felbontású adatokat tárolni az adatbázisban, a többi felbontást pedig – igény esetén – ezekre az adatokra támaszkodva jelen idejű generalizálással levezetni. A széles méretarány tartományt felölelő automatikus generalizálás azonban egyelőre nem mindig lehetséges, de ha lehetséges is, végrehajtása igen nagy időt vesz igénybe. E problémák elkerülése érdekében a térbeli adat áruházak rendszerint több fontos méretarányban tárolják a térbeli adatokat, melyeket manuális vagy fél-automatikus generalizálással vezettek le a legnagyobb felbontású adat együttesből az előfeldolgozási munka fázisban. Az adatáruház – SOLAP rendszernek három fő célja lehet a több felbontású megjelenítés során:
A második és harmadik esetben automatikus, „röptében” végrehajtott generalizálásra van szükség, melyet az adatbázisban tárolt függvények hajtanak végre. Kézenfekvő, hogy ezekben az esetekben a gyors válasz követelményét csak a három rétegű (tradicionális adatbázisok – adat áruház – adatbolt) architektúrában (1. ábra) lehet biztosítani, feltételezve, hogy az adatbolt csak egy kis részét tartalmazza az adatáruházban tárolt munkaterületnek.
Nagyon ígéretes demo színtű megoldást fejlesztettek ki a harmadik esetre Cecconi és szerzőtársai [8]. A projekt rövid leírása, az implementáció kartográfiai és technikai alapelvei valamint egy demo, mely tetszőleges folyamatos méretarányban generalizálja egy svájci topográfiai térkép kis részét a következő Internet címen található: http://www.geo.unizh.ch/gis/research/webmap/gendem/.
A rendszer két alapelven nyugszik: a térbeli adatállomány osztályozásán automatikus generalizálásra alkalmas és alkalmatlan rétegekre, illetve a méretarány intervallumok hozzákapcsolásán a fő méretarányokhoz.
Az automatikus generalizálásra alkalmatlan térképi objektumokat (pld. utak, épületek) a fő méretarányokra előre generalizálják és SVG (Scalable Vector Graphics) rétegekben tárolják a prototípus adatbázisában. A többi térképi objektumot (pld. hidrográfia, feliratok, határok) a legnagyobb felbontásban tárolják a JavaScript-ben kódolt adatbázisban. Amikor a kliens megkeresést küld egy adott méretarányú térképre, a program megkeresi az előre generalizált objektumok reprezentációi közül azt a fő méretarányt, mely a kérdéses méretarány intervallumhoz kapcsolódik és átalakítja azt a kért méretarányra, ezzel párhuzamosan a generalizáló modul elvégzi az automatikus generalizálást ugyanerre a méretarányra és a két adatfolyam a kliens képernyőjén megjeleníti a kívánt méretarányú térképet.
Számos kutatással találkozhatunk a többszörös reprezentációt tartalmazó adatbázisok koncepcionális modellezésének támogatására. Jelen cikkben röviden utalunk a Vangenot és szerzőtársai által javasolt MurMur projektre [9], [10], majd ismertetjük a Bédard és szerzőtársai által javasolt, a Perceptory-n alapuló módszert [11].
A harmadik részben bemutatott MADS nevű objektum orientált adatmodellen alapuló MurMur projekt a többszörös reprezentáció két aspektusának modellezését kívánja támogatni: a többszörös térbeli felbontásét és a többszörös felhasználói szempontokét. Mindkét többszörösség modellezésére az úgy nevezet reprezentációs bélyegzőt használja. A bélyegző egy meta adat jellegű címke, mely egyrészt a kérdéses szempontra, másrészt a felbontásra mutat, azaz minden bélyegző két értéket tartalmaz, az első érték hivatkozik a szempontra (pld. „közúti közlekedés”) a második a felbontásra (pld. „100 méter”). Az adatbázis séma minden eleme visel egy vagy több bélyegzőt. Amikor egy olyan objektum típust deklarálunk, mely egynél több bélyegzőt visel, akkor valamennyi attribútumát el kell látnunk egy vagy több bélyegzővel. Például, ha deklaráljuk az ÚT objektumot a közúti közlekedésre 100 m. felbontással és a vízrajzi hálózatra 500 m. felbontással, akkor az objektumnak négy féle attribútuma lehet: a legegyszerűbb mind a két reprezentációra közös (pld. „ÚT_SZÁM”), a következő azonos típusú (pld. string), de különböző értékeket tárolhat (pld. az „ÚT_NÉV” teljes verzió lehet a közútnál és rövidítés a vízrajznál), a következő attribútum fajtát külön kell definiálni minden bélyegzőre (pld. a „GEOMETRIA” terület értékű a nagyobb felbontásra és vonal a kisebbre), végül pedig olyan attribútumok is vannak, melyek csak az egyik bélyegzőre vonatkoznak.
A Perceptory-val szemben a MADS képes a topológiai kapcsolatok explicit modellezésére is. Alapértelmezésben a relációk nincsenek bélyegezve de elérhetők azok által a reprezentációk által melyek bélyegzői megtalálhatók a reláció által összekapcsolt mindkét objektumban. Elképzelhető azonban, hogy a topológiai reláció megváltozik a generalizálással. Erre az esetre lehetőség van a reláció direkt bélyegzésére azzal a bélyegzővel, amire érvényben marad.
A fentiekben ismertetett módszer azon a feltételezésen alapult, hogy a többszörösen reprezentált állományok egy integrált adatbázisban kerülnek tárolásra. Bizonyos esetekben azonban a nagymértékű szempont eltérések következtében ez nehezen oldható meg. Erre az esetre dolgozták ki a MurMur projektben az inter-relációs módszert, melynek az a lényege, hogy az egyes reprezentációkhoz megtervezett egyedi adatbázis sémákat úgy nevezett megfelelési relációkkal kapcsolják össze.
Bár [9] 7. részében azt olvashatjuk, hogy a MurMur projekt prototípusa letölthető a http://lbd.epfl.ch Internet címről, sajnos a letöltési lehetőségre nem sikerült rátalálnom és így nem tudtam kipróbálni az ismertetett modellezési lehetőségeket. Ezért egy kissé talán részletesebb ismertetést szentelek az UML alapú módszernek [11], mivel ennek vizuális modellező szoftvere szabadon letölthető, és minden érdeklődő által kipróbálható.
A feladat olyan vizuális segédeszköz készítése, mely megkönnyíti a többszörösen reprezentált adatokat tároló adatbázisok koncepcionális modellezését. A létrehozott adatbázisok azután alkalmasak lesznek az igény szerinti térképezésre, illetve egyéb SOLAP műveletek kiszolgálására. Ahogy a harmadik részben láttuk a Perceptory lényegéből következően képes a többszörösen reprezentált adatok modellezésére. Az egyetlen kiegészítő információ amivel az eredeti modellt ki kell egészítenünk az arra vonatkozik, hogy miként jönnek létre a többszörös állományok és hogy tárolásra kerülnek-e vagy pedig minden kérés esetén újra generálandók. A [8] szerint az igény szerinti térképezés az előre generalizálás és „röptében generalizálás” megfelelő kombinációjával éri el a legjobb hatékonyságot. Az adatbázisnak csak akkor kell rögzítenie a multiplicitás létrejöttének módját, ha a generalizálás automatikusan történik és az adatbázis tárolja a generalizáló függvényeket.
A modellezésnél három szabályt kell figyelembe vennünk:
Ez utóbbi szabály némi magyarázatot igényel. Ha a generalizálás manuális vagy félig automatikus módszerrel történt, akkor az eredeti nagyfelbontású állomány piktogramja után el kell helyezni a generalizált állomány piktogramját is. Azaz, ha például a vízrajzi hálózat nagy méretarányban vonallal és területtel, kis méretarányban pedig ponttal és vonallal fejezhető ki, úgy a vízrajz osztály piktogramjai
lesznek.
Ha a vízrajzi hálózat generalizálása automatikusan történt, de túl hosszú időt vett igénybe és a modellező úgy dönt hogy a levezetett állományt is tárolni kell, úgy a vízrajz osztály piktogramjai a következőkre változnak:
.
A 6. ábrán bemutatjuk a „VIZFOLYAS” osztály komplett osztály diagramját (helykímélés miatt a diagramban csak két attribútum szerepel).
|
| 6. ábra |
Az eredeti 1:20000 méretarányban a osztálynak (mérettől függően) változó geometriai alakja van – vonalak és területek a folyó szélessége függvényében. Az automatikus generalizálás eredményeképpen a vonalakból továbbra is vonalakat kapunk az 1:100000 méretarányban, a területekből pedig vonalakat és területeket kapunk az 1:100000 és 1:250000 méretarányban. Az 1:100000 méretarányba történő generalizálás eredményét nem tároljuk, mivel folyamat meglehetősen gyors, az 1:250000-be történő generalizálás azonban túl sokáig tart, ezért érdemes tárolni. Ezt foguk tenni és következésképpen hozzáadjuk az osztály diagramhoz a generalizáláskor nyert geometriai alak piktogramjának dőlt változatát (mivel levezetett állományról van szó).
A generalizáláshoz használt függvényeket és azok sorrendjét a Perceptory az adat szótárban tárolja. Természetesen, mivel csak egy vizuális modellező programról van szó a generalizáló eljárások megválasztása a modellező feladata marad. A generalizálási eljárások új elveiről a következő részben szólunk.
Ennek a résznek a befejezéseként három érdekes összehasonlítást tehetünk a MADS és az UML alapú módszer között.
Az intelligens szoftver ágenseknek számtalan, gyakran ellentmondó meghatározása ismert, például: „Egy ágens (agent) bármi lehet, amit úgy tekinthetünk, mint ami az érzékelői (sensors) segítségével érzékeli (percepts) a környezetét és beavatkozó szervei (effectors) segítségével megváltoztatja (acting) azt" [12], vagy „Egy autonóm ágens egy olyan rendszer, mely valamely környezetben helyezkedik el, s egyben annak része is, mely érzékeli a környezetet és idővel megváltoztatja azt az általa kitűzött cél érdekében, úgy hogy befolyásolja azt, amit a jövőben érzékelni fog”. Ha megpróbáljuk összefoglalni az intelligens szoftver ágensek legfontosabb tulajdonságait, akkor azt látjuk, hogy az ágensek:
Az „autonóm” szó azt jelenti, hogy az ágens a felhasználó közvetlen irányítása nélkül, önállóan választja ki a célhoz vezető legmegfelelőbb utat. Az alkalmazkodási képesség abban jut kifejezésre, hogy kezelni tudják azokat az eseteket, amikor környezetük előre nem várható módon változik.
A bonyolultak feladatokban rendszerint több ágensre is szükség van, melyeknek kommunikálniuk kell egymással a feladat rájuk eső részének a megoldásához.
Bizonyos ágensek mobilok, ami azt jelenti, hogy a kliens számítógépről áttöltődnek a célszámítógépre, ott megoldják a feladatot és az eredményt visszaküldik a kliensnek.
Az általános információ technológiában négy fő alkalmazási területen használják az ágenseket [14], ezek:
Az új GIS fejlesztések különböző térinformatikai célokra használják az ágenseket.
A GIS szoftver bonyolultsága miatt reális igény merül fel ágens alapú intelligens interfészek használatára a szoftver vezérlés folyamatában, különösen igaz ez a SOLAP alkalmazásokra, melyek lényegéből fakad az egyszerű kezelhetőség, a maximális felhasználó-barátság.
Az ágens technológia másik ígéretes területe az osztott térbeli erőforrások fúziójának támogatása. Az osztott térbeli adatok rendszerint különböző globális és lokális referencia rendszerre vonatkoznak, különböző formátumúak és az általuk lefedett terület is különbözhet. Az adatok elemzéshez történő alkalmassá tételére Sengupta és szerzőtársai [15] olyan rendszert javasolnak, melyben az intelligens ágensek támogatják a felhasználókat a szükséges adatok és transzformációs eszközök megtalálásában és az adatintegráció végrehajtásában.
Témánk szempontjából az intelligens szoftver ágensek legérdekesebb alkalmazása a térkép generalizálás. Az ágens alapú generalizálás legátfogóbb projektje az AGENT (http://agent.ign.fr) kutatási program volt, melyet, mint az Esprit program részét, az Európai Bizottság finanszírozott az 1997 – 2000 években [16].
|
| 7. ábra |
A 7. ábra az ágens keretrendszer osztálydiagramját mutatja be (mivel a Perceptory-val készült magyar ékezetes betűket nem fogad el). A keretrendszer két alap osztálya az ÁGENS és a KORLÁTOZÁS.
A korlátozások az absztrakt osztály realizálódásai konkrét nevekkel, a prioritás, fontosság, flexibilitás, cél-érték, stb. attribútumok konkrét értékeivel és az aktuális érték számítására, az egzaktság meghatározására és az új terv javaslására szolgáló konkrét módszerekkel.
Minden korlátozás az ágens valamelyik tulajdonságára vonatkozik (pld. az olvashatósági szabályra), melyet figyelembe kell venni az optimalizálási folyamatban. A generalizálási folyamat alatt az korlátozások számolják az egzaktsági értéket (az aktuális érték és a célérték eltérését) a kérdéses tulajdonság vonatkozásában és olyan terveket javasolnak, melyek csökkentik a különbséget. Az ágens figyelembe véve az egyes korlátozások prioritását, fontosságát, flexibilitását, egzaktságát rangsorolja az általuk javasolt terveket.
Az ágens az egyes korlátozások fontosságukkal súlyozott egzaktságainak összegzésével meghatározza a saját megelégedettségét ('boldogságát'). Ha az ágens 'boldogsága' egy megadott küszöbérték alatt van akkor beindítja az első javasolt tervet a rangsorolt javaslatokból. Ha ez nem javítja a helyzetet, úgy az ágens visszatér a terv indítása előtti állapotba és beindítja a sorrendben második javaslatot. Ez a folyamat mindaddig folytatódik, míg az ágens 'boldogsága' nem növekszik illetve míg minden javaslaton végig nem fut. Az első esetben új egzaktságok, 'boldogságok', javaslatok kerülnek számításra mindaddig, amíg az ágens el nem éri a célt. A második esetben, ha a 'boldogság' tovább nem javítható az ágens visszatér arra a korábbi állapotra, mely a legnagyobb 'boldogságot' biztosította. A visszatérésre azért van lehetősége, mivel az ágens tárolja minden korábbi állapotát.
A hierarchikus több ágenses rendszernek három szintje van:
Az AGENT projektet 2000 decemberében fejezték be, ezt követően a prototípust kereskedelmi szoftverré alakította át a kutatási konzorciumban részt vevő Laser-Scan Ltd cég, mely szoftvert a termelésbe is bevezette a francia és dán állami térképészet.
Maga a prototípus bővíthető, új algoritmusokkal egészíthető ki, ezen kívül az ágensek közötti kommunikáció vonatkozásában további javításokra is szükség lehet, ahogy ez készítői állítják. Számomra úgy tűnik, hogy a korábbi konzorcium tagjai, egymástól függetlenül igyekeznek a rendszert egyik vagy másik irányban fejleszteni.
M. Galanda és R. Weibel svájci kutatók a területekkel felosztott tér generalizálását kívánják megoldani az AGENT projekt több ágens alapú keretrendszerére támaszkodva [17].
A feladat tehát olyan térképek generalizálása, mely folyamatos, egymással kihagyások nélkül érintkező poligonokból áll (pld. földhasználati térképek, népsűrűségi térképek, stb.). Ezeken a térképeken minden pont valamelyik poligonhoz tartozik, mely a kérdéses jellemvonást reprezentálja. Az ilyen adatoknak az a sajátossága, hogy valamely poligon megváltozása mindazoknak a poligonoknak a megváltozását is eredményezi, melyeknek az eredetileg megváltozott poligonnal közös határuk van.
A poligon generalizálásra szolgáló több ágenses keretrendszernek négy szintje van.
A legfelső szinten helyezkedik el a térkép ágens. Minden térképnek csak egy térkép ágense van, mely azokhoz a korlátozásokhoz kapcsolódik, melyek az egész térképet érintik. Feladata a térkép szintű műveletek vezérlése (pld. újra osztályozás) valamint a hierarchiában alatta helyet foglaló csoport ágensek konkretizálása (az absztrakt osztályból konkrét ágensek létrehozása).
A csoport ágensek poligon csoportokhoz vannak rendelve, mely csoportok kialakíthatók geometriai minták (pld. sűrűsödések, vonalba rendeződések), tartalmi azonosság vagy hasonlóság, topológiai partícionálás illetve földrajzi régiók alapján. A csoport ágens a kontextuális generalizálásért felelős: a poligonok közötti konfliktusokat próbálja feloldani a generalizálás során. A csoport ágens több specializáltabb csoport ágenssé képes felosztódni, ha a körülmények megkövetelik.
A poligon ágens a poligont generalizálja függetlenül a többi objektumtól. Mivel azonban egy poligon megváltozása szomszédaiban is változásokat okoz, e változásokat figyelembe kell venni.
A poligonok határoló vonalait a vonal ágensek generalizálják. Mivel egy határvonal mindig két poligonhoz tartozik, egy vonal ágenst mindig két poligon ágens vezérel. A vonal ágens is képes az osztódásra, ami lehetővé teszi hogy homogén vonal szakaszokkal foglalkozzon.
A generalizálást egy előfeldolgozási szakasz előzi meg, melyben a térképi helyzet illetve a felhasználói igények alapján meghatározásra kerül az összes korlátozás. Ezt követően a térkép ágens aktiválódik és a generalizálási folyamat az AGENT projekttel kapcsolatban már megismert módhoz hasonlóan megy végbe.
A poligon generalizáláshoz használt operátorok és azoknak az ágenseknek a szintje, melyekhez kapcsolódnak a következő:
Amikor az ágensek életciklusa befejeződik a felhasználó részletes jelentést kap a generalizálás eredményeiről, és szükség esetén futtathat egy interaktív generalizálási munka fázist.
Mind a hivatkozott tanulmányok, mind egyéb információ források (főként szóbeli viták a konferenciákon) arról tanúskodnak, hogy a kutatók megközelítik a „röptében” generalizálás megoldását és ígéretes eredményeket érnek el bizonyos speciális területeken de az átfogó, általános eljárás kidolgozására még várnunk kell három vagy négy évet.
Dr. Sárközy Ferenc
Budapesti Műszaki- és Gazdaságtudományi Egyetem
Általános és Felsőgeodézia Tanszék
Műegyetem rkp. 3.
1111 Budapest
telefon: (36 1) 463 3212
fax: (36 1) 463 3209
E-mail: sarkozy@agt.bme.hu
Az elektronikus publikáció 2002 szeptember 18.-án készült el.
1 A kutatás az OTKA T 030643 és T 031719 témái keretében támogatásban részesült.