• Imprimeix

Àlgebra de mapes

Autor: Dr. Joan Nunes. Universitat Autònoma de Barcelona
Promotor: Institut Cartogràfic de Catalunya, 2013

 

L'àlgebra de mapes és un sistema d'operacions que genera nous conjunts de dades geoespacials derivats per combinació o per transformació de conjunts de dades geoespacials existents, especialment en el cas de les dades ràster, si bé el concepte general és aplicable a informació geoespacial en qualsevol model de dades espacial. Dit de forma intuïtiva, àlgebra de mapes és el sistema que permet operar mapes entre si.

L'àlgebra de mapes formalitza el conjunt d'operacions de geoprocessament de dades geoespacials en els sistemes d’informació geogràfica, sobretot per a dades del model de dades ràster, ja que permet definir de manera uniforme totes les operacions d'anàlisi cartogràfica o de manipulació espacial de dades com a operadors o funcions que prenen com a arguments un o més conjunts de dades geoespacials, o també en certs casos valors escalars, i produeixen sempre com a resultat un nou conjunt de dades geoespacials.

Des del punt de vista matemàtic l'àlgebra de mapes no és pròpiament una àlgebra, ja que no desenvolupa els aspectes formals obligatoris d'una àlgebra (axiomes, regles, condicions, conjunt mínim d'operacions primitives a partir del qual s'obtenen la resta d'operacions, etc.), però s'hi assembla perquè permet expressar totes les operacions de combinació o transformació de dades geoespacials en un estil algebraic per mitjà d'operadors i operands.

L'àlgebra de mapes resulta especialment adequada i fàcil d'implementar en el cas de les dades ràster, pel fet que en aquest model de dades espacial els conjunt de dades són sempre col·leccions de cel·les amb valors numèrics i per tant totes les operacions entre conjunt de dades esdevenen operacions numèriques repetides per a totes i cada una de les cel·les.

L'àlgebra de mapes proporciona un mitjà compacte i versàtil per a expressar i materialitzar la metodologia de modelització cartogràfica que, en forma de models d'idoneïtat, d'impacte i d'anàlisi multicriteri, s'aplica en l'anàlisi i planificació territorial, ambiental i del paisatge.

 

Exemple d'operació d’àlgebra de mapes: el producte de dos conjunts de dades ràster binaris dóna lloc a un nou conjunt de dades ràster. 

 

Sumari

1 Origen
2 Definició
3 Operadors i funcions
   3.1 Operadors
   3.2 Funcions locals
   3.3 Funcions focals
   3.4 Funcions zonals
   3.5 Funcions globals
   3.6 Funcions de gestió de dades
4 Implementacions
   4.1 Llenguatges
   4.2 Calculadores de mapes
5 Temes relacionats
6 Referències
7 Lectures recomanades

 

Origen

L'origen de l'àlgebra de mapes parteix del desenvolupament de les operacions ràster d'anàlisi cartogràfica, entre mitjans de la dècada de 1960 i mitjans de la de 1970 (Sinton and Steinitz, 1969; Tobler, 1975; Tomlin, 1975; Sinton, 1977). El terme àlgebra de mapes sembla haver estat introduït per Joseph K. Berry (1987), si bé la formulació més elaborada de l'àlgebra de mapes, com a sistema d'operacions i llenguatge de manipulació de dades geoespacials, és atribuïble principalment a Charles Dana Tomlin, que la va enunciar el 1990 (Tomlin, 1990) a partir de treballs precedents amb Joseph K. Berry (Tomlin and Berry,1979) i del mateix Tomlin (1980, 1983, 1985).

Definició

L'àlgebra de mapes és la formulació sistemàtica de totes les operacions de geoprocessament per a l'anàlisi i manipulació de dades ràster com a expressions de càlcul formades per operadors o funcions aplicades a conjunts de dades ràster, o en alguns casos valors escalars, que donen lloc com a resultat a un nou conjunt de dades ràster.

Així, per exemple: 

rasterC = rasterA-rasterB                  crea un ràster nou com a diferència entre dos ràsters 
rasterE = rasterD* 5                          crea un ràster nou com a producte entre un ràster i un escalar
rasterI = min(rasterF,rasterG,rasterH)   crea un ràster nou com a funció de tres ràsters

Pel fet que les operacions de geoprocessament de dades ràster donen sempre com a resultat un nou conjunt de dades ràster, l'àlgebra de mapes permet encadenar successivament les operacions, de manera que una funció pot prendre com a argument el resultat d'una altra, i aquesta el resultat d'una altra, sempre que el tipus de valor resultant d'una funció sigui un argument vàlid per a l'altra funció. Per tant, en l'àlgebra de mapes una seqüència d'operacions es pot formular com una sola expressió que conté múltiples expressions imbricades unes dins d'altres.

Per exemple:

rasF = majority((rasA+rasB), cos(rasC),      zonalmin(rasD, rasE))
crea un ràster nou com a resultat d'aplicar la funció majority a tres ràsters que són respectivament el resultat de la suma de dos ràsters, la funció cos (cosinus) d'un ràster i la funció zonalmin de dos ràsters.

Això ha permès, en la implementació que en fan determinats programes, desenvolupar les operacions de geoprocessament i de manipulació de dades ràster en forma de llenguatge amb una sintaxi unificada per a totes les operacions, que poden ser de tipus lògic, aritmètic, matemàtic, estadístic, d'anàlisi espacial, etc.

En la sintaxi de l'àlgebra de mapes, els operands són els diversos conjunts de dades ràster, o valors escalars, i les operacions són operadors i funcions.

L'àlgebra de mapes no inclou, lògicament, les operacions que no són de geoprocessament i que per tant no donen lloc a nous conjunts de dades ràster. Les operacions excloses són essencialment les operacions de visualització, que produeixen la renderització d'un conjunt de dades ràster en la pantalla o dispositiu, i les de consulta, que donen lloc a valors escalars o de vegades, en alguns programes, a taules.  

Operadors i funcions

L'àlgebra de mapes inclou operadors i funcions. Els operadors són connectors que expressen operacions simples entre dos o més ràsters, mentre que les funcions prenen com a arguments un o més ràsters i altres paràmetres que especifiquen com s'ha d'aplicar la funció.

La formulació d'àlgebra de mapes de Tomlin (1990) classifica les funcions d'anàlisi cartogràfica segons el context espacial que defineix l'abast de l'operació; és a dir, segons el grup de cel·les els valors de les quals són objecte de la funció. Els tipus de funcions d'anàlisi cartogràfica de l'àlgebra de mapes són funcions locals, funcions focals, funcions zonals i funcions globals, també dites funcions incrementals en la formulació original, A més de les funcions d'anàlisi cartogràfica, a l'hora d'implementar l'àlgebra de mapes, els programes de SIG afegeixen un cert nombre de funcions de gestió de dades.

Operadors

Els operadors de l'àlgebra de mapes són connectors que expressen operacions simples, cel·la a cel·la, entre els valors de cel·les homòlogues de dos ràsters. Els operadors s'apliquen a dos, ràsters o a un ràster i un escalar. La concatenació d'operadors i operands permet operar múltiples ràsters.

Operador d'àlgebra de mapes: nou valor resultat d'operacions cel·la a cel·la entre valors de cel·les homològues de dos ràsters.

Els operadors emprats en l'àlgebra de mapes poden ser de tipus aritmètic (suma, diferència, producte, divisió, mòdul i negació), booleà (or, and, not, xor), relacional (igual, menor, major, etc.), combinatori, acumulatiu o d'assignació.

Funcions locals

Una funció local d'àlgebra de mapes és una funció d'anàlisi ràster que calcula un nou ràster en el qual el valor de cada cel·la és funció únicament del valor de la mateixa cel·la del ràster original, o del conjunt de ràsters originals si la funció opera amb més d'un ràster.  

Funció local d'àlgebra de mapes: nou valor resultat d'una funció aplicada al valor de cada cel·la.

Les funcions locals d'àlgebra de mapes inclouen funcions trigonomètriques (sinus, cosinus, tangent, cotangent, arcsinus, arccosinus, arctangent, etc.), exponencials i logarítmiques (de base e, 2 o 10), de reclassificació, de selecció, estadístiques (mínim, màxim, mitjana, mediana, moda, desviació estàndard, suma, etc.) i numèriques (mòdul, valor absolut, etc.). Els noms, i la classificació, de les funcions locals varien entre els diferents programes de SIG que implementen l'àlgebra de mapes.

Funcions focals

Una funció focal, o funció de veïnat, d'àlgebra de mapes és una funció d'anàlisi ràster que calcula un nou ràster en el qual el valor de cada cel·la és funció del valor original de la cel·la i dels valors de les cel·les compreses dins d'un determinat veïnat a l'entorn de la cel·la.

Un veïnat és un conjunt de cel·les d'un ràster adjacents o pròximes a una cel·la determinada. El tipus de veïnat més habitual en les operacions d'anàlisi ràster és una finestra mòbil de dimensions diverses (3 x 3 cel·les, 5 x 5 cel·les, etc.) centrades a la cel·la. Es considera veïnat estricte la finestra de 3 x 3 cel·les i veïnats ampliats, les finestres de dimensions més grans. Idealment, però, un veïnat pot tenir qualsevol forma, no cal que sigui necessàriament una finestra quadrada.

Funció focal d'àlgebra de mapes: nou valor resultat d'una funció aplicada al valor de cada cel·la i al conjunt de cel·les dins d'un determinat veïnat entorn de la cel·la.

Els principals tipus de funcions focals d'àlgebra de mapes són funcions estadístiques aplicades als valors compresos dins del veïnat (mínim, màxim, mitjana, mediana, moda, desviació estàndard, suma, etc.), operacions de filtratge (filtre passabaix, filtre passaalt, filtre de moda, etc.), d'interpolació espacial (interpolació per la distància inversa, superfície de tendència, krigatge, etc.), d'anàlisi de superfícies (gradient, orientació, ombreig d'il·luminació) o algunes operacions d'anàlisi hidrològica (direcció de flux), entre d'altres. Els noms, i la classificació, de les funcions focals varien entre els diferents programes de SIG que implementen l'àlgebra de mapes.

Funcions zonals

Una funció zonal d'àlgebra de mapes és una funció d'anàlisi ràster que calcula un nou ràster en el qual el valor de cada cel·la és funció del valor original de totes les cel·les que pertanyen a la mateixa zona en un altre ràster auxiliar que defineix les zones per a aplicar la funció.

Una zona, en àlgebra de mapes, és cada una de les categories d'un ràster categòric; és a dir una classe d'un atribut nominal o ordinal o, en altres paraules, una classe d'una llegenda temàtica. Les funcions zonals d'àlgebra de mapes són, per tant, funcions de classe.

Les funcions zonals d'àlgebra de mapes més habituals són funcions estadístiques (mínim, màxim, mitjana, mediana, moda, desviació estàndard, suma, etc.) calculades per classes (zones) , que solen anomenar-se estadístics zonals, i funcions geomètriques (àrea, perímetre, gruix, etc.) per classes (zones). Els noms, i la classificació, de les funcions zonals varien entre els diferents programes de SIG que implementen l'àlgebra de mapes.

Funció zonal d'àlgebra de mapes: nou valor resultat d'una funció aplicada a tots els valors de les cel·les d'un ràster que pertanyen a una determinada categoria d'un altre ràster.

Funcions globals

Una funció global d'àlgebra de mapes és una funció d'anàlisi ràster que calcula un nou ràster en el qual el valor de cada cel·la és funció dels valors o de les posicions de totes les cel·les del ràster original i de la posició d'una o més cel·les origen i d'una o més cel·les de destinació.

Funció global d'àlgebra de mapes: nou valor resultat d'una funció aplicada a tots els valors de les cel·les d'un ràster a a partir de les posicions de les cel·les d'origen i de destinació indicades en un altre ràster.

Les funcions globals d'àlgebra de mapes inclouen les funcions de distància (distància euclidiana, assignació per distància), les d'anàlisi de superfície de cost (distància de cost, direcció de cost, camí de cost mínim, assignació per cost), la majoria de funcions d'anàlisi hidrològica (càlcul de conques, càlcul de cursos d'escolament) i les d'anàlisi de visibilitat (càlcul de conques visuals), entre d'altres.

Funcions de gestió de dades

Per completar les capacitats de manipulació de dades ràster, els programes de SIG que implementen l'àlgebra de mapes afegeixen un conjunt més o menys ampli de funcions de gestió de dades, que no formen part de cap dels tipus d'operadors ni de funcions de càlcul de la formulació original de l'àlgebra de mapes, però que són imprescindibles per a poder manejar les dades ràster. Les funcions de gestió de dades ràster van des de les operacions més simples de còpia o canvi de nom d'un conjunt de dades ràster, fins a operacions complexes de manipulació de dades, com és ara el mosaic, la correcció geomètrica o el remostreig de conjunts de dades ràster.

Implementacions

Llenguatges

La implementació original de l'àlgebra de mapes, des dels primers programes de SIG ràster, ha estat en forma de llenguatge, ja que les expressions de càlcul de l'àlgebra de mapes s'ajuden plenament amb enunciats en forma de sentències o instruccions. Hi ha diferents estils de sintaxis de llenguatge per a implementar l'àlgebra de mapes. La més antiga és en forma de llenguatge d'ordres, mitjançant sentències que inclouen l'ordre corresponent a la funció i els diferents arguments corresponents als ràsters d'entrada  i de resultat i als diferents paràmetres o opcions de la funció. Dintre dels llenguatges d'ordres n'hi ha que adopten estils més o menys propers al llenguatge natural. Altres implementacions més recents adopten la forma de llenguatge de càlcul amb una sintaxi orientada a expressar operacions. Algunes implementacions inclouen sentències condicionals i de control de flux, així com l'ús de variables, amb la qual cosa esdevenen veritables llenguatges de programació o, si més no, llenguatges script amb suficient capacitat per a programar procediments. Actualment, la tendència és incorporar les expressions del llenguatge de càlcul en un llenguatge script, com és ara Python.

Alguns exemples de sentències d'àlgebra de mapes són:

exemple de sentència de llenguatge d'ordres en l'estil original d'àlgebra de mapes (Tomlin, 1990):
slope = IncrementalGradient ofaltitude               

exemple de sentència de llenguatge d'ordres del programa MiraMon:
BUFDIST FitxerAmbEntitatsDiana FitxerResultat [LimitInfBuffer, LimitSupBuffer] [Opcions]                       

exemple de sentència de llenguatge de càlcul del programa ArcGIS en el llenguatge script Python:
outHillshade = Hillshade("elevation", 180, 75, "SHADOWS", 1)

A desgrat d'altres implementacions més interactives i amigables, la implementació de l'àlgebra de mapes en forma de llenguatge continua vigent i útil com a recurs per a automatitzar procediments d'anàlisi i models llargs i complexos.

Calculadores de mapes

A partir de l'aparició a mitjans de la dècada de 1990 dels programes de SIG d'escriptori, caracteritzats per interfícies gràfiques d'usuari interactives i amigables, una implementació força habitual de l'algebra de mapes és en forma de calculadora de mapes o calculadora ràster.

Una calculadora de mapes és un mòdul d'un sistema d’informació geogràfica que presenta una interfície senzilla, a mode de calculadora, per mitjà de la qual es poden declarar les capes, que actuen com a operands, i les funcions, que actuen com a operadors, per a realitzar operacions de geoprocessament. Tot i que està particularment adaptada a l'àlgebra de mapes per a dades de tipus ràster, una calculadora de mapes és pot aplicar igualment a dades de tipus vectorial. De fet, alguns programes combinen en una mateixa interfície de calculadora de mapes les operacions de geoprocessament de dades d'ambdós tipus.

Exemples de calculadores de mapes dels programes ArcGIS (esquerra) i MiraMon (dreta).

 

Temes relacionats

Referències

Berry, J.K. (1987) "Fundamental operations in computer-assisted map analysis", International journal of geographical information systems, 1, 2, 119,136.

Sinton, D.F. and Steinitz, C.F. (1969) GRID: A user's manual, Cambridge, Massachussets: Laboratory for Computer Graphics and Spatial Analysis, Graduate School of Design, Harvard University.

Sinton, D.F. (1977) The user's guide to IMGRID: an information system for grid cell data structures, Cambridge, Massachussets: Department of Landscape Architecture, Graduate School of Design, Harvard University.

Tobler, W.R. (1975) Cellular Geography. IIASA Working Paper WP-75-l00.

Tomlin, C.D (1975) The Tomlin Subsystem of IMGRID: an information system for grid cell data structures, Unpublished MSc thesis. Cambridge, Massachussets: Department of Landscape Architecture, Graduate School of Design, Harvard University.

Tomlin, C.D. (1980) The Map Analysis Package. Connecticut: Yale School of Forestry and Environmental Studies.

Tomlin, C.D. (1983) Digital Cartographic Modeling Techniques in Environmental Planning. Unpublished PhD Thesis. Cambridge, Massachussets: Department of Landscape Architecture, Graduate School of Design, Harvard University.

Tomlin, C.D. (1985) The IBM Personal Computer Version of the Map Analysis Package. Cambridge, Massachussets: Laboratory for Computer Graphics and Spatial Analysis, Graduate School of Design, Harvard University.

Tomlin, C.D. (1990) Geographic Information Systems and Cartographic Modelling, Engle­wood Cliffs, New Jer­sey: Prentice Hall. 

Tomlin, C.D. and Berry, J.K. (1979) "A mathematical structure for cartographic modelling in environmental analysis", in Proceedings of the 39th Symposium of the American Conference on Surveying and Mapping. Falls Church, Virginia: ACSM.

Lectures recomanades

Tomlin, C.D. (1990) Geographic Information Systems and Cartographic Modelling, Engle­wood Cliffs, New Jer­sey: Prentice Hall.

Tomlin, C.D. (1991) "Cartographic Modelling" in Maguire, D.; Goodchild, M. and Rhind, D.W. (eds.) Geographical Information Systems. Principles and Applications. Harlow: Longman.